xale / iTetrinet

TetriNET Client Developed for Mac OS X 10.5 Leopard
21 stars 9 forks source link

Hide join/leave status messages when changing channels #79

Open xale opened 14 years ago

xale commented 14 years ago

When changing channels, the server sends a "player left" message for each player in the channel the player is leaving, and a "player joined" message for each player in the channel the player is joining. This generates a large number of status messages on the chat view, which are unnecessary and distracting, and should ideally be filtered out.

xale commented 14 years ago

Implementation note: it's possible that the only way to do this is to maintain a list of all the players currently connected to the server, via the Query protocol, and then examine the join/leave events to determine if they represent a change from the player's last known location, or if the player is new to the server. We already have a controller maintaining the state of the channels on the server using a Query socket; it shouldn't be too hard to adapt it to serve this function, as well.

ebourg commented 14 years ago

A simple alternative is to not echo the join/leave messages on the chat up to 1 or 2 seconds after the join command is issued. This will not work if the channel change is triggered by the server though (with commands like /summon or /goto on Jetrix)