public void ChangeStatus(Type_Status status) { switch (status) { case Type_Status.ATTACK: PlayerDodge = null; playerRunAway = null; break; case Type_Status.MOVE: status = Type_Status.MOVE; Target = null; PlayerDodge = null; playerRunAway = null; break; case Type_Status.RUN_AWAY: Target = null; PlayerDodge = null; break; case Type_Status.DODGE: Target = null; playerRunAway = null; PlayerDodge = null; break; ; } }
public void Attack() { if (Target != null) { if (!Target.GetComponent <Enemy>().isGround) { Target = null; status = Type_Status.MOVE; return; } else { float ForceTarget = Target.GetComponent <Enemy>().Get_Force(); float AttackPower = ((Force / DistanceFromLimitNeart()) * Mass); DirectMove = (new Vector3(Target.transform.position.x, 0, Target.transform.position.z) - new Vector3(transform.position.x, 0, transform.position.z)); } } else { status = Type_Status.MOVE; } }
private void Equal(object sender, RoutedEventArgs e) { if (Display_Right.Text != "") { Calculate(); formula_01 = ""; formula_02 = ""; Display_Right.Text = result.ToString(); Display_Left.Text = ""; SubDisplay_01.Text = "="; Current_Status = Type_Status.Solved; } else { if (Display_Left.Text != "") { formula_01 = ""; formula_02 = ""; Display_Right.Text = result.ToString(); Display_Left.Text = ""; SubDisplay_01.Text = "="; Current_Status = Type_Status.Solved; } else { Reset(); Current_Status = Type_Status.None; } } }
public void Process_Status() { Player[] player; if (GetEnemyInRadius(Radius, transform.position, transform.up, out player) != 0) { int indexBall = index_Limit + index_Enemy; int isDodge = index_Blood_War - index_Dodge; if (indexBall <= index_Blood_War) { status = Type_Status.ATTACK; Target = GetTargert(Radius); if (Target != null && Target.GetComponent <Enemy>().isGround) { if (isDodge <= index_Dodge && index_Dodge <= index_Blood_War) { Player[] dodgePlayer; if (GetEnemyInRadius(Radius / 2, transform.position, transform.up, out dodgePlayer) != 0) { PlayerDodge = PlayerStrongerst(dodgePlayer); if (PlayerDodge != null) { status = Type_Status.DODGE; } } } } else { status = Type_Status.MOVE; } } else { // Run Away playerRunAway = player; status = Type_Status.RUN_AWAY; } } else { // Debug.Log("Move"); // status = Type_Status.MOVE; ChangeStatus(Type_Status.MOVE); } }
public void RunAway() { if (playerRunAway != null) { List <Vector3> direct = new List <Vector3>(); for (int i = 0; i < directX8.Length; i++) { direct.Add(directX8[i]); } float[] Score; for (int i = 0; i < playerRunAway.Length; i++) { for (int j = 0; j < directX8.Length; j++) { if (IsCollWithPlayer(directX8[j], playerRunAway[i])) { Debug.Log("Remove Direct : " + gameObject.name + " " + playerRunAway[i].gameObject.name + " " + directX8[j]); if (direct.Contains(directX8[j])) { direct.Remove(directX8[j]); } } } } Score = new float[direct.Count]; string s1 = ""; for (int i = 0; i < direct.Count; i++) { s1 += " " + direct[i]; } int index = ScoreOfDirect(direct.ToArray()); DirectMove = direct[index]; body.AddForce(DirectMove * SpeedChance * Length, ForceMode.Force); // Debug.Log(s1); // Debug.Log(DirectMove); } else { status = Type_Status.MOVE; } }
public void Dodge() { if (PlayerDodge != null) { List <Vector3> direct = new List <Vector3>(); float[] Score; for (int i = 0; i < directX8.Length; i++) { direct.Add(directX8[i]); } for (int j = 0; j < directX8.Length; j++) { if (IsCollWithPlayer(directX8[j], PlayerDodge)) { if (direct.Contains(directX8[j])) { direct.Remove(directX8[j]); direct.Remove(-directX8[j]); // } } } Score = new float[direct.Count]; // Debug.Log(direct.Count + " "+directX8.Length); int index = ScoreOfDirectWithAngle(direct.ToArray(), (transform.position - PlayerDodge.transform.position).normalized); DirectMove = direct[index]; // Debug.Log(DirectMove); } else { status = Type_Status.MOVE; } }
private void Clear(object sender, RoutedEventArgs e) { Reset(); Current_Status = Type_Status.None; }
private void Division(object sender, RoutedEventArgs e) { CurrentCalculate = Type_Calculate.Division; Calculate(); Current_Status = Type_Status.Calculating; }
private void Multiplication(object sender, RoutedEventArgs e) { CurrentCalculate = Type_Calculate.Multiplication; Calculate(); Current_Status = Type_Status.Calculating; }