記事一覧

【NPC露店 第1回】NPC露店の仕様

ファイル 487-1.jpg

商人の最大の見せ場である「露店開設」。
それをNPCに使わせよう~というコードの長期連載(予定)のAurigaオリジナル開発記です。
「普通のショップNPCでいいじゃん!」と思う人もいるかと思いますが、色々と拡張予定なので長い目で見てあげてください(==

とりあえずさらっと露店看板表示までは出来ました。
コードは形になってきたらココで公開するかもです。

続き
色々と露店NPCの仕様を決めてみる。

==============================
・スクリプト命令「vending」でNPC露店を開設。
→パラメータは露店の表示名(看板)のみ。対象NPCは実行したNPC強制指定。

・スクリプト命令「closevending」で露店を閉じる。
→パラメータなし

・陳列するアイテムは「setvenditem」でセットする。
→index、アイテムID、個数、値段
→欲を言えば精錬値、カード、属性などの装備追加情報

・商品セット「setvenditem」→露店開設「vending」の流れ。不要になったら露店閉鎖「closevending」

・陳列アイテム取得関数も用意する?(未定)

・NPC情報構造体「npc_data」に露店情報を追加。
→露店ID、露店表示名、陳列アイテム情報(setvendingitemの情報)

・通常カート内の情報で商品管理しているものを、NPC露店は陳列アイテム情報のindexで誤魔化す。

・装備品は商品数指定は1固定(複数が無理なため)

・商品が売れたらちゃんと個数を減らす。売り上げ金額は無視。

・商品が全て売り切れたらちゃんと露店閉鎖。

・露店開設時は商品の追加は許可しない。

・普通のクリック時のNPC処理(会話など)も出来てしまう優れもの。
==============================

陳列するアイテムの情報をスクリプトでどうやって渡すのかが問題だなぁ。
気分と反響次第で次回に続きます。

コメント一覧

名無し 2009年08月22日(土)11時52分 編集・削除

ooh...
何時か如何にか出来ないかなと考えていた、NPC露天をBlazeさんが作っているとは。

Toshi 2009年08月22日(土)16時12分 編集・削除

楽しそうなNPCですぅ。
鯖再起動しても継続ならとてもいい感じです。
DUPEが怖い「@at」の代わりに流行りそうです。

Blaze 2009年08月23日(日)17時58分 編集・削除

>Toshiさん
>鯖再起動しても継続ならとてもいい感じです。
NPCデータを直接保存するのは好ましくない(スクリプト変更による該当NPCが削除されたなど)ので、
データ保存はスクリプト実行側の責務となりそうです。
(露店閉鎖時に現商品データをスクリプト命令でcsvなどに保存→露店開設時にcsvから商品データを読み取り)

ただ、スクリプトで保存するタイミングが難しく、「商品が売れた~」時のイベント実行などを用意してあげないといけない気がしてきましたorz