public void Deserialize(NetDataReader reader) { Id = reader.GetUShort(); Keys = (MovementKeys)reader.GetByte(); Rotation = reader.GetFloat(); ServerTick = reader.GetUShort(); }
/// <summary> /// Change a player movement key /// </summary> /// <param name="mKey">The movement key to change</param> /// <param name="player">The player whos movement will change</param> public void ControlEdit(MovementKeys mKey, Player player) { // Gets all keys currently pressed and stores them KeyboardState kbState = Keyboard.GetState(); Keys[] keyArray = kbState.GetPressedKeys(); // If there are keys pressed, changes the player's movement key to the new one if (keyArray.Length > 0) { player.ChangeKeys(mKey, keyArray[0]); } }
/// <summary> /// Allows the changing of movement keys by entering what key you want to change (using an enum) and then what you would like to change it to /// </summary> /// <param name="key">The enum of which key you want to change</param> /// <param name="newKey">The new key</param> public void ChangeKeys(MovementKeys key, Keys newKey) { if (key == MovementKeys.jumpKey) { jumpKey = newKey; } if (key == MovementKeys.leftKey) { leftKey = newKey; } if (key == MovementKeys.rightKey) { rightKey = newKey; } }
public Keys GetMovementKey(MovementKeys key) { if (key == MovementKeys.jumpKey) { return(jumpKey); } if (key == MovementKeys.leftKey) { return(leftKey); } if (key == MovementKeys.rightKey) { return(rightKey); } else { return(Keys.None); } }
public static void UnRegisterKeyDownEvent(MovementKeys k, OnKeyDownEvent e) { moveEvents[k] -= e; }
public static void RegisterKeyDownEvent(MovementKeys k, OnKeyDownEvent e) { if (!moveEvents.ContainsKey(k)) moveEvents[k] = e; else moveEvents[k] += e; }