function InitTokyoSushiKart () print("Initing TokyoSushiKart") end function CreateTokyoSushiKart (id) return coroutine.create(UpdateTokyoSushiKart) end function UpdateTokyoSushiKart(myID) local x,y,z,ny x,y,z = Object.GetPosition(myID) y = y+2 Object.CreateParticleEffect(myID,0,"JetSki") Object.SetParticleEffectPosition(myID,0,x,y,z) Object.SetParticleEffectActive(myID,0,false) Object.LoadSmasher(myID,"Sushi") Object.SetUpdateRate(myID,0) Object.UpdateOnReceiveMessage(myID,true) while true do dt,reason = coroutine.yield() if reason == 8 then -- Received message that the smasher was destroyed Object.SetCollected(myID,Object.GetLastTouchfieldDriver(myID)) -- Start particle effect Object.SetParticleEffectActive(myID,0,true) -- Half second pause Object.UpdateOnReceiveMessage(myID,false) Object.SetUpdateRate(myID,0.5) dt,reason = coroutine.yield() -- Kill everything Object.SetParticleEffectActive(myID,0,false) Object.SetUpdateRate(myID,0) Object.Deactivate(myID) end end end