;compile with BGLC /BGL C:\Program Files\Microsoft Games\Gmax\gamepacks\FS2002\plugins\test_box.asm
header label word
    dw      0001            ; 00 World set number   
    dd      00046FCC3H          ; 02 North bound        
    dd      00046FCB7H          ; 06 South bound        
    dd      0C1B3925AH          ; 10 East bound         
    dd      0C1B39258H          ; 14 West bound         
    dw      20 dup(0)                               
    dd      (offset OBJECT_DATA) - (offset header)
    dw      33 dup(0)                               

OBJECT_DATA label word                                  
    db  21              ;;LATBAND_REL                   
    dw  0237Eh          ;;lat min (inclusive) 512M units
    dw  0237Fh          ;;lat max (exclusive)           
    dd  (offset OBJECT_0) - (offset OBJECT_DATA)        
    db  0               ;;EOL                           
OBJECT_0 label    BGLCODE
    db  12                      ; NEAR_FAR_HUGE_OBJECT_HEADER
    dd  00046FCBDh,0C1B39259h           ; latitude,longitude          
    db  100                     ; image power                 
    dd  (offset OBJECT_0_END) - (offset OBJECT_0)             
OBJECT_0_START label word
    IFIN1       OBJECT_0_FAIL, image_complex, 2, 32767
    ADDOBJ      OBJECT_0_SCALE
    SHADOW_CALL OBJECT_0_SCALE
OBJECT_0_FAIL label    BGLCODE
    BGL_JUMP_32 OBJECT_0_END  
OBJECT_0_SCALE label    BGLCODE
    SCALE_AGL   OBJECT_0_RETURN, 10000, 9, 131072, 00046FCBDh, 06759h, 0C1B39259h, 03B6Ch, 0, 0
    BGL_CALL        OBJECT_0_BEGIN
OBJECT_0_RETURN label word
    BGL_RETURN
OBJECT_0_BEGIN label word
model_outside    label    BGLCODE
    BGL_CALL model_crash
model_shadow label BGLCODE

LOD_0    label    BGLCODE
    BGL_JUMP_32    LOD_0L

model_inside  label    BGLCODE
    BGL_RETURN
model_crash label BGLCODE
    BGL_CRASH_START   model_crash_end, 12
    BGL_CRASH_OCTTREE  crash_end_1
    dw     CRASH_FLAG_OBJECT            ; crash type
    dw     1            ; nodes used
    real4  -8.695652,0.000000,-5.437584      ; Box x,y,z 
    real4  15.874392,13.526772,12.610373      ; Box w,h,d 
    dw   1,   1,   1,   1,   1,   1,   1,   1    ; base offset into node table, one for each top-level branch
    ; So if you take branch 2 (count from 0), you add 1 to indices you encounter on that branch
    ; Nodes (254=empty 255=full, else an index into branch)
    OCTTREE_NODE   255, 255, 255, 255, 255, 255, 255, 255           ; node   0
crash_end_1 label word
model_crash_end label word
    BGL_RETURN

LOD_0L    label    BGLCODE
    include    C:\Program Files\Microsoft Games\Gmax\gamepacks\FS2002\plugins\test_box_0.asm



OBJECT_0_END label word
EOF
