SetCursor(0 0) is your friend (the second parameter is the on/off toggle).
That doesn't work.
It works, but the template game keeps turning the cursor back on at the beginning of every new room. So that may be what you're seeing. e.g. I tried putting SetCursor(997 0) in my room's init method, and it didn't work, because it turns it right back on here in the newRoom method in Game:
(self:
startRoom(gRoomNumberExit)
checkAni()
setCursor(oldCursor HaveMouse())
)
To make it work, I made a changeState method like this, so after one game cycle in my room, it turns the cursor back off:
(method (changeState newState)
(= state newState)
(switch (newState)
(case 0
(= cycles 1)
)
(case 1
(send gGame:setCursor(997 0))
)
)
)
A bit of a hack. A more elegant solution would involve mucking around with the game template and having a global variable that represents the on/off state maybe...
But anyway, let me know if you find something that works.