戦うぞ!64xその54(ポップ処理とポートレート)

画像



やった事

HUD実装
ステータスバーや、選択マスに居るキャラの表示などを束ねるcppを実装。
以降はミニマップやコンパニオンのHP一覧表示などもここから行うように。

ポートレート実装
キャラクターの胸部アップに関する仕様を決定。実装。
番号によって髪や顔、服が管理されている。

ポップ処理実装
マップに設定されたポップ位置・ポップモンスターに沿って敵がポップする処理を実装。
かなり大雑把なので要手直し。

敵のポップを行えるイベントページを実装。
指定地点や対象キャラの最寄りマスに指定モンスターを沸かす事が出来るページを追加。



やる事



ドラッグ処理の重大なバグ
ウィンドウのドラッグ移動処理で、1ループ内に複数判定を行うと
ドラッグしたウィンドウと別のウィンドウも移動に巻き込まれてしまう。
抜本的な仕様の変更が必要。
ドラッグ中のウィンドウ識別IDとかで、ドラッグ中の窓とそれ以外とで見分けられるような仕組みにする事。



ポートレートの髪の毛・肌の色を色違いにできる様な仕組みを実装する事
案:ポートレートの後ろ髪設定を撤廃。髪番号に統合する(後ろ髪と前髪で極端に合わないことがあるので)


自作したテキスト入力関数で、改行付き編集が出来るようにする事。
改行文字列を改行扱いにする事
ゲーム内で入力された\nは\\nと保存されてしまうため改行扱いにならない。
txtからstringで読み込む際に置換してほしい。


ミニマップの表示をHUD経由で行えるように(表示ON,OFFとか)
ミニマップウィンドウにタブを作って移動できるように


ステータスバー右下に小さなアイコンを表示し、
クリックする事で色々ショートカット実行できるように(RimWorld式)

・ミニマップ表示ON,OFF
・対象マスの詳細表示ON,OFF
・コンパニオンのHP状態表示,ON,OFF
・視点を常時主人公を中心にするON,OFF


以下はスイッチ扱いでない処理。上のアイコンと区画を分ける
・主人公に視点を戻す
・コンパニオンの引き寄せ


済み:マウス座標が重なっている場合p1の画像ハンドル。重なっていない場合p2ハンドルの画像を表示する処理を追加する



済みor様子見:ミニマップもろもろ、クリック処理を行わないようなフラグ引数を適応する


マップの野外判定(または山・町・森・平原などのint変数)
敵のポップ係数(どの程度の確率でポップするか。ポップの最大数など)
済み

ダイアログの部分で日本語入力が出来ない
実は結構大変な問題で、いくら検索を掛けても解決法がみつからない。
Dxライブラリの作者がサンプルとして載せているダイアログコードを、初期状態のプロジェクトに乗せてみても日本語入力が出来ない。
一度どこかにexe上げて他の環境でどう動くのか見てみないと解決できなさそう。


商人の商品再生成
再生成処理はできているが、トリガー部分がまだできていないので作る事。

マップの一時ファイルにドロップデータも含める
容量が増えるだろうが、ドロップデータも含める事。

ステータスの反映処理の実装
素のステータス+装備+バフデバフの計算処理を実装し、
対象キャラのターンや、非エフェクト、装備の変更時に再計算を行うようにすること。
仮実装しているけどタイミングがまだ完全じゃない(装備の変更とか)かもしれない。
引き続き、様子を見ていく事。



自動回復の実装
移動中に自動回復をするようにすること。効果値は・・・


各種スキルの実装(後回しでok)
武器適正などの細かいスキルの実装

背景画像の設定・フラグの設定を追加する事。
Elonaの幕間のような感じでイベントとかメニュー背景に使う。(ずっとばくまだと思っていたのは内緒だぞ)

・MapSkin規格をオブジェクトと同じように128x128にする
キャラレイヤー以下の移動可能オブジェクトがスキン。
移動不可をオブジェクトとする。
なんかやばそうなので保留


ポップ処理の改良
現状時間経過でのポップが設定されていない。
そもそもこの仕様でいいのかなど含めて改良する事。

HUD側からミニマップを呼び出す事
表示用フラグなどの管理は全てHUDで統括させること。



自分への細かいバグ報告や注意喚起

バグ
・キャラクターの座標がマップへの登録座標とずれている事がある(要検証)多分大丈夫


警告
・扉・宝箱の設定は移動不可のみになっているので遠隔攻撃が通る。
・影のレイヤーがキャラクターやオブジェクトイベントより後になっている
・メニューウィンドウに戻るボタンを作ってさしあげろ。
・タイトル画面で×を押すと正常に終了できない
・オブジェクトイベントの削除が正常に行われていない(要検証)
・オブジェクトイベントのロックピックの犯罪判定。鍵(フラグ)の有無での施錠などは今の所未実装。
・イベントの鍵開け処理で、マップのレベル依存(-1)という処理があるのだが
マップに対してのレベル設定項目が無い。後でマップに追加する事
・開閉条件にイベントのフラグが指定されていても
まだフラグ基礎が出来ていないのでなにもできない。後で追加する事
・イベント実行対象の番号は、キャラ・オブジェクトイベント番号兼用
今のところオブジェクトイベントもキャラ番号扱いなので、変なキャラが話しだしたりする
マップ間移動とか怪しい。再生成とか含めて正常に動くがデバッグしろ!
注意喚起

・後退処理のAIが優秀なので同速度の一対一状態だと確実に逃げられる。
逃げている時は速度が低下するなどの処理が必要。
・移動の押しのけ判定がややガバいので、中立・友好派閥と押しのけあいまくる。
↑様子見。酷いようであれば修正

追記

影の再設定(座標個別)で
対象地点ではない影(三角・右下影両方)が上手く反映されていないので
チップ配置のみ、配置周辺をしっかり再更新させる関数で処理させる。


ポップデータの保存領域は完成したので次の作業を行う
・マップエディタにポップ情報を設定させる画面を作る
・実際にポップさせる処理を作る

マップデータに以下の要素を追加する
マップのLv(通常モブ(ポップ設定のLv-1)はこのレベルに沿って生成される)

//ボスのポップ処理は今のところ保留で。
ポップデータではなく、イベントやマップの再生成経由で行うと思うので。よろすく


この記事へのコメント

この記事へのトラックバック