int カスタム::On_カスタム条件(string 条件名, カスタム条件パラメタ型 パラメタ) { if ( 条件名 == "AS条件::メイン::大名後継者武将番号" ) { } // 変更しない場合-1 return -1; }
int カスタム::On_カスタム条件(string 条件名, カスタム条件パラメタ型 パラメタ) { if ( 条件名 == "AS条件::メイン::大名後継者武将番号" ) { int 大名勢力DaimyoID = パラメタ.整数1-1; int 死亡BushouID = パラメタ.整数2-1; int 後継BushouID = パラメタ.整数3-1; デバッグ出力 << "死亡武将(大名):" << Get_名字(死亡BushouID) << Get_名前(死亡BushouID) << endl; デバッグ出力 << "後継予定武将(大名):" << Get_名字(後継BushouID) << Get_名前(後継BushouID) << endl; } // 変更しない場合-1 return -1; }
int カスタム::On_カスタム条件(string 条件名, カスタム条件パラメタ型 パラメタ) { // 毛利元就が死んだ場合の第1後継者候補を、「小早川隆景」に変更する。 // (小早川隆景が後継条件を持たさなかった場合には、元々の天翔記アルゴリズムに従う) if ( 条件名 == "AS条件::メイン::大名後継者武将番号" ) { int 大名勢力DaimyoID = パラメタ.整数1-1; int 死亡BushouID = パラメタ.整数2-1; int 後継BushouID = パラメタ.整数3-1; if ( 0 <= 死亡BushouID && 死亡BushouID < 最大数::武将情報::配列数 ) { // 死亡した大名がプレイヤ担当以外の場合のみ、処理を行う if ( ! Is_プレイヤ担当武将(死亡BushouID) ) { string 死亡武将名 = Get_名字(死亡BushouID) + Get_名前(死亡BushouID); // 死亡大名が「毛利元就」である。 if ( 死亡武将名 == "毛利元就" ) { int 再変更BushouID = Get_武将番号【配列用】("小早川隆景"); // そいつは今、天翔記に居るか?(=ちゃんと名前から武将番号を逆引きできたか?) if ( 0 <= 再変更BushouID && 再変更BushouID < 最大数::武将情報::配列数 ) { // 死亡した者と、再変更武将は、同じ大名勢力家の武将か? if ( p武将情報[死亡BushouID].所属大名【大名番号】 == p武将情報[再変更BushouID].所属大名【大名番号】 ) { return 再変更BushouID + 1; // 武将番号【配列用】→武将番号 にして(要するに+1して) 値を返す。 } } } } } } // 変更しない場合-1 return -1; }
int カスタム::On_カスタム条件(string 条件名, カスタム条件パラメタ型 パラメタ) { if ( 条件名 == "AS条件::大名後継者武将番号" ) { int 大名勢力DaimyoID = パラメタ.整数1; int 死亡BushouID = パラメタ.整数2-1; int 後継BushouID = パラメタ.整数3-1; if ( 0 <= 死亡BushouID && 死亡BushouID < 最大数::武将情報::配列数 ) { // 死亡した大名がプレイヤ担当以外の場合のみ、処理を行う if ( ! Is_プレイヤ担当武将(死亡BushouID) ) { string 死亡武将名 = Get_名字(死亡BushouID) + Get_名前(死亡BushouID); // 死亡大名が「毛利元就」である。 if ( 死亡武将名 == "毛利元就" ) { int 再変更BushouID = Get_武将番号【配列用】("小早川隆景"); // そいつは今、天翔記に居るか?(=ちゃんと名前から武将番号を逆引きできたか?) if ( 0 <= 再変更BushouID && 再変更BushouID < 最大数::武将情報::配列数 ) { // 死亡した者と、再変更武将は、同じ大名勢力家の武将か? if ( p武将情報[死亡BushouID].所属大名【大名番号】 == p武将情報[再変更BushouID].所属大名【大名番号】 ) { return 再変更BushouID + 1; // 武将番号【配列用】→武将番号 にして(要するに+1して) 値を返す。 } } // "小早川隆景は後継者になりえなかったので、ここまで来た 再変更BushouID = Get_武将番号【配列用】("毛利隆元"); // 隆元はどうか? // そいつは今、天翔記に居るか?(=ちゃんと名前から武将番号を逆引きできたか?) if ( 0 <= 再変更BushouID && 再変更BushouID < 最大数::武将情報::配列数 ) { // 死亡した者と、再変更武将は、同じ大名勢力家の武将か? if ( p武将情報[死亡BushouID].所属大名【大名番号】 == p武将情報[再変更BushouID].所属大名【大名番号】 ) { return 再変更BushouID + 1; // 武将番号【配列用】→武将番号 にして(要するに+1して) 値を返す。 } } } else if ( 死亡武将名 == "織田信長" ) { int 再変更BushouID = Get_武将番号【配列用】(顔番号::羽柴秀吉); // 顔番号5番の武将から「武将番号【配列用】」を逆引きする。顔番号5番は、「秀吉」の顔。 // そいつは今、天翔記に居るか?(=ちゃんと顔番号から武将番号を逆引きできたか?) if ( 0 <= 再変更BushouID && 再変更BushouID < 最大数::武将情報::配列数 ) { // 死亡した者と、再変更武将は、同じ大名勢力家の武将か? if ( p武将情報[死亡BushouID].所属大名【大名番号】 == p武将情報[再変更BushouID].所属大名【大名番号】 ) { return 再変更BushouID + 1; // 武将番号【配列用】→武将番号 にして(要するに+1して) 値を返す。 } } } } } } // 変更しない場合-1 return -1; }