My Gorilla remake is shaping up nicely, but only one thing remains: Building damage :(
When a banana hits a building, I would like to create a crator of a certain size where it hit. What would be the best way of doing this?
My buildings are set up in an array of a type:
The only idea I have is to just draw circles the same color as the background over top of the buildings. Then a banana would only explode if it's touching a building and NOT touching one of the circles. I would make another type to hold all the circle objects. The only problem I see with this is, I would like it to be as pixel-perfect as possible and with this method it wouldn't be. Any ideas?
When a banana hits a building, I would like to create a crator of a certain size where it hit. What would be the best way of doing this?
My buildings are set up in an array of a type:
Type City Field Buildings:Building[],sunx:Int Method Draw(amount:Int) SetColor(255,255,0) DrawOval(sunx,32,32,32) For Local i:Int=0 To amount-1 Buildings[i].Draw(i,amount) Next End Method Function Create:City(amount:Int,maxheight:Int,minheight:Int) Local c:City=New City c.Buildings=New Building[30] For Local i:Int=0 To amount-1 c.Buildings[i]=New Building Next Return c End Function End Type Type Building Field height:Int Method Draw(i:Int,amount:Int) Local x:Int=i*(640/amount) Local y:Int=480-height SetBlend(SOLIDBLEND) DrawRect(x,y,640/amount,height) For Local wx:Int=0 To ((640/amount)/10)-1 For Local wy:Int=0 To (height/10) SetColor(255,255,0) DrawRect(x+3+(wx*10),y+(wy*15)+4,4,7) Next Next End Method End Type
The only idea I have is to just draw circles the same color as the background over top of the buildings. Then a banana would only explode if it's touching a building and NOT touching one of the circles. I would make another type to hold all the circle objects. The only problem I see with this is, I would like it to be as pixel-perfect as possible and with this method it wouldn't be. Any ideas?