最終更新日 2024-09-25
戦国名物事典型& カスタム::On_戦国名物事典要求時(int 家宝番号)
戦国名物事典型& カスタム::On_戦国名物事典要求時(int 家宝番号) { return NULL; }
タイミング
- このメソッドは家宝の列伝に相当する「戦国名物事典」が表示するタイミングで複数回呼び出される。
一般的用途
- 様々な状況に応じて、家宝の名前、あるいは、列伝等を変化させたい場合に使用する。
例①
戦国名物事典型& カスタム::On_戦国名物事典要求時(int 家宝番号) { // 家宝名は家宝番号が全てのシナリオを通じて固定である。 // よって何番が何の家宝か? は決まっており、家宝列伝(戦国名物事典)とも一致する。 int iKahouID = 家宝番号 - 1; if (0 <= iKahouID && iKahouID < 最大数::家宝情報::配列数) { // 孫子という文字列を含んだ家宝 if ( Is_文字列マッチ( Get_家宝名(iKahouID), "孫子") ) { 戦国名物事典型 rt ( "ソンシカイ\x0A孫子改", "123456789101112131415161718\x0A" "123456789101112131415161718\x0A" "123456789101112131415161718\x0A" "123456789101112131415161718\x0A" ); return rt; } } // 変更しない場合NULL return NULL; }
例②
戦国名物事典型& カスタム::On_戦国名物事典要求時(int 家宝番号) { int iKahouID = 家宝番号 - 1; if (0 <= iKahouID && iKahouID < 最大数::家宝情報::配列数) { if ( Is_文字列マッチ( Get_家宝名(iKahouID), "孫子") ) { 戦国名物事典型 rt ( "ソンシカイ\x0A孫子改", "" // 「""」にすると、該当部分は元の文字列のままとなる。 ); return rt; } } // 変更しない場合NULL return NULL; }
例③
戦国名物事典型& カスタム::On_戦国名物事典要求時(int 家宝番号) { int iKahouID = 家宝番号 - 1; // 蜻蛉切を本多忠勝が所持している時だけ、戦国名物事典の内容を変更する。 if (0 <= iKahouID && iKahouID < 最大数::家宝情報::配列数) { デバッグ出力 << "家宝番号" << iKahouID << endl; // 家宝の番号は、シナリオが変わっても固定的 if ( iKahouID == 家宝配列番号::蜻蛉切 ) { int iBushouID = p家宝情報[iKahouID].所有武将【武将番号】 - 1; if (0 <= iBushouID && iBushouID < 最大数::武将情報::配列数) { デバッグ出力 << "武将番号" << iBushouID << endl; if (Get_名字(iBushouID) == "本多" && Get_名前(iBushouID) == "忠勝") { // 本多忠勝だ 戦国名物事典型 rt ( "タダカツノホンボキリ\x0A忠勝の蜻蛉切", "123456789101112131415161718\x0A" "123456789101112131415161718\x0A" "123456789101112131415161718\x0A" "123456789101112131415161718\x0A" ); return rt; } } } } // 変更しない場合NULL return NULL; }