属性・発生契機・発生条件

◆ 属性の設定

チャプター名・イベント名の次に、イベントの属性を設定します。
属性とは、そのイベントが発生する頻度です。
属性の設定には、以下のようなものがあります。

一度だけ 一度だけ発生するイベント。
一度発生したら、もう発生しない。
何度でも 何度でも発生するイベント。
一度発生しても、また発生する。
一度だけ|ひかえめ 一度だけ発生するイベント。
ただし、同じ発生条件の他のイベントがある場合は、
他のイベントが優先される。
何度でも|ひかえめ 何度でも発生するイベント。
ただし、同じ発生条件の他のイベントがある場合は、
他のイベントが優先される。

例・属性(一度だけ、ひかえめに起こるイベント)

太閤立志伝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調査」は、複数の条件のいずれか1つが満たされればOK。
◎「AND調査」は、複数の条件の全てが満たされるとOK。
◎ 上記では「1561年以降」または「1560年かつ8月以降」のときならOK。

● シナリオを条件にする

どのシナリオでゲームを始めたかを条件にします。

例:条件が「1568年昇龍の章でゲームを始めた」


発生条件:{
	調査:(状況::シナリオ)==(2)
}


◎ 右にシナリオ番号を入れる。シナリオとの対応は下記の通り。


	調査:(状況::シナリオ)==(0)// 1554年 乱麻の章
	調査:(状況::シナリオ)==(1)// 1560年 日輪の章
	調査:(状況::シナリオ)==(2)// 1568年 昇龍の章
	調査:(状況::シナリオ)==(3)// 1575年 覇道の章
	調査:(状況::シナリオ)==(4)// 1582年 転変の章
	調査:(状況::シナリオ)==(5)// 1598年 太平の章
	調査:(状況::シナリオ)==(6)// 1549年 流亡の章
	調査:(状況::シナリオ)==(7)// 1560年 夢幻の章
	調査:(状況::シナリオ)==(8)// 1584年 浪華の章

● 特定の勢力が存在しているかどうかを条件にする

特定の勢力が存在しているかどうかを条件にします。

例:条件が「武田家(信玄)が滅び、上杉家(謙信)が存在」


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


◎ 正しいか正しくないかだけを判定する式では、「真」「偽」を使います。
◎「==(真)」は、下記のように省略してもかまいません。


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

● 人物がイベントに参加できるかどうかを条件にする

特定の人物がイベントに参加できるかどうかを条件にします。
具体的には、「ゲームに登場している」「生存している」「出陣していない」
の3つの条件を満たしていることが条件になります。

例:条件が「島津義弘がイベントに参加できる」


発生条件:{
	調査:(人物::島津義弘.イベント参加可能)
}


◎ 上記は、「==(真)」を省略した書き方です。


表紙に戻るスクリプトを書く(1)コンバートする