『Fy Mascot』-ランゲージファイルを作る

はじめに

『Fy Mascot』には、来るべきグローバルな世の中に対応するため多言語に対応しています 。

セリフに関しては、Unicodeで処理をしているのでフォントさえ対応していれば基本的には表示可能です。ただし、右から左に記述する言語は未対応です。

また、『プロパティシート』、『メニュー』、『ダイアログボックス』の内容(文字)は、『ランゲージファイル』に分けて記述されており、これを切り替えることで多言語に対応できるようになっています。標準では日本語と英語を用意していますが、『ランゲージファイル』を追加することで他の言語にも対応できます。

picture

『ランゲージファイル』は『language』フォルダに保存されています。実際に作成する際は、『Fy Mascot』に付属している『ランゲージファイル』のデータを参考にするとわかりやすいと思います。

ランゲージファイル

『ランゲージファイル』は『XML』形式のテキストファイルで、『メモ帳』で開くと編集ができます。。

『ランゲージファイル』のコンフィグレーション部分の構成は以下のようになっています。

picture
(ファイル名は自由).xml
<?xml version="1.0" encoding="UTF-8"?>
<document>
   <type>LANGUAGE</type>
   <information>
      <name>言語名</name>
      <version>バージョン</version>
      <craftsman>制作者</craftsman>
      <id>ロケールID(LCID)</id>
   </information>
   <configuration>
      <data>設定情報...</data>
      <property>アイテム...</property>
      <menus>アイテム...</menus>
      <dialogs>アイテム...</dialogs>
   </configuration>
</document>

INFORMATION

Informationには、この『ランゲージファイル』の情報を記述します。内容は他のドキュメントとだいたい同じですが、ランゲージファイルにはロケールIDという項目があります。

ロケールIDはマイクロソフトが定めた言語をあらわすコードで、GetSystemDefaultLCID関数の戻り値などに利用されています。例えば、『1041』が日本語、『1033』が英語、のように定められています。

DATA

『ランゲージファイル』の設定情報を記述します。

 <data>
   <label>言語名(プロパティシートで選択肢に表示、必ず英字)</label>
   <font>フォント</font>
   <fontsize>フォントサイズ</fontsize>
   <charset>文字セット</charset>
</data>

フォントにはフォント名を記述します。『Fy Mascot』を実行するWindowsに入っている必要があるので、標準的なフォント(日本語ならMSゴシック、英語ならTahomaなど)をお勧めします。

文字セットは以下のものから適切なものを選択します。

言語 文字セット
英語、ドイツ語、フランス語など (西ヨーロッパ文字) WESTERN
日本語 JAPANESE
ハングル文字 HANGUEL
中国語(繁体字) TCHINESE
中国語(簡体字) SCHINESE
ギリシャ語 GREEK
トルコ語 TURKISH
タイ語 THAI
東欧語 EEUROPEAN
ロシア語 RUSSIA
ベトナム語 VIETNAMESE
バルト語 BALTIC

PROPERTY

プロパティシートとそのツールチップのテキストです。

ツリーの大分類(『本体』,『キャラクター』,『テーマ』,『オプション』,『バージョン』)を<labels>に、各プロパティシートの内容を<sheets>に記述します。

picture
<property>
   <labels>
      <items>
         <item id="1">アイテム1</item>
         <item id="2">アイテム2</item>
         ...
      </items>
   </labels>
   <sheets>
      <sheet label="xxxxx">アイテムX</sheet>
      <sheet label="yyyyy">アイテムY</sheet>
      ...
   </sheets>
</property>

<sheets>の中に<sheet label=”○○”>の形で各ページの内容を記述します。<label>にツリーに表示される項目名、<items>にシート内の各項目が記述されます。

<sheet label="system1">
   <label>タイトル</label>
   <items>
      <item id="1">アイテム1</item>
      <item id="2">アイテム2</item>
      ...
   </items>
</sheet>

一つ一つのアイテムは、ID(数字)で管理されており、そのツールチップ(カーソルをあてていると表示される説明)はID+100000となっています。例えば、『system2』のシートで独り言を言わせるかどうかのチェックボックスのIDは2なのですが、そのツールチップは100002となります。

<item id="2">独り言</item>
<item id="100002">キャラクターに独り言を言わせるか設定します。</item>

MENUS

メニューの項目のテキストです。 クリックで表示されるメインメニュー<main>と右クリックで表示されるインフォメーションリストのアイテムを記述します。

<menus>
   <menu label="main">アイテム...</menu>
   <menu label="information">アイテム...</menu>
</menus>

DIALOGS

ダイアログの内容のテキストです。 システムでのダイアログと設定でのダイアログごとに設定します。

<dialogs>
   <dialog label="main">アイテム...</dialog>
   <dialog label="sheet">アイテム...</dialog>
</dialogs>

初回起動時の言語

『Fy Mascot』は初回起動時に実行しているWindowsのシステムのロケールIDを使って適切な言語(ランゲージファイル)を選択するようになっています。『language』フォルダにある『ランゲージファイル』の中で、システムのロケールIDと一致するものを探し、見つからない場合は英語(1033)を選択するようになっています。

※ 二回目以降はセーブデータを初期化しない限りは、選択されているテーマが選択されます。