太閤立志伝5イベントソース //全ての城でそれなりの内政が実施されるようにします チャプター:{ イベント:拠点別内政強制実行{ 属性:何度でも 発生契機:毎月処理の最後絶対 発生条件:{ OR調査:{ 調査:(状況::月)==(2) 調査:(状況::月)==(6) 調査:(状況::月)==(10) } } スクリプト:{ コンテナ設定:(城,戦闘フラグ,平常) コンテナ除外:(城,一揆フラグ,真) コンテナ除外:(城,所属大名家,無効)//築城前の墨俣を除外 ループ:{ コンテナ選択:(城A,先頭) ブロック脱出:(偽) コンテナ複写:(退避) 代入人物A:(無効) 代入人物B:(無効) 代入a:(0) 代入b:(0) 代入c:(0) 代入d:(0) 代入e:(0) 代入f:(0) 代入g:(0) 代入h:(0) 代入x:(0) 代入y:(0) 代入l:(0) 代入z:(0)//0クリア 代入拠点A:(城::城A.城番号) 代入大名家A:(城::城A.所属大名家) 代入人物A:(城::城A.城主) //会話:(人物A,賊)[[<城A>・<大名家A>管轄・城主<人物A>]] 調査:(大名家::大名家A.本城)==(城A) 分岐:(真){ 調査:(人物A)==(主人公) 分岐:(真){ 代入z:(0) //会話:(人物A,賊):[[主人公大名家本城なのでzは<z>]] }//主人公の居城はパスする 分岐:(偽){ 調査:(拠点::拠点A.立地)==(平地) 分岐:(真){ 代入z:(30)//城規模制限、平地はなし //会話:(人物A,賊):[[平地の本城なのでzは<z>]] } OR調査:{ 調査:(拠点::拠点A.立地)==(港湾) 調査:(拠点::拠点A.立地)==(山地) } 分岐:(真){ 代入z:(27)//城規模制限、平地以外は27 //会話:(人物A,賊)[[平地以外の本城なのでzは<z>]] } }//NPC本城 }//本城 分岐:(偽){ 調査:(人物::人物A.所属拠点)==(拠点A) 分岐:(真){ 調査:(人物A)==(主人公) 分岐:(真){ 代入z:(0) //会話:(人物A,賊):[[<人物A>は主人公なのでzは<z>。]] }//主人公の居城はパスする 分岐:(偽){ 調査:(拠点::拠点A.立地)==(平地) 分岐:(真){ 代入z:(22)//城規模制限、平地は22 //会話:(人物A,賊)[[<拠点A>の立地は平地なのでzは<z>]] } OR調査:{ 調査:(拠点::拠点A.立地)==(港湾) 調査:(拠点::拠点A.立地)==(山地) } 分岐:(真){ 代入z:(19)//城規模制限、平地以外は19 //会話:(人物A,賊)[[<拠点A>の立地は平地以外なのでzは<z>]] } }//NPC城主or国主本城 }//城主居城 分岐:(偽){ 調査:(人物A)==(主人公) 分岐:(真){ 代入z:(0) //会話:(人物A,賊):[[<人物A>は主人公なのでzは<z>。]] }//主人公管理の直轄城はパスする 分岐:(偽){ 代入z:(14)//城規模制限、直轄城は立地に関わらず14。 //会話:(人物A,賊)[[<城A>は<人物A>管理の直轄城なのでzは<z>]] }//NPC直轄城。NPCが管理してるなら主人公が所属する大名家の直轄城でも対象になる。国主直轄城は国主が城主扱いになるのは確認済み。 }//直轄城 } 調査:(z)!=(0) 分岐:(真){ 代入人物A:(城::城A.城主) 代入x:(人物A.政務)//後々使うので別個保存 代入a:(x)*(85)//政務の値の85% 代入b:(人物A.知謀)*(15)//知謀はボーナス扱いなので低めの15% 代入c:(a)+(b) 代入c:(c)/(100)//城主判定値 //会話:(人物A,賊)[[<人物A>の判定値は政務<x>、<a>+<b>で合計<c>]] 代入f:(0)//配下判定値の予定 コンテナ設定:(人物,所属上司,人物A) コンテナ絞り込み:(人物,イベント参加可能,真) ループ:{//第二ループ コンテナ選択:(人物B,先頭) ブロック脱出:(偽) 代入d:(人物B.政務)*(35)//政務の値の35% 代入e:(人物B.知謀)*(10)//知謀の値の10% 代入g:(d)+(e) 代入g:(g)/(100)//配下起因発生率基本値 代入h:(人物B.弁舌技能)+(1) 代入h:(h)*(2)//弁舌技能ボーナス 代入g:(g)+(h) 調査:(f)<(g) 分岐:(真){ 代入f:(g)//更新された 代入y:(人物::人物B.政務)//更新された人物の政務を記憶する。 //会話:(人物B,賊)[[<人物B>の判定値は<d>+<e>+<h>で合計<g>、f<f>を更新。政務値<y>]] } 分岐:(偽){ 代入f:(f)//更新されない } コンテナ選抜:(削る,1) }//第二ループ〆 調査:(人物::人物A.気性)==(短気) 分岐:(真){ 代入f:(f)-(5)//短気だと聞き入れづらい } 調査:(人物::人物A.主義)==(現実) 分岐:(真){ 代入f:(f)+(5)//現実見てると聞き入れやすい } 代入b:(人物::人物A.政務)*(2) 調査:(人物::人物A.武力)>(b) 分岐:(真){ 代入f:(f)-(5)//政務×2よりも武力の方が高いくらいに政務が低いと聞き入れづらい。 } 調査:(f)<(0) 分岐:(真){ 代入f:(0) } //会話:(人物A,賊)[[配下起因最終値f<f>]] 調査:(x)>(y)//内政実行回数を決める。政務が高い方の値/10が回数。最低でも1回。 分岐:(真){//拠点主の政務値を参照 代入l:(x)/(10) 調査:(l)<(1) 分岐:(真){ 代入l:(1) } } 分岐:(偽){//配下の政務値を参照 代入l:(y)/(10) 調査:(l)<(1) 分岐:(真){ 代入l:(1) } } 調査:(z)<=(14) 分岐:(真){ 代入l:(l)/(2)//直轄城は半分の回数。 調査:(l)<(1) 分岐:(真){ 代入l:(1) } } //会話:(人物A,賊)[[政務ループ回数lは<l>]] ループ:{//内政実行第二ループ 代入r:(Rnd100) 代入u:(Rnd)%(9)//何の内政をやるかランダムで判定 //会話:(人物A,賊)[[ランダム値<r>、政務実行種類判定値u<u>]] 場合別:(u){ 場合分岐:(1){//増築 OR調査:{//成否調査 調査:(c)>(r) 調査:(f)>(r) 調査:(城::城A.規模)<(5)//規模5未満の城は悲しすぎるので、無条件で成功扱い } 分岐:(真){//成功。増加値は1で固定。 代入j:(城::城A.規模)+(1) 調査:(j)>(z)//zは軍備制限に合わせた城の最大規模。 分岐:(真){ 代入j:(城::城A.規模)//zを入れると軍備制限を入れてる事前提の更新になる。増える前の規模を入れる事で、軍備制限を入れてなくても現在値を維持できるように。 } 更新:(城::城A.規模)(j) //会話:(人物A,賊)[[増築を実行。<城A>最大規模は<z>で規模<j>に更新]] }//増築成功〆 }//増築〆 場合分岐:(2){//開墾 OR調査:{//成否調査 調査:(c)>(r) 調査:(f)>(r) } 分岐:(真){//成功。 代入j:(人物::人物A.開墾技能)*(4) 代入k:(人物::人物A.政務)/(20) 代入m:(j)+(k) 代入m:(m)/(2) //会話:(人物A,賊)[[開墾を実行。開墾技能<j>政務<k>で<人物A>判定値合計<m>]] 代入p:(0) コンテナ設定:(人物,所属上司,人物A) コンテナ絞り込み:(人物,イベント参加可能,真) コンテナソート:(人物,政務,降順) コンテナソート:(人物,開墾技能,降順) コンテナ選択:(人物B,先頭) 調査:(人物B)!=(無効) 分岐:(真){ 代入j:(人物::人物B.開墾技能)*(4) 代入k:(人物::人物B.政務)/(20) 代入p:(j)+(k) 代入p:(p)/(2) //会話:(人物B,賊)[[配下は<人物B>が選択。開墾技能<j>政務<k>で<人物B>判定値合計<p>]] } 代入q:(0) 調査:(m)<(p) 分岐:(真){ 代入q:(p)//配下の方が成果が高い //会話:(人物B,賊)[[配下<人物B>の値<p>を採用し<q>。]] } 分岐:(偽){ 代入q:(m)//拠点主の方が成果が高い //会話:(人物B,賊)[[拠点主<人物A>の値<m>を採用し<q>。]] } 代入j:(城::城A.現石高)+(q) 調査:(j)>(城::城A.基準石高) 分岐:(真){ 代入j:(城::城A.基準石高) } 更新:(城::城A.現石高)(j) //会話:(人物A,賊)[[<城A>の石高は<q>増加して<j>に更新。]] }//開墾成功〆 }//開墾〆 場合分岐:(3){//鉱山開発 OR調査:{//成否調査 調査:(c)>(r) 調査:(f)>(r) } 分岐:(真){//成功。 代入j:(人物::人物A.鉱山技能)*(4) 代入k:(人物::人物A.政務)/(20) 代入m:(j)+(k) 代入m:(m)/(3) //会話:(人物A,賊)[[鉱山を実行。鉱山技能<j>政務<k>で<人物A>判定値合計<m>]] 代入p:(0) コンテナ設定:(人物,所属上司,人物A) コンテナ絞り込み:(人物,イベント参加可能,真) コンテナソート:(人物,政務,降順) コンテナソート:(人物,鉱山技能,降順) コンテナ選択:(人物B,先頭) 調査:(人物B)!=(無効) 分岐:(真){ 代入j:(人物::人物B.鉱山技能)*(4) 代入k:(人物::人物B.政務)/(20) 代入p:(j)+(k) 代入p:(p)/(3) //会話:(人物B,賊)[[配下は<人物B>が選択。鉱山技能<j>政務<k>で<人物B>判定値合計<p>]] } 代入q:(0) 調査:(m)<(p) 分岐:(真){ 代入q:(p)//配下の方が成果が高い //会話:(人物B,賊)[[配下<人物B>の値<p>を採用し<q>。]] } 分岐:(偽){ 代入q:(m)//拠点主の方が成果が高い //会話:(人物B,賊)[[拠点主<人物A>の値<m>を採用し<q>。]] } 代入j:(城::城A.現鉱山)+(q) 調査:(j)>(城::城A.鉱山最高値) 分岐:(真){ 代入j:(城::城A.鉱山最高値) } 更新:(城::城A.現鉱山)(j) //会話:(人物A,賊)[[<城A>の鉱山は<q>増加して<j>に更新。]] }//鉱山成功〆 }//鉱山〆 場合分岐:(4){//補修 代入q:(城::城A.規模)*(8)//防御度最大値 調査:(城::城A.規模)>=(27) 分岐:(真){ //規模27以上は制限なし } 分岐:(偽){ 調査:(拠点::拠点A.立地)==(港湾) 分岐:(真){ //港湾は3/4 代入q:(q)*(3) 代入q:(q)/(4) } 調査:(拠点::拠点A.立地)==(山地) 分岐:(真){ //山地は制限なし } 調査:(拠点::拠点A.立地)==(平地) 分岐:(真){ //平地は3/4 代入q:(q)*(3) 代入q:(q)/(4) } } //拠点タイプ別処理 調査:(拠点::拠点A.拠点タイプ)==(寺) 分岐:(真){ //寺は3/4 代入q:(q)*(3) 代入q:(q)/(4) } 調査:(拠点::拠点A.拠点タイプ)==(館) 分岐:(真){ //館は半分 代入q:(q)/(2) } OR調査:{//成否調査 調査:(c)>(r) 調査:(f)>(r) 調査:(城::城A.防御度)<=(q) } 分岐:(真){//成功。 //会話:(人物A,賊)[[補修を実行。<城A>の防御度最大値は<q>]] 代入j:(人物::人物A.建築技能)*(4) 代入k:(人物::人物A.政務)/(10) 代入m:(j)+(k) 代入m:(m)/(2) //会話:(人物A,賊)[[建築技能<j>政務<k>で<人物A>判定値合計<m>]] 代入p:(0) コンテナ設定:(人物,所属上司,人物A) コンテナ絞り込み:(人物,イベント参加可能,真) コンテナソート:(人物,政務,降順) コンテナソート:(人物,建築技能,降順) コンテナ選択:(人物B,先頭) 調査:(人物B)!=(無効) 分岐:(真){ 代入j:(人物::人物B.建築技能)*(4) 代入k:(人物::人物B.政務)/(10) 代入p:(j)+(k) 代入p:(p)/(2) //会話:(人物B,賊)[[配下は<人物B>が選択。建築技能<j>政務<k>で<人物B>判定値合計<p>]] } 代入s:(0) 調査:(m)<(p) 分岐:(真){ 代入s:(p)//配下の方が成果が高い //会話:(人物B,賊)[[配下<人物B>の値<p>を採用し<s>。]] } 分岐:(偽){ 代入s:(m)//拠点主の方が成果が高い //会話:(人物A,賊)[[拠点主<人物A>の値<m>を採用し<s>。]] } 代入j:(城::城A.防御度)+(s) 調査:(j)>(q) 分岐:(真){ 代入j:(城::城A.防御度)//代入j:(q)。増築と同じ理由で現在の防御度を入れる事で現在値維持。 } 更新:(城::城A.防御度)(j) //会話:(人物A,賊)[[<城A>の防御度は<s>増加して<j>に更新。]] }//補修成功〆 }//補修〆 場合分岐:(5){//徴兵 //徴兵に当たった場合は拠点主の統率での参照も行う。 代入j:(人物A.統率力) 代入j:(j)*(85)//統率力の値の85% 代入k:(人物A.武力)*(15)//ボーナス扱いなので低めの15% 代入j:(j)+(k) 代入j:(j)/(100)//統率力判定値 //会話:(人物A,賊)[[徴兵判定。政務判定値<c>と<f>。統率判定<j>。]] OR調査:{//成否調査 調査:(c)>(r) 調査:(f)>(r) 調査:(j)>(r) } 分岐:(真){//成功。 代入j:(人物::人物A.弁舌技能) 代入k:(人物::人物A.軍学技能) 代入m:(人物::人物A.統率力) 代入n:(人物::人物A.魅力) 代入m:(m)+(n) 代入n:(j)+(k) 代入n:(n)+(1)//×0防止 代入m:(m)*(n)//(統率力+魅力)×((弁舌+軍学)+1)最大で200×9=1800。 //会話:(人物A,賊)[[徴兵を実行。<人物A>判定値合計<m>]] 代入p:(0) コンテナ設定:(人物,所属上司,人物A) コンテナ絞り込み:(人物,イベント参加可能,真) コンテナソート:(人物,統率力,降順) コンテナソート:(人物,軍学技能,降順) コンテナ選択:(人物B,先頭) 調査:(人物B)!=(無効) 分岐:(真){ 代入j:(人物::人物B.弁舌技能) 代入k:(人物::人物B.軍学技能) 代入p:(人物::人物B.統率力) 代入n:(人物::人物B.魅力) 代入p:(p)+(n) 代入n:(j)+(k) 代入n:(n)+(1)//×0防止 代入p:(p)*(n) //会話:(人物B,賊)[[統率配下は<人物B>が選択。判定値合計<p>]] } 代入o:(0) 代入人物C:(無効) コンテナ設定:(人物,所属上司,人物A) コンテナ絞り込み:(人物,イベント参加可能,真) コンテナソート:(人物,魅力,降順) コンテナソート:(人物,弁舌技能,降順) コンテナ選択:(人物C,先頭) 調査:(人物C)!=(無効) 分岐:(真){ 代入j:(人物::人物C.弁舌技能) 代入k:(人物::人物C.軍学技能) 代入o:(人物::人物C.統率力) 代入n:(人物::人物C.魅力) 代入o:(o)+(n) 代入n:(j)+(k) 代入n:(n)+(1)//×0防止 代入o:(o)*(n) //会話:(人物C,賊)[[魅力配下は<人物C>が選択。判定値合計<o>]] } 代入q:(0) 代入t:(0) 調査:(o)<(p) 分岐:(真){ 代入t:(p)//統率配下の方が成果が高い //会話:(人物B,賊)[[統率配下<人物B>を選択。判定値<t>]] } 分岐:(偽){ 代入t:(o)//魅力配下の方が成果が高い //会話:(人物C,賊)[[魅力配下<人物C>を選択。判定値<t>]] } 調査:(m)<(t) 分岐:(真){ 代入q:(t)//配下の方が成果が高い //会話:(小姓,賊)[[配下を選択。判定値<q>。]] } 分岐:(偽){ 代入q:(m)//拠点主の方が成果が高い //会話:(人物A,賊)[[拠点主<人物A>を選択。判定値<q>。]] } 代入j:(城::城A.兵士数)+(q) //軍備制限の方の兵士数管理は大名家全城チェックしてから分配の方式なので、とりあえず最大の5万を超えない範囲でとりあえず入れる。 調査:(j)>(50000) 分岐:(真){ 代入j:(50000) } 更新:(城::城A.兵士数)(j) //会話:(人物A,賊)[[<城A>の兵士数は<q>増加して<j>に更新。]] }//徴兵成功〆 }//徴兵〆 場合分岐:(6){//訓練 //徴兵に当たった場合は拠点主の統率での参照も行う。 代入j:(人物A.統率力) 代入j:(j)*(85)//統率力の値の85% 代入k:(人物A.武力)*(15)//ボーナス扱いなので低めの15% 代入j:(j)+(k) 代入j:(j)/(100)//統率力判定値 //会話:(人物A,賊)[[訓練判定。政務判定値<c>と<f>。統率判定<j>。]] OR調査:{//成否調査 調査:(c)>(r) 調査:(f)>(r) 調査:(j)>(r) } 分岐:(真){//成功。 代入j:(人物::人物A.軍学技能)*(2) 代入k:(人物::人物A.統率力)/(20) 代入m:(j)+(k) //会話:(人物A,賊)[[訓練を実行。軍学技能<j>統率力<k>で<人物A>判定値合計<m>]] 代入p:(0) コンテナ設定:(人物,所属上司,人物A) コンテナ絞り込み:(人物,イベント参加可能,真) コンテナソート:(人物,統率力,降順) コンテナソート:(人物,軍学技能,降順) コンテナ選択:(人物B,先頭) 調査:(人物B)!=(無効) 分岐:(真){ 代入j:(人物::人物B.軍学技能)*(2) 代入k:(人物::人物B.統率力)/(20) 代入p:(j)+(k) //会話:(人物B,賊)[[配下は<人物B>を選択。軍学技能<j>統率力<k>で<人物B>判定値合計<p>]] } 代入q:(0) 調査:(m)<(p) 分岐:(真){ 代入q:(p)//配下の方が成果が高い //会話:(人物B,賊)[[配下<人物B>の値<p>を採用し<q>。]] } 分岐:(偽){ 代入q:(m)//拠点主の方が成果が高い //会話:(人物A,賊)[[拠点主<人物A>の値<m>を採用し<q>。]] } 代入j:(城::城A.士気)+(q) 調査:(j)>(100) 分岐:(真){ 代入j:(100) } 更新:(城::城A.士気)(j) //会話:(人物A,賊)[[<城A>の士気は<q>増加して<j>に更新。]] 代入j:(城::城A.訓練度)+(q) 調査:(j)>(100) 分岐:(真){ 代入j:(100) } 更新:(城::城A.訓練度)(j) //会話:(人物A,賊)[[<城A>の訓練度は<q>増加して<j>に更新。]] }//訓練成功〆 }//訓練〆 場合分岐:(7){//まとめて物資購入。分けると物資購入頻度が高くなって他の内政が滞るので…あと大筒は排除。 OR調査:{//成否調査 調査:(c)>(r) 調査:(f)>(r) } 分岐:(真){//成功。 代入j:(人物::人物A.算術技能)*(3) 代入k:(人物::人物A.弁舌技能)*(3) 代入j:(j)+(1) 代入k:(k)+(1) 代入m:(j)*(k) 代入j:(人物::人物A.政務) 代入m:(m)*(j) //会話:(人物A,賊)[[物資購入を実行。判定値合計<m>]] 代入p:(0) コンテナ設定:(人物,所属上司,人物A) コンテナ絞り込み:(人物,イベント参加可能,真) コンテナソート:(人物,政務,降順) コンテナソート:(人物,算術技能,降順) コンテナ選択:(人物B,先頭) 調査:(人物B)!=(無効) 分岐:(真){ 代入j:(人物::人物B.算術技能)*(3) 代入k:(人物::人物B.弁舌技能)*(3) 代入j:(j)+(1) 代入k:(k)+(1) 代入p:(j)*(k) 代入j:(人物::人物B.政務) 代入p:(p)*(j) //会話:(人物B,賊)[[配下は<人物B>を選択。判定値合計<p>]] } 代入q:(0) 調査:(m)<(p) 分岐:(真){ 代入q:(p)//配下の方が成果が高い //会話:(人物B,賊)[[配下<人物B>の値<p>を採用し<q>。]] } 分岐:(偽){ 代入q:(m)//拠点主の方が成果が高い //会話:(人物A,賊)[[拠点主<人物A>の値<m>を採用し<q>。]] } 代入k:(0) 代入s:(0) 代入t:(0) 代入j:(城::城A.規模)*(城::城A.規模) 代入k:(j)*(300)//軍備制限での兵糧上限 代入s:(j)*(20)//軍備制限での軍馬上限 代入t:(j)*(10)//軍備制限での鉄砲上限 調査:(城::城A.規模)>=(23) 分岐:(真){//変化があるのは城規模23以上(山地、港湾) 調査:(拠点::拠点A.立地)==(港湾) 分岐:(真){ //港湾は2倍 代入k:(k)*(2) 代入s:(s)*(2) 代入t:(t)*(2) } 調査:(拠点::拠点A.立地)==(山地) 分岐:(真){ //山地は3/4 代入k:(k)*(3) 代入s:(s)*(3) 代入t:(t)*(3) 代入k:(k)/(4) 代入s:(s)/(4) 代入t:(t)/(4) } } 分岐:(偽){ 調査:(拠点::拠点A.立地)==(山地) 分岐:(真){ //山地は1/2 代入k:(k)/(2) 代入s:(s)/(2) 代入t:(t)/(2) } } //兵糧は値そのまま 代入j:(城::城A.兵糧)+(q) 調査:(j)>(k) 分岐:(真){ 代入j:(城::城A.兵糧) } 更新:(城::城A.兵糧)(j) //会話:(人物A,賊)[[<城A>の兵糧が<q>増えて<j>に更新。軍備制限上限<k>。]] //軍馬は値の1/60 代入m:(q)/(60) 調査:(m)<(10) 分岐:(真){ 代入m:(10) } 代入j:(城::城A.軍馬)+(m) 調査:(j)>(s) 分岐:(真){ 代入j:(s) } 更新:(城::城A.軍馬)(j) //会話:(人物A,賊)[[<城A>の軍馬が<m>増えて<j>に更新。軍備制限上限<s>。]] //鉄砲は値の1/100 代入m:(q)/(100) 調査:(m)<(5) 分岐:(真){ 代入m:(5) } 代入j:(城::城A.鉄砲)+(m) 調査:(j)>(t) 分岐:(真){ 代入j:(t) } 更新:(城::城A.鉄砲)(j) //会話:(人物A,賊)[[<城A>の鉄砲が<m>増えて<j>に更新。軍備制限上限<t>。]] }//物資購入成功〆 }//物資購入〆 場合分岐:(8){//治安 //治安に当たった場合は拠点主の特殊参照も行う。 代入j:(人物A.野心) 代入k:(101)-(j) 代入j:(k)*(60)//(101-野心)の値の60% 代入k:(人物A.名声)*(15)//名声の15%をボーナス 代入j:(j)+(k) 代入k:(人物A.悪名)*(10)//悪名の10%をペナルティ 代入j:(j)-(k) 調査:(j)>(100) 分岐:(真){ 代入j:(j)/(100)//特殊判定値 } 分岐:(偽){ 代入j:(0)//特殊判定値は0 } //会話:(人物A,賊)[[治安維持判定。政務判定値<c>と<f>。特殊判定<j>。]] OR調査:{//成否調査 調査:(c)>(r) 調査:(f)>(r) 調査:(j)>(r) } 分岐:(真){//成功。 代入j:(人物::人物A.弁舌技能)/(2) 代入k:(人物::人物A.武芸技能)/(2) 代入m:(人物::人物A.武力)/(40) 代入n:(人物::人物A.政務)/(40) 代入m:(m)+(n) 代入m:(m)+(1)//×0防止 代入n:(j)+(k) 代入n:(n)+(1)//×0防止 代入m:(m)*(n)//(最大で(2+2+1)×5=25。 //会話:(人物A,賊)[[治安維持を実行。<人物A>判定値合計<m>]] 代入p:(0) コンテナ設定:(人物,所属上司,人物A) コンテナ絞り込み:(人物,イベント参加可能,真) コンテナソート:(人物,武力,降順) コンテナソート:(人物,武芸技能,降順) コンテナ選択:(人物B,先頭) 調査:(人物B)!=(無効) 分岐:(真){ 代入j:(人物::人物B.弁舌技能)/(2) 代入k:(人物::人物B.武芸技能)/(2) 代入p:(人物::人物B.武力)/(40) 代入n:(人物::人物B.政務)/(40) 代入p:(p)+(n) 代入p:(p)+(1)//×0防止 代入n:(j)+(k) 代入n:(n)+(1)//×0防止 代入p:(p)*(n) //会話:(人物B,賊)[[武力配下は<人物B>が選択。判定値合計<p>]] } 代入o:(0) 代入人物C:(無効) コンテナ設定:(人物,所属上司,人物A) コンテナ絞り込み:(人物,イベント参加可能,真) コンテナソート:(人物,政務,降順) コンテナソート:(人物,弁舌技能,降順) コンテナ選択:(人物C,先頭) 調査:(人物C)!=(無効) 分岐:(真){ 代入j:(人物::人物C.弁舌技能)/(2) 代入k:(人物::人物C.武芸技能)/(2) 代入o:(人物::人物C.武力)/(40) 代入n:(人物::人物C.政務)/(40) 代入o:(o)+(n) 代入o:(o)+(1)//×0防止 代入n:(j)+(k) 代入n:(n)+(1)//×0防止 代入o:(o)*(n) //会話:(人物C,賊)[[政務配下は<人物C>が選択。判定値合計<o>]] } 代入q:(0) 代入t:(0) 調査:(o)<(p) 分岐:(真){ 代入t:(p)//武力配下の方が成果が高い //会話:(人物B,賊)[[武力配下<人物B>を選択。判定値<t>]] } 分岐:(偽){ 代入t:(o)//魅力配下の方が成果が高い //会話:(人物C,賊)[[政務配下<人物C>を選択。判定値<t>]] } 調査:(m)<(t) 分岐:(真){ 代入q:(t)//配下の方が成果が高い //会話:(人物B,賊)[[配下を選択。判定値<q>。]] } 分岐:(偽){ 代入q:(m)//拠点主の方が成果が高い //会話:(人物A,賊)[[拠点主<人物A>を選択。判定値<q>。]] } 代入j:(城::城A.住民安定度)+(q) //軍備制限の方の兵士数管理は大名家全城チェックしてから分配の方式なので、とりあえず最大の5万を超えない範囲でとりあえず入れる。 調査:(j)>(100) 分岐:(真){ 代入j:(100) } 更新:(城::城A.住民安定度)(j) //会話:(人物A,賊)[[<城A>の住民安定度は<q>増加して<j>に更新。]] }//訓練成功〆 }//訓練〆 }//どの内政をやるか場合別〆 代入l:(l)-(1)//成功失敗問わず回数−1。 //会話:(人物A,賊)[[現在lの値<l>]] 調査:(l)<=(0)//0以下になると脱出 ブロック脱出:(真) }//内政実行第二ループ〆 //*住民安定度と兵糧と防御度が低すぎる場合、必要条件を満たせば最低値を保つ。 AND調査:{ 調査:(城::城A.住民安定度)<(20) 調査:(人物A.悪名)<(70) 調査:(人物A.政務)>(25) } 分岐:(真){ 更新:(城::城A.住民安定度)(20) //会話:(人物A,賊)[[<城A>の最低住民安定度維持判定成功]] }//一揆が起きてる場所はそもそもコンテナ除外されてる。 代入b:(城::城A.兵士数)+(500)//兵士の数+少しの余りすらない時 AND調査:{ 調査:(城::城A.兵糧)<(b) OR調査:{ 調査:(人物A.統率力)>(25) 調査:(人物A.政務)>(25) 調査:(人物A.主義)==(現実)//上記を満たさない能力の低さでも現実主義なら兵糧を最低限保つ } } 分岐:(真){ 更新:(城::城A.兵糧)(b) //会話:(人物A,賊)[[<城A>の最低兵糧維持判定成功。<b>に更新。]] } 代入b:(城::城A.規模)*(2)//防御度が規模の二倍よりも低い場合。特に直轄城で起こりやすい。(例:規模10で防御度20未満) AND調査:{ 調査:(城::城A.防御度)<(b) OR調査:{ 調査:(人物A.統率力)>(25) 調査:(人物A.政務)>(25) 調査:(人物A.精神)==(小心)//上記を満たさない能力の低さでも臆病なら防御度を最低限保つ } } 分岐:(真){ 更新:(城::城A.防御度)(b) //会話:(人物A,賊)[[<城A>の最低防御度維持判定成功。<b>に更新。]] } }//内政処理実行本体〆 コンテナ複写:(復帰) コンテナ選抜:(削る,1) }//本体ループ〆 }//スクリプト }//イベント }//チャプター