package org.project.entity.players;

import org.project.entity.Entity;
import org.project.entity.enemies.Enemy;
import org.project.item.armors.Armor;
import org.project.item.armors.KnightArmor;
import org.project.item.weapons.Sword;
import org.project.item.weapons.Weapon;

public class Knight extends Player {

    private static  int Maxhp = 400;
    private static  int Maxmp = 40;
    private static  int SpecialabilitymanaCost = 20;

    public Knight(String name) {

        super(name,Maxhp,Maxmp,new Sword(),new KnightArmor(),Maxhp,Maxmp);
    }

    @Override
    public void specialAbility(Entity target) {


        if (getMp() < SpecialabilitymanaCost) {

            System.out.println("Not enough mana!");

            return;
        }
        System.out.println("Performing shield bash...");

        target.stun(true);
        target.takeDamage(50);
        fillMana(-SpecialabilitymanaCost);

        System.out.println(name + " used Shield Bash!");
        System.out.println(" is stunned!");
    }

    @Override
    public int specialAblMPCost() {
        return SpecialabilitymanaCost;
    }
}