Create a gist now

Instantly share code, notes, and snippets.

What would you like to do?
8.14 Modify OnObjectCollision method in CustomEngine Class
Import fantomX
Class CustomEngine Extends ftEngine
Method OnObjectCollision:Int(obj_one:ftObject, obj_two:ftObject)
' Refactor character collision checks to use method
If (obj_one.GetText() = "PLAYER" And obj_two.GetText() = "ENEMY")
CharacterCollision(obj_one, obj_two)
Else If (obj_two.GetText() = "PLAYER" And obj_one.GetText() = "ENEMY")
CharacterCollision(obj_two, obj_one)
End
' Check for projectile collision with enemies
If (obj_one.GetText() = "PROJECTILE" And obj_two.GetText() = "ENEMY")
ProjectileCollision(obj_one, obj_two)
Else If (obj_two.GetText() = "PROJECTILE" And obj_one.GetText() = "ENEMY")
ProjectileCollision(obj_two, obj_one)
End
Return 0
End
' add projectile collison behavior
Method ProjectileCollision(projectile_box:ftObject, enemy_box:ftObject)
projectile_box.SetText("DESTROYED")
enemy_box.SetText("DAMAGED")
projectile_box.SetColWith(enemy_box.GetColGroup(), False)
End
' refactor character collision behavior to a method
Method CharacterCollision(player_box:ftObject, enemy_box:ftObject)
player_box.SetText("DAMAGED")
enemy_box.SetText("DAMAGED")
enemy_box.SetColWith(player_box.GetColGroup(), False)
End
End
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment