「field 構造体(地形チップの設定)」の編集履歴(バックアップ)一覧に戻る

field 構造体(地形チップの設定) - (2012/06/05 (火) 00:05:28) のソース

**&color(green){概要}
戦場マップはMapMakerで作成します。
MapMakerはfieldフォルダにあるpng画像を地形チップとし、
png画像の名前(拡張子を外した部分)を地形チップの識別子としてmapデータに埋め込みます。
ゲーム内では識別子と同じ名前のfield構造体がその地形チップになります。


**&color(green){エッジングについて(マップチップの境界を自然にする補正処理)}
エッジングをするには、N, NW, W, SW, S, SE, E, NE が末尾に付いた八種類の派生チップを用意する必要があります。
grass なら以下の8個が必要となります。
grassN (上の荒地チップと隣接)
grassNW(左上の荒地チップと隣接)
grassW (左の荒地チップと隣接)
grassSW(左下の荒地チップと隣接)
grassS (下の荒地チップと隣接)
grassSE(右下の荒地チップと隣接)
grassE (右の荒地チップと隣接)
grassNE(右上の荒地チップと隣接)


**&color(green){コンテンツ}
:type = (文字列)|
|省略|普通の地形|
|coll|通行不可になる|
|wall|通行不可になる。飛び道具も貫通不可|
|wall2|通行不可になる。攻撃側の飛び道具のみ貫通不可|
:attr = (文字列)|
この地形の種類です(草原、海、山地など)。movetype構造体の識別子を記します。
:color = (R, G, B)|
ミニマップ上での表示カラーです。

:image = (文字列)|
画像。image.datにあるイメージ名を指定する。省略時は構造体名がそのままイメージ名になる。
:add2 = (文字列, 文字列*数値, ‥}|
列挙されたイメージがランダムに表示されます。
:member = (文字列, 文字列*数値, ‥) |
このマップチップの上に乗せるオブジェクト。木や草を表示する時に使います。
列挙されたobject構造体の中からランダムに表示されます。
空の識別子(存在しないobject構造体の識別子)を同時に列挙する事で表示確率の調整も出来ます。
木や草をバラけて表示させたい時に有効です。
&color(blue){(例)member = wood*7, none*3} 木を70%の確率で表示する。


:alt = (数値)|
地形の高さ。低くする時は負の値を指定する。
&color(blue){(例)デフォルトシナリオでは、山岳 128、高い山岳 160、海 -48、となってます。}
:alt_max = (数値)|
地形をでこぼこにする為のデータです。
0以外の数値を記述すると高さが alt~alt_max 間のランダムになります。
:smooth = (on/off/step)|
|on|地形の高低を滑らかに描画します(デフォルト)|
|off|少し段差がつきます|
|step|周囲の高さに影響されずに自身のaltの高さになります|
stepは城壁の天井部分を作る時に用います。城壁オブジェクトと組み合わせて用います。

:edge = (on/off)|
省略時はoff。onでエッジングする。
:id = (文字列)|
エッジングの為の識別子です。
:joint = (文字列)|
文字列には&color(blue){id}を指定する。
指定した&color(blue){id}を持つ地形チップと接した時にエッジングするようになる。
省略すると全ての異なる地形チップとの間でエッジングするようになる。

.