public UpdateStatus Move(PlayerMoveType move, PlayerData playerData, GameSettings settings) { if (GameControler.Instance.CurrentGameData.Status != GameStatus.Running && GameControler.Instance.CurrentGameData.Status != GameStatus.Pending) { return(UpdateStatus.None); } UpdateStatus returnStatus = UpdateStatus.OK; switch (move) { case PlayerMoveType.Up: playerData.CurrentPosition.Row--; break; case PlayerMoveType.Down: playerData.CurrentPosition.Row++; break; case PlayerMoveType.Left: playerData.CurrentPosition.Column--; break; case PlayerMoveType.Right: playerData.CurrentPosition.Column++; break; } if (playerData.CurrentPosition.Row < 0) { playerData.CurrentPosition.Row = 0; returnStatus = UpdateStatus.Error; } if (playerData.CurrentPosition.Column < 0) { playerData.CurrentPosition.Column = 0; returnStatus = UpdateStatus.Error; } if (playerData.CurrentPosition.Row >= settings.Rows) { playerData.CurrentPosition.Row = settings.Rows - 1; returnStatus = UpdateStatus.Error; } if (playerData.CurrentPosition.Column >= settings.Columns) { playerData.CurrentPosition.Column = settings.Columns - 1; returnStatus = UpdateStatus.Error; } if (returnStatus == UpdateStatus.OK) { GameControler.Instance.CurrentGameData.Score++; } return(returnStatus); }
/// <summary> /// Initialisation of this spell. /// </summary> /// <param name="spell">Which spell this is.</param> /// <param name="spellType">What type of spell this is.</param> /// <param name="spellMoveType">Determinates how player is allowed to move while casting</param> /// <param name="castTime">Takes the casting animation's start downtime.</param> /// <param name="coolDownTime">Time until spell can be casted again after casting.</param> /// <param name="spellStartOffset">Offset vector from player position where the spell is spawned.</param> protected virtual void Init(Spells spell, DamageType spellType, PlayerMoveType spellMoveType, float castTime, float coolDownTime, Vector3 spellStartOffset) { SpellType = spell; DamageType = spellType; SpellMoveType = spellMoveType; CastTime = castTime; CoolDownTime = coolDownTime; startOffset = spellStartOffset; }
public static void SetPlayerMove(this Player player, PlayerMoveType pmt) { if (player == null || player.CustomProperties == null) { return; } Hashtable playerPros = new Hashtable(); playerPros[PlayerMovePropKey] = (int)pmt; player.SetCustomProperties(playerPros); }
public override void Read() { X1 = ReadF(); Y1 = ReadF(); Z1 = ReadF(); Heading = (short)ReadH(); X2 = ReadF(); Y2 = ReadF(); Z2 = ReadF(); MoveType = (PlayerMoveType)ReadH(); Unk2 = (short)ReadH(); Unk3 = (short)ReadH(); }
public override void Read() { X1 = Single(); Y1 = Single(); Z1 = Single(); Heading = (short)ReadWord(); X2 = Single(); Y2 = Single(); Z2 = Single(); MoveType = (PlayerMoveType)ReadWord(); Unk2 = (short)ReadWord(); Unk3 = (short)ReadWord(); }
public override void Read() { X1 = ReadF(); Y1 = ReadF(); Z1 = ReadF(); Heading = (short) ReadH(); X2 = ReadF(); Y2 = ReadF(); Z2 = ReadF(); MoveType = (PlayerMoveType)ReadH(); Unk2 = (short) ReadH(); Unk3 = (short) ReadH(); }
public override void Read() { X1 = Single(); Y1 = Single(); Z1 = Single(); Heading = (short) ReadWord(); X2 = Single(); Y2 = Single(); Z2 = Single(); MoveType = (PlayerMoveType)ReadWord(); Unk2 = (short) ReadWord(); Unk3 = (short) ReadWord(); }
// 事件监听 end // player控制 begin private void PlayerMove(PlayerMoveType moveType) { switch (moveType) { case PlayerMoveType.STRAIGHT: PlayerMoveStraight(); break; case PlayerMoveType.ROTATE: PlayerMoveRotate(); break; default: Debug.LogError("wrong moveType: " + moveType); break; } }
public SpCharacterMove(Player player, float x1, float y1, float z1, short heading, float x2, float y2, float z2, PlayerMoveType moveType, short unk2, short unk3) { Player = player; X1 = x1; Y1 = y1; Z1 = z1; Heading = heading; X2 = x2; Y2 = y2; Z2 = z2; MoveType = (short)moveType.GetHashCode(); Unk2 = unk2; Unk3 = unk3; }
public override void OnPlayerPropertiesUpdate(Player targetPlayer, Hashtable propertiesThatChanged) { if (propertiesThatChanged.ContainsKey("PMove") && targetPlayer == PhotonNetwork.LocalPlayer) { PlayerMoveType playerMove = targetPlayer.GetPlayerMove(); switch (playerMove) { case PlayerMoveType.Build: case PlayerMoveType.Selecting: BuildButton.SetActive(false); WorkButton.SetActive(false); CancelButton.SetActive(false); break; case PlayerMoveType.Work: case PlayerMoveType.BuildPosSelecting: BuildButton.SetActive(false); WorkButton.SetActive(false); CancelButton.SetActive(true); break; case PlayerMoveType.None: BuildButton.SetActive(true); WorkButton.SetActive(true); CancelButton.SetActive(false); break; case PlayerMoveType.NonTurn: BuildButton.SetActive(false); WorkButton.SetActive(false); CancelButton.SetActive(false); GameObject.Find("TurnManager").GetComponent <TurnAndRoundManager>().TurnEnd(); break; } } }
public void PlayerMoved(Player player, float x1, float y1, float z1, short heading, float x2, float y2, float z2, PlayerMoveType moveType, short unk2, short unk3) { player.Position.X = x1; player.Position.Y = y1; player.Position.Z = z1; player.Position.Heading = heading; if (player.Instance != null) player.Instance.OnMove(player); }
public void PlayerMoved(Player player, float x1, float y1, float z1, short heading, float x2, float y2, float z2, PlayerMoveType moveType, short unk2, short unk3) { SpCharacterMove packet = new SpCharacterMove(player, x1, y1, z1, heading, x2, y2, z2, moveType, unk2, unk3); player.VisiblePlayers.Each(p => packet.Send(p.Connection)); }
public static void PlayerMoved(Player player, float x1, float y1, float z1, short heading, float x2, float y2, float z2, PlayerMoveType moveType, short unk2, short unk3) { //if (unk1 == 6) //Stop //GeoService.FixOffset(player.Position.MapId, x1, y1, z1); PlayerService.PlayerMoved(player, x1, y1, z1, heading, x2, y2, z2, moveType, unk2, unk3); FeedbackService.PlayerMoved(player, x1, y1, z1, heading, x2, y2, z2, moveType, unk2, unk3); PartyService.SendMemberPositionToPartyMembers(player); }
public void PlayerMoved(Player player, float x1, float y1, float z1, short heading, float x2, float y2, float z2, PlayerMoveType moveType, short unk2, short unk3) { player.Position.X = x1; player.Position.Y = y1; player.Position.Z = z1; player.Position.Heading = heading; if (player.Instance != null) { player.Instance.OnMove(player); } }