太閤立志伝5イベントソース //子孫死亡 // //ソース説明 //@12月にコンテナコマンドを使い、1歳までの人物を探します。 //発生契機を「毎月処理の最後」や「一日開始処理の先頭」で年末1日にしないのは、 //「技能師事の間の後の時間送りの際などの時間送り中は発生しない」という制限のためです。 //12月になると毎朝確認しますので、技能師事終了後、昼の間に別の技能師事をするなどの //体力を無視した行動さえとらなければ、年に1回は発生するでしょう。 // //問題点としては12月の毎朝の処理が遅くなります。ご不満のある方は発生契機を「毎月処理の最後」にして //技能師事などで飛ばさないようにすればいいと思います。(未確認) //また、同じ発生条件のイベントがあり、そのイベントが発生しない場合はこのイベントの属性を「何度でも|ひかえめ」に変えてください。 // //A親のいる1歳までの人物を一人づつ調査し、親が死亡の場合はその人物を死亡させます。 //実の母親がデフォルトでゲームに登場する人物は、それそれの母親の婚姻や死亡を確認し、 //状況に応じてその人物を死亡させます。 //側室の子などの場合を考慮し、「場合別」を使い人物別に両親を割り当ててますので、 //他のイベント等で奥さんを変えた場合は死亡します。 // //武将は「武将死亡」で死亡にしますが、他のイベント等で代替のために親設定を使うかもしれないので、新武将は死亡にしません。 //新武将も死亡させたい場合は、208行目を「調査:(人物::人物A.人物番号)<(800)」から //「調査:(人物::人物A.カテゴリ)==(武将)」に変えてください。 //姫君は夫をコンテナコマンドで検索し、「お嫁さん死亡」で死亡にします。 //淀殿、相模などは誕生前から奥さんにしている人物がいないので、 //コンテナコマンドで奥さんがいない人物に一旦嫁がせて死亡にします。(イベコンv1.01) // //その他、不明点など //○基本的に父親が病死の場合は母親との婚姻は切れないが、戦死の場合は母親との婚姻が切れて母親も死亡する。 //このスクリプトで死亡した姫君は夫との婚姻が切れましたが、父親生存で母親と婚姻したまま母親が死亡している場合が、 //万が一あるかもしれないので、一応、母が死亡している場合も死亡にしました。 //○お市の娘は1歳のときのみ、母親の婚姻を調査します。 //○豊臣秀頼の場合は両親それぞれの死亡以外は対応してません。 チャプター:{ イベント:子孫死亡{ 属性:何度でも 発生契機:一日開始処理の先頭 発生条件:{ 調査:(状況::月)==(12) } スクリプト:{ コンテナ設定:(人物,年齢,1)//1歳までの人物を検索 コンテナ除外:(人物,親,無効)//親がいない者は除く コンテナ除外:(人物,死亡フラグ,死亡)//既に死亡した者は除く ループ:{//複数の人物を処理する 調査:(コンテナカウンタ)==(0) ブロック脱出:(真)//処理する人物がいなくなったので終わる コンテナ選択:(人物A,先頭)//人物を決定 代入b:(0)//死亡フラグ 代入人物B:(人物::人物A.親)//人物Aの父 調査:(人物::人物B.死亡フラグ)==(死亡) 分岐:(真){//親が死亡している場合 代入b:(1)//人物A死亡 //デバッグ 会話:(忍者,主人公)[[{二人称名前}、(人物B)死亡のため\n(人物A)は生まれません]] }//親が死亡している場合終わり 分岐:(偽){//親が生存している場合 代入c:(0)//母親フラグ 場合別:(人物::人物A){//母親がゲームに登場する人物を抜き出す 場合分岐:(人物::蒲生秀行){//蒲生秀行の場合 代入人物B:(人物::蒲生氏郷)//人物Aの父 代入人物C:(人物::冬姫)//人物Aの母 代入c:(1)//母親あり1 } 場合分岐:(人物::黒田長政){//黒田長政の場合 代入人物B:(人物::黒田如水)//人物Aの父 代入人物C:(人物::幸円)//人物Aの母 代入c:(1)//母親あり1 } 場合分岐:(人物::武田義信){//武田義信の場合 代入人物B:(人物::武田信玄)//人物Aの父 代入人物C:(人物::三条)//人物Aの母 代入c:(1)//母親あり1 } 場合分岐:(人物::伊達政宗){//伊達政宗の場合 代入人物B:(人物::伊達輝宗)//人物Aの父 代入人物C:(人物::義姫)//人物Aの母 代入c:(1)//母親あり1 } 場合分岐:(人物::徳川信康){//徳川信康の場合 代入人物B:(人物::徳川家康)//人物Aの父 代入人物C:(人物::瀬名)//人物Aの母 代入c:(1)//母親あり1 } 場合分岐:(人物::鍋島勝茂){//鍋島勝茂の場合 代入人物B:(人物::鍋島直茂)//人物Aの父 代入人物C:(人物::彦鶴)//人物Aの母 代入c:(1)//母親あり1 } 場合分岐:(人物::北条氏直){//北条氏直の場合 代入人物B:(人物::北条氏政)//人物Aの父 代入人物C:(人物::梅)//人物Aの母 代入c:(1)//母親あり1 } 場合分岐:(人物::前田利長){//前田利長の場合 代入人物B:(人物::前田利家)//人物Aの父 代入人物C:(人物::まつ)//人物Aの母 代入c:(1)//母親あり1 } 場合分岐:(人物::前田利政){//前田利政の場合 代入人物B:(人物::前田利家)//人物Aの父 代入人物C:(人物::まつ)//人物Aの母 代入c:(1)//母親あり1 } 場合分岐:(人物::柳生宗矩){//柳生宗矩の場合 代入人物B:(人物::柳生石舟斎)//人物Aの父 代入人物C:(人物::春桃)//人物Aの母 代入c:(1)//母親あり1 } 場合分岐:(人物::梅){//梅の場合 代入人物B:(人物::武田信玄)//人物Aの父 代入人物C:(人物::三条)//人物Aの母 代入c:(1)//母親あり1 } 場合分岐:(人物::豪姫){//豪姫の場合 代入人物B:(人物::前田利家)//人物Aの父 代入人物C:(人物::まつ)//人物Aの母 代入c:(1)//母親あり1 } 場合分岐:(人物::玉){//玉の場合 代入人物B:(人物::明智光秀)//人物Aの父 代入人物C:(人物::煕子)//人物Aの母 代入c:(1)//母親あり1 } 場合分岐:(人物::淀殿){//淀殿の場合 代入人物B:(人物::浅井長政)//人物Aの父 代入人物C:(人物::お市)//人物Aの母 代入c:(2)//母親あり2 } 場合分岐:(人物::初姫){//初姫の場合 代入人物B:(人物::浅井長政)//人物Aの父 代入人物C:(人物::お市)//人物Aの母 代入c:(2)//母親あり2 } 場合分岐:(人物::小督){//小督の場合 代入人物B:(人物::浅井長政)//人物Aの父 代入人物C:(人物::お市)//人物Aの母 代入c:(2)//母親あり2 } 場合分岐:(人物::豊臣秀頼){//豊臣秀頼の場合 調査:(人物::淀殿.死亡フラグ)==(死亡) 分岐:(真){//淀殿が死亡している場合 代入b:(1)//人物A死亡 //デバッグ 会話:(忍者,主人公)[[{二人称名前}、(淀殿)死亡のため\n(人物A)は生まれません]] } } }//場合別終わり 調査:(変数::c)==(1) 分岐:(真){//母親あり1の場合 OR調査:{ 調査:(人物::人物C.死亡フラグ)==(死亡) 調査:(人物::人物B.奥さん)!=(人物C) } 分岐:(真){//母が死亡か離縁している場合 代入b:(1)//人物A死亡 //デバッグ 会話:(忍者,主人公)[[{二人称名前}、(人物C)死亡か離縁のため\n(人物A)は生まれません]] } } 調査:(変数::c)==(2) 分岐:(真){//母親あり2の場合 OR調査:{ 調査:(人物::人物C.死亡フラグ)==(死亡) AND調査:{//淀殿の場合 調査:(人物::人物A)==(淀殿) 調査:(状況::年)==(1565) 調査:(人物::人物B.奥さん)!=(人物C) } AND調査:{//初姫の場合 調査:(人物::人物A)==(初姫) 調査:(状況::年)==(1569) 調査:(人物::人物B.奥さん)!=(人物C) } AND調査:{//小督の場合 調査:(人物::人物A)==(小督) 調査:(状況::年)==(1572) 調査:(人物::人物B.奥さん)!=(人物C) } } 分岐:(真){//母が死亡か未婚の場合 代入b:(1)//人物A死亡 //デバッグ 会話:(忍者,主人公)[[{二人称名前}、(人物C)死亡か\n(人物A)出生時に(人物C)未婚のため\n(人物A)は生まれません]] } } }//親が生存している場合終わり 調査:(変数::b)==(1) 分岐:(真){//人物A死亡の場合 調査:(人物::人物A.カテゴリ)==(イベント人物) 分岐:(真){//イベント人物 コンテナ複写:(退避)//死亡させるため裏コンテナへ移す コンテナ設定:(人物,奥さん,人物A)//死亡させるため夫を検索 調査:(コンテナカウンタ)==(0) 分岐:(真){//奥さんにしている人物がいない場合の処理 コンテナ設定:(人物,奥さん,無効)//死亡させるため奥さんがいない人物を検索 コンテナ除外:(人物,人物番号,主人公)//念のため主人公は外す(多分いらない) コンテナ選択:(人物D,先頭)//奥さんがいない人物を決定 更新:(人物::人物D.奥さん)(人物A)//奥さんがいない人物に嫁がせる お嫁さん死亡:(人物D)//◆死亡 更新:(人物::人物D.奥さん)(無効)//死亡させたので離縁させる(多分いらない) } 分岐:(偽){//奥さんにしている人物がいる場合の処理 コンテナ選択:(人物D,先頭)//夫を決定 お嫁さん死亡:(人物D)//◆死亡 } コンテナ複写:(復帰)//死亡させたので裏コンテナから戻す } 分岐:(偽){//イベント人物以外の場合 調査:(人物::人物A.人物番号)<(800) 分岐:(真){//一般武将の場合の処理 武将死亡:(人物A)//◆死亡 } } }//人物A死亡の場合終わり コンテナ選抜:(削る,1)//次の人物へ }//ループ終わり }//スクリプト終わり }//イベント終わり }