rust/lib-hedgewars-engine/src/engine_message.rs
changeset 14181 5ad911992460
parent 14174 e2c51c8e0b2e
equal deleted inserted replaced
14180:76a52e8149e3 14181:5ad911992460
     9     Left(KeystrokeAction),
     9     Left(KeystrokeAction),
    10     Right(KeystrokeAction),
    10     Right(KeystrokeAction),
    11     Up(KeystrokeAction),
    11     Up(KeystrokeAction),
    12     Down(KeystrokeAction),
    12     Down(KeystrokeAction),
    13     Precise(KeystrokeAction),
    13     Precise(KeystrokeAction),
       
    14     Attack(KeystrokeAction),
    14     NextTurn,
    15     NextTurn,
    15     Switch,
    16     Switch,
    16     Empty,
    17     Empty,
    17     Timer(u8),
    18     Timer(u8),
    18     Slot(u8),
    19     Slot(u8),
    28 pub enum UnsyncedEngineMessage {
    29 pub enum UnsyncedEngineMessage {
    29     Ping,
    30     Ping,
    30     Pong,
    31     Pong,
    31     Say(String),
    32     Say(String),
    32     Taunt(u8),
    33     Taunt(u8),
    33     ExecCommand(Command),
    34     GameType(u8),
    34     GameType(u8),// TODO: use enum
       
    35     Warning(String),
    35     Warning(String),
    36     StopSyncing,
    36     StopSyncing,
    37     ConfigRequest,
       
    38     GameOver,
    37     GameOver,
    39     GameInterrupted,
    38     GameInterrupted,
       
    39     GameSetupChecksum(String),
       
    40 }
       
    41 
       
    42 pub enum ConfigEngineMessage {
       
    43     ConfigRequest,
       
    44     SetAmmo(String),
       
    45     SetScript(String),
       
    46     SetScriptParam(String),
       
    47     Spectate,
       
    48     TeamLocality(bool),
       
    49     SetMap(String),
       
    50     SetTheme(String),
       
    51     SetSeed(String),
       
    52     SetTemplateFilter(String),
       
    53     SetMapGenerator(String),
       
    54     SetFeatureSize(u8),
       
    55     SetDelay(u32),
       
    56     SetReadyDelay(u32),
       
    57     SetCratesFrequency(u8),
       
    58     SetHealthCrateProbability(u8),
       
    59     SetHealthCratesNumber(u8),
       
    60     SetRoundsTilSuddenDeath(u8),
       
    61     SetSuddenDeathWaterRiseSpeed(u8),
       
    62     SetSuddenDeathHealthDecreaseRate(u8),
       
    63     SetDamageMultiplier(u32),
       
    64     SetRopeLength(u32),
       
    65     SetGetawayTime(u32),
       
    66     SetDudMinesPercent(u8),
       
    67     SetMinesNumber(u32),
       
    68     SetAirMinesNumber(u32),
       
    69     SetBarrelsNumber(u32),
       
    70     SetTurnTime(u32),
       
    71     SetMinesTime(u32),
       
    72     SetWorldEdge(u8),
       
    73     Draw, // TODO
       
    74     SetVoicePack(String),
       
    75     AddHedgehog(String, u8, u32),
       
    76     AddTeam(String, u8),
       
    77     SetHedgehogCoordinates(i32, i32),
       
    78     SetFort(String),
       
    79     SetGrave(String),
       
    80     SetHat(String),
       
    81     SetFlag(String),
       
    82     SetOwner(String),
       
    83     SetOneClanMode(bool),
       
    84     SetMultishootMode(bool),
       
    85     SetSolidLand(bool),
       
    86     SetBorders(bool),
       
    87     SetDivideTeams(bool),
       
    88     SetLowGravity(bool),
       
    89     SetLaserSight(bool),
       
    90     SetInvulnerability(bool),
       
    91     SetHealthReset(bool),
       
    92     SetVampiric(bool),
       
    93     SetKarma(bool),
       
    94     SetArtilleryMode(bool),
       
    95     SetHedgehogSwitch(bool),
       
    96     SetRandomOrder(bool),
       
    97     SetKingMode(bool),
       
    98     SetPlaceHedgehog(bool),
       
    99     SetSharedAmmo(bool),
       
   100     SetGirdersEnabled(bool),
       
   101     SetLandObjectsEnabled(bool),
       
   102     SetAISurvivalMode(bool),
       
   103     SetInfiniteAttack(bool),
       
   104     SetResetWeapons(bool),
       
   105     SetAmmoPerHedgehog(bool),
       
   106     SetWindMode(u8),
       
   107     SetTagTeam(bool),
       
   108     SetBottomBorder(bool),
       
   109     SetShoppaBorder(bool),
    40 }
   110 }
    41 
   111 
    42 pub enum EngineMessage {
   112 pub enum EngineMessage {
    43     Synced(SyncedEngineMessage, u32),
   113     Synced(SyncedEngineMessage, u32),
    44     Unsynced(UnsyncedEngineMessage),
   114     Unsynced(UnsyncedEngineMessage),
       
   115     Config(ConfigEngineMessage),
    45 }
   116 }
    46 
   117 
    47 impl EngineMessage {
   118 impl EngineMessage {
    48     fn from_bytes(buf: &[u8]) -> Self {
   119     fn from_bytes(buf: &[u8]) -> Self {
    49         unimplemented!()
   120         unimplemented!()