[−][src]Module rusty_sword_arena::game
Everything in the game module is shared by the server and the client
Structs
ButtonProcessor | Stateful, stack-based button processor. You can use this to process button state/values and
update a |
GameSettings | The game settings. Mostly useful if you want to try to write client-side animations that match server simulation, movement prediction, AI, etc. |
GameState | Once per frame, the server will broadcast a GameState to all clients. IMPORTANT: If you don't receive a GameState for 2 full seconds, the client MUST DROP its ServerConnection (or just exit entirely). The underlying networking that we're currently using hides network disconnects, which can leave the networking in a funky state if one end drops. So we need to rely on detecting this heartbeat and shutting down the clients to ensure networking is clean when the server restarts. (In the future, lets switch to a protocol that can detect disconnects...) |
HighScores | High Scores! High scores are reset every time the server restarts, but other than that they are persistent across joins/leaves. |
PlayerInput | Clients should send |
PlayerState | Represents the state of the player on the server for the current |
Score | A single player's score |
Weapon | A weapon a player may hold. |
Enums
GameControlMsg | Various game control actions. Used by the networking module and the server. |
PlayerEvent | A player event that has happened to your player this frame! Note that it's possible to receive a whole bunch of events in the same frame. |
Traits
Floatable | Convenience trait that adds an |