Added ambassador support (for Math Blaster).
Tons of config options too.
* Moved ambassador room controlling to seperate class.
* More changes to appease the Pull Request.
Ongoing alerts will no longer be sent when a player joins that room.
Code for the functionality remains in case there is want to re-enable it (assuming it gets fixed).
Revamped entire room Alerts system.
Merged RoomWithAlert into Room (as part of the revamp).
This added support for Red Alert and Disco Alert.
This meant that I had to revamp the room alerts system to allow for multiple alerts per room.
Events hopefully shouldn't overlap each other in the same room.
An extra feature is that an alert will start for a player that has just entered the room (with a duration reduced based on when the alert initially started). I shoved this functionality's working into SetUserVariablesHandler on line 30. This feature doesn't seem to work when leaving a non-MMO rooms such as minigames (may be related to missed JL command).
- fix client stay in room:
- replace Client.JoinRoom and Client.LeaveRoom by Client.SetRoom
- do not call Client.LeaveRoom / Client.SetRoom(null) for SheduleDisconnect cases
(only quietly remove client from room and the rest do in disconnect realisation)
- add Room.Send for send message to all clients in room
- replace Room.Client sending loops by calls Room.Send