トップページ > 歴史ゲーム > 2015年12月09日 > uZ/E0GI6

書き込み順位&時間帯一覧

23 位/288 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000000000033



使用した名前一覧書き込んだスレッド一覧
.jp
信長の野望 天翔記 改造綜合スレ5 [転載禁止]©2ch.net

書き込みレス一覧

信長の野望 天翔記 改造綜合スレ5 [転載禁止]©2ch.net
566 :.jp[sage]:2015/12/09(水) 23:24:33.88 ID:uZ/E0GI6
>>565
まともにやると、
「すべてのコマンドの全ての情報を取れる」
ようにする必要があるので少し時間がかかります。

95版だけなら、2日かからないのだけれど…
現在HD版のマネージド化を主軸に置いてしまっているので、
並行すると2週間ほどかかってしまいます。

なので、当面以下のようにして、対応してください。
戦略画面でのコマンドの際の入力値の8割方は以下の方法で拾えるのではないかと思います。
信長の野望 天翔記 改造綜合スレ5 [転載禁止]©2ch.net
567 :.jp[sage]:2015/12/09(水) 23:25:14.92 ID:uZ/E0GI6
namespace ユーザー戦略画面入力 {
struct Tグループ1 {
int パラメタ[8];
};

struct Tグループ2 {
int パラメタ[8];
};

Tグループ1* GET_グループ1_パラメタ() {
Tグループ1 *グループ1 = (Tグループ1 *)0x4DDF38;
return グループ1;
}

Tグループ2* GET_グループ2_パラメタ() {
Tグループ2 *グループ2 = (Tグループ2 *)0x4DDF58;
return グループ2;
}

}


string カスタム::On_噴出メッセージ直前(string 武将名, string 元メッセージ, メッセージ関連情報型 メッセージ関連情報) {

using namespace ユーザー戦略画面入力;
// プレイヤーが入力した情報は第1グループもしくは、第2グループのどちらかにあることが圧倒的に多い。

// 第1グループなら以下のようにする。
Tグループ1 *入力param = GET_グループ1_パラメタ();

// 入力した項目で値を採ってみる。「武将・城・大名・軍団・家宝・官位の類は全て番号で来る。配列用に直すには-1する」

int 実行武将ID = 入力param->パラメタ[0] - 1; // 武将番号→配列用番号
int 目標城ID = 入力param->パラメタ[1] - 1; // 城番号→配列用番号
int 内応武将ID = 入力param->パラメタ[2] - 1; // 武将番号→配列用番号
int 支度金 = 入力param->パラメタ[3];

if (0 <= 実行武将ID && 実行武将ID < 最大数::武将情報::配列数 &&
0 <= 目標城ID && 目標城ID < 最大数::城情報::配列数 &&
0 <= 内応武将ID && 内応武将ID < 最大数::武将情報::配列数) {
デバッグ出力 << Get_名字(実行武将ID) + Get_名前(実行武将ID) << endl;
デバッグ出力 << Get_城名(目標城ID) << endl;
デバッグ出力 << Get_名字(内応武将ID) + Get_名前(内応武将ID) << endl;
デバッグ出力 << 支度金 << endl;
}

// 変更しない場合""
return "";
}
信長の野望 天翔記 改造綜合スレ5 [転載禁止]©2ch.net
568 :.jp[sage]:2015/12/09(水) 23:28:01.30 ID:uZ/E0GI6
この「グループ1」にないものは、「グループ2」を見ると入っていることが多いです。


// 第2グループなら以下のようにする。
Tグループ2 *入力param = GET_グループ2_パラメタ();


以上となります。

そのうち、ある程度綺麗な形で、ScenarioModや、HD.mod(名称まだ未定)に入ると思います。


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。