2014年5月25日日曜日

ARFantasy制作過程44(街シーン)


宿屋の店員に話しかけられてYESと答えると
鍵が借りられて
奥の部屋に入れるようになり
ベッドの前で話すボタンを押すと宿泊できる

道具屋では
買い物ができる

話すボタンを押すと
TALKというコマンドを実行するようにして
プレイヤーの付近のオブジェクトのtalkメソッドを実行
会話でプレイヤーが選択する場合はUIを変化させてYES,NOボタンの表示
グローバル変数のtalkingObjにそのオブジェクトを代入
以下話すボタンをタップしたりYES, NOボタンをタップする
たびにtalkingObjのtalkメソッドが実行される
人物に限らず背景のオブジェクトにもtalkメソッドを定義して
単なる背景の場合は揺らしたり単純なアニメーションの再生をして
効果音を鳴らすようにした

街データについては大まかには
data={{街部品1のクラス名、初期値},
{街部品2のクラス名、初期値},...
}
という形にして街データのコンストラクタで街部品(建物など)のコンストラクタを
for i,v in ipairs(data) do
   townParts[i]=v[1].new(v[2])
end
といった感じで呼び出すようにした
各街部品の部品(建物の内装、外装、扉、小物など)についても同様


覚書
3Dオブジェクトとアニメーションをメンバーに含むクラスのデストラクタでは
まず先にアニメーションをnil
次に3DオブジェクトをdeleteObject
してからnilという順番で


修正、迷い点
動きはプレイヤー相対座標で十字キーの操作にしたがこれはおそらく不採用
マップモードと同様の方がいいかも

壁越しに話せてしまう点はなんとかしたい

仲間のキャラを街ではどうするか?
操作可能にするなら意味があるようにしたいが蛇足な気もする
しかしステータスは見れた方がいい気もする
選択は可能で操作は不可能でステータスは見れるようにするか

後で修正が容易になるよう会話のセリフをアプリ側で変更できるようにした方がいいか

その他細かい3Dモデルと音声の修正
看板のテクスチャ
花壇追加
壁の変更


人気ブログランキングへ
にほんブログ村 デザインブログランキング

0 件のコメント:

コメントを投稿