| 1 |
; 通常のビル with light (Normal building macro) |
| 2 |
; build.scm Lat Lon Rot Height Width1 Width2 Type Altitude wallflag |
| 3 |
; 1 2 3 4 5 6 7 8 9 |
| 4 |
|
| 5 |
; 注意: %5 と %6 は偶数値でなければならない |
| 6 |
|
| 7 |
; Type の説明 |
| 8 |
; value from each group. |
| 9 |
; 00 beige with vertical stripes |
| 10 |
; 01 white with vertical stripes |
| 11 |
; 02 dark gray with vertical stripes |
| 12 |
; 03 gray with vertical stripes |
| 13 |
; 04 white with dark vertical stripes |
| 14 |
; 05 white with horizontal stripes |
| 15 |
; 06 beige with horizontal stripes |
| 16 |
; 07 light gray with vertical stripes |
| 17 |
; |
| 18 |
; bits 3 と 4 はビルの形を定義する |
| 19 |
; 00 通常のビル |
| 20 |
; 08 屋根つき,屋根は北を向いているh) |
| 21 |
; 10 斜めの壁.ピラミッド状. |
| 22 |
; 18 8角ビル -> additional wallflags needed. |
| 23 |
; |
| 24 |
; 8000 あらかじめ定義された SIDE#.R8 ビットマップの代わりに |
| 25 |
; ユーザ定義のビットマップを使用する.->bitmap() |
| 26 |
; Bitmap() コマンドを Building() コマンドの直前で使う. |
| 27 |
; Note, ビットマップは特別のデザインを持っていなければ |
| 28 |
; ならない. |
| 29 |
|
| 30 |
Area( 5 %1 %2 10 ) |
| 31 |
PerspectiveCall( :Sub ) |
| 32 |
ShadowCall( :Shadow ) |
| 33 |
Jump( : ) |
| 34 |
|
| 35 |
:Sub |
| 36 |
Perspective |
| 37 |
:Shadow |
| 38 |
mif( %8 ) |
| 39 |
Refpoint( 2 :No_object 1 %1 %2 E= %8 V1= 8000 ) |
| 40 |
melse |
| 41 |
Refpoint( 7 :No_object 1 %1 %2 V1= 8000 ) |
| 42 |
mifend |
| 43 |
|
| 44 |
mif( %3 ) |
| 45 |
RotatedCall( :Object 0 0 %3 ) |
| 46 |
melse |
| 47 |
Call( :Object ) |
| 48 |
mifend |
| 49 |
:No_object |
| 50 |
Return |
| 51 |
|
| 52 |
:Object |
| 53 |
Building( 0 0 0 %4 %5 %6 %7 %9 ) |
| 54 |
|
| 55 |
IfVarRange( :no_light 28C 2 4 ) |
| 56 |
IfVarAnd( :no_light 282 3333 ) |
| 57 |
|
| 58 |
LineColor( 0F F0 ) |
| 59 |
;;; DotPt ではなく Dot を使用する |
| 60 |
;;; FS2K では、DotPt では光らない |
| 61 |
Dot( [%5 / 2] [%4 * 4 + 1] [%6 / 2] ) |
| 62 |
Dot( [%5 / 2] [%4 * 4 + 1] [0 - %6 / 2] ) |
| 63 |
Dot( [0 - %5 / 2] [%4 * 4 + 1] [%6 / 2] ) |
| 64 |
Dot( [0 - %5 / 2] [%4 * 4 + 1] [0 - %6 / 2] ) |
| 65 |
|
| 66 |
:no_light |
| 67 |
Return |
| 68 |
|
| 69 |
EndA |