Advertisement
KanadeTachibana

NGU - DailyRewardController

Jan 18th, 2020
357
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 39.37 KB | None | 0 0
  1. // DailyRewardController
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using UnityEngine.UI;
  5.  
  6. public class DailyRewardController : MonoBehaviour
  7. {
  8.     public Character character;
  9.  
  10.     public HoverTooltip tooltip;
  11.  
  12.     public PossibleSpinRewardController rewardDisplay;
  13.  
  14.     public Text outcomeText;
  15.  
  16.     public Text rewardOutcomeTitle;
  17.  
  18.     public Image rarityBackground;
  19.  
  20.     public Image outcomeBorder;
  21.  
  22.     public Image rarity0;
  23.  
  24.     public Image rarity1;
  25.  
  26.     public Image rarity2;
  27.  
  28.     public Image rarity3;
  29.  
  30.     public Image rarity4;
  31.  
  32.     public Text timeText;
  33.  
  34.     public List<List<string>> rewardNames = new List<List<string>>();
  35.  
  36.     public List<List<int>> rewardRarity = new List<List<int>>();
  37.  
  38.     public bool inSpinLoop;
  39.  
  40.     public int spinCounter;
  41.  
  42.     public int oldOffset;
  43.  
  44.     public int newOffset;
  45.  
  46.     public PlayerTime spinnerTimer = new PlayerTime();
  47.  
  48.     private void Awake()
  49.     {
  50.         constructRewardNames();
  51.     }
  52.  
  53.     public void Start()
  54.     {
  55.         InvokeRepeating("updateTimeText", 0f, 1f);
  56.     }
  57.  
  58.     public float maxSpinTime()
  59.     {
  60.         if (character.arbitrary.hasExtendedSpinBank)
  61.         {
  62.             return 604800f;
  63.         }
  64.         return 129600f;
  65.     }
  66.  
  67.     public float targetSpinTime()
  68.     {
  69.         return 86400f;
  70.     }
  71.  
  72.     private void constructRewardNames()
  73.     {
  74.         rarity0.color = Color.white;
  75.         rarity1.color = new Color(0.6f, 0.851f, 0.917f);
  76.         rarity2.color = new Color(1f, 0.682f, 0.788f);
  77.         rarity3.color = new Color(0.784f, 0.749f, 0.906f);
  78.         rarity4.color = new Color(1f, 0.827f, 0.235f);
  79.         while (rewardNames.Count < 8)
  80.         {
  81.             rewardNames.Add(new List<string>());
  82.         }
  83.         while (rewardRarity.Count < 8)
  84.         {
  85.             rewardRarity.Add(new List<int>());
  86.         }
  87.         rewardRarity[0].Add(0);
  88.         rewardNames[0].Add("+" + character.checkAPAdded(50L) + "Arbitrary Points!");
  89.         rewardRarity[0].Add(0);
  90.         rewardNames[0].Add("+" + character.checkAPAdded(100L) + "Arbitrary Points!");
  91.         rewardRarity[0].Add(1);
  92.         rewardNames[0].Add("+" + character.checkAPAdded(500L) + "Arbitrary Points!");
  93.         rewardRarity[1].Add(0);
  94.         rewardNames[1].Add("+" + character.checkAPAdded(100L) + "Arbitrary Points!");
  95.         rewardRarity[1].Add(0);
  96.         rewardNames[1].Add("+" + character.checkAPAdded(200L) + "Arbitrary Points!");
  97.         rewardRarity[1].Add(1);
  98.         rewardNames[1].Add("+" + character.checkAPAdded(1000L) + "Arbitrary Points!");
  99.         rewardRarity[1].Add(3);
  100.         rewardNames[1].Add("+1 Energy Potion α!");
  101.         rewardRarity[1].Add(3);
  102.         rewardNames[1].Add("+1 Magic Potion α!");
  103.         rewardRarity[2].Add(0);
  104.         rewardNames[2].Add("+" + character.checkAPAdded(200L) + "Arbitrary Points!");
  105.         rewardRarity[2].Add(0);
  106.         rewardNames[2].Add("+" + character.checkAPAdded(400L) + "Arbitrary Points!");
  107.         rewardRarity[2].Add(1);
  108.         rewardNames[2].Add("+" + character.checkAPAdded(2000L) + "Arbitrary Points!");
  109.         rewardRarity[2].Add(3);
  110.         rewardNames[2].Add("+1 Energy Potion α!");
  111.         rewardRarity[2].Add(3);
  112.         rewardNames[2].Add("+1 Magic Potion α!");
  113.         rewardRarity[2].Add(3);
  114.         rewardNames[2].Add("+1 Energy Potion β!");
  115.         rewardRarity[2].Add(3);
  116.         rewardNames[2].Add("+1 Magic Potion β!");
  117.         rewardRarity[2].Add(3);
  118.         rewardNames[2].Add("+1 Lucky Charm!");
  119.         rewardRarity[2].Add(3);
  120.         rewardNames[2].Add("+1 Energy Bar Bar");
  121.         rewardRarity[2].Add(3);
  122.         rewardNames[2].Add("+1 Magic Bar Bar");
  123.         rewardRarity[3].Add(0);
  124.         rewardNames[3].Add("+" + character.checkAPAdded(300L) + "Arbitrary Points!");
  125.         rewardRarity[3].Add(0);
  126.         rewardNames[3].Add("+" + character.checkAPAdded(600L) + "Arbitrary Points!");
  127.         rewardRarity[3].Add(1);
  128.         rewardNames[3].Add("+" + character.checkAPAdded(3000L) + "Arbitrary Points!");
  129.         rewardRarity[3].Add(3);
  130.         rewardNames[3].Add("+1 Energy Potion α!");
  131.         rewardRarity[3].Add(3);
  132.         rewardNames[3].Add("+1 Magic Potion α!");
  133.         rewardRarity[3].Add(3);
  134.         rewardNames[3].Add("+1 Energy Potion β!");
  135.         rewardRarity[3].Add(3);
  136.         rewardNames[3].Add("+1 Magic Potion β!");
  137.         rewardRarity[3].Add(3);
  138.         rewardNames[3].Add("+1 Lucky Charm!");
  139.         rewardRarity[3].Add(3);
  140.         rewardNames[3].Add("+1 Energy Bar Bar!");
  141.         rewardRarity[3].Add(3);
  142.         rewardNames[3].Add("+1 Magic Bar Bar!");
  143.         rewardRarity[3].Add(2);
  144.         rewardNames[3].Add("+20 Seeds!");
  145.         rewardRarity[3].Add(2);
  146.         rewardNames[3].Add("+2 poop!");
  147.         rewardRarity[3].Add(4);
  148.         rewardNames[3].Add("CONSUMABLES JACKPOT!");
  149.         rewardRarity[3].Add(4);
  150.         rewardNames[3].Add(character.checkAPAdded(50000L) + " AP! :o");
  151.         rewardRarity[4].Add(0);
  152.         rewardNames[4].Add("+" + character.checkAPAdded(500L) + "Arbitrary Points!");
  153.         rewardRarity[4].Add(0);
  154.         rewardNames[4].Add("+" + character.checkAPAdded(1000L) + "Arbitrary Points!");
  155.         rewardRarity[4].Add(1);
  156.         rewardNames[4].Add("+" + character.checkAPAdded(5000L) + "Arbitrary Points!");
  157.         rewardRarity[4].Add(3);
  158.         rewardNames[4].Add("+1 Energy Potion α!");
  159.         rewardRarity[4].Add(3);
  160.         rewardNames[4].Add("+1 Magic Potion α!");
  161.         rewardRarity[4].Add(3);
  162.         rewardNames[4].Add("+1 Energy Potion β!");
  163.         rewardRarity[4].Add(3);
  164.         rewardNames[4].Add("+1 Magic Potion β!");
  165.         rewardRarity[4].Add(3);
  166.         rewardNames[4].Add("+1 Lucky Charm!");
  167.         rewardRarity[4].Add(3);
  168.         rewardNames[4].Add("+1 Energy Bar Bar!");
  169.         rewardRarity[4].Add(3);
  170.         rewardNames[4].Add("+1 Magic Bar Bar!");
  171.         rewardRarity[4].Add(2);
  172.         rewardNames[4].Add("+100 Seeds!");
  173.         rewardRarity[4].Add(2);
  174.         rewardNames[4].Add("+5 poop!");
  175.         rewardRarity[4].Add(4);
  176.         rewardNames[4].Add("CONSUMABLES JACKPOT!");
  177.         rewardRarity[4].Add(4);
  178.         rewardNames[4].Add(character.checkAPAdded(75000L) + " AP! :o");
  179.         rewardRarity[4].Add(4);
  180.         rewardNames[4].Add("+1 Energy Potion δ!");
  181.         rewardRarity[4].Add(4);
  182.         rewardNames[4].Add("+1 Magic Potion δ!");
  183.         rewardRarity[5].Add(0);
  184.         rewardNames[5].Add("+" + character.checkAPAdded(800L) + "Arbitary Points!");
  185.         rewardRarity[5].Add(0);
  186.         rewardNames[5].Add("+" + character.checkAPAdded(1600L) + "Arbitrary Points!");
  187.         rewardRarity[5].Add(1);
  188.         rewardNames[5].Add("+" + character.checkAPAdded(8000L) + "Arbitrary Points!");
  189.         rewardRarity[5].Add(2);
  190.         rewardNames[5].Add("+1 Energy Potion α!");
  191.         rewardRarity[5].Add(2);
  192.         rewardNames[5].Add("+1 Magic Potion α!");
  193.         rewardRarity[5].Add(3);
  194.         rewardNames[5].Add("+1 Energy Potion β!");
  195.         rewardRarity[5].Add(3);
  196.         rewardNames[5].Add("+1 Magic Potion β!");
  197.         rewardRarity[5].Add(2);
  198.         rewardNames[5].Add("+1 Lucky Charm!");
  199.         rewardRarity[5].Add(2);
  200.         rewardNames[5].Add("+1 Energy Bar Bar!");
  201.         rewardRarity[5].Add(2);
  202.         rewardNames[5].Add("+1 Magic Bar Bar!");
  203.         rewardRarity[5].Add(2);
  204.         rewardNames[5].Add("+400 Seeds!");
  205.         rewardRarity[5].Add(2);
  206.         rewardNames[5].Add("+10 poop!");
  207.         rewardRarity[5].Add(4);
  208.         rewardNames[5].Add("CONSUMABLES JACKPOT!");
  209.         rewardRarity[5].Add(4);
  210.         rewardNames[5].Add(character.checkAPAdded(100000L) + "AP! :o");
  211.         rewardRarity[5].Add(4);
  212.         rewardNames[5].Add("+1 Energy Potion δ!");
  213.         rewardRarity[5].Add(4);
  214.         rewardNames[5].Add("+1 Magic Potion δ!");
  215.         rewardRarity[6].Add(0);
  216.         rewardNames[6].Add("+" + character.checkAPAdded(1200L) + "Arbitrary Points!");
  217.         rewardRarity[6].Add(0);
  218.         rewardNames[6].Add("+" + character.checkAPAdded(2400L) + "Arbitrary Points!");
  219.         rewardRarity[6].Add(1);
  220.         rewardNames[6].Add("+" + character.checkAPAdded(12000L) + "Arbitrary Points!");
  221.         rewardRarity[6].Add(2);
  222.         rewardNames[6].Add("+2 Energy Potion α!");
  223.         rewardRarity[6].Add(2);
  224.         rewardNames[6].Add("+2 Magic Potion α!");
  225.         rewardRarity[6].Add(3);
  226.         rewardNames[6].Add("+2 Energy Potion β!");
  227.         rewardRarity[6].Add(3);
  228.         rewardNames[6].Add("+2 Magic Potion β!");
  229.         rewardRarity[6].Add(2);
  230.         rewardNames[6].Add("+2 Lucky Charm!");
  231.         rewardRarity[6].Add(2);
  232.         rewardNames[6].Add("+2 Energy Bar Bar!");
  233.         rewardRarity[6].Add(2);
  234.         rewardNames[6].Add("+2 Magic Bar Bar!");
  235.         rewardRarity[6].Add(2);
  236.         rewardNames[6].Add("+2000 Seeds!");
  237.         rewardRarity[6].Add(2);
  238.         rewardNames[6].Add("+25 poop!");
  239.         rewardRarity[6].Add(3);
  240.         rewardNames[6].Add("+1 Energy Potion δ!");
  241.         rewardRarity[6].Add(3);
  242.         rewardNames[6].Add("+1 Magic Potion δ!");
  243.         rewardRarity[6].Add(4);
  244.         rewardNames[6].Add("CONSUMABLES JACKPOT!");
  245.         rewardRarity[6].Add(4);
  246.         rewardNames[6].Add(character.checkAPAdded(150000L) + " AP! :o");
  247.         rewardRarity[7].Add(0);
  248.         rewardNames[7].Add("+" + character.checkAPAdded(1500L) + " Arbitrary Points!");
  249.         rewardRarity[7].Add(0);
  250.         rewardNames[7].Add("+" + character.checkAPAdded(3000L) + "Arbitrary Points!");
  251.         rewardRarity[7].Add(1);
  252.         rewardNames[7].Add("+" + character.checkAPAdded(15000L) + " Arbitrary Points!");
  253.         rewardRarity[7].Add(2);
  254.         rewardNames[7].Add("+2 Energy Potion α!");
  255.         rewardRarity[7].Add(2);
  256.         rewardNames[7].Add("+2 Magic Potion α!");
  257.         rewardRarity[7].Add(3);
  258.         rewardNames[7].Add("+2 Energy Potion β!");
  259.         rewardRarity[7].Add(3);
  260.         rewardNames[7].Add("+2 Magic Potion β!");
  261.         rewardRarity[7].Add(2);
  262.         rewardNames[7].Add("+2 Lucky Charm!");
  263.         rewardRarity[7].Add(2);
  264.         rewardNames[7].Add("+2 Energy Bar Bar!");
  265.         rewardRarity[7].Add(2);
  266.         rewardNames[7].Add("+2 Magic Bar Bar!");
  267.         rewardRarity[7].Add(2);
  268.         rewardNames[7].Add("+2000 Seeds!");
  269.         rewardRarity[7].Add(2);
  270.         rewardNames[7].Add("+25 poop!");
  271.         rewardRarity[7].Add(3);
  272.         rewardNames[7].Add("+1 Energy Potion δ!");
  273.         rewardRarity[7].Add(3);
  274.         rewardNames[7].Add("+1 Magic Potion δ!");
  275.         rewardRarity[7].Add(4);
  276.         rewardNames[7].Add("CONSUMABLES JACKPOT!");
  277.         rewardRarity[7].Add(4);
  278.         rewardNames[7].Add("+" + character.checkAPAdded(175000L) + " AP! :o");
  279.     }
  280.  
  281.     public void reConstructRewardNames()
  282.     {
  283.         rarity0.color = Color.white;
  284.         rarity1.color = new Color(0.6f, 0.851f, 0.917f);
  285.         rarity2.color = new Color(1f, 0.682f, 0.788f);
  286.         rarity3.color = new Color(0.784f, 0.749f, 0.906f);
  287.         rarity4.color = new Color(1f, 0.827f, 0.235f);
  288.         rewardNames.Clear();
  289.         rewardRarity.Clear();
  290.         while (rewardNames.Count < 8)
  291.         {
  292.             rewardNames.Add(new List<string>());
  293.         }
  294.         while (rewardRarity.Count < 8)
  295.         {
  296.             rewardRarity.Add(new List<int>());
  297.         }
  298.         rewardRarity[0].Add(0);
  299.         rewardNames[0].Add("+" + character.checkAPAdded(50L) + " Arbitrary Points!");
  300.         rewardRarity[0].Add(0);
  301.         rewardNames[0].Add("+" + character.checkAPAdded(100L) + " Arbitrary Points!");
  302.         rewardRarity[0].Add(1);
  303.         rewardNames[0].Add("+" + character.checkAPAdded(500L) + " Arbitrary Points!");
  304.         rewardRarity[1].Add(0);
  305.         rewardNames[1].Add("+" + character.checkAPAdded(100L) + " Arbitrary Points!");
  306.         rewardRarity[1].Add(0);
  307.         rewardNames[1].Add("+" + character.checkAPAdded(200L) + " Arbitrary Points!");
  308.         rewardRarity[1].Add(1);
  309.         rewardNames[1].Add("+" + character.checkAPAdded(1000L) + " Arbitrary Points!");
  310.         rewardRarity[1].Add(3);
  311.         rewardNames[1].Add("+1 Energy Potion α!");
  312.         rewardRarity[1].Add(3);
  313.         rewardNames[1].Add("+1 Magic Potion α!");
  314.         rewardRarity[2].Add(0);
  315.         rewardNames[2].Add("+" + character.checkAPAdded(200L) + " Arbitrary Points!");
  316.         rewardRarity[2].Add(0);
  317.         rewardNames[2].Add("+" + character.checkAPAdded(400L) + " Arbitrary Points!");
  318.         rewardRarity[2].Add(1);
  319.         rewardNames[2].Add("+" + character.checkAPAdded(2000L) + " Arbitrary Points!");
  320.         rewardRarity[2].Add(3);
  321.         rewardNames[2].Add("+1 Energy Potion α!");
  322.         rewardRarity[2].Add(3);
  323.         rewardNames[2].Add("+1 Magic Potion α!");
  324.         rewardRarity[2].Add(3);
  325.         rewardNames[2].Add("+1 Energy Potion β!");
  326.         rewardRarity[2].Add(3);
  327.         rewardNames[2].Add("+1 Magic Potion β!");
  328.         rewardRarity[2].Add(3);
  329.         rewardNames[2].Add("+1 Lucky Charm!");
  330.         rewardRarity[2].Add(3);
  331.         rewardNames[2].Add("+1 Energy Bar Bar");
  332.         rewardRarity[2].Add(3);
  333.         rewardNames[2].Add("+1 Magic Bar Bar");
  334.         rewardRarity[3].Add(0);
  335.         rewardNames[3].Add("+" + character.checkAPAdded(300L) + " Arbitrary Points!");
  336.         rewardRarity[3].Add(0);
  337.         rewardNames[3].Add("+" + character.checkAPAdded(600L) + " Arbitrary Points!");
  338.         rewardRarity[3].Add(1);
  339.         rewardNames[3].Add("+" + character.checkAPAdded(3000L) + " Arbitrary Points!");
  340.         rewardRarity[3].Add(3);
  341.         rewardNames[3].Add("+1 Energy Potion α!");
  342.         rewardRarity[3].Add(3);
  343.         rewardNames[3].Add("+1 Magic Potion α!");
  344.         rewardRarity[3].Add(3);
  345.         rewardNames[3].Add("+1 Energy Potion β!");
  346.         rewardRarity[3].Add(3);
  347.         rewardNames[3].Add("+1 Magic Potion β!");
  348.         rewardRarity[3].Add(3);
  349.         rewardNames[3].Add("+1 Lucky Charm!");
  350.         rewardRarity[3].Add(3);
  351.         rewardNames[3].Add("+1 Energy Bar Bar!");
  352.         rewardRarity[3].Add(3);
  353.         rewardNames[3].Add("+1 Magic Bar Bar!");
  354.         rewardRarity[3].Add(2);
  355.         rewardNames[3].Add("+20 Seeds!");
  356.         rewardRarity[3].Add(2);
  357.         rewardNames[3].Add("+2 poop!");
  358.         rewardRarity[3].Add(4);
  359.         rewardNames[3].Add("CONSUMABLES JACKPOT!");
  360.         rewardRarity[3].Add(4);
  361.         rewardNames[3].Add(character.checkAPAdded(50000L) + " AP! :o");
  362.         rewardRarity[4].Add(0);
  363.         rewardNames[4].Add("+" + character.checkAPAdded(500L) + " Arbitrary Points!");
  364.         rewardRarity[4].Add(0);
  365.         rewardNames[4].Add("+" + character.checkAPAdded(1000L) + " Arbitrary Points!");
  366.         rewardRarity[4].Add(1);
  367.         rewardNames[4].Add("+" + character.checkAPAdded(5000L) + " Arbitrary Points!");
  368.         rewardRarity[4].Add(3);
  369.         rewardNames[4].Add("+1 Energy Potion α!");
  370.         rewardRarity[4].Add(3);
  371.         rewardNames[4].Add("+1 Magic Potion α!");
  372.         rewardRarity[4].Add(3);
  373.         rewardNames[4].Add("+1 Energy Potion β!");
  374.         rewardRarity[4].Add(3);
  375.         rewardNames[4].Add("+1 Magic Potion β!");
  376.         rewardRarity[4].Add(3);
  377.         rewardNames[4].Add("+1 Lucky Charm!");
  378.         rewardRarity[4].Add(3);
  379.         rewardNames[4].Add("+1 Energy Bar Bar!");
  380.         rewardRarity[4].Add(3);
  381.         rewardNames[4].Add("+1 Magic Bar Bar!");
  382.         rewardRarity[4].Add(2);
  383.         rewardNames[4].Add("+100 Seeds!");
  384.         rewardRarity[4].Add(2);
  385.         rewardNames[4].Add("+5 poop!");
  386.         rewardRarity[4].Add(4);
  387.         rewardNames[4].Add("CONSUMABLES JACKPOT!");
  388.         rewardRarity[4].Add(4);
  389.         rewardNames[4].Add(character.checkAPAdded(75000L) + " AP! :o");
  390.         rewardRarity[4].Add(4);
  391.         rewardNames[4].Add("+1 Energy Potion δ!");
  392.         rewardRarity[4].Add(4);
  393.         rewardNames[4].Add("+1 Magic Potion δ!");
  394.         rewardRarity[5].Add(0);
  395.         rewardNames[5].Add("+" + character.checkAPAdded(800L) + " Arbitary Points!");
  396.         rewardRarity[5].Add(0);
  397.         rewardNames[5].Add("+" + character.checkAPAdded(1600L) + " Arbitrary Points!");
  398.         rewardRarity[5].Add(1);
  399.         rewardNames[5].Add("+" + character.checkAPAdded(8000L) + " Arbitrary Points!");
  400.         rewardRarity[5].Add(2);
  401.         rewardNames[5].Add("+1 Energy Potion α!");
  402.         rewardRarity[5].Add(2);
  403.         rewardNames[5].Add("+1 Magic Potion α!");
  404.         rewardRarity[5].Add(3);
  405.         rewardNames[5].Add("+1 Energy Potion β!");
  406.         rewardRarity[5].Add(3);
  407.         rewardNames[5].Add("+1 Magic Potion β!");
  408.         rewardRarity[5].Add(2);
  409.         rewardNames[5].Add("+1 Lucky Charm!");
  410.         rewardRarity[5].Add(2);
  411.         rewardNames[5].Add("+1 Energy Bar Bar!");
  412.         rewardRarity[5].Add(2);
  413.         rewardNames[5].Add("+1 Magic Bar Bar!");
  414.         rewardRarity[5].Add(2);
  415.         rewardNames[5].Add("+400 Seeds!");
  416.         rewardRarity[5].Add(2);
  417.         rewardNames[5].Add("+10 poop!");
  418.         rewardRarity[5].Add(4);
  419.         rewardNames[5].Add("CONSUMABLES JACKPOT!");
  420.         rewardRarity[5].Add(4);
  421.         rewardNames[5].Add(character.checkAPAdded(100000L) + " AP! :o");
  422.         rewardRarity[5].Add(4);
  423.         rewardNames[5].Add("+1 Energy Potion δ!");
  424.         rewardRarity[5].Add(4);
  425.         rewardNames[5].Add("+1 Magic Potion δ!");
  426.         rewardRarity[6].Add(0);
  427.         rewardNames[6].Add("+" + character.checkAPAdded(1200L) + " Arbitrary Points!");
  428.         rewardRarity[6].Add(0);
  429.         rewardNames[6].Add("+" + character.checkAPAdded(2400L) + " Arbitrary Points!");
  430.         rewardRarity[6].Add(1);
  431.         rewardNames[6].Add("+" + character.checkAPAdded(12000L) + " Arbitrary Points!");
  432.         rewardRarity[6].Add(2);
  433.         rewardNames[6].Add("+2 Energy Potion α!");
  434.         rewardRarity[6].Add(2);
  435.         rewardNames[6].Add("+2 Magic Potion α!");
  436.         rewardRarity[6].Add(3);
  437.         rewardNames[6].Add("+2 Energy Potion β!");
  438.         rewardRarity[6].Add(3);
  439.         rewardNames[6].Add("+2 Magic Potion β!");
  440.         rewardRarity[6].Add(2);
  441.         rewardNames[6].Add("+2 Lucky Charm!");
  442.         rewardRarity[6].Add(2);
  443.         rewardNames[6].Add("+2 Energy Bar Bar!");
  444.         rewardRarity[6].Add(2);
  445.         rewardNames[6].Add("+2 Magic Bar Bar!");
  446.         rewardRarity[6].Add(2);
  447.         rewardNames[6].Add("+2000 Seeds!");
  448.         rewardRarity[6].Add(2);
  449.         rewardNames[6].Add("+25 poop!");
  450.         rewardRarity[6].Add(3);
  451.         rewardNames[6].Add("+1 Energy Potion δ!");
  452.         rewardRarity[6].Add(3);
  453.         rewardNames[6].Add("+1 Magic Potion δ!");
  454.         rewardRarity[6].Add(4);
  455.         rewardNames[6].Add("CONSUMABLES JACKPOT!");
  456.         rewardRarity[6].Add(4);
  457.         rewardNames[6].Add(character.checkAPAdded(150000L) + " AP! :o");
  458.         rewardRarity[7].Add(0);
  459.         rewardNames[7].Add("+" + character.checkAPAdded(1500L) + " Arbitrary Points!");
  460.         rewardRarity[7].Add(0);
  461.         rewardNames[7].Add("+" + character.checkAPAdded(3000L) + " Arbitrary Points!");
  462.         rewardRarity[7].Add(1);
  463.         rewardNames[7].Add("+" + character.checkAPAdded(15000L) + " Arbitrary Points!");
  464.         rewardRarity[7].Add(2);
  465.         rewardNames[7].Add("+2 Energy Potion α!");
  466.         rewardRarity[7].Add(2);
  467.         rewardNames[7].Add("+2 Magic Potion α!");
  468.         rewardRarity[7].Add(3);
  469.         rewardNames[7].Add("+2 Energy Potion β!");
  470.         rewardRarity[7].Add(3);
  471.         rewardNames[7].Add("+2 Magic Potion β!");
  472.         rewardRarity[7].Add(2);
  473.         rewardNames[7].Add("+2 Lucky Charm!");
  474.         rewardRarity[7].Add(2);
  475.         rewardNames[7].Add("+2 Energy Bar Bar!");
  476.         rewardRarity[7].Add(2);
  477.         rewardNames[7].Add("+2 Magic Bar Bar!");
  478.         rewardRarity[7].Add(2);
  479.         rewardNames[7].Add("+2000 Seeds!");
  480.         rewardRarity[7].Add(2);
  481.         rewardNames[7].Add("+25 poop!");
  482.         rewardRarity[7].Add(3);
  483.         rewardNames[7].Add("+1 Energy Potion δ!");
  484.         rewardRarity[7].Add(3);
  485.         rewardNames[7].Add("+1 Magic Potion δ!");
  486.         rewardRarity[7].Add(4);
  487.         rewardNames[7].Add("CONSUMABLES JACKPOT!");
  488.         rewardRarity[7].Add(4);
  489.         rewardNames[7].Add("+" + character.checkAPAdded(175000L) + " AP! :o");
  490.     }
  491.  
  492.     public int getTier0RewardIndex(float rng)
  493.     {
  494.         if (rng < 0.6f)
  495.         {
  496.             return 0;
  497.         }
  498.         if (rng < 0.9f)
  499.         {
  500.             return 1;
  501.         }
  502.         if (rng < 0.1f)
  503.         {
  504.             return 2;
  505.         }
  506.         return 0;
  507.     }
  508.  
  509.     public void tier0Reward(int rewardID)
  510.     {
  511.         switch (rewardID)
  512.         {
  513.         case 0:
  514.             character.addAP(50);
  515.             break;
  516.         case 1:
  517.             character.addAP(100);
  518.             break;
  519.         case 2:
  520.             character.addAP(500);
  521.             break;
  522.         }
  523.     }
  524.  
  525.     public int getTier1RewardIndex(float rng)
  526.     {
  527.         if (rng < 0.5f)
  528.         {
  529.             return 0;
  530.         }
  531.         if (rng < 0.85f)
  532.         {
  533.             return 1;
  534.         }
  535.         if (rng < 0.95f)
  536.         {
  537.             return 2;
  538.         }
  539.         if (rng < 0.96f)
  540.         {
  541.             return 3;
  542.         }
  543.         if (rng < 0.97f)
  544.         {
  545.             return 4;
  546.         }
  547.         return 0;
  548.     }
  549.  
  550.     public void tier1Reward(int rewardID)
  551.     {
  552.         switch (rewardID)
  553.         {
  554.         case 0:
  555.             character.addAP(100);
  556.             break;
  557.         case 1:
  558.             character.addAP(200);
  559.             break;
  560.         case 2:
  561.             character.addAP(1000);
  562.             break;
  563.         case 3:
  564.             character.arbitrary.energyPotion1Count++;
  565.             break;
  566.         case 4:
  567.             character.arbitrary.magicPotion1Count++;
  568.             break;
  569.         }
  570.     }
  571.  
  572.     public int getTier2RewardIndex(float rng)
  573.     {
  574.         if (rng < 0.45f)
  575.         {
  576.             return 0;
  577.         }
  578.         if (rng < 0.75f)
  579.         {
  580.             return 1;
  581.         }
  582.         if (rng < 0.85f)
  583.         {
  584.             return 2;
  585.         }
  586.         if (rng < 0.86f)
  587.         {
  588.             return 3;
  589.         }
  590.         if (rng < 0.87f)
  591.         {
  592.             return 4;
  593.         }
  594.         if (rng < 0.88f)
  595.         {
  596.             return 5;
  597.         }
  598.         if (rng < 0.89f)
  599.         {
  600.             return 6;
  601.         }
  602.         if (rng < 0.9f)
  603.         {
  604.             return 7;
  605.         }
  606.         if (rng < 0.91f)
  607.         {
  608.             return 8;
  609.         }
  610.         if (rng < 0.92f)
  611.         {
  612.             return 9;
  613.         }
  614.         return 0;
  615.     }
  616.  
  617.     public void tier2Reward(int rewardID)
  618.     {
  619.         switch (rewardID)
  620.         {
  621.         case 0:
  622.             character.addAP(200);
  623.             break;
  624.         case 1:
  625.             character.addAP(400);
  626.             break;
  627.         case 2:
  628.             character.addAP(2000);
  629.             break;
  630.         case 3:
  631.             character.arbitrary.energyPotion1Count++;
  632.             break;
  633.         case 4:
  634.             character.arbitrary.magicPotion1Count++;
  635.             break;
  636.         case 5:
  637.             character.arbitrary.energyPotion2Count++;
  638.             break;
  639.         case 6:
  640.             character.arbitrary.magicPotion2Count++;
  641.             break;
  642.         case 7:
  643.             character.arbitrary.lootCharm1Count++;
  644.             break;
  645.         case 8:
  646.             character.arbitrary.energyBarBar1Count++;
  647.             break;
  648.         case 9:
  649.             character.arbitrary.magicBarBar1Count++;
  650.             break;
  651.         }
  652.     }
  653.  
  654.     public int getTier3RewardIndex(float rng)
  655.     {
  656.         if (rng < 0.35f)
  657.         {
  658.             return 0;
  659.         }
  660.         if (rng < 0.6f)
  661.         {
  662.             return 1;
  663.         }
  664.         if (rng < 0.7f)
  665.         {
  666.             return 2;
  667.         }
  668.         if (rng < 0.72f)
  669.         {
  670.             return 3;
  671.         }
  672.         if (rng < 0.74f)
  673.         {
  674.             return 4;
  675.         }
  676.         if (rng < 0.75f)
  677.         {
  678.             return 5;
  679.         }
  680.         if (rng < 0.76f)
  681.         {
  682.             return 6;
  683.         }
  684.         if (rng < 0.78f)
  685.         {
  686.             return 7;
  687.         }
  688.         if (rng < 0.8f)
  689.         {
  690.             return 8;
  691.         }
  692.         if (rng < 0.82f)
  693.         {
  694.             return 9;
  695.         }
  696.         if (rng < 0.92f)
  697.         {
  698.             return 10;
  699.         }
  700.         if (rng < 0.97f)
  701.         {
  702.             return 11;
  703.         }
  704.         if (rng < 0.975f)
  705.         {
  706.             return 12;
  707.         }
  708.         if (rng < 0.98f)
  709.         {
  710.             return 13;
  711.         }
  712.         return 0;
  713.     }
  714.  
  715.     public void tier3Reward(int rewardID)
  716.     {
  717.         switch (rewardID)
  718.         {
  719.         case 0:
  720.             character.addAP(300);
  721.             break;
  722.         case 1:
  723.             character.addAP(600);
  724.             break;
  725.         case 2:
  726.             character.addAP(3000);
  727.             break;
  728.         case 3:
  729.             character.arbitrary.energyPotion1Count++;
  730.             break;
  731.         case 4:
  732.             character.arbitrary.magicPotion1Count++;
  733.             break;
  734.         case 5:
  735.             character.arbitrary.energyPotion2Count++;
  736.             break;
  737.         case 6:
  738.             character.arbitrary.magicPotion2Count++;
  739.             break;
  740.         case 7:
  741.             character.arbitrary.lootCharm1Count++;
  742.             break;
  743.         case 8:
  744.             character.arbitrary.energyBarBar1Count++;
  745.             break;
  746.         case 9:
  747.             character.arbitrary.magicBarBar1Count++;
  748.             break;
  749.         case 10:
  750.             character.yggdrasil.seeds += 20L;
  751.             break;
  752.         case 11:
  753.             character.arbitrary.poop1Count += 2;
  754.             break;
  755.         case 12:
  756.             character.arbitrary.energyPotion1Count++;
  757.             character.arbitrary.energyPotion2Count++;
  758.             character.arbitrary.magicPotion1Count++;
  759.             character.arbitrary.magicPotion2Count++;
  760.             character.arbitrary.lootCharm1Count++;
  761.             character.arbitrary.energyBarBar1Count++;
  762.             character.arbitrary.magicBarBar1Count++;
  763.             character.arbitrary.poop1Count += 2;
  764.             break;
  765.         case 13:
  766.             character.addAP(50000);
  767.             break;
  768.         }
  769.     }
  770.  
  771.     public int getTier4RewardIndex(float rng)
  772.     {
  773.         if (rng < 0.35f)
  774.         {
  775.             return 0;
  776.         }
  777.         if (rng < 0.6f)
  778.         {
  779.             return 1;
  780.         }
  781.         if (rng < 0.7f)
  782.         {
  783.             return 2;
  784.         }
  785.         if (rng < 0.71f)
  786.         {
  787.             return 3;
  788.         }
  789.         if (rng < 0.72f)
  790.         {
  791.             return 4;
  792.         }
  793.         if (rng < 0.73f)
  794.         {
  795.             return 5;
  796.         }
  797.         if (rng < 0.74f)
  798.         {
  799.             return 6;
  800.         }
  801.         if (rng < 0.75f)
  802.         {
  803.             return 7;
  804.         }
  805.         if (rng < 0.76f)
  806.         {
  807.             return 8;
  808.         }
  809.         if (rng < 0.77f)
  810.         {
  811.             return 9;
  812.         }
  813.         if (rng < 0.82f)
  814.         {
  815.             return 10;
  816.         }
  817.         if (rng < 0.83f)
  818.         {
  819.             return 11;
  820.         }
  821.         if (rng < 0.835f)
  822.         {
  823.             return 12;
  824.         }
  825.         if (rng < 0.84f)
  826.         {
  827.             return 13;
  828.         }
  829.         if (rng < 0.845f)
  830.         {
  831.             return 14;
  832.         }
  833.         if (rng < 0.85f)
  834.         {
  835.             return 15;
  836.         }
  837.         return 0;
  838.     }
  839.  
  840.     public void tier4Reward(int rewardID)
  841.     {
  842.         switch (rewardID)
  843.         {
  844.         case 0:
  845.             character.addAP(500);
  846.             break;
  847.         case 1:
  848.             character.addAP(1000);
  849.             break;
  850.         case 2:
  851.             character.addAP(5000);
  852.             break;
  853.         case 3:
  854.             character.arbitrary.energyPotion1Count++;
  855.             break;
  856.         case 4:
  857.             character.arbitrary.magicPotion1Count++;
  858.             break;
  859.         case 5:
  860.             character.arbitrary.energyPotion2Count++;
  861.             break;
  862.         case 6:
  863.             character.arbitrary.magicPotion2Count++;
  864.             break;
  865.         case 7:
  866.             character.arbitrary.lootCharm1Count++;
  867.             break;
  868.         case 8:
  869.             character.arbitrary.energyBarBar1Count++;
  870.             break;
  871.         case 9:
  872.             character.arbitrary.magicBarBar1Count++;
  873.             break;
  874.         case 10:
  875.             character.yggdrasil.seeds += 100L;
  876.             break;
  877.         case 11:
  878.             character.arbitrary.poop1Count += 5;
  879.             break;
  880.         case 12:
  881.             character.arbitrary.energyPotion1Count++;
  882.             character.arbitrary.energyPotion2Count++;
  883.             character.arbitrary.energyPotion3Count++;
  884.             character.arbitrary.magicPotion1Count++;
  885.             character.arbitrary.magicPotion2Count++;
  886.             character.arbitrary.magicPotion3Count++;
  887.             character.arbitrary.lootCharm1Count++;
  888.             character.arbitrary.energyBarBar1Count++;
  889.             character.arbitrary.magicBarBar1Count++;
  890.             character.arbitrary.poop1Count += 5;
  891.             character.arbitrary.lootCharm2Count++;
  892.             character.adventure.itopod.buffedKills += 1000L;
  893.             break;
  894.         case 13:
  895.             character.addAP(75000);
  896.             break;
  897.         case 14:
  898.             character.arbitrary.energyPotion3Count++;
  899.             break;
  900.         case 15:
  901.             character.arbitrary.magicPotion3Count++;
  902.             break;
  903.         }
  904.     }
  905.  
  906.     public int getTier5RewardIndex(float rng)
  907.     {
  908.         if (rng < 0.35f)
  909.         {
  910.             return 0;
  911.         }
  912.         if (rng < 0.6f)
  913.         {
  914.             return 1;
  915.         }
  916.         if (rng < 0.7f)
  917.         {
  918.             return 2;
  919.         }
  920.         if (rng < 0.72f)
  921.         {
  922.             return 3;
  923.         }
  924.         if (rng < 0.74f)
  925.         {
  926.             return 4;
  927.         }
  928.         if (rng < 0.75f)
  929.         {
  930.             return 5;
  931.         }
  932.         if (rng < 0.76f)
  933.         {
  934.             return 6;
  935.         }
  936.         if (rng < 0.78f)
  937.         {
  938.             return 7;
  939.         }
  940.         if (rng < 0.8f)
  941.         {
  942.             return 8;
  943.         }
  944.         if (rng < 0.82f)
  945.         {
  946.             return 9;
  947.         }
  948.         if (rng < 0.92f)
  949.         {
  950.             return 10;
  951.         }
  952.         if (rng < 0.97f)
  953.         {
  954.             return 11;
  955.         }
  956.         if (rng < 0.975f)
  957.         {
  958.             return 12;
  959.         }
  960.         if (rng < 0.98f)
  961.         {
  962.             return 13;
  963.         }
  964.         if (rng < 0.985f)
  965.         {
  966.             return 14;
  967.         }
  968.         if (rng < 0.99f)
  969.         {
  970.             return 15;
  971.         }
  972.         return 0;
  973.     }
  974.  
  975.     public void tier5Reward(int rewardID)
  976.     {
  977.         switch (rewardID)
  978.         {
  979.         case 0:
  980.             character.addAP(800);
  981.             break;
  982.         case 1:
  983.             character.addAP(1600);
  984.             break;
  985.         case 2:
  986.             character.addAP(8000);
  987.             break;
  988.         case 3:
  989.             character.arbitrary.energyPotion1Count++;
  990.             break;
  991.         case 4:
  992.             character.arbitrary.magicPotion1Count++;
  993.             break;
  994.         case 5:
  995.             character.arbitrary.energyPotion2Count++;
  996.             break;
  997.         case 6:
  998.             character.arbitrary.magicPotion2Count++;
  999.             break;
  1000.         case 7:
  1001.             character.arbitrary.lootCharm1Count++;
  1002.             break;
  1003.         case 8:
  1004.             character.arbitrary.energyBarBar1Count++;
  1005.             break;
  1006.         case 9:
  1007.             character.arbitrary.magicBarBar1Count++;
  1008.             break;
  1009.         case 10:
  1010.             character.yggdrasil.seeds += 400L;
  1011.             break;
  1012.         case 11:
  1013.             character.arbitrary.poop1Count += 10;
  1014.             break;
  1015.         case 12:
  1016.             character.arbitrary.energyPotion1Count += 2;
  1017.             character.arbitrary.energyPotion2Count += 2;
  1018.             character.arbitrary.energyPotion3Count++;
  1019.             character.arbitrary.magicPotion1Count += 2;
  1020.             character.arbitrary.magicPotion2Count += 2;
  1021.             character.arbitrary.magicPotion3Count++;
  1022.             character.arbitrary.lootCharm1Count += 2;
  1023.             character.arbitrary.energyBarBar1Count += 2;
  1024.             character.arbitrary.magicBarBar1Count += 2;
  1025.             character.arbitrary.poop1Count += 10;
  1026.             character.arbitrary.lootCharm2Count++;
  1027.             character.adventure.itopod.buffedKills += 2000L;
  1028.             character.arbitrary.beastButterCount++;
  1029.             character.arbitrary.macGuffinBooster1Count++;
  1030.             break;
  1031.         case 13:
  1032.             character.addAP(100000);
  1033.             break;
  1034.         case 14:
  1035.             character.arbitrary.energyPotion3Count++;
  1036.             break;
  1037.         case 15:
  1038.             character.arbitrary.magicPotion3Count++;
  1039.             break;
  1040.         }
  1041.     }
  1042.  
  1043.     public int getTier6RewardIndex(float rng)
  1044.     {
  1045.         if (rng < 0.35f)
  1046.         {
  1047.             return 0;
  1048.         }
  1049.         if (rng < 0.6f)
  1050.         {
  1051.             return 1;
  1052.         }
  1053.         if (rng < 0.7f)
  1054.         {
  1055.             return 2;
  1056.         }
  1057.         if (rng < 0.72f)
  1058.         {
  1059.             return 3;
  1060.         }
  1061.         if (rng < 0.74f)
  1062.         {
  1063.             return 4;
  1064.         }
  1065.         if (rng < 0.75f)
  1066.         {
  1067.             return 5;
  1068.         }
  1069.         if (rng < 0.76f)
  1070.         {
  1071.             return 6;
  1072.         }
  1073.         if (rng < 0.78f)
  1074.         {
  1075.             return 7;
  1076.         }
  1077.         if (rng < 0.8f)
  1078.         {
  1079.             return 8;
  1080.         }
  1081.         if (rng < 0.82f)
  1082.         {
  1083.             return 9;
  1084.         }
  1085.         if (rng < 0.92f)
  1086.         {
  1087.             return 10;
  1088.         }
  1089.         if (rng < 0.97f)
  1090.         {
  1091.             return 11;
  1092.         }
  1093.         if (rng < 0.98f)
  1094.         {
  1095.             return 12;
  1096.         }
  1097.         if (rng < 0.99f)
  1098.         {
  1099.             return 13;
  1100.         }
  1101.         if (rng < 0.995f)
  1102.         {
  1103.             return 14;
  1104.         }
  1105.         if (rng < 1f)
  1106.         {
  1107.             return 15;
  1108.         }
  1109.         return 0;
  1110.     }
  1111.  
  1112.     public void tier6Reward(int rewardID)
  1113.     {
  1114.         switch (rewardID)
  1115.         {
  1116.         case 0:
  1117.             character.addAP(1200);
  1118.             break;
  1119.         case 1:
  1120.             character.addAP(2400);
  1121.             break;
  1122.         case 2:
  1123.             character.addAP(12000);
  1124.             break;
  1125.         case 3:
  1126.             character.arbitrary.energyPotion1Count += 2;
  1127.             break;
  1128.         case 4:
  1129.             character.arbitrary.magicPotion1Count += 2;
  1130.             break;
  1131.         case 5:
  1132.             character.arbitrary.energyPotion2Count += 2;
  1133.             break;
  1134.         case 6:
  1135.             character.arbitrary.magicPotion2Count += 2;
  1136.             break;
  1137.         case 7:
  1138.             character.arbitrary.lootCharm1Count += 2;
  1139.             break;
  1140.         case 8:
  1141.             character.arbitrary.energyBarBar1Count += 2;
  1142.             break;
  1143.         case 9:
  1144.             character.arbitrary.magicBarBar1Count += 2;
  1145.             break;
  1146.         case 10:
  1147.             character.yggdrasil.seeds += 2000L;
  1148.             break;
  1149.         case 11:
  1150.             character.arbitrary.poop1Count += 25;
  1151.             break;
  1152.         case 12:
  1153.             character.arbitrary.energyPotion3Count++;
  1154.             break;
  1155.         case 13:
  1156.             character.arbitrary.magicPotion3Count++;
  1157.             break;
  1158.         case 14:
  1159.             character.arbitrary.energyPotion1Count += 2;
  1160.             character.arbitrary.energyPotion2Count += 2;
  1161.             character.arbitrary.energyPotion3Count += 2;
  1162.             character.arbitrary.magicPotion1Count += 2;
  1163.             character.arbitrary.magicPotion2Count += 2;
  1164.             character.arbitrary.magicPotion3Count += 2;
  1165.             character.arbitrary.lootCharm1Count += 3;
  1166.             character.arbitrary.energyBarBar1Count += 3;
  1167.             character.arbitrary.magicBarBar1Count += 3;
  1168.             character.arbitrary.poop1Count += 25;
  1169.             character.arbitrary.lootCharm2Count += 2;
  1170.             character.arbitrary.beastButterCount += 2;
  1171.             character.arbitrary.macGuffinBooster1Count += 2;
  1172.             character.adventure.itopod.buffedKills += 3000L;
  1173.             break;
  1174.         case 15:
  1175.             character.addAP(150000);
  1176.             break;
  1177.         }
  1178.     }
  1179.  
  1180.     public int getTier7RewardIndex(float rng)
  1181.     {
  1182.         if (rng < 0.35f)
  1183.         {
  1184.             return 0;
  1185.         }
  1186.         if (rng < 0.6f)
  1187.         {
  1188.             return 1;
  1189.         }
  1190.         if (rng < 0.7f)
  1191.         {
  1192.             return 2;
  1193.         }
  1194.         if (rng < 0.72f)
  1195.         {
  1196.             return 3;
  1197.         }
  1198.         if (rng < 0.74f)
  1199.         {
  1200.             return 4;
  1201.         }
  1202.         if (rng < 0.75f)
  1203.         {
  1204.             return 5;
  1205.         }
  1206.         if (rng < 0.76f)
  1207.         {
  1208.             return 6;
  1209.         }
  1210.         if (rng < 0.78f)
  1211.         {
  1212.             return 7;
  1213.         }
  1214.         if (rng < 0.8f)
  1215.         {
  1216.             return 8;
  1217.         }
  1218.         if (rng < 0.82f)
  1219.         {
  1220.             return 9;
  1221.         }
  1222.         if (rng < 0.92f)
  1223.         {
  1224.             return 10;
  1225.         }
  1226.         if (rng < 0.97f)
  1227.         {
  1228.             return 11;
  1229.         }
  1230.         if (rng < 0.98f)
  1231.         {
  1232.             return 12;
  1233.         }
  1234.         if (rng < 0.99f)
  1235.         {
  1236.             return 13;
  1237.         }
  1238.         if (rng < 0.995f)
  1239.         {
  1240.             return 14;
  1241.         }
  1242.         if (rng < 1f)
  1243.         {
  1244.             return 15;
  1245.         }
  1246.         return 0;
  1247.     }
  1248.  
  1249.     public void tier7Reward(int rewardID)
  1250.     {
  1251.         switch (rewardID)
  1252.         {
  1253.         case 0:
  1254.             character.addAP(1500);
  1255.             break;
  1256.         case 1:
  1257.             character.addAP(3000);
  1258.             break;
  1259.         case 2:
  1260.             character.addAP(15000);
  1261.             break;
  1262.         case 3:
  1263.             character.arbitrary.energyPotion1Count += 2;
  1264.             break;
  1265.         case 4:
  1266.             character.arbitrary.magicPotion1Count += 2;
  1267.             break;
  1268.         case 5:
  1269.             character.arbitrary.energyPotion2Count += 2;
  1270.             break;
  1271.         case 6:
  1272.             character.arbitrary.magicPotion2Count += 2;
  1273.             break;
  1274.         case 7:
  1275.             character.arbitrary.lootCharm1Count += 2;
  1276.             break;
  1277.         case 8:
  1278.             character.arbitrary.energyBarBar1Count += 2;
  1279.             break;
  1280.         case 9:
  1281.             character.arbitrary.magicBarBar1Count += 2;
  1282.             break;
  1283.         case 10:
  1284.             character.yggdrasil.seeds += 5000L;
  1285.             break;
  1286.         case 11:
  1287.             character.arbitrary.poop1Count += 25;
  1288.             break;
  1289.         case 12:
  1290.             character.arbitrary.energyPotion3Count++;
  1291.             break;
  1292.         case 13:
  1293.             character.arbitrary.magicPotion3Count++;
  1294.             break;
  1295.         case 14:
  1296.             character.arbitrary.energyPotion1Count += 3;
  1297.             character.arbitrary.energyPotion2Count += 3;
  1298.             character.arbitrary.energyPotion3Count += 3;
  1299.             character.arbitrary.magicPotion1Count += 3;
  1300.             character.arbitrary.magicPotion2Count += 3;
  1301.             character.arbitrary.magicPotion3Count += 3;
  1302.             character.arbitrary.lootCharm1Count += 3;
  1303.             character.arbitrary.energyBarBar1Count += 3;
  1304.             character.arbitrary.magicBarBar1Count += 3;
  1305.             character.arbitrary.poop1Count += 25;
  1306.             character.arbitrary.lootCharm2Count += 3;
  1307.             character.adventure.itopod.buffedKills += 5000L;
  1308.             character.arbitrary.beastButterCount += 3;
  1309.             character.arbitrary.macGuffinBooster1Count += 3;
  1310.             break;
  1311.         case 15:
  1312.             character.addAP(175000);
  1313.             break;
  1314.         }
  1315.     }
  1316.  
  1317.     private void Update()
  1318.     {
  1319.         if (character.daily.spinTime.totalseconds < (double)maxSpinTime())
  1320.         {
  1321.             character.daily.spinTime.advanceTime(Time.deltaTime);
  1322.         }
  1323.         if (inSpinLoop)
  1324.         {
  1325.             updateSpinLoop();
  1326.         }
  1327.     }
  1328.  
  1329.     public int currentTier()
  1330.     {
  1331.         if (character.daily.totalSpins < 7)
  1332.         {
  1333.             return 0;
  1334.         }
  1335.         if (character.daily.totalSpins < 14)
  1336.         {
  1337.             return 1;
  1338.         }
  1339.         if (character.daily.totalSpins < 30)
  1340.         {
  1341.             return 2;
  1342.         }
  1343.         if (character.daily.totalSpins < 60)
  1344.         {
  1345.             return 3;
  1346.         }
  1347.         if (character.daily.totalSpins < 120)
  1348.         {
  1349.             return 4;
  1350.         }
  1351.         if (character.daily.totalSpins < 180)
  1352.         {
  1353.             return 5;
  1354.         }
  1355.         if (character.daily.totalSpins < 365)
  1356.         {
  1357.             return 6;
  1358.         }
  1359.         if (character.daily.totalSpins >= 365)
  1360.         {
  1361.             return 7;
  1362.         }
  1363.         return 6;
  1364.     }
  1365.  
  1366.     public void updateSpinLoop()
  1367.     {
  1368.         spinnerTimer.advanceTime(Time.deltaTime);
  1369.         if (spinnerTimer.totalseconds >= 5.0)
  1370.         {
  1371.             inSpinLoop = false;
  1372.             spinCounter = 0;
  1373.             spinnerTimer.reset();
  1374.             Random.state = character.daily.dailyRewardState;
  1375.             float value = Random.value;
  1376.             character.daily.dailyRewardState = Random.state;
  1377.             int rewardID = getRewardID(value);
  1378.             switch (currentTier())
  1379.             {
  1380.             case 0:
  1381.                 tier0Reward(rewardID);
  1382.                 break;
  1383.             case 1:
  1384.                 tier1Reward(rewardID);
  1385.                 break;
  1386.             case 2:
  1387.                 tier2Reward(rewardID);
  1388.                 break;
  1389.             case 3:
  1390.                 tier3Reward(rewardID);
  1391.                 break;
  1392.             case 4:
  1393.                 tier4Reward(rewardID);
  1394.                 break;
  1395.             case 5:
  1396.                 tier5Reward(rewardID);
  1397.                 break;
  1398.             case 6:
  1399.                 tier6Reward(rewardID);
  1400.                 break;
  1401.             case 7:
  1402.                 tier7Reward(rewardID);
  1403.                 break;
  1404.             }
  1405.             outcomeText.text = rewardNames[currentTier()][rewardID];
  1406.             rarityBackground.color = rarityColor(rewardRarity[currentTier()][rewardID]);
  1407.             character.daily.totalSpins++;
  1408.             outcomeBorder.gameObject.SetActive(value: true);
  1409.             Invoke("updateList", 5f);
  1410.         }
  1411.         else if (newSpinOutcome())
  1412.         {
  1413.             while (newOffset == oldOffset)
  1414.             {
  1415.                 newOffset = getRewardID(Random.value);
  1416.             }
  1417.             oldOffset = newOffset;
  1418.             outcomeText.text = rewardNames[currentTier()][newOffset];
  1419.             rarityBackground.color = rarityColor(rewardRarity[currentTier()][newOffset]);
  1420.         }
  1421.     }
  1422.  
  1423.     public int getRewardID(float rng)
  1424.     {
  1425.         switch (currentTier())
  1426.         {
  1427.         case 0:
  1428.             return getTier0RewardIndex(rng);
  1429.         case 1:
  1430.             return getTier1RewardIndex(rng);
  1431.         case 2:
  1432.             return getTier2RewardIndex(rng);
  1433.         case 3:
  1434.             return getTier3RewardIndex(rng);
  1435.         case 4:
  1436.             return getTier4RewardIndex(rng);
  1437.         case 5:
  1438.             return getTier5RewardIndex(rng);
  1439.         case 6:
  1440.             return getTier6RewardIndex(rng);
  1441.         case 7:
  1442.             return getTier7RewardIndex(rng);
  1443.         default:
  1444.             return 0;
  1445.         }
  1446.     }
  1447.  
  1448.     public Color rarityColor(int id)
  1449.     {
  1450.         switch (id)
  1451.         {
  1452.         case 0:
  1453.             return Color.white;
  1454.         case 1:
  1455.             return new Color(0.6f, 0.851f, 0.917f);
  1456.         case 2:
  1457.             return new Color(1f, 0.682f, 0.788f);
  1458.         case 3:
  1459.             return new Color(0.784f, 0.749f, 0.906f);
  1460.         case 4:
  1461.             return new Color(1f, 0.827f, 0.235f);
  1462.         default:
  1463.             return Color.white;
  1464.         }
  1465.     }
  1466.  
  1467.     public int curTierRewardLength()
  1468.     {
  1469.         return rewardNames[currentTier()].Count;
  1470.     }
  1471.  
  1472.     public bool newSpinOutcome()
  1473.     {
  1474.         spinCounter++;
  1475.         if (spinCounter < 60)
  1476.         {
  1477.             if (spinCounter % 3 == 0)
  1478.             {
  1479.                 return true;
  1480.             }
  1481.         }
  1482.         else if (spinCounter < 90)
  1483.         {
  1484.             if (spinCounter % 6 == 0)
  1485.             {
  1486.                 return true;
  1487.             }
  1488.         }
  1489.         else if (spinCounter < 120)
  1490.         {
  1491.             if (spinCounter % 10 == 0)
  1492.             {
  1493.                 return true;
  1494.             }
  1495.         }
  1496.         else if (spinCounter < 180)
  1497.         {
  1498.             if (spinCounter % 18 == 0)
  1499.             {
  1500.                 return true;
  1501.             }
  1502.         }
  1503.         else if (spinCounter < 240 && spinCounter % 30 == 0)
  1504.         {
  1505.             return true;
  1506.         }
  1507.         return false;
  1508.     }
  1509.  
  1510.     public void startSpin()
  1511.     {
  1512.         if (canSpin() && !inSpinLoop)
  1513.         {
  1514.             if (character.daily.freeSpins > 0)
  1515.             {
  1516.                 character.daily.freeSpins--;
  1517.             }
  1518.             else
  1519.             {
  1520.                 character.daily.spinTime.setTime(character.daily.spinTime.totalseconds - 86400.0);
  1521.             }
  1522.             inSpinLoop = true;
  1523.             outcomeBorder.gameObject.SetActive(value: false);
  1524.             oldOffset = getRewardID(Random.value);
  1525.         }
  1526.         else if (canSpin() && inSpinLoop)
  1527.         {
  1528.             tooltip.showOverrideTooltip("You're ALREADY SPINNING, dumbass. Let it finish.", 2f);
  1529.         }
  1530.         else
  1531.         {
  1532.             tooltip.showOverrideTooltip("Yo, check the timer. Your daily spin isn't available yet!", 2f);
  1533.         }
  1534.     }
  1535.  
  1536.     public void startNoBullshitSpin()
  1537.     {
  1538.         if (canSpin() && !inSpinLoop)
  1539.         {
  1540.             if (character.daily.freeSpins > 0)
  1541.             {
  1542.                 character.daily.freeSpins--;
  1543.             }
  1544.             else
  1545.             {
  1546.                 character.daily.spinTime.setTime(character.daily.spinTime.totalseconds - 86400.0);
  1547.             }
  1548.             outcomeBorder.gameObject.SetActive(value: false);
  1549.             Random.state = character.daily.dailyRewardState;
  1550.             float value = Random.value;
  1551.             character.daily.dailyRewardState = Random.state;
  1552.             int rewardID = getRewardID(value);
  1553.             switch (currentTier())
  1554.             {
  1555.             case 0:
  1556.                 tier0Reward(rewardID);
  1557.                 break;
  1558.             case 1:
  1559.                 tier1Reward(rewardID);
  1560.                 break;
  1561.             case 2:
  1562.                 tier2Reward(rewardID);
  1563.                 break;
  1564.             case 3:
  1565.                 tier3Reward(rewardID);
  1566.                 break;
  1567.             case 4:
  1568.                 tier4Reward(rewardID);
  1569.                 break;
  1570.             case 5:
  1571.                 tier5Reward(rewardID);
  1572.                 break;
  1573.             case 6:
  1574.                 tier6Reward(rewardID);
  1575.                 break;
  1576.             case 7:
  1577.                 tier7Reward(rewardID);
  1578.                 break;
  1579.             }
  1580.             outcomeText.text = rewardNames[currentTier()][rewardID];
  1581.             rarityBackground.color = rarityColor(rewardRarity[currentTier()][rewardID]);
  1582.             outcomeBorder.gameObject.SetActive(value: true);
  1583.             character.daily.totalSpins++;
  1584.             Invoke("updateList", 5f);
  1585.         }
  1586.         else if (canSpin() && inSpinLoop)
  1587.         {
  1588.             tooltip.showOverrideTooltip("You're ALREADY SPINNING, Omega Idiot. Let it finish first!", 2f);
  1589.         }
  1590.         else
  1591.         {
  1592.             tooltip.showOverrideTooltip("Yo, check the timer. Your daily spin isn't available yet!", 2f);
  1593.         }
  1594.     }
  1595.  
  1596.     public bool canSpin()
  1597.     {
  1598.         return character.daily.spinTime.totalseconds >= (double)targetSpinTime() || character.daily.freeSpins > 0;
  1599.     }
  1600.  
  1601.     public void refreshMenu()
  1602.     {
  1603.         rewardDisplay.updateList();
  1604.         rewardOutcomeTitle.text = "Tier " + currentTier() + " Daily Spin Reward Table";
  1605.     }
  1606.  
  1607.     public void updateList()
  1608.     {
  1609.         rewardDisplay.updateList();
  1610.     }
  1611.  
  1612.     public void showTimerTooltip()
  1613.     {
  1614.         InvokeRepeating("showTimeToNextSpin", 0f, 0.1f);
  1615.     }
  1616.  
  1617.     public void showTimeToNextSpin()
  1618.     {
  1619.         string empty = string.Empty;
  1620.         empty = ((!(character.daily.spinTime.totalseconds < 86400.0)) ? ("Go ahead and spin!\n\nYou have <b>" + NumberOutput.timeOutput(character.daily.spinTime.totalseconds - (double)targetSpinTime()) + "</b> of extra time banked for your next spin.") : ("<b>Time Until Next Spin:</b> " + NumberOutput.timeOutput((double)targetSpinTime() - character.daily.spinTime.totalseconds)));
  1621.         if (character.daily.freeSpins > 0)
  1622.         {
  1623.             string text = empty;
  1624.             empty = text + "\n\nYou have <b>" + character.daily.freeSpins + "</b> FREE spins available!";
  1625.         }
  1626.         tooltip.showTooltip(empty);
  1627.     }
  1628.  
  1629.     public void exitTooltip()
  1630.     {
  1631.         CancelInvoke("showTimeToNextSpin");
  1632.         tooltip.hideTooltip();
  1633.     }
  1634.  
  1635.     public void showTierTooltipInfo()
  1636.     {
  1637.         if (currentTier() >= 7)
  1638.         {
  1639.             tooltip.showTooltip("You have reached the max Daily Spin tier! Thanks for a year (or more) of playing NGU IDLE!");
  1640.         }
  1641.         else
  1642.         {
  1643.             tooltip.showTooltip("<b>Your total spin count is " + character.daily.totalSpins + ".\n\nYou will advance to the next tier of rewards in " + spinsToNextTier() + " spins!</b>");
  1644.         }
  1645.     }
  1646.  
  1647.     public void hideTooltip()
  1648.     {
  1649.         tooltip.hideTooltip();
  1650.     }
  1651.  
  1652.     public long spinsToNextTier()
  1653.     {
  1654.         long totalSpins = character.daily.totalSpins;
  1655.         if (totalSpins < 7)
  1656.         {
  1657.             return 7 - totalSpins;
  1658.         }
  1659.         if (totalSpins < 14)
  1660.         {
  1661.             return 14 - totalSpins;
  1662.         }
  1663.         if (totalSpins < 30)
  1664.         {
  1665.             return 30 - totalSpins;
  1666.         }
  1667.         if (totalSpins < 60)
  1668.         {
  1669.             return 60 - totalSpins;
  1670.         }
  1671.         if (totalSpins < 120)
  1672.         {
  1673.             return 120 - totalSpins;
  1674.         }
  1675.         if (totalSpins < 180)
  1676.         {
  1677.             return 180 - totalSpins;
  1678.         }
  1679.         if (totalSpins < 365)
  1680.         {
  1681.             return 365 - totalSpins;
  1682.         }
  1683.         return 0L;
  1684.     }
  1685.  
  1686.     public void updateTimeText()
  1687.     {
  1688.         if (character.daily.spinTime.totalseconds >= (double)targetSpinTime())
  1689.         {
  1690.             timeText.text = "READY!";
  1691.         }
  1692.         else
  1693.         {
  1694.             timeText.text = "Time To Next Spin:\n" + NumberOutput.timeOutput((double)targetSpinTime() - character.daily.spinTime.totalseconds);
  1695.         }
  1696.     }
  1697. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement