play sound within CollisionCheck?

sal

New member
Joined
Jun 22, 2017
Messages
4
Hi guys, need some programming help please!

How do I play a sound from within the fantomCX OnObjectCollision method? Currently I get a "identifier mySound2 not found", but I've declared it previously and it works from within OnUpdate()




Cerberus:
    Method OnObjectCollision:Int(obj:ftObject, obj2:ftObject)
        ' This method is called when an object collided with another object
    
        If obj.GetTag() = _g.ENEMY
            Print("ENEMY")
            obj.Remove()
        EndIf
        
        If obj.GetTag() = _g.GOODGUY
            Print("NOT ENEMY")
            mySound2.Play()   '<---- how to play sound on collision?
            obj.Remove()
            _g.score = _g.score + 1
        EndIf       
        
        Return 0
    End
 

MikeHart

Administrator
CX Code Contributor
3rd Party Module Dev
3rd Party Target Dev
3rd Party Tool Dev
Joined
Jun 19, 2017
Messages
3,500
I guess you have loaded the sound inside your app class.
OnObjectCollision is part of the ftEngine class, so i doesn't know about that sound.
Prefix it with your sound call with the identifier of your app class like below and you should be able to play it:

Cerberus:
Class cEngine Extends ftEngine
    '------------------------------------------
    Method OnObjectCollision:Int(obj:ftObject, obj2:ftObject)
        _g.shoot.Play()
        Return 0
    End
End

Function Main:Int()
    _g = New cGame
    Return 0
End
 
  • Like
Reactions: sal
Top Bottom