public static EnemyBulletScript Create(Transform _parent, Consts.MoveDirection _moveDirection) { GameObject pre = Resources.Load("Prefabs/Game/EnemyBullet", typeof(GameObject)) as GameObject; GameObject bullet = GameObject.Instantiate(pre, BgScript.s_instance.map); EnemyBulletScript script = bullet.GetComponent <EnemyBulletScript>(); script.setData(_parent, _moveDirection); return(script); }
public static TurretScript Create(Transform parent, Consts.MoveDirection _direction) { GameObject pre = Resources.Load("Prefabs/Game/EnemyDrone", typeof(GameObject)) as GameObject; GameObject bullet = GameObject.Instantiate(pre, parent); TurretScript script = bullet.GetComponent <TurretScript>(); script.direction = _direction; return(script); }
public void setMoveDirection(Consts.MoveDirection _moveDirection) { moveDirection = _moveDirection; if (moveDirection == Consts.MoveDirection.left) { transform.localScale = new Vector3(-playerScale, playerScale, playerScale); } else if (moveDirection == Consts.MoveDirection.right) { transform.localScale = new Vector3(playerScale, playerScale, playerScale); } }
public void setDirection(Consts.MoveDirection _direction) { float moveToX = 0; direction = _direction; if (_direction == Consts.MoveDirection.left) { transform.localScale = new Vector3(1, 1, 1); blood_bg_img.transform.localScale = new Vector3(1, 1, 1); moveToX = transform.localPosition.x - 200; } else if (_direction == Consts.MoveDirection.right) { transform.localScale = new Vector3(-1, 1, 1); blood_bg_img.transform.localScale = new Vector3(-1, 1, 1); moveToX = transform.localPosition.x + 200; } tweener = self_img.rectTransform.DOAnchorPosX(moveToX, 3.0f, false).SetEase(Ease.Linear).SetDelay(1.0f); }
void inputCallBack(InputControl.KeyBoard key) { switch (key) { // 跳跃、进入爬梯子状态 case InputControl.KeyBoard.Down_W: { if (PlayerStateChangeEntity.getInstance().checkIsCanChange(playerState, Consts.PlayerState.climb)) { Transform ladder = RoadScript.s_instance.checkLadder(transform.localPosition); if (ladder) { if (playerState == Consts.PlayerState.idle) { if ((ladder.position.y + 50) > transform.position.y) { // transform.position = new Vector3(ladder.position.x, transform.position.y, 0); setState(Consts.PlayerState.climb); break; } } } } if (PlayerStateChangeEntity.getInstance().checkIsCanChange(playerState, Consts.PlayerState.jump)) { if (playerState == Consts.PlayerState.crouch) { setState(Consts.PlayerState.idle); } else { if (curJumpCount < jumpComboCount) { setState(Consts.PlayerState.jump); } } } break; } // 向上爬梯子 case InputControl.KeyBoard.Keep_W: { if (playerState == Consts.PlayerState.climb) { changePlayerPos(0, climbSpeed); Transform ladder = RoadScript.s_instance.checkLadder(transform.localPosition); if (!ladder) { setState(Consts.PlayerState.idle); } } break; } // 暂停向上爬梯子 case InputControl.KeyBoard.Up_W: { if (playerState == Consts.PlayerState.climb) { FrameAnimationUtil.getInstance().stopAnimation(self_img); } break; } // 左右移动 case InputControl.KeyBoard.Keep_A: case InputControl.KeyBoard.Keep_D: { Consts.MoveDirection direction = key == InputControl.KeyBoard.Keep_A ? Consts.MoveDirection.left : Consts.MoveDirection.right; Consts.PlayerState _playerState = key == InputControl.KeyBoard.Keep_A ? Consts.PlayerState.run_left : Consts.PlayerState.run_right; if (PlayerStateChangeEntity.getInstance().checkIsCanChange(playerState, _playerState)) { if (playerState == Consts.PlayerState.jump) { setMoveDirection(direction); move(false); } else if (playerState == Consts.PlayerState.drop) { setMoveDirection(direction); move(false); } else if (playerState == Consts.PlayerState.crouch) { setMoveDirection(direction); //move(false); } else { setState(_playerState); } } break; } // 停止左右移动 case InputControl.KeyBoard.Up_A: case InputControl.KeyBoard.Up_D: { Consts.PlayerState _playerState = key == InputControl.KeyBoard.Up_A ? Consts.PlayerState.run_left : Consts.PlayerState.run_right; if (PlayerStateChangeEntity.getInstance().checkIsCanChange(playerState, Consts.PlayerState.idle)) { if (playerState == _playerState) { setState(Consts.PlayerState.idle); } } break; } // 蹲下、进入爬梯子状态 case InputControl.KeyBoard.Down_S: { if (PlayerStateChangeEntity.getInstance().checkIsCanChange(playerState, Consts.PlayerState.climb)) { Transform ladder = RoadScript.s_instance.checkLadder(transform.localPosition); if (ladder) { if (playerState == Consts.PlayerState.idle) { if ((ladder.position.y + 50) < transform.position.y) { // transform.position = new Vector3(ladder.position.x, transform.position.y, 0); setState(Consts.PlayerState.climb); break; } } } } if (PlayerStateChangeEntity.getInstance().checkIsCanChange(playerState, Consts.PlayerState.crouch)) { setState(Consts.PlayerState.crouch); } break; } // 往下爬梯子 case InputControl.KeyBoard.Keep_S: { if (playerState == Consts.PlayerState.climb) { changePlayerPos(0, -climbSpeed); Transform ladder = RoadScript.s_instance.checkLadder(transform.localPosition); if (!ladder) { setState(Consts.PlayerState.idle); } } break; } // 暂停向下爬梯子 case InputControl.KeyBoard.Up_S: { if (playerState == Consts.PlayerState.climb) { FrameAnimationUtil.getInstance().stopAnimation(self_img); } break; } // 闪现 case InputControl.KeyBoard.Down_N: { if (PlayerStateChangeEntity.getInstance().checkIsCanChange(playerState, Consts.PlayerState.sprint)) { setState(Consts.PlayerState.sprint); } break; } // 射击 case InputControl.KeyBoard.Down_M: { if (PlayerStateChangeEntity.getInstance().checkIsCanChange(playerState, Consts.PlayerState.shoot)) { switch (playerState) { case Consts.PlayerState.jump: case Consts.PlayerState.drop: case Consts.PlayerState.crouch: { BulletScript.Create(transform.parent, moveDirection); break; } default: { setState(Consts.PlayerState.shoot); break; } } } break; } } }
void inputCallBack(Consts.PlayerState _playerState) { if (PlayerStateChangeEntity.getInstance().checkIsCanChange(playerState, _playerState)) { switch (_playerState) { // 静止 case Consts.PlayerState.idle: { setState(Consts.PlayerState.idle); break; } // 跳跃 case Consts.PlayerState.jump: { if (playerState == Consts.PlayerState.crouch) { setState(Consts.PlayerState.idle); } else { setState(Consts.PlayerState.jump); } break; } // 左移、右移 case Consts.PlayerState.run_left: case Consts.PlayerState.run_right: { Consts.MoveDirection direction = _playerState == Consts.PlayerState.run_left ? Consts.MoveDirection.left : Consts.MoveDirection.right; if (playerState == Consts.PlayerState.jump) { setMoveDirection(direction); move(false); } else if (playerState == Consts.PlayerState.drop) { setMoveDirection(direction); move(false); } else if (playerState == Consts.PlayerState.crouch) { // setMoveDirection(direction); // 蹲下时只移动方向,不进行位移 // move(false); setState(_playerState); } else { setState(_playerState); } break; } // 蹲下 case Consts.PlayerState.crouch: { setState(Consts.PlayerState.crouch); break; } // 开枪 case Consts.PlayerState.shoot: { switch (playerState) { case Consts.PlayerState.jump: case Consts.PlayerState.drop: case Consts.PlayerState.crouch: { BulletScript.Create(transform.parent, moveDirection); break; } default: { setState(Consts.PlayerState.shoot); break; } } break; } // 闪现 case Consts.PlayerState.sprint: { setState(Consts.PlayerState.sprint); break; } // 降落 case Consts.PlayerState.drop: { setState(Consts.PlayerState.drop); break; } // 停止左移 case Consts.PlayerState.stop_run_left: { if (playerState == Consts.PlayerState.run_left) { setState(Consts.PlayerState.idle); } break; } // 停止右移 case Consts.PlayerState.stop_run_right: { if (playerState == Consts.PlayerState.run_right) { setState(Consts.PlayerState.idle); } break; } } } }
public void setData(Transform _parent, Consts.MoveDirection _moveDirection) { moveDirection = _moveDirection; parent = _parent; }