示例#1
0
        public string poisonAttack()
        {
            float _hp = target.getHp()[0];

            target.takeDamage(damage);
            return(target.name + " получил " + (_hp - target.getHp()[0]) + " урона(" + type + ")");
        }
示例#2
0
 public string attack(Creature enemy)           //Желательно переделать в виртуальный метод, и для каждого класса существ переопределять отдельно
 {
     target = enemy;
     if (target != null)
     {
         if (target.isAlive())
         {
             //isInBattle = true;
             float _enemy_hp = target.getHp()[0];                      //нужно для расчёта нанесённого урона
             target.takeDamage(damage);
             if (!target.isAlive())
             {
                 string _enemy_name = target.name;
                 addExp((int)target.maxhp);
                 target.Die();
                 target = null;
                 //isInBattle = false;
                 return(name + " убил " + _enemy_name);
             }
             else
             {
                 return(name + " нанёс " + Convert.ToInt32(_enemy_hp - target.hp) + " урона по " + target.name);
             }
         }
         else
         {
             return(target.name + " уже мёртв");
         }
     }
     else
     {
         return("Цель отсутствует");
     }
 }
示例#3
0
        public static void updateUI(Creature hero, string action)
        {
            Console.Clear();
            Console.SetCursorPosition(0, 0);
            Console.Write(String.Format("HP: {0}/{6} MANA: {7}/{8} LVL: {1} EXP: {2}/{3} POS: [{4},{5}]", hero.getHp() [0], hero.lvl, hero.exp, hero.exp_to_lvl, hero.getLocation().x, hero.getLocation().y, hero.getHp() [1], hero.mana, hero.maxmana));
            switch (action)
            {
            case "LocationInfo":
                drawLocationInfo(hero);
                break;

            case "ChoiceDirection":
                choiceDirection();
                break;

            case "FightInfo":
                drawFightInfo(hero);
                break;

            case "ChoiceItemToPick":
                choiceItemToPick(hero);
                break;

            case "Inventory":
                drawInventory(hero);
                break;

            case "SelectTarget":
                drawSelectTarget(hero);
                break;

            case "drawHeroStats":
                drawHeroStats(hero);
                break;
            }
            Console.SetCursorPosition(0, 4);
            Console.Write(getLog());
        }