屬性、發生時機、發生條件

◆ 設定屬性

設定完章節名稱、事件名稱後,需要設定事件的屬性。
屬性指的是該事件的發生頻率。
可以設定的屬性如下所示。

僅限一次 只發生一次的事件。
發生一次後,不會重複發生。
不限次數 可以多次發生的事件。
發生一次後,仍會重複發生。
僅限一次|低優先度 只發生一次的事件。
但如果存在發生條件相同的其他事件,
將優先觸發其他事件。
不限次數|低優先度 可以多次發生的事件。
但如果存在發生條件相同的其他事件,
將優先觸發其他事件。

例·屬性(僅限一次、低優先度事件)

太閣立志傳5事件原始碼

章節:{
	事件:範例事件2{
		屬性:僅限一次|低優先度
		發生時機:據點內畫面顯示後(主角據點)
		發生條件:{
		}
		腳本:{
			旁白:[[時值<年>年<月>月……]]
			對話:(德川家康,織田信長)[[你好,\n{二人称姓名}]]
			對話:(織田信長,德川家康)[[啊,\n是{二人称}。]]
		}
	}
}

◎「|」為全形。請注意。

◆ 設定發生時機

設定完屬性後,需要設定事件的發生時機。
發生時機指的是觸發事件的節點。
主要設定如下所示。

※ 除此以外的發生時機請參閱此處

室內畫面顯示後(據點、設施) 進入設施時。
據點內畫面顯示後(據點) 進入據點時。
人物對話時(人物) 主動搭話時。
移動畫面選擇時(據點) 準備離開據點時。
移動畫面顯示後(據點) 離開據點時。

◎在( )內輸入據點、設施、人物名稱,就能辨識發生的場所與人物。

例:室內畫面顯示後(京之町、酒館) ……在京之町進入酒場時。
例:移動畫面選擇時(清洲城) ……準備離開清洲城時。

◎在( )內輸入「無效」,將不進行辨識。

例:移動畫面顯示後(無效) ……離開任意據點時。

例·發生時機(主角進入根據地時發生的事件)

太閣立志傳5事件原始碼

章節:{
	事件:範例事件2{
		屬性:僅此一次|低優先度
		發生時機:據點內畫面顯示後(主角據點)
		發生條件:{
		}
		腳本:{
			旁白:[[事情發生在<年>年<月>月……]]
			對話:(德川家康,織田信長)[[你好,\n{二人称姓名}。]]
			對話:(織田信長,德川家康)[[啊,\n是{二人称}。]]
		}
	}
}

◆ 設定發生條件

設定完發生時機後,需要設定事件的發生條件。
發生條件指的是引發事件的必要條件。

◆ 設定條件

條件主要使用腳本命令「調查」進行設定。
在「調查:」後面填入表達式,當表達式成立時,才會觸發事件。
可以設定多個條件。

● 表達式的基本編寫方法

「調查」使用的表達式如下所示。

發生條件:{
	調查:(○○::△△.□□)==(××)
}

◎ 表達式左右兩邊使用半形括號 ( ) 括起來。
◎ 「==」代表左右「相等」。
◎ 如需將條件設為「不相等」,請使用「!=」。

發生條件:{
	調查:(人物::竹中半兵衛.所屬國)!=(國::美濃)
}

◎ 上述內容表示著「人物(竹中半兵衛)的所屬國」與「美濃」「不相等」。
  也就是說,條件是「竹中半兵衛不住在美濃」。
◎ 「所屬國」可以替換為「所屬勢力」、「身份」、「名聲」等。
◎ 除「人物」外,「大名家」、「城」等也可設為條件。

發生條件:{
	調查:(城::清洲.士兵數)>=(5000)
}

◎ 當右邊包含數字,將使用不等號<>對數值進行比對。
◎ 「>=」代表「以上」。
◎ 上述內容表示「城(清洲城)的士兵數」在「5000以上」。

【重要】 資訊的「屬性」

「調查」等腳本命令中引用的資料內容為

 ○○::△△.□□

這樣的表達式。

○○包括「類名」。
類名指的是「人物」、「大名家」、「城」等資訊的大致分類。

△△包括「織田信長」、「清洲城」等詳細條件。

□□包括「屬性」。
屬性指的是「性別」、「所屬據點」等比類名更加細緻的分類。

例如想要查詢石田三成的身份時,
需要調查「人物」(類名)的「身份」(屬性),

 人物::石田三成.身份

需要這樣輸入。
用這個表達式調查其身份是否高於侍大將時,

 調查:(人物::石田三成.身份)>=(侍大將)

需要這樣輸入。

>> 可以引用的類名和屬性參見 此處
>> 可以用作特定條件的資料清單參見 此處


【重要】 「調查」中用到的「比較運算子」

對比左右內容時使用的「==」等符號被稱作比較運算子
請注意,它的使用方法與計算所用的運算子略有不同。

A==B (A與B相同
A!=B (A與B不同
A>B (A比B
A<B (A比B
A>=B (A在B以上
A<=B (A在B以下

※ ==和!=可用於內容是文字和數字的A和B。
※ ==和!=以外只能用於內容是數字的A和B。

※ 「調查」的詳細講解還可參閱此處

以下為發生條件的設定範例。

● 以主角是誰為條件

以主角是否是特定人物為條件。

例:條件為「主角是宮本武藏」

發生條件:{
	調查:(人物::主角)==(人物::宮本武藏)
}

◎ 只需要辨識人物時,不需要輸入屬性。

例:條件為「主角不是宮本武藏」

發生條件:{
	調查:(人物::主角)!=(人物::宮本武藏)
}

◎ 「!=」為「不等於」,也就是並非右側的人物。
◎ 調查主角時,還可以使用以下的省略表達式。

調查:(主角)==(宮本武蔵)

◎ 省略的表達式功能相同。

● 以人物所屬勢力為條件

以人物是否隸屬於特定勢力為條件。

例:條件為「本多忠勝是德川家康勢力的所屬武士」

發生條件:{
	調查:(人物::本多忠勝.所屬勢力類型)==(大名家)
	調查:(人物::本多忠勝.所屬大名家)==(大名家::德川家康)
}

◎ 以主角所屬勢力為條件時,將人物名寫作「主角」。

● 以人物根據地所處地點為條件

以人物自宅位於哪個據點為條件。

例:條件為「主角自宅位於京之町」

發生條件:{
	調查:(人物::主角.所屬據點)==(町::京)
}

◎ 以主角以外為條件時,將「主角」替換為人物名。

● 以目前年月為條件

以遊戲內的年月為條件。

例:條件為「1560年以後」

發生條件:{
	調查:(狀況::年)>=(1560)
}

例:條件為「1560年8月以後」

發生條件:{
	OR調查:{
		調查:(狀況::年)>=(1561)
		AND調查:{
			調查:(狀況::年)==(1560)
			調查:(狀況::月)>=(8)
		}//AND調查的右括號
	}//OR調查的右括號
}

◎「OR調查」指的是多個條件中,只需滿足任一條件即可。
◎「AND調查」指的是多個條件需要全部滿足。
◎ 上述內容表示達到「1561年以後」或「1560年且8月以後」。

● 以劇本為條件

以開始遊戲時所選劇本為條件。

例:條件為「以1568年升龍之章開始遊戲」

發生條件:{
	調查:(狀況::劇本)==(2)
}

◎ 右邊輸入劇本編號。對應劇本如下所示。


	調查:(狀況::劇本)==(0)// 1554年 亂麻之章
	調查:(狀況::劇本)==(1)// 1560年 日輪之章
	調查:(狀況::劇本)==(2)// 1568年 升龍之章
	調查:(狀況::劇本)==(3)// 1575年 霸道之章
	調查:(狀況::劇本)==(4)// 1582年 轉變之章
	調查:(狀況::劇本)==(5)// 1598年 太平之章
	調查:(狀況::劇本)==(6)// 1549年 流亡之章
	調查:(狀況::劇本)==(7)// 1560年 夢幻之章
	調查:(狀況::劇本)==(8)// 1584年 浪華之章


● 以是否存在特定勢力為條件

以是否存在特定勢力為條件。

例:條件為「武田家(信玄)滅亡、上杉家(謙信)存在」

發生條件:{
	調查:(大名家::武田信玄.存在)==(偽)
	調查:(大名家::上杉謙信.存在)==(真)
}

◎ 使用「真」、「偽」作為判定正確與否的表達式。
◎ 如為「==(真)」,可以像下面這樣省略。

調查:(大名家::上杉謙信.存在)

● 以人物是否可以參加事件為條件

以特定人物是否可以參加事件為條件。
詳細來說,就是要滿足「在遊戲內登場」、「生存」、「未出征」
這三個條件。

例:條件為「島津義弘可以參加事件」

發生條件:{
	調查:(人物::島津義弘.可參加事件)
}

◎ 上述內容是省略了「==(真)」的輸入方式。


返回封面編寫腳本(1)進行編譯