public void takeHit(MoveClass move) { print("KB is " + move.kB); print("Recovery is" + move.recovery); print("Hitstun is" + (move.recovery + move.hitStun)); print("Instant Knockback is " + move.kB * move.recovery / (move.recovery + move.hitStun)); Debug.Log("hit taken: " + move.dmg); if (blocking && move.bStun != -10) // block chunk { float instantKnockback = move.kB * move.recovery / (move.recovery + move.hitStun); transform.position += transform.right * -instantKnockback; //Instant Knockback applied print(instantKnockback); addMove(new MoveClass("Defend", move.bStun, new int[0], 0, 0, 0, 0, 0, move.kB - instantKnockback)); Debug.Log("Defend queued"); } else if (!blocking || move.bStun == -10) //hit chunk - if not blocking or if thrown { if (move.kB == -1) //if a character is knocked down { addMove(new MoveClass("Knocked Down", 6, new int[0], 0, 0, 0, 0, 0, 0)); //queue knockdown Debug.Log("KD queued"); } else //queue hit turns { float instantKnockback = move.kB * move.recovery / (move.recovery + move.hitStun); transform.position += -transform.right * instantKnockback; //Instant Knockback applied print(instantKnockback); addMove(new MoveClass("Hit", move.hitStun, new int[0], 0, 0, 0, 0, 0, move.kB - instantKnockback)); Debug.Log("Hit queued."); } } //hit chunk ends health = health - move.dmg; healthBar.HealthUpdate(health); //Game Over check if (health <= 0) { iP2.endGame(); } }
public void takeHit(MoveClass move) { Debug.Log("hit taken: " + move.dmg); if (blocking && move.bStun != -10) // block chunk { float instantKnockback = move.kB * move.recovery / (move.recovery + move.hitStun); transform.position += transform.right * -instantKnockback; //Instant Knockback applied addMove(new MoveClass("Defend", move.bStun, new int[0], 0, 0, 0, 0, 0, move.kB - instantKnockback)); Debug.Log("Defend queued"); } else if (!blocking || move.bStun == -10) //hit chunk - if not blocking or if thrown { if (move.kB == -1) //if a character is knocked down { addMove(new MoveClass("Knocked Down", 6, new int[0], 0, 0, 0, 0, 0, 0)); //queue knockdown Debug.Log("KD queued"); } else //queue hit turns { float instantKnockback = move.kB * move.recovery / (move.recovery + move.hitStun); transform.position += -transform.right * instantKnockback; //Instant Knockback applied addMove(new MoveClass("Hit", move.hitStun, new int[0], 0, 0, 0, 0, 0, move.kB - instantKnockback)); Debug.Log("Hit queued."); } } //hit chunk ends health = health - move.dmg; healthBar.HealthUpdate(health); //Game Over check if (health <= 0) { die.Play(); iP2.endGame(); myDino.GetComponent <Animation>().PlayQueued("Lose", QueueMode.PlayNow); } }