構造体の書式

ヴァーレントゥーガのスクリプトは「構造体」の集合として作られます。
スクリプトファイルの名称と分割は自由です。好きなファイルに好きな構造体を書いてください。
要素名はすべて小文字でなくてはいけません。
シナリオ構造体タグ名を記述可能なのはpower, spot, unit, class, detail, dungeon, event構造体です。
skill, skillset, attribute, story, movetype, scenario, field, object, context, workspaceには記述しない方がよいでしょう。
特別にskill構造体は@以後にunit構造体のタグ名を記述できます。

種類名 タグ名
{
  要素名 = 値
  要素名@ = 値
  要素名@基本的にはシナリオ構造体のタグ名 = 値
  関数
}

種類名 タグ名 : 継承タグ名
{
  要素名 = 値
  要素名@ = 値
  要素名@基本的にはシナリオ構造体のタグ名 = 値
  関数
}

構造体の書式2

context(基本設定),sound(効果音音量),attribute(属性),detail(列伝),workspace(いろいろ)構造体は
ユニーク存在(システムに一つだけ)なのでタグ名はいりません。

種類名
{
  要素名 = 値
  要素名@ = 値
  要素名@シナリオ構造体のタグ名 = 値
}

なお、detailworkspace構造体は各ファイルで複数記述可能です。これはイベント追加の利便性の為です。
実行時にシステム内で一つにまとめられます。

構造体の継承について

継承を適切に用いる事でデータ管理が容易となります。

class base
{
  hp = 500
  attack = 100
  defense = 50
}
class sld : base
{
  hp = 800
  speed = 200
}

とすると構造体sldのattackとdefenseをVahren.exeが調べる時に、未定義ですので構造体baseを調べに行きます。
hpの値は構造体sldに記述されていますので、800を得ます。

変数名について

大文字と小文字は区別されます。
次の数値変数の例ではそれぞれ「1」、「0」と表示されます。

set(tmp_number, 1)
dialog(&tmp_number&)
dialog(&TMP_NUMBER&)

未定義の数値変数は0、未定義の文字変数は空の扱いとなります。

タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2021年10月14日 14:05