[GameDev]プレイヤーコマンド入力UI その2

最大の敵はサイトの画像アップロードサイズ制限であった…。

ターゲット選択

キャラの上にマウスカーソルを置いたら反応する動き…これはまあ問題ない。ggれば出てくるやつ。
カーソルを置いているキャラのハイライト…これは前々エントリで伏線を張っておいたのでまあなんとか。
選択したキャラをコマンド情報に返す動き
…これがなかなか。結論から言うと、
・ターゲット選択画面が出たときに、バトル用のキャラクターが参照しているマップ上のキャラクターにターゲット選択用のコンポーネントを追加
・ターゲット選択用のコンポーネントのクリック等イベントをターゲット選択画面に返す
・ターゲット選択画面で、クリックされたマップ上のキャラに紐づくバトル用のキャラを追加して、精霊選択画面へ戻す
といった感じ。疎結合とは一体なんなのだろうか。。

ターゲットの上書き


地味にめんどい部分。
全体化バフがかかっているときに、UI上でのターゲットを上書きするパターン、
同じターンに全体化→攻撃をしたときに、攻撃のタイミングでターゲットを上書きするパターン
の二種類がある。
ターゲットの上書き情報をコマンドに持たせて、UIのときは単純にそれを参照、
攻撃タイミングでの上書きは、ターゲットの再抽選(死体蹴り防止、オートターゲットっていうんだっけか)の処理中に
上書き情報を参照して再度ターゲッティングさせる、
全体化バフは付加時アクションでコマンドのターゲット上書き情報を更新…みたいな感じ。

全体化→攻撃のパターンでは、UI上は単体選択のままだけど、まあ触ってて違和感ないし、
ここを対応するとバグの温床になりそうな感じなのでこのまま。

バトルステータスをWeb側に出力するやつをやろう。
JS触るの久しぶりだからやばそう感ある。

おまけ

各種アイコン類。
まさかのコミット忘れで開発ストップからの、どうせやるんだしどこからでも手をつければいいじゃないの精神。
InkScapeの使い方をちょっとだけ覚えました。
また謎の技術を手に入れてしまったぜ…。