UI Module

このセクションでは、UIモジュール(あるいは .mod ファイル)の使用方法について記述します。 .mod ファイルには、インターフェースの一部についてのメタデータが格納されています。

Summary
UI Moduleこのセクションでは、UIモジュール(あるいは .mod ファイル)の使用方法について記述します。 .mod ファイルには、インターフェースの一部についてのメタデータが格納されています。
実装の詳細ゲームインターフェースに新たな要素を追加するためには、新たなUIモジュール、あるいは「UiMod」を作成しなければなりません。
XML定義
要素 - 最上位
ModuleFileUIモジュールXMLファイルの中でも最上位のXMLタグです。
子要素 - ModuleFile
UiModUIモジュールの名前やバージョン、日付を記録しておくための要素です。
子要素 - UiMod
Authorモジュールの作者の情報を記録しておくための要素です。
Descriptionモジュールについての簡単な説明を記録しておくための要素です。
Dependenciesこのモジュールを初期化する前に、他のモジュールを読み込んで初期化するよう要求できます。
Filesこのモジュールで読み込むXML/Luaファイルを指定します。
SavedVariables変数を保存するテーブル指定します (調査中)。
Hotkeys(調査中)
Options(調査中)
子要素 - UiMod (システムアクション系)
OnInitialize各モジュールの初期化手順を指定することができます。
OnUpdate各モジュールの更新手順を指定することができます。
OnShutdown各モジュールのシャットダウン手順を指定することができます。
OnMessage(調査中)
子要素 - システムアクション系
CreateWindowウィンドウ作成のためのコマンドを定義します。
CallFunctionスクリプト関数を呼ぶためのコマンドを定義します。
関数
関数
ModulesLoadFromDirectory()指定されたディレクトリを検索し、全ての .mod 定義ファイルを読み出します。
ModulesLoadFromListFile()リストから .mod ファイルのリストを読み出します。
ModuleLoad()単一のモジュールパスを読み出します。
ModuleRestrictedLoad()Modデータに追加されない制限モジュールを読み出します。
ModulesInitializeAllEnabled()全てのLua/XMLデータを読み出し、各有効モジュールの初期化シーケンスを実行します。
ModulesInitializeRestricted()全てのLua/XMLデータを読み出し、各制限モジュールの初期化シーケンスを実行します。
ModulesGetData()全ての読み出されたUIモジュールのデータテーブルを返します。
ModuleSetEnabled()単一のモジュールを有効/無効にします。
ModuleInitialize()単一のモジュールを初期化します。

実装の詳細

ゲームインターフェースに新たな要素を追加するためには、新たなUIモジュール、あるいは「UiMod」を作成しなければなりません。

各UiModは単一の .mod ファイルで表されます。これには、インターフェースシステムがどんなファイルを読み出し、コンポーネントをどのように初期化するかが記述されています。

このフォーマットはキーバインディングや保存された変数のようなインクルード要素へ最終的に拡張されます。

XML定義

Summary
要素 - 最上位
ModuleFileUIモジュールXMLファイルの中でも最上位のXMLタグです。
子要素 - ModuleFile
UiModUIモジュールの名前やバージョン、日付を記録しておくための要素です。
子要素 - UiMod
Authorモジュールの作者の情報を記録しておくための要素です。
Descriptionモジュールについての簡単な説明を記録しておくための要素です。
Dependenciesこのモジュールを初期化する前に、他のモジュールを読み込んで初期化するよう要求できます。
Filesこのモジュールで読み込むXML/Luaファイルを指定します。
SavedVariables変数を保存するテーブル指定します (調査中)。
Hotkeys(調査中)
Options(調査中)
子要素 - UiMod (システムアクション系)
OnInitialize各モジュールの初期化手順を指定することができます。
OnUpdate各モジュールの更新手順を指定することができます。
OnShutdown各モジュールのシャットダウン手順を指定することができます。
OnMessage(調査中)
子要素 - システムアクション系
CreateWindowウィンドウ作成のためのコマンドを定義します。
CallFunctionスクリプト関数を呼ぶためのコマンドを定義します。

要素 - 最上位

ModuleFile

UIモジュールXMLファイルの中でも最上位のXMLタグです。

他の全ての要素は ModuleFile タグ内に含まれていなければなりません。

構文

<?xml version="1.0" encoding="UTF-8"?>
<ModuleFile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
...
</ModuleFile>
xmlns:xsiXML言語の仕様書の場所。

メモ

  • このタグは各モジュールファイルの最初と最後に必ず記載してください。

子要素 - ModuleFile

UiMod

UIモジュールの名前やバージョン、日付を記録しておくための要素です。

構文

<UiMod name="EA_TomeOfKnowledge" version="1.0" date="11/6/2007" >
...
</UiMod>
name(string) モジュール名。ユニークなものでなくてはなりません。
version(string) このモジュールのバージョン番号 (デフォルト値は”1.0”)。
date(string) このモジュールが最後に更新された日付。
autoenabled(boolean) デフォルト値は true 。

子要素 - UiMod

Author

モジュールの作者の情報を記録しておくための要素です。

構文

<Author name="EAMythic" email="" />
name(string) 作者の名前。
email(string) 作者のメールアドレス。

Description

モジュールについての簡単な説明を記録しておくための要素です。

構文

<Description text="This module contains all of the code and data for the Tome Of Knowledge window." />
text(string) モジュールの簡単な説明。

Dependencies

このモジュールを初期化する前に、他のモジュールを読み込んで初期化するよう要求できます。

構文

<Dependencies>
  <Dependency name="EA_TooltipSystem" />
</Dependencies>
name(string) このモジュールが依存しているモジュールの名前。

Files

このモジュールで読み込むXML/Luaファイルを指定します。

<Files>
    <File name="Source/ChatSettings.lua" />
    <File name="Source/ChatWindow.xml" />
</Files>
file(string) ファイルの相対パス。

SavedVariables

変数を保存するテーブル指定します (調査中)。

構文

<SavedVariables>
    <SavedVariable name="ChatSettings.ChannelColors" />
</SavedVariables>
name(string)

Hotkeys

(調査中)

構文

<Hotkeys>
    <Hotkey name="" />
</Hotkeys>
name(string)

Options

(調査中)

構文

<Options>
    <OptionSection name="" />
</Options>
name(string)

子要素 - UiMod (システムアクション系)

OnInitialize

各モジュールの初期化手順を指定することができます。

構文

<OnInitialize>
  <CreateWindow name="TomeWindow" show="false" />
</OnInitialize>

子要素

OnUpdate

各モジュールの更新手順を指定することができます。

構文

<OnUpdate>
  ...
</OnUpdate>

子要素

メモ

  • 含める更新コールバックの数を減らすことによって、パフォーマンスを向上させることができます。表示されている特定のウィンドウを更新することだけが必要ならば、 OnUpdate コールバックをそのウィンドウ自体に追加するほうが、モジュール全体に追加するよりも良いでしょう。
  • これは単一のウィンドウのためではなく、常に更新が必要とされる「システム」のために設計されたものです。

OnShutdown

各モジュールのシャットダウン手順を指定することができます。

構文

<OnShutdown>
  ...
</OnShutdown>

子要素

OnMessage

(調査中)

構文

<OnMessage>
  ...
</OnMessage>

子要素 - システムアクション系

CreateWindow

ウィンドウ作成のためのコマンドを定義します。

構文

<OnInitialize>
    <CreateWindow name="ChatWindow" show="true" />
    <CreateWindow name="ChatFiltersWindow" show="false" />
</OnInitialize>
name(string) 有効なウィンドウ定義の名前。
show(boolean) true = ウィンドウ作成後に表示する, false = 表示しない

CallFunction

スクリプト関数を呼ぶためのコマンドを定義します。

構文

<OnShutdown>
  <CallFunction name="TomeWindow" />
</OnShutdown>
name(string) 有効なウィンドウ定義の名前。

メモ

  • OnInitialize または OnShutdown に含まれていると、パラメータなしで呼び出されます。 OnUpdate に含まれていると、単一の「経過時間」変数とともに呼び出されます。

関数

Summary
関数
ModulesLoadFromDirectory()指定されたディレクトリを検索し、全ての .mod 定義ファイルを読み出します。
ModulesLoadFromListFile()リストから .mod ファイルのリストを読み出します。
ModuleLoad()単一のモジュールパスを読み出します。
ModuleRestrictedLoad()Modデータに追加されない制限モジュールを読み出します。
ModulesInitializeAllEnabled()全てのLua/XMLデータを読み出し、各有効モジュールの初期化シーケンスを実行します。
ModulesInitializeRestricted()全てのLua/XMLデータを読み出し、各制限モジュールの初期化シーケンスを実行します。
ModulesGetData()全ての読み出されたUIモジュールのデータテーブルを返します。
ModuleSetEnabled()単一のモジュールを有効/無効にします。
ModuleInitialize()単一のモジュールを初期化します。

関数

ModulesLoadFromDirectory()

指定されたディレクトリを検索し、全ての .mod 定義ファイルを読み出します。

これは、ウィンドウを作成するLua/XMLコードを実際には 読み出しません 。単に、UIモジュールメタデータとして読み出すだけです。

パラメータ

directory(string) モジュールの検索をするディレクトリ。
setName(wstring) このモジュールのセットとして使用する名前。例: “EA Default”, “Add Ons”。

戻り値

nil戻り値無し。

メモ

  • 実際にウィンドウを作成するには、 ModulesInitializeAllEnabled() を呼び出す必要があります。この呼び出しは、生のUIデータにのみ働きます。

ModulesLoadFromListFile()

リストから .mod ファイルのリストを読み出します。

パラメータ

listFilePath(string) モジュールファイルリストのファイルパス。
setName(wstring) モジュールのセットとして使用する名前。例: “EA Default”, “Add Ons”。
allowRaw(boolean) true = Rawバージョンのファイルを許可する, false = 許可しない

戻り値

nil戻り値無し。

メモ

  • この関数は、行で区切られた .mod ファイルパスが含まれる単一の入力ファイルを想定しています。

ModuleLoad()

単一のモジュールパスを読み出します。

パラメータ

modFilePath(string) モジュールファイルのファイルパス。
setName(wstring) モジュールのセットとして使用する名前。例: “EA Default”, “Add Ons”。
allowRaw(boolean) true = Rawバージョンのファイルを許可する, false = 許可しない

戻り値

nil戻り値無し。

ModuleRestrictedLoad()

Modデータに追加されない制限モジュールを読み出します。

パラメータ

modFilePath(string) モジュールファイルのファイルパス。
allowRaw(wstring) true = このモジュールのRawバージョンを許可する, false = 許可しない

戻り値

nil戻り値無し。

ModulesInitializeAllEnabled()

全てのLua/XMLデータを読み出し、各有効モジュールの初期化シーケンスを実行します。

ModulesInitializeRestricted()

全てのLua/XMLデータを読み出し、各制限モジュールの初期化シーケンスを実行します。

ModulesGetData()

全ての読み出されたUIモジュールのデータテーブルを返します。

パラメータ

無し。

戻り値

modDataTable(table) UIモジュールのテーブル。

フォーマットは下記の通りです……

modDataTable[1...n].name(wstring) モジュールの名前。
modDataTable[1...n].setName(wstring) このモジュールが含まれるセットの名前。
modDataTable[1...n].author(table) 作者情報が含まれるテーブル。
modDataTable[1...n].author.name(wstring) 作者の名前。
modDataTable[1...n].author.email(wstring) 作者のメールアドレス。
modDataTable[1...n].description(table) 説明情報が含まれるテーブル。
modDataTable[1...n].description.text(wstring) 説明テキスト。
modDataTable[1...n].dependencies(table) 依存情報が含まれるテーブル。
modDataTable[1...n].dependencies[1..n].name(wstring) 依存関係にあるモジュールの名前。

local modsData = ModulesGetData()

ModuleSetEnabled()

単一のモジュールを有効/無効にします。

パラメータ

moduleName(string) モジュールの名前。
enabled(boolean) true = モジュールを有効にする, false = 無効にする

戻り値

nil戻り値無し。

ModuleSetEnabled( "EA_BackpackWindow", true )

ModuleInitialize()

単一のモジュールを初期化します。

パラメータ

moduleName(string) モジュールの名前。

戻り値

nil戻り値無し。

ModuleInitialize( "EATemplate_DefaultWindowSkin" )
ウィンドウ作成のためのコマンドを定義します。
スクリプト関数を呼ぶためのコマンドを定義します。
各モジュールの更新手順を指定することができます。
各モジュールの初期化手順を指定することができます。
各モジュールのシャットダウン手順を指定することができます。
全てのLua/XMLデータを読み出し、各有効モジュールの初期化シーケンスを実行します。
Close