Advertisement
spacechase0

Magic skill stuff

Nov 17th, 2017
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.76 KB | None | 0 0
  1.  
  2. using static StardewMountain.Mod;
  3.  
  4. public class SaveData
  5. {
  6.        public class Magic_
  7.        {
  8.            public int magicLevel = 0;
  9.            public int magicExp = 0;
  10.        }
  11.        public Magic_ Magic = new Magic();
  12. }
  13.  
  14. public class Mod
  15. {
  16.     public static SaveData Data = new SaveData();
  17. }
  18.  
  19. public static class Extensions
  20. {
  21.  
  22.         public static int getMagicLevel(this SFarmer player)
  23.         {
  24.             if (player != Game1.player || Data == null)
  25.                 return 0;
  26.  
  27.             return Data.magic.magicLevel;
  28.         }
  29.  
  30.         public static int getMagicExp(this SFarmer player)
  31.         {
  32.             if (player != Game1.player || Data == null)
  33.                 return 0;
  34.  
  35.             return Data.magic.magicExp;
  36.         }
  37.  
  38.         public static void addMagicExp(this SFarmer player, int exp)
  39.         {
  40.             if (player != Game1.player || Data == null)
  41.                 return;
  42.  
  43.             if (Data.magic.magicLevel >= 50)
  44.                 return;
  45.  
  46.             Data.magic.magicExp += exp;
  47.            
  48.             while (Data.magic.magicExp >= player.getMagicExpForNextLevel() )
  49.             {
  50.                 Data.magic.magicExp -= player.getMagicExpForNextLevel();
  51.                 Data.magic.magicLevel++;
  52.                 if ( Data.magic.magicLevel % 2 == 1 )
  53.                     Data.magic.freePoints++;
  54.                 player.setMaxMana(player.getMagicLevel() == 1 ? 50 : player.getMaxMana() + 10);
  55.                 Magic.newMagicLevels.Add(Data.magic.magicLevel);
  56.             }
  57.         }
  58.  
  59.         public static int getMagicExpForNextLevel(this SFarmer player)
  60.         {
  61.             if (player != Game1.player || Data == null)
  62.                 return 50;
  63.  
  64.             return 50 + Data.magic.magicLevel * 50;
  65.         }
  66. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement