using System.Collections; using System.Collections.Generic; using UnityEngine; using Steamworks; using Assets.Scripts; using Assets.Scripts.Player; public class SteamWorksHandler : MonoBehaviour { /* Steam Achievements * FORMAT = Requirement: Message * (Currently dropped) Playing for 5 hours: Got nothing else to do? * (Currently dropped) Playing for 10 hours: Look at THAT sunset! * (Currently dropped) Playing for 20 hours: You want coffee to your bagel? * (Currently dropped) Playing for 40 hours: I guess I have a true fan here * (Currently dropped) Playing for 80 hours: You should consider going outside */ static int counterForest = 0; public static void getForestAchievement(string tiletype) { if (counterForest != -1 && !isGodMode()) { if (tiletype.ToLower() == "forest") { counterForest++; } else { counterForest = 0; } if (counterForest >= 5) { if (SteamManager.Initialized) { SteamUserStats.SetAchievement("ForestAchievement"); SteamUserStats.StoreStats(); } counterForest = -1; } } } public static void getStandardAchievement(string name) { if (!isGodMode()) { if (SteamManager.Initialized) { SteamUserStats.SetAchievement(name); SteamUserStats.StoreStats(); } } } public static void getGodModeAchievement() { if (SteamManager.Initialized) { SteamUserStats.SetAchievement("GodAchievement"); SteamUserStats.StoreStats(); } } public static void getSlimeAchievement(int killcount) { string name = ""; switch (killcount) { case 1: name = "Kill1Slime"; break; case 10: name = "Kill10Slime"; break; case 50: name = "Kill50Slime"; break; case 100: name = "Kill100Slime"; break; case 500: name = "Kill500Slime"; break; case 1000: name = "Kill1000Slime"; break; } if (!isGodMode()) { if (SteamManager.Initialized) { SteamUserStats.SetAchievement(name); SteamUserStats.StoreStats(); } } } private static bool isGodMode() { return EasterEggHandler.isGodMode(GameObject.Find("Player").GetComponent().getPlayer()); } public static void getItemAchievement(Item item) { if (SteamManager.Initialized) { if (!isGodMode()) { SteamUserStats.SetAchievement("ItemAchievement"); SteamUserStats.StoreStats(); switch (item.getRarity()) { case ItemRarity.COMMON: SteamUserStats.SetAchievement("CommonAchievement"); SteamUserStats.StoreStats(); break; case ItemRarity.RARE: SteamUserStats.SetAchievement("RareAchievement"); SteamUserStats.StoreStats(); break; case ItemRarity.EPIC: SteamUserStats.SetAchievement("EpicAchievement"); SteamUserStats.StoreStats(); break; case ItemRarity.LEGENDARY: SteamUserStats.SetAchievement("LegendaryAchievement"); SteamUserStats.StoreStats(); break; } } } } }