public void SetUpClasses(bl_GunManager gm) { if (AssaultClass == null) { Init(); } bl_PlayerClassLoadout pcl = null; switch (m_Class) { case PlayerClass.Assault: pcl = AssaultClass; break; case PlayerClass.Recon: pcl = ReconClass; break; case PlayerClass.Engineer: pcl = EngineerClass; break; case PlayerClass.Support: pcl = SupportClass; break; } if (pcl == null) { Debug.LogError($"Player Class Loadout has not been assigned for the class {m_Class.ToString()}"); return; } gm.PlayerEquip[0] = gm.GetGunOnListById(pcl.Primary); gm.PlayerEquip[1] = gm.GetGunOnListById(pcl.Secondary); gm.PlayerEquip[2] = gm.GetGunOnListById(pcl.Letal); gm.PlayerEquip[3] = gm.GetGunOnListById(pcl.Perks); }
/// <summary> /// /// </summary> void GetID() { int c = 0; if (PlayerPrefs.HasKey(ClassKey.ClassType)) { c = PlayerPrefs.GetInt(ClassKey.ClassType); } switch (c) { case 0: m_Class = PlayerClass.Assault; break; case 1: m_Class = PlayerClass.Engineer; break; case 2: m_Class = PlayerClass.Support; break; case 3: m_Class = PlayerClass.Recon; break; } #if ULSP if (bl_DataBase.Instance != null) { ClassKit = bl_DataBase.Instance.LocalUser.metaData.rawData.ClassKit; string dbData = bl_DataBase.Instance.LocalUser.metaData.rawData.WeaponsLoadouts; if (!string.IsNullOrEmpty(dbData)) { AssaultClass = Instantiate(DefaultAssaultClass); AssaultClass.FromString(dbData, 0); EngineerClass = Instantiate(DefaultEngineerClass); EngineerClass.FromString(dbData, 1); ReconClass = Instantiate(DefaultReconClass); ReconClass.FromString(dbData, 2); SupportClass = Instantiate(DefaultSupportClass); SupportClass.FromString(dbData, 3); return; } } else { Debug.Log("Use local data since player is not logged yet."); } #endif ClassKit = PlayerPrefs.GetInt(ClassKey.ClassKit, 0); string format = LOADOUT_KEY_FORMAT; string key = string.Format(format, PlayerClass.Assault); string data = PlayerPrefs.GetString(key, DefaultAssaultClass.ToString()); AssaultClass = Instantiate(DefaultAssaultClass); AssaultClass.FromString(data); key = string.Format(format, PlayerClass.Engineer); data = PlayerPrefs.GetString(key, DefaultEngineerClass.ToString()); EngineerClass = Instantiate(DefaultEngineerClass); EngineerClass.FromString(data); key = string.Format(format, PlayerClass.Recon); data = PlayerPrefs.GetString(key, DefaultReconClass.ToString()); ReconClass = Instantiate(DefaultReconClass); ReconClass.FromString(data); key = string.Format(format, PlayerClass.Support); data = PlayerPrefs.GetString(key, DefaultSupportClass.ToString()); SupportClass = Instantiate(DefaultSupportClass); SupportClass.FromString(data); }