太閤立志伝5イベントソース //【シナリオ改】Ver1.02 チャプター:{ イベント:シナリオ改{ 属性:一度だけ 発生契機:ゲームスタート時 発生条件:{ }//条件〆 スクリプト:{ 条件ブロック:(状況::シナリオ)==(0){ 文字列設定:(文字列A)[[乱麻]] } 条件ブロック:(状況::シナリオ)==(1){ 文字列設定:(文字列A)[[日輪]] } 条件ブロック:(状況::シナリオ)==(2){ 文字列設定:(文字列A)[[昇竜]] } 条件ブロック:(状況::シナリオ)==(3){ 文字列設定:(文字列A)[[覇道]] } 条件ブロック:(状況::シナリオ)==(4){ 文字列設定:(文字列A)[[転変]] } 条件ブロック:(状況::シナリオ)==(5){ 文字列設定:(文字列A)[[太平]] } ナレーション可否選択:[[<文字列A>の章・改で始めますか?]] ブロック脱出:(否) ナレーション可否選択:[[元服調査をONにしますか?]] 分岐:(可){ 更新:(イベントフラグ::シナリオ改・再構築済み)(成立) } コンテナ設定:(大名家,存在,真)//基本コンテナ コンテナソート:(無効,シャッフル,降順) コンテナソート:(無効,シャッフル,降順) ループ:{ コンテナ選択:(大名家E,先頭) ブロック脱出:(偽) 代入人物E:(大名家::大名家E.当主) 代入勢力E:(人物::人物E.所属勢力) //ナレーション:[[<勢力E>再設定中…]] コンテナ複写:(退避) コンテナ設定:(勢力,存在,真) コンテナ除外:(勢力,勢力番号,勢力E) ループ:{ コンテナ選択:(勢力A,先頭) ブロック脱出:(偽) 代入人物A:(勢力::勢力A.当主) 条件ブロック:(勢力::勢力A.勢力タイプ)==(大名家){ 更新:(人物::人物A.商人勲功)(0)//外交同盟判定 更新:(人物::人物A.海賊勲功)(0)//外交感情判定 代入x:(勢力::勢力A.外交同盟(勢力E)) 代入y:(勢力::勢力A.外交感情(勢力E)) //ナレーション:[[<勢力E>と<勢力A>\n外交同盟<x>、外交感情<y>]] 更新:(人物::人物A.商人勲功)(x) 更新:(人物::人物A.海賊勲功)(y) } 条件ブロック:(勢力::勢力A.勢力タイプ)==(忍者衆){ 更新:(人物::人物A.商人勲功)(0)//外交同盟判定 更新:(人物::人物A.海賊勲功)(0)//外交感情判定 代入x:(勢力::勢力A.外交同盟(勢力E)) 代入y:(勢力::勢力A.外交感情(勢力E)) //ナレーション:[[<勢力E>と<勢力A>\n外交同盟<x>、外交感情<y>]] 更新:(人物::人物A.商人勲功)(x) 更新:(人物::人物A.海賊勲功)(y) } 条件ブロック:(勢力::勢力A.勢力タイプ)==(海賊衆){ 更新:(人物::人物A.商人勲功)(0)//外交同盟判定 更新:(人物::人物A.忍者勲功)(0)//外交感情判定 代入x:(勢力::勢力A.外交同盟(勢力E)) 代入y:(勢力::勢力A.外交感情(勢力E)) //ナレーション:[[<勢力E>と<勢力A>\n外交同盟<x>、外交感情<y>]] 更新:(人物::人物A.商人勲功)(x) 更新:(人物::人物A.忍者勲功)(y) } 条件ブロック:(勢力::勢力A.勢力タイプ)==(商家){ 更新:(人物::人物A.海賊勲功)(0)//外交同盟判定 更新:(人物::人物A.忍者勲功)(0)//外交感情判定 代入x:(勢力::勢力A.外交同盟(勢力E)) 代入y:(勢力::勢力A.外交感情(勢力E)) //ナレーション:[[<勢力E>と<勢力A>\n外交同盟<x>、外交感情<y>]] 更新:(人物::人物A.海賊勲功)(x) 更新:(人物::人物A.忍者勲功)(y) } コンテナ選抜:(削る,1) }//ループ〆 コンテナ設定:(人物,所属大名家,大名家E) コンテナ絞り込み:(人物,カテゴリ,武将) コンテナ除外:(人物,出現フラグ,未出現) コンテナ除外:(人物,死亡フラグ,死亡) コンテナソート:(人物,身分,降順) ループ:{ コンテナ選択:(人物A,先頭) ブロック脱出:(偽) 更新:(人物::人物A.商人勲功)(0)//念のため初期化 更新:(人物::人物A.忍者勲功)(0) 更新:(人物::人物A.海賊勲功)(0) //商人勲功:身分判定→2・国主、3・城主、4・家老以下 //忍者勲功:家老以下→上司判定、城主以上→居城判定 //海賊勲功:武士勲功記憶 場合別:(人物::人物A.身分){ 場合分岐:(身分::大名){ //ナレーション:[[<人物A>、身分:大名]] 代入城A:(人物::人物A.所属拠点) //代入a:(大名家::大名家E.大方針) //代入b:(大名家::大名家E.大方針ターゲット) //代入c:(大名家::大名家E.戦略) //代入d:(大名家::大名家E.戦略ターゲット) //大方針や戦略も復元してしまうと意味がないような気がしたので外した }//大名〆 場合分岐:(身分::国主){ //ナレーション:[[<人物A>、身分:国主]] 更新:(人物::人物A.商人勲功)(2) 代入城B:(人物::人物A.所属拠点) 代入x:(城::城B.城番号) 更新:(人物::人物A.忍者勲功)(x) 代入y:(人物::人物A.武士勲功) 更新:(人物::人物A.海賊勲功)(y) }//国主〆 場合分岐:(身分::城主){ //ナレーション:[[<人物A>、身分:城主]] 更新:(人物::人物A.商人勲功)(3) 代入城B:(人物::人物A.所属拠点) 代入x:(城::城B.城番号) 更新:(人物::人物A.忍者勲功)(x) 代入y:(人物::人物A.武士勲功) 更新:(人物::人物A.海賊勲功)(y) }//城主〆 場合分岐:(その他){ //ナレーション:[[<人物A>、身分:その他]] 更新:(人物::人物A.商人勲功)(4) 代入人物D:(人物::人物A.所属上司) 代入x:(人物::人物D.人物番号) 更新:(人物::人物A.忍者勲功)(x) 代入y:(人物::人物A.武士勲功) 更新:(人物::人物A.海賊勲功)(y) }//その他〆 }//場合別〆 コンテナ選抜:(削る,1) }//ループ〆 コンテナ設定:(人物,所属大名家,大名家E) コンテナ絞り込み:(人物,カテゴリ,武将) コンテナ除外:(人物,人物番号,人物E)//当主は解雇ループから除外 コンテナ除外:(人物,死亡フラグ,死亡) コンテナ除外:(人物,出現フラグ,未出現) ループ:{ コンテナ選択:(人物C,先頭) ブロック脱出:(偽) //ナレーション:[[<人物C>解雇]] 人物解雇:(人物C,寧波の町,出現済み) コンテナ選抜:(削る,1) }//ループ〆 //ナレーション:[[解雇ループ脱出]] コンテナ設定:(城,所属大名家,大名家E) 調査:(コンテナカウンタ)==(1) 分岐:(真){ //ナレーション:[[分岐:支配城ひとつ]] コンテナ設定:(大名家,存在,真) コンテナ除外:(大名家,大名家番号,大名家E) コンテナソート:(無効,シャッフル,降順) コンテナ選択:(大名家C,先頭) //ナレーション:[[<大名家E>滅亡]] 勢力滅亡:(大名家E,大名家C) 人物解雇:(人物E,寧波の町,出現済み) 独立:(人物E,城A,陪臣のみ) 代入大名家A:(人物::人物E.所属大名家) //ナレーション:[[<人物E>独立\n<大名家A>再起動]] } 分岐:(偽){ //ナレーション:[[分岐:支配城複数]] AND調査:{ 調査:(人物A)!=(人物E) 調査:(人物::人物A.親)!=(人物E) 調査:(人物::人物E.親)!=(人物A)//元の家紋を使われるのを予防 } 分岐:(真){ 独立:(人物A,城A,陪臣のみ)//人物Aが独立 代入大名家B:(人物::人物A.所属大名家) //ナレーション:[[<人物A>独立\n<大名家E>滅亡]] 勢力滅亡:(大名家E,大名家B) 人物解雇:(人物E,寧波の町,出現済み) 独立:(人物E,城A,陪臣のみ) 代入大名家A:(人物::人物E.所属大名家) //ナレーション:[[<人物E>独立\n<大名家A>再起動]] 勢力滅亡:(大名家B,大名家A) 人物解雇:(人物A,寧波の町,出現済み) } 分岐:(偽){ コンテナ設定:(人物,カテゴリ,武将) コンテナ除外:(人物,所属大名家,大名家E) コンテナ絞り込み:(人物,立場,直臣) コンテナ絞り込み:(人物,身分,足軽組頭) コンテナ選択:(人物D,先頭) 代入人物C:(人物::人物D.所属上司) //ナレーション:[[ダミー当主<人物D>]] 代入z:(人物::人物D.武士勲功) 独立:(人物D,城A,陪臣のみ)//人物Dが独立 代入大名家B:(人物::人物D.所属大名家) //ナレーション:[[<人物D>独立\n<大名家E>滅亡]] 勢力滅亡:(大名家E,大名家B) 人物解雇:(人物E,寧波の町,出現済み) 独立:(人物E,城A,陪臣のみ) 代入大名家A:(人物::人物E.所属大名家) //ナレーション:[[<人物E>独立\n<大名家A>再起動]] //ナレーション:[[ダミー<大名家B>滅亡]] 勢力滅亡:(大名家B,大名家A) 人物解雇:(人物D,京の町,出現済み) //ナレーション:[[ダミー<人物D>解雇]] 更新:(人物::人物D.武士勲功)(z) 人物登用:(人物D,直臣,人物C) 更新:(人物::人物D.武士勲功)(z) //ナレーション:[[ダミー<人物D>再登用]] } } //ナレーション:[[<人物E>勲功初期化]] 更新:(人物::人物E.商人勲功)(0)//勲功初期化 更新:(人物::人物E.忍者勲功)(0) 更新:(人物::人物E.海賊勲功)(0) コンテナ設定:(人物,所属拠点,寧波の町) コンテナ絞り込み:(人物,カテゴリ,武将) コンテナソート:(人物,海賊勲功,降順) ループ:{ コンテナ選択:(人物A,先頭) ブロック脱出:(偽) 代入人物B:(人物::人物A.忍者勲功) 代入s:(人物::人物A.商人勲功) OR調査:{ 調査:(s)<(4) AND調査:{ 調査:(s)==(4) 調査:(人物E)==(人物B) } } 分岐:(真){ 代入k:(人物::人物A.海賊勲功) 更新:(人物::人物A.武士勲功)(k) 人物登用:(人物A,直臣,人物E) 更新:(人物::人物A.武士勲功)(k) //ナレーション:[[<人物A>再登用\n直臣]] } 分岐:(偽){ 代入k:(人物::人物A.海賊勲功) 更新:(人物::人物A.武士勲功)(k) 人物登用:(人物A,陪臣,人物B) 更新:(人物::人物A.武士勲功)(k) //ナレーション:[[<人物A>再登用\n<人物B>の陪臣]] } 条件ブロック:(s)==(4){ //ナレーション:[[<人物A>勲功初期化]] 更新:(人物::人物A.商人勲功)(0)//勲功初期化 更新:(人物::人物A.忍者勲功)(0) 更新:(人物::人物A.海賊勲功)(0) } コンテナ選抜:(削る,1) }//ループ〆 コンテナ設定:(人物,所属大名家,大名家A) コンテナ除外:(人物,身分,大名) コンテナ除外:(人物,出現フラグ,未出現) コンテナ除外:(人物,死亡フラグ,死亡) コンテナ除外:(人物,商人勲功,0) 条件ループ:(コンテナカウンタ)>(0){ コンテナ選択:(人物B,先頭) ブロック脱出:(偽) 代入s:(人物::人物B.商人勲功) 代入城B:(人物::人物B.忍者勲功) 調査:(s)==(2) 分岐:(真){ 代入国B:(城::城B.所属国) 国主任命:(人物B,国B,城B) //ナレーション:[[<人物B>国主任命、<城B>城]] } 分岐:(偽){ 城主任命:(人物B,城B) //ナレーション:[[<人物B>城主任命、<城B>城]] } //ナレーション:[[<人物B>勲功初期化]] 更新:(人物::人物B.商人勲功)(0)//勲功初期化 更新:(人物::人物B.忍者勲功)(0) 更新:(人物::人物B.海賊勲功)(0) コンテナ選抜:(削る,1) }//ループ〆 代入勢力E:(人物::人物E.所属勢力) コンテナ設定:(勢力,存在,真) コンテナ除外:(勢力,勢力番号,勢力E) ループ:{ コンテナ選択:(勢力A,先頭) ブロック脱出:(偽) 代入人物A:(勢力::勢力A.当主) 条件ブロック:(勢力::勢力A.勢力タイプ)==(大名家){ 代入x:(人物::人物A.商人勲功) 代入y:(人物::人物A.海賊勲功) //ナレーション:[[<勢力E>と<勢力A>\n外交同盟<x>、外交感情<y>]] 更新:(勢力::勢力A.外交同盟(勢力E))(x) 更新:(勢力::勢力A.外交感情(勢力E))(y) 更新:(人物::人物A.商人勲功)(0) 更新:(人物::人物A.海賊勲功)(0) } 条件ブロック:(勢力::勢力A.勢力タイプ)==(忍者衆){ 代入x:(人物::人物A.商人勲功) 代入y:(人物::人物A.海賊勲功) //ナレーション:[[<勢力E>と<勢力A>\n外交同盟<x>、外交感情<y>]] 更新:(勢力::勢力A.外交同盟(勢力E))(x) 更新:(勢力::勢力A.外交感情(勢力E))(y) 更新:(人物::人物A.商人勲功)(0) 更新:(人物::人物A.海賊勲功)(0) } 条件ブロック:(勢力::勢力A.勢力タイプ)==(海賊衆){ 代入x:(人物::人物A.商人勲功) 代入y:(人物::人物A.忍者勲功) //ナレーション:[[<勢力E>と<勢力A>\n外交同盟<x>、外交感情<y>]] 更新:(勢力::勢力A.外交同盟(勢力E))(x) 更新:(勢力::勢力A.外交感情(勢力E))(y) 更新:(人物::人物A.商人勲功)(0) 更新:(人物::人物A.忍者勲功)(0) } 条件ブロック:(勢力::勢力A.勢力タイプ)==(商家){ 代入x:(人物::人物A.海賊勲功) 代入y:(人物::人物A.忍者勲功) //ナレーション:[[<勢力E>と<勢力A>\n外交同盟<x>、外交感情<y>]] 条件ブロック:(x)!=(0){ 代入商家A:(人物::人物A.所属商家) 御用商人になる:(商家A,大名家A) } 更新:(勢力::勢力A.外交感情(勢力E))(y) 更新:(人物::人物A.海賊勲功)(0) 更新:(人物::人物A.忍者勲功)(0) } コンテナ選抜:(削る,1) }//ループ〆 //更新:(大名家::大名家A.大方針)(a) //更新:(大名家::大名家A.大方針ターゲット)(b) //更新:(大名家::大名家A.戦略)(c) //更新:(大名家::大名家A.戦略ターゲット)(d) コンテナ複写:(復帰) コンテナ選抜:(削る,1) }//基本ループ〆 ナレーション:[[<文字列A>の章の再構築が終了しました]] }//スクリプト〆 }//イベント〆 イベント:シナリオ改・元服調査{ 属性:何度でも 発生契機:毎月処理の最後絶対 発生条件:{ 調査:(イベントフラグ::シナリオ改・再構築済み)==(成立) 調査:(状況::月)==(1) コンテナ設定:(人物,カテゴリ,武将) コンテナ絞り込み:(人物,出現フラグ,未出現) コンテナ除外:(人物,身分,浪人) コンテナ除外:(人物,身分,下忍) コンテナ除外:(人物,身分,中忍) コンテナ除外:(人物,身分,上忍) コンテナ除外:(人物,身分,元締) コンテナ除外:(人物,身分,頭) コンテナ除外:(人物,身分,水夫) コンテナ除外:(人物,身分,水夫頭) コンテナ除外:(人物,身分,船大将) コンテナ除外:(人物,身分,頭領) コンテナ除外:(人物,身分,見習い) コンテナ除外:(人物,身分,手代) コンテナ除外:(人物,身分,番頭) コンテナ除外:(人物,身分,支配人) コンテナ除外:(人物,身分,当主) コンテナ絞り込み:(人物,年齢,14) 調査:(コンテナカウンタ)>(0) }//条件〆 スクリプト:{ ループ:{ コンテナ選択:(人物A,先頭) ブロック脱出:(偽) 代入人物B:(無効) 代入人物C:(無効) 代入人物D:(無効) 代入人物E:(無効) 条件ブロック:(人物::人物A.所属上司)!=(無効){ 代入人物B:(人物::人物A.所属上司) 代入勢力B:(人物::人物B.所属勢力) 代入人物C:(勢力::勢力B.当主) 代入人物D:(人物::人物B.所属上司) } 条件ブロック:(人物::人物A.親)!=(無効){ 代入人物E:(人物::人物A.親) } OR調査:{ 調査:(人物::人物B.身分)==(大名) AND調査:{ 調査:(人物::人物B.所属勢力タイプ)==(大名家) 調査:(人物::人物B.立場)==(寄騎) } } 分岐:(真){ 人物解雇:(人物A,京の町,出現済み) 人物登用:(人物A,直臣,人物C) //ナレーション:[[<人物A>元服\n<人物C>の直臣\n設定所属上司:<人物B>]] 条件ブロック:(人物::主人公.所属勢力)==(勢力B){ 会話:(忍者,主人公)[[当家の<人物A>が元服しました]] } } AND調査:{ 調査:(人物::人物A.出現フラグ)==(未出現) 調査:(人物::人物B.所属勢力タイプ)==(大名家) 調査:(人物::人物B.立場)==(直臣) 調査:(人物::人物B.身分)>=(足軽大将) } 分岐:(真){ 人物解雇:(人物A,京の町,出現済み) 人物登用:(人物A,陪臣,人物B)//初期上司の陪臣 //ナレーション:[[<人物A>元服\n<人物B>の陪臣\n設定所属上司:<人物B>]] 条件ブロック:(人物::主人公.所属勢力)==(勢力B){ 会話:(忍者,主人公)[[当家の<人物A>が元服しました]] } } AND調査:{ 調査:(人物::人物A.出現フラグ)==(未出現) 調査:(人物::人物B.立場)==(直臣) 調査:(人物::人物B.身分)==(足軽組頭) } 分岐:(真){ 人物解雇:(人物A,京の町,出現済み) 人物登用:(人物A,直臣,人物C)//初期上司大名家の直臣 //ナレーション:[[<人物A>元服\n<人物C>の直臣\n設定所属上司:<人物B>]] 条件ブロック:(人物::主人公.所属勢力)==(勢力B){ 会話:(忍者,主人公)[[当家の<人物A>が元服しました]] } } AND調査:{ 調査:(人物::人物A.出現フラグ)==(未出現) 調査:(人物::人物B.所属勢力タイプ)==(大名家) 調査:(人物::人物B.立場)==(陪臣) } 分岐:(真){ 人物解雇:(人物A,京の町,出現済み) 人物登用:(人物A,陪臣,人物D)//初期上司の上司の陪臣 //ナレーション:[[<人物A>元服\n<人物D>の陪臣\n設定所属上司:<人物B>]] 条件ブロック:(人物::主人公.所属勢力)==(勢力B){ 会話:(忍者,主人公)[[当家の<人物A>が元服しました]] } } AND調査:{ 調査:(人物::人物A.出現フラグ)==(未出現) 調査:(人物::人物E.死亡フラグ)!=(死亡) 調査:(人物::人物E.身分)==(大名) } 分岐:(真){ 人物解雇:(人物A,京の町,出現済み) 代入勢力C:(人物::人物E.所属勢力) 人物登用:(人物A,直臣,人物E)//親の直臣 //ナレーション:[[<人物A>元服\n<人物E>の直臣\n設定所属上司:<人物B>]] 条件ブロック:(人物::主人公.所属勢力)==(勢力C){ 会話:(忍者,主人公)[[当家の<人物A>が元服しました]] } } AND調査:{ 調査:(人物::人物A.出現フラグ)==(未出現) 調査:(人物::人物E.死亡フラグ)!=(死亡) 調査:(人物::人物E.所属勢力タイプ)==(大名家) 調査:(人物::人物E.身分)!=(大名) 調査:(人物::人物E.立場)==(直臣) 調査:(人物::人物E.身分)>=(足軽大将) } 分岐:(真){ 人物解雇:(人物A,京の町,出現済み) 代入勢力C:(人物::人物E.所属勢力) 人物登用:(人物A,陪臣,人物E)//親の陪臣 //ナレーション:[[<人物A>元服\n<人物E>の陪臣\n設定所属上司:<人物B>]] 条件ブロック:(人物::主人公.所属勢力)==(勢力C){ 会話:(忍者,主人公)[[当家の<人物A>が元服しました]] } } AND調査:{ 調査:(人物::人物A.出現フラグ)==(未出現) 調査:(人物::人物E.死亡フラグ)!=(死亡) 調査:(人物::人物E.所属勢力タイプ)==(大名家) 調査:(人物::人物E.立場)==(直臣) 調査:(人物::人物E.身分)==(足軽大将) } 分岐:(真){ 人物解雇:(人物A,京の町,出現済み) 代入勢力C:(人物::人物E.所属勢力) 代入人物C:(人物::人物E.所属上司) 人物登用:(人物A,直臣,人物C)//親の上司の直臣 //ナレーション:[[<人物A>元服\n<人物C>の直臣\n設定所属上司:<人物B>]] 条件ブロック:(人物::主人公.所属勢力)==(勢力C){ 会話:(忍者,主人公)[[当家の<人物A>が元服しました]] } } AND調査:{ 調査:(人物::人物A.出現フラグ)==(未出現) 調査:(人物::人物E.死亡フラグ)!=(死亡) 調査:(人物::人物E.所属勢力タイプ)==(大名家) 調査:(人物::人物E.立場)==(寄騎) } 分岐:(真){ 人物解雇:(人物A,京の町,出現済み) 代入勢力C:(人物::人物E.所属勢力) 代入人物C:(勢力::勢力C.当主) 人物登用:(人物A,直臣,人物C)//親の上司の直臣 //ナレーション:[[<人物A>元服\n<人物C>の直臣\n設定所属上司:<人物B>]] 条件ブロック:(人物::主人公.所属勢力)==(勢力C){ 会話:(忍者,主人公)[[当家の<人物A>が元服しました]] } } AND調査:{ 調査:(人物::人物A.出現フラグ)==(未出現) 調査:(人物::人物E.死亡フラグ)!=(死亡) 調査:(人物::人物E.所属勢力タイプ)==(大名家) 調査:(人物::人物E.立場)==(陪臣) } 分岐:(真){ 人物解雇:(人物A,京の町,出現済み) 代入勢力C:(人物::人物E.所属勢力) 代入人物C:(人物::人物E.所属上司) 人物登用:(人物A,陪臣,人物C)//親の上司の陪臣 //ナレーション:[[<人物A>元服\n<人物C>の直臣\n設定所属上司:<人物B>]] 条件ブロック:(人物::主人公.所属勢力)==(勢力C){ 会話:(忍者,主人公)[[当家の<人物A>が元服しました]] } } コンテナ選抜:(削る,1) }//ループ〆 }//スクリプト〆 }//イベント〆 }//チャプター〆