All pastes #815066 Raw Edit

Anonymous

public text v1 · immutable
·published 2007-12-13 19:28 UTC
rendered paste body
'GLTest.bmx

SuperStrict

Import "B3D/minib3d.bmx"
Import "Entity.bmx"
Import "Particle.bmx"
Import brl.linkedlist

Global EntityList:TList = New TList

Graphics3D(1024, 768) 

test:Particle = Particle.Create(100, 100, "test.bmp") 

While(Not KeyDown(KEY_ESCAPE)) 
	For Local o:Entity = EachIn(EntityList) 
		o.Think() 
	Next
EndWhile

'Entity.bmx
Type Entity

	Field x:Float
	Field y:Float
	
	Method New() 
		Self.Add() 
	End Method
	
	Method Add() 
		EntityList.AddLast(Self) 
	End Method
	
	Method Think() 
		
	End Method

EndType

'Particle.bmx
Type Particle Extends Entity

	Field Sprite:TImage
	
	Method New() 
		Super.Add() 
	End Method
	
	Method Think() 
		DrawImage(Sprite, x, y) 
	End Method
	
	Function Create:Particle(x:Float, y:Float, sprite:String) 
		newParticle:Particle = New Particle
		newParticle.x = x
		newParticle.y = y
		newParticle.Sprite = LoadImage(sprite) 
	
		Return newParticle
	EndFunction
	
EndType