/// <summary> /// Called at the end of a level when there is a weapon to upgrade. Adds the weaponToUpgrade to a list of weapons that will be upgraded by the WeaponsMKManager /// </summary> /// <param name="weaponToUpgrade"></param> public void AddWeaponToTempList(EndOfLevelUnlockManager.WeaponUpgrade weaponToUpgrade) { weaponsToUpgrade.Add(weaponToUpgrade); }
/// <summary> /// Any weapon that has to be upgraded is passed to this method. It checks to see which weapon has been passed in and then applies the neccessary upgrade. /// </summary> /// <param name="weapon"></param> public void UnlockWeaponSkin(EndOfLevelUnlockManager.WeaponUpgrade weapon) { string weaponType = weapon.weaponToUpgrade.ToString(); if ((int)weapon.mkValue > gameControlls.ReturnAWeaponsMKValue(weaponType)) //Only upgrade a weapon if the MK value you are upgrading to is HIGHER than the current mk value. { switch (weaponType) { case "STEAM_HAMMER": steamHammerWeaponSkin.SetMaterialByIndex((int)weapon.mkValue); steamHammerMKPage.SetTextureByIndex((int)weapon.mkValue); if ((int)weapon.mkValue == 1) { GameControlls.Instance.UnlockSteamAchievement(SteamAchievementsNames.HARD_AS_NAILS); } else if ((int)weapon.mkValue == 2) { GameControlls.Instance.UnlockSteamAchievement(SteamAchievementsNames.SEEING_STARS); } break; case "STEAM_CANNON": steamCannonWeaponSkin.SetMaterialByIndex((int)weapon.mkValue); steamCannonMKPage.SetTextureByIndex((int)weapon.mkValue); if ((int)weapon.mkValue == 1) { GameControlls.Instance.UnlockSteamAchievement(SteamAchievementsNames.HOT_AIR); } else if ((int)weapon.mkValue == 2) { GameControlls.Instance.UnlockSteamAchievement(SteamAchievementsNames.BLOW_ME); } break; case "STEAM_MAGNET": steamMagnetWeaponSkin.SetMaterialByIndex((int)weapon.mkValue); steamMagnetMKPage.SetTextureByIndex((int)weapon.mkValue); if ((int)weapon.mkValue == 1) { GameControlls.Instance.UnlockSteamAchievement(SteamAchievementsNames.PUSH_ME); } else if ((int)weapon.mkValue == 2) { GameControlls.Instance.UnlockSteamAchievement(SteamAchievementsNames.FATAL_ATTRACTION); } break; case "STEAM_RAILGUN": steamRailGunWeaponSkin.SetMaterialByIndex((int)weapon.mkValue); steamRailGunMKPage.SetTextureByIndex((int)weapon.mkValue); if ((int)weapon.mkValue == 1) { GameControlls.Instance.UnlockSteamAchievement(SteamAchievementsNames.MAVERICK); } else if ((int)weapon.mkValue == 2) { GameControlls.Instance.UnlockSteamAchievement(SteamAchievementsNames.JACKAL); } break; case "TESLA_RAY": teslaRayWeaponSkin.SetMaterialByIndex((int)weapon.mkValue); teslaRayMKPage.SetTextureByIndex((int)weapon.mkValue); if ((int)weapon.mkValue == 1) { GameControlls.Instance.UnlockSteamAchievement(SteamAchievementsNames.GIVES_FOCUS); } else if ((int)weapon.mkValue == 2) { GameControlls.Instance.UnlockSteamAchievement(SteamAchievementsNames.MAKES_STRONGER); } break; case "STEAM_SAW": steamSawWeaponSkin.SetMaterialByIndex((int)weapon.mkValue); steamSawMKPage.SetTextureByIndex((int)weapon.mkValue); if ((int)weapon.mkValue == 1) { GameControlls.Instance.UnlockSteamAchievement(SteamAchievementsNames.LOVE_SAW); } else if ((int)weapon.mkValue == 2) { GameControlls.Instance.UnlockSteamAchievement(SteamAchievementsNames.PART_OF_ME); } break; } gameControlls.UpgradeWeaponValue(weaponType, (int)weapon.mkValue); } }