// Update is called once per frame void Update() { if (useMove == false) { Vector3 dir = new Vector3(0, 0, 0); myUnitState.Movement(dir); return; } if (!myUnitState.hideDummy) { #if UNITY_STANDALONE || UNITY_EDITOR float inputV = Input.GetAxis("Vertical"); float inputH = Input.GetAxis("Horizontal"); Vector3 moveDir = new Vector3(inputH, 0.0f, inputV); #elif UNITY_ANDROID || UNITY_IOS Vector3 moveDir = touchPad.touchDir; #endif myUnitState.Movement(moveDir); if (Input.GetKeyDown(KeyCode.LeftShift)) { myUnitState.Dash(); } } }
void RangeAttack(Vector3 targetPos) { float targetDist = Vector3.Distance(this.transform.position, targetPos); if (myUnit.targetAngle < 30.0f) { Vector3 moveDir = Vector3.zero; if (targetDist > targetAimDist) { myUnit.myUnitInfo.moveSpeed = 6.0f; moveDir = new Vector3(0, 0, 1.0f); if (myUnit.targetUnit == null) { moveDir += teamFormDir; } rangeInPlayer = false; attackStart = false; } else { if (teamFormDir == Vector3.zero) { myUnit.myUnitInfo.moveSpeed = evadeSpeed; moveDir = evadeDir; } else { myUnit.myUnitInfo.moveSpeed = 3.0f; moveDir = teamFormDir; } rangeInPlayer = true; attackStart = true; } moveDir.Normalize(); myUnit.Movement(moveDir); } }