/// <summary> /// Draws attack animiation and reduces boss's health. /// </summary> /// <param name="gun">If a the player has a gun different animations are shown /// </param> void DrawAttackNumberReduceBossHealth(bool gun) { var GunAttackAnimation = new GunAttack(); var SwordAttackAnimation = new SwordAttack(); int attackNumber = 0; if (gun) { GunAttackAnimation.InitialPlacements(); GunAttackAnimation.DrawMe(); GunAttackAnimation.Placement.Y = 10; attackNumber = Gun.Stats.Attack + Player.Stats.Attack; Console.SetCursorPosition(73, 12); Console.Write(attackNumber); Thread.Sleep(300); GunAttackAnimation.DeleteMe(); } else { SwordAttackAnimation.InitialPlacements(); SwordAttackAnimation.DrawMe(); SwordAttackAnimation.Placement.Y = 10; attackNumber = Sword.Stats.Attack + Player.Stats.Attack; Console.SetCursorPosition(75, 12); Console.Write(attackNumber); Thread.Sleep(300); SwordAttackAnimation.DeleteMe(); } Boss.Stats.HealthPower -= attackNumber; Gun.Stats.Attack = randomNumber.Next(10, 20); Sword.Stats.Attack = randomNumber.Next(10, 20); }
protected override void OnInitialize() { gunGo = Instantiate(gunPrefab, transform.position + GetGunOffset(defaultDirection), Quaternion.identity); eAttacks[0] = new GunAttack(this, gunGo, bulletPrefab); eAttacks[1] = new GeligniteAttack(this, gelignitePrefab); eAttacks[2] = new DynamiteAttack(this); spriteFlip = new CompoundSpriteFlip(gameObject, defaultDirection); }