; data structures for bitmapped objects
.include	'macros3d.inc'
.include	'blit.inc'

OBJECTS1::	dc.l	"Obj1"


.long
psparkb::	points	1
		point	0,0,$2a0
		endpoints
.long
nsparkb::	fnormals 1
		normal 0,-16383,0
.long
fsparkb1::	polys	1
		poly	0,0,sparkb1
		endshape
.long
fsparkb2::	polys	1
		poly	0,0,sparkb2
		endshape
.long
fsparkb3::	polys	1
		poly	0,0,sparkb3
		endshape
.long
fsparkb4::	polys	1
		poly	0,0,sparkb4
		endshape
.long
fsparkb5::	polys	1
		poly	0,0,sparkb5
		endshape

.long
sparkb1::
	init	$8000.l,0,0,0,0,0.l
	init	$100.l,4,80,64,WID80,Exdisp+$2800.l		; 2800 is size of pause icon
	dc.l	0	; halts display at very close-up points
.long
sparkb2::
	init	$8000.l,0,0,0,0,0.l
	init	$100.l,4,80,64,WID80,Exdisp+$2800+$2800.l
	dc.l	0	; halts display at very close-up points
.long
sparkb3::
	init	$8000.l,0,0,0,0,0.l
	init	$100.l,4,80,64,WID80,Exdisp+$2800+$5000.l
	dc.l	0	; halts display at very close-up points
.long
sparkb4::
	init	$8000.l,0,0,0,0,0.l
	init	$100.l,4,80,64,WID80,Exdisp+$2800+$7800.l
	dc.l	0	; halts display at very close-up points
.long
sparkb5::
	init	$8000.l,0,0,0,0,0.l
	init	$100.l,4,80,64,WID80,Exdisp+$2800+$a000.l
	dc.l	0	; halts display at very close-up points

.long
spark_anim::
	dc.l	$8000,0		; cut off point
	dc.l	0		; no extra check distances (only used for using non-anim stuff beyond fixed distance)
	dc.l	$100,0,0,0,0	; and nothing nearer than this

	dc.l	0,spark_count

	dc.l	0,0,0,0				; code 0 set to blank, because then we can halt the anim at 0 when it is finished
	dc.l	psparkb,None,nsparkb,fsparkb1
	dc.l	psparkb,None,nsparkb,fsparkb2
	dc.l	psparkb,None,nsparkb,fsparkb3
	dc.l	psparkb,None,nsparkb,fsparkb4
	dc.l	psparkb,None,nsparkb,fsparkb5

;=====================================================

.long
psmokeb::	points	1
		point	0,0,$c0
		endpoints
.long
nsmokeb::	fnormals 1
		normal 0,-16383,0
.long
fsmokeb1::	polys	1
		poly	0,0,smokeb1
		endshape
.long
fsmokeb2::	polys	1
		poly	0,0,smokeb2
		endshape
.long
fsmokeb3::	polys	1
		poly	0,0,smokeb3
		endshape
.long
smokeb1::
	init	$8000.l,0,0,0,0,0.l
	init	$100.l,4,48,48,WID48,Exdisp+$f000.l		; 2800 is size of pause icon
	dc.l	0	; halts display at very close-up points
.long
smokeb2::
	init	$8000.l,0,0,0,0,0.l
	init	$100.l,4,48,48,WID48,Exdisp+$f000+$1200.l
	dc.l	0	; halts display at very close-up points
.long
smokeb3::
	init	$8000.l,0,0,0,0,0.l
	init	$100.l,4,48,48,WID48,Exdisp+$f000+$2400.l
	dc.l	0	; halts display at very close-up points

.long
smoke_anim::
	dc.l	$8000,0		; cut off point
	dc.l	0		; no extra check distances (only used for using non-anim stuff beyond fixed distance)
	dc.l	$100,0,0,0,0	; and nothing nearer than this

	dc.l	0,smoke_count

	dc.l	0,0,0,0				; code 0 set to blank, because then we can halt the anim at 0 when it is finished
	dc.l	psmokeb,None,nsmokeb,fsmokeb1
	dc.l	psmokeb,None,nsmokeb,fsmokeb2
	dc.l	psmokeb,None,nsmokeb,fsmokeb3

;=====================================================

.long
pgrassb::	points	1
		point	0,0,$c0
		endpoints
.long
ngrassb::	fnormals 1
		normal 0,-16383,0
.long
fgrassb1::	polys	1
		poly	0,0,grassb1
		endshape
.long
fgrassb2::	polys	1
		poly	0,0,grassb2
		endshape
.long
fgrassb3::	polys	1
		poly	0,0,grassb3
		endshape
.long
grassb1::
	init	$8000.l,0,0,0,0,0.l
	init	$100.l,4,80,30,WID80,Exdisp+$12600.l
	dc.l	0	; halts display at very close-up points
.long
grassb2::
	init	$8000.l,0,0,0,0,0.l
	init	$100.l,4,80,30,WID80,Exdisp+$12600+$12c0.l
	dc.l	0	; halts display at very close-up points
.long
grassb3::
	init	$8000.l,0,0,0,0,0.l
	init	$100.l,4,80,30,WID80,Exdisp+$12600+$2580.l
	dc.l	0	; halts display at very close-up points

.long
grass_anim::
	dc.l	$8000,0		; cut off point
	dc.l	0		; no extra check distances (only used for using non-anim stuff beyond fixed distance)
	dc.l	$100,0,0,0,0	; and nothing nearer than this

	dc.l	0,grass_count

	dc.l	0,0,0,0				; code 0 set to blank, because then we can halt the anim at 0 when it is finished
	dc.l	pgrassb,None,ngrassb,fgrassb1
	dc.l	pgrassb,None,ngrassb,fgrassb2
	dc.l	pgrassb,None,ngrassb,fgrassb3


;=====================================================================
.end

old junk
pcarbit::
	points	1
	point	0,0,300
	endpoints

ncarbit::
	fnormals 1
	normal	0,-16383,0

fcarbit::
	polys	1
	poly	0,0,carbitmap

	endshape

.long
carbitmap::
	init.w	$18000.l,0,0,0,0,0.l			; no display after ...
	init.w	$8000.l,6,32,14,WID32,carbit32.l

.phrase
carbit32:	; only placed here until proper graphics available
	init.w	#8,0,#15,$f05f,#9,0
	init.w	#8,0,#2,$f05f,#4,0,#3,$f0eb,#4,0,#2,$f05f,#9,0
	init.w	#8,0,#2,$f05f,#3,0,#5,$f0eb,#3,0,#2,$f05f,#9,0
	init.w	#8,0,#2,$f05f,#2,0,#7,$f0eb,#2,0,#2,$f05f,#9,0
	init.w	#8,0,#2,$f05f,#1,0,#9,$f0f7,#1,0,#2,$f05f,#9,0
	init.w	#5,$775d,$7718,0,0,#2,$f05f,#11,$f0f7,#2,$f05f,0,0,$7718,#5,$775d,0	
	init.w	#5,$774d,$7718,#2,$f0eb,#2,$f05f,#11,$f0f7,#2,$f05f,#2,$f0eb,$7718,#5,$774d,0	
	init.w	#5,$774d,$7718,#19,$f0eb,$7718,#5,$774d,0	
	init.w	#5,$774d,$7718,#19,$f09b,$7718,#5,$774d,0	
	init.w	#5,$774d,#2,$7718,#17,$f09b,#2,$7718,#5,$774d,0	
	init.w	#5,$7724,$7718,#19,$f09b,$7718,#5,$7724,0	
	init.w	#5,$7724,$7718,#19,$f09b,$7718,#5,$7724,0	
	init.w	#5,$7724,$7718,#19,$f09b,$7718,#5,$7724,0	
	init.w	#5,$7724,$7718,#19,0,$7718,#5,$7724,0	



plogo::	points	1
	point	0,0,$600
	endpoints

nlogo::	fnormals 1
	normal 0,-16383,0

flogo::	polys	1
	poly	0,0,logo_info
	endshape

.long
logo_info::
	init	$18000.l,0,0,0,0,0.l
	init	$100.l,5,128,66,WID128,Exdisp+$5000.l
	dc.l	0	; halts display at very close-up points


ptreebit::	points	1
	point	0,0,$1000
	endpoints

ntreebit::	fnormals 1
	normal 0,-16383,0

ftreebit::	polys	1
	poly	0,0,treebit_info
	endshape

.long
treebit_info::
	init	$18000.l,0,0,0,0,0.l
	init	$100.l,6,96,128,WID96,Exdisp+$7800.l
	dc.l	0	; halts display at very close-up points

; THESE ARE NO LONGER VALID, AS THEY ARE NOT EXPANDED INTO PLACE

