예제 #1
0
        internal static void ProcessLevelUp()
        {
            GameInstance.Instance.CurrentPlayer.Level     += 1;
            GameInstance.Instance.CurrentPlayer.NextLevel += 10;
            ConsoleHelper.UserMessage("Congratulations! You gained a level up! Current level is {0}", GameInstance.Instance.CurrentPlayer.Level);

            foreach (var b in GameInstance.Instance.CurrentPlayer.Body)
            {
                b.MaxHealth += 1;
            }
            GameInstance.Instance.CurrentPlayer.AttackStrength += 1;
            GameInstance.Instance.CurrentPlayer.PartialRegenerate(1);

            switch (GameInstance.Instance.CurrentPlayer.Level)
            {
            case 2:
                InventoryHelper.AddItemToInventory(Pools.GetItemById("TribalBracers_L"));
                InventoryHelper.AddItemToInventory(Pools.GetItemById("TribalBracers_R_Heavy"));
                InventoryHelper.AddItemToInventory(Pools.GetItemById("TribalBoot_L"));
                InventoryHelper.AddItemToInventory(Pools.GetItemById("TribalBoot_R"));
                break;

            case 3:
                InventoryHelper.AddItemToInventory(Pools.GetItemById("TribalShield"));
                break;

            default:
                break;
            }

            var currentQuest = GameInstance.Instance.CurrentGameData.Quests[GameInstance.Instance.CurrentGameData.CurrentQuestIndex];

            if (currentQuest is Quest1_TheTrial)
            {
                currentQuest.TryToComplete();
            }
        }