うむ。
ここはconファイルをこれから弄ろうとしている新兵や、英語の嵐の前に倒れた味方を教育し、前線に送り出すためのページだ。
ここはconファイルをこれから弄ろうとしている新兵や、英語の嵐の前に倒れた味方を教育し、前線に送り出すためのページだ。
準備運動
conファイルの一行には何が書いてあるのか?
まずはこれを見て欲しい。Willy(連合のジープ)のObjects.conの冒頭を抜き出したものだ。
まずはこれを見て欲しい。Willy(連合のジープ)のObjects.conの冒頭を抜き出したものだ。
rem *** Willy ***
ObjectTemplate.create PlayerControlObject Willy
ObjectTemplate.NameTagOffset -0.3/-0.2/0
ObjectTemplate.setNetworkableInfo WillyBodyInfo
ObjectTemplate.saveInSeparateFile 1
ObjectTemplate.cullRadiusScale 5
ObjectTemplate.hasMobilePhysics 1
ObjectTemplate.hasDynamicShadow 1
ObjectTemplate.explosionRadius 8
ObjectTemplate.explosionDamage 5
ObjectTemplate.damageFromWater 1
ObjectTemplate.create PlayerControlObject Willy
ObjectTemplate.NameTagOffset -0.3/-0.2/0
ObjectTemplate.setNetworkableInfo WillyBodyInfo
ObjectTemplate.saveInSeparateFile 1
ObjectTemplate.cullRadiusScale 5
ObjectTemplate.hasMobilePhysics 1
ObjectTemplate.hasDynamicShadow 1
ObjectTemplate.explosionRadius 8
ObjectTemplate.explosionDamage 5
ObjectTemplate.damageFromWater 1
rem で始まる行はコメントなので無視して構わない。
ObjectTemplate. は 「ObjectTemplateという装置(クラス)へこれから入力するぞ」 という意味だと考えてくれ。おまじないのようなものだ。
読みやすいように切り取るとこうなる。
ObjectTemplate. は 「ObjectTemplateという装置(クラス)へこれから入力するぞ」 という意味だと考えてくれ。おまじないのようなものだ。
読みやすいように切り取るとこうなる。
create PlayerControlObject Willy
NameTagOffset -0.3/-0.2/0
setNetworkableInfo WillyBodyInfo
saveInSeparateFile 1
cullRadiusScale 5
hasMobilePhysics 1
hasDynamicShadow 1
explosionRadius 8
explosionDamage 5
damageFromWater 1
NameTagOffset -0.3/-0.2/0
setNetworkableInfo WillyBodyInfo
saveInSeparateFile 1
cullRadiusScale 5
hasMobilePhysics 1
hasDynamicShadow 1
explosionRadius 8
explosionDamage 5
damageFromWater 1
結論から言うと、一行一行の形式はこうなっている。
(命令語) (パラメータ1) (パラメータ2) ・・・ |
これを踏まえて一行ずつ見てくれ。英語が苦手な兵士は辞書を片手に頑張ろう。
多少わからない単語(cull、MobilePhysics、DynamicShadowなど)があるだろうが、大体の単語の意味は理解できるのではないか?
例えば
多少わからない単語(cull、MobilePhysics、DynamicShadowなど)があるだろうが、大体の単語の意味は理解できるのではないか?
例えば
explosionRadius 8 | 爆発時の爆発半径を8に設定している |
explosionDamage 5 | 爆発時のダメージを5に設定している |
damageFromWater 1 | 水からダメージを受けるように設定している(この命令はon/off設定であり、1はon、0はoff、であるため) |
conファイルはこのような「命令とパラメータをセットにした行」の集まりだと考えてくれ。
- まとめ
conファイルの一行の形式
ObjectTemplate.(命令語) (パラメータ1) (パラメータ2) ・・・
※通常の兵器製作で使うのはほぼObjectTemplateだけだ。他にGeometryTemplateなども私は使うが、慣れるまでは無視した方がいい。気合の入りまくった兵はクラス一覧を眺めておいてもいいだろう。
基本文法
一行に命令語とパラメータを書くことは準備運動で説明した。
次は行をどう並べるかについて説明する。
次は行をどう並べるかについて説明する。
Temlateというのは鋳型のことである。鋳型は兵器・武器の部品ごとに書かれる。ジープ一つ取ってもエンジン、4個のタイヤ、タイヤの挙動を決めるスプリング、兵士を表示させる座席、兵士の視界を決めるカメラ・・など、多くの部品から作成されているということを肝に銘じて置くように。
鋳型を定義するには create という命令を使う。
使い方はこのとおり。
使い方はこのとおり。
ObjectTemplate.create (Templateの型) (Templateの名前) |
create命令は2つのパラメータを取る。型と名前だ。型の方は後で解説する。
名前は鋳型の名前だ。WillyEngineだとかAT25Gunだとか、そういう名前だ。
名前は鋳型の名前だ。WillyEngineだとかAT25Gunだとか、そういう名前だ。
createのニュアンスは「これからこういう型と名前の鋳型について書いていくぞ」といった感じだ。create命令以降の命令はその鋳型についての命令になり、これが別のcreate命令かファイルの終わりが現れるまで続く。
そういうわけで、conファイル全体の構造は {(create命令) (その鋳型についての命令)} の繰り返しと言える。
そういうわけで、conファイル全体の構造は {(create命令) (その鋳型についての命令)} の繰り返しと言える。
- まとめ
create命令
ObjectTemplate.create (Templateの型) (Templateの名前)
conファイルの構造
ObjectTemplate.create ○○○○ ×××××
:
(その他の命令)
:ObjectTemplate.create □□□□ ▽▽▽▽▽
:
(その他の命令)
:
:
(以下繰り返し)
: