Пример #1
0
        void HandleSkill(SkillButton button)
        {
            switch (button.Skill.Name)
            {
            case "zap":
                foreach (Fighter fighter in Save.GetRoom().Entities.FindAll(entity => entity is Fighter))
                {
                    if (MouseOver(fighter))
                    {
                        if (Save.Kevin.Power >= 1)
                        {
                            Save.Kevin.Power -= 1;
                            Deal(fighter, 5);
                            if (fighter.HP <= 0)
                            {
                                UpdateOptions = true;
                            }
                        }
                    }
                }
                break;

            case "zaproom":
                if (MegaMapMode)
                {
                    foreach (RoomButton roombutton in MegaMapButtons.FindAll(butt => butt is RoomButton))
                    {
                        if (MouseOver(roombutton) && Save.Kevin.Power >= 2 || (PlayerHasSkill("zapcheaper") && Save.Kevin.Power >= 1))
                        {
                            Save.Kevin.Power -= 2;
                            if (PlayerHasSkill("zapcheaper"))
                            {
                                Save.Kevin.Power++;
                            }
                            foreach (Fighter fighter in roombutton.Room.Entities.FindAll(entity => entity is Fighter))
                            {
                                fighter.HP -= 3;
                                if (fighter.HP <= 0)
                                {
                                    UpdateOptions = true;
                                }
                            }
                            if (PlayerHasSkill("zapsafe"))
                            {
                                Save.Kevin.HP += 3;
                            }
                        }
                    }
                }
                break;
            }
        }
Пример #2
0
 void CheckActiveSkills()
 {
     foreach (SkillButton button in SkillButtons)
     {
         // Keyboard
         if (Pressed(button.Hotkey) && DescriptionList.Count == 0)
         {
             button.WasPressed = true;
         }
         else if (Released(button.Hotkey))
         {
             if (button.WasPressed && PlayerHasSkill(button.Skill))
             {
                 HandleSkill(button);
             }
             button.WasPressed = false;
         }
     }
     foreach (RoomButton button in MegaMapButtons.FindAll(button => button is RoomButton))
     {
         if (MouseOver(button))
         {
             if (RightClick())
             {
                 button.WasRightClicked = true;
             }
             else if (RightReleased())
             {
                 if (PlayerHasSkill("inspect"))
                 {
                     if (button.Room.Visited && Save.Kevin.Power >= 1)
                     {
                         Save.Kevin.Power--;
                         button.Room.Known = true;
                     }
                 }
                 button.WasRightClicked = false;
             }
         }
     }
 }