internal void AddHeroSpecialWeapon(EHero pHero) { //Debug.Log("AddHeroSpecialWeapon " + pHero); HeroSpecialWeaponConfig config = brainiacs.ItemManager.GetHeroSpecialWeaponConfig(pHero); if (config == null) { Debug.LogError($"Added weapon was null"); return; } PlayerWeaponSpecial weaponSpecial = new PlayerWeaponSpecial(player, config, pHero); weapon.AddWeapon(weaponSpecial); }
internal void AddMapWeaponSpecial(EWeaponId pWeapon) { //Debug.Log("AddMapWeaponSpecial " + pWeapon); if (pWeapon == EWeaponId.None) { Debug.LogError($"Added weapon was null"); return; } MapSpecialWeaponConfig config = brainiacs.ItemManager.GetMapSpecialWeaponConfig(pWeapon); if (config == null) { Debug.LogError("Config is null " + pWeapon); return; } game.PlayerStatusManager.ShowMapItem(player.Stats.MapItemUiPosition.position, config.MapItemInfo); PlayerWeaponSpecial weaponSpecial = null; switch (pWeapon) { case EWeaponId.Flamethrower: weaponSpecial = new SpecialFlamethrower(player, config); break; case EWeaponId.Mine: weaponSpecial = new PlayerWeaponSpecial(player, config); break; } if (weaponSpecial == null) { Debug.LogError("AddMapWeaponSpecial not defined for " + pWeapon); weaponSpecial = new PlayerWeaponSpecial(player, config); } weapon.AddWeapon(weaponSpecial); }