Esempio n. 1
0
 public void update()
 {
     if (status.hasAttr("Shadowbound"))
     {
         status.removeAttr("Divine Wrath");
         int wrathCounter = 0;
         for (int x = 0; x < equipment.equipSlots.Length; x++)
         {
             if (equipment.equipSlots[x] != null)
             {
                 if (equipment.equipSlots[x].brands.Contains("holy"))
                 {
                     wrathCounter++;
                 }
             }
         }
         if (wrathCounter > 0)
         {
             status.addStatus(new Status("Divine Wrath", wrathCounter, true, ConsoleForeground.White, ConsoleBackground.Black));
         }
         if (World.rand.Next(3) != 0)
         {
             hurt(status.getLvl("Divine Wrath"), true, "The ancients strike against you for tainting their blessings!");
         }
     }
     pathToExit = Path.calcPath(new Point(Program.renderX, Program.renderY), Program.world.suggestedExit, "playerPath", true, false, 10000);
     if (species == Species._karura && stats.level >= 8 && !_karura_addedFly)
     {
         _karura_addedFly = true;
         abilities.Add(new Ability("Fly", AbilityEffect.TOGGLEFLIGHT));
         Program.msgLog.Add("Your vestigal wing stubs grow into feathery appendages!");
     }
     if (stats.xp >= stats.reqXp)
     {
         stats.xp -= stats.reqXp;
         stats.level++;
         Program.msgLog.Add("You are now level " + stats.level);
         stats.reqXp = (int)Math.Pow(stats.level + 1, (7 / 4)) * stats.level;
     }
     Program.world = Program.levelMap[Program.area + ":" + Program.floor];
 }