Exemplo n.º 1
0
 protected UnturnedBuildableDamagingEvent(UnturnedBuildable buildable, ushort damageAmount, EDamageOrigin damageOrigin,
                                          UnturnedPlayer?instigator) : base(buildable)
 {
     DamageAmount = damageAmount;
     DamageOrigin = damageOrigin;
     Instigator   = instigator;
 }
 public UnturnedVehicleDamagingEvent(UnturnedVehicle vehicle, CSteamID instigator, ushort pendingTotalDamage, EDamageOrigin damageOrigin, bool canRepair) : base(vehicle)
 {
     Instigator         = instigator;
     PendingTotalDamage = pendingTotalDamage;
     DamageOrigin       = damageOrigin;
     CanRepair          = canRepair;
 }
 public UnturnedResourceDamagingEvent(ResourceSpawnpoint resourceSpawnpoint, ushort damageAmount, EDamageOrigin damageOrigin,
                                      UnturnedPlayer?instigator, CSteamID instigatorId)
 {
     ResourceSpawnpoint = resourceSpawnpoint;
     DamageAmount       = damageAmount;
     DamageOrigin       = damageOrigin;
     Instigator         = instigator;
     InstigatorId       = instigatorId;
 }
Exemplo n.º 4
0
        private void OnDamageBarricadeRequested(CSteamID instigatorSteamId, Transform barricadeTransform,
                                                ref ushort pendingTotalDamage, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            var drop = BarricadeManager.FindBarricadeByRootTransform(barricadeTransform);

            if (drop == null)
            {
                return;
            }

            var buildable = new UnturnedBarricadeBuildable(drop);

            var nativePlayer = PlayerTool.getPlayer(instigatorSteamId);
            var player       = GetUnturnedPlayer(nativePlayer);

            var @event = pendingTotalDamage >= buildable.State.Health
                ? (UnturnedBuildableDamagingEvent) new UnturnedBarricadeDestroyingEvent(buildable, pendingTotalDamage,
                                                                                        damageOrigin, player)
                : new UnturnedBarricadeDamagingEvent(buildable, pendingTotalDamage, damageOrigin, player);

            @event.IsCancelled = !shouldAllow;

            Emit(@event);

            pendingTotalDamage = @event.DamageAmount;
            shouldAllow        = [email protected];
        }
Exemplo n.º 5
0
        private void OnBuildingDamaged(CSteamID instigatorSteamID, Transform barricadeTransform, ref ushort pendingTotalDamage, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            SteamPlayer steamPlayer;

            if ((steamPlayer = PlayerTool.getSteamPlayer(instigatorSteamID)) != null)
            {
                var player = UnturnedPlayer.FromSteamPlayer(steamPlayer);

                if (player != null && !Configuration.Instance.AllowRaid)
                {
                    this.StartPlayerRaid(instigatorSteamID);
                }
            }
        }
 public UnturnedVehicleDamagingTireEvent(UnturnedVehicle vehicle, CSteamID instigator, int tireIndex, EDamageOrigin damageOrigin) : base(vehicle)
 {
     Instigator   = instigator;
     TireIndex    = tireIndex;
     DamageOrigin = damageOrigin;
 }
Exemplo n.º 7
0
        private void onDamageStructureRequested(CSteamID instigatorSteamID, Transform structureTransform, ref ushort pendingTotalDamage, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            UnturnedPlayer player = UnturnedPlayer.FromCSteamID(instigatorSteamID);

            UnturnedChat.Say($" DAMAGE {pendingTotalDamage}");
            player.GetComponent <PlayerComponent>().letmeclearcode(player, pendingTotalDamage);
        }
Exemplo n.º 8
0
 private void OnDamageBarricadeRequest(CSteamID instigatorSteamID, Transform barricadeTransform, ref ushort pendingTotalDamage, ref bool shouldAllow, EDamageOrigin damageOrigin)
 {
     shouldAllow = false;
 }
Exemplo n.º 9
0
 public UnturnedBuildableDestroyingEvent(UnturnedBuildable buildable, ushort damageAmount,
                                         EDamageOrigin damageOrigin, UnturnedPlayer instigator, CSteamID instigatorId) : base(buildable,
                                                                                                                              damageAmount, damageOrigin, instigator, instigatorId)
 {
 }
Exemplo n.º 10
0
//Tire prevention
        private void VehicleManager_onDamageTireRequested(CSteamID instigatorSteamID, InteractableVehicle vehicle, int tireIndex, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            if (Configuration.Instance.ShouldAllowTirePop == false)
            {
                shouldAllow = false;
            }
            if (instigatorSteamID != CSteamID.Nil && vehicle.lockedOwner != CSteamID.Nil)
            {
                UnturnedPlayer criminal = UnturnedPlayer.FromCSteamID(instigatorSteamID);
                UnturnedPlayer owner    = UnturnedPlayer.FromCSteamID(vehicle.lockedOwner);
                Logger.Log($"{criminal.DisplayName}({criminal.CSteamID}) is attempting to pop a tire on {owner.DisplayName}'s vehicle!");
                if (Configuration.Instance.ShouldWarnCriminal == true)
                {
                    UnturnedChat.Say(criminal, $"{Configuration.Instance.ShouldWarnCriminalMessage}");
                }
            }
        }
Exemplo n.º 11
0
        private void OnDamageTireRequested(CSteamID instigatorSteamID, InteractableVehicle vehicle, int tireIndex, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            UnturnedVehicleDamagingTireEvent @event = new UnturnedVehicleDamagingTireEvent(new UnturnedVehicle(vehicle), instigatorSteamID, tireIndex, damageOrigin);

            Emit(@event);

            shouldAllow = [email protected];
        }
Exemplo n.º 12
0
        private void OnStructureDamaged(CSteamID instigatorSteamID, Transform structureTransform, ref ushort pendingTotalDamage, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            SteamPlayer steamPlayer;

            if (!Configuration.Instance.AllowRaid && (steamPlayer = PlayerTool.getSteamPlayer(instigatorSteamID)) != null)
            {
                if (StructureManager.tryGetInfo(structureTransform, out _, out _, out ushort index, out StructureRegion region))
                {
                    // return if structure owner is instigator
                    if (region.structures[index].owner == instigatorSteamID.m_SteamID || region.structures[index].group == steamPlayer.player.quests.groupID.m_SteamID)
                    {
                        return;
                    }

                    // return if structure owner is offline
                    if (!Provider.clients.Exists(x => x.playerID.steamID.m_SteamID == region.structures[index].owner || x.player.quests.groupID.m_SteamID == region.structures[index].group))
                    {
                        return;
                    }

                    this.StartPlayerRaid(instigatorSteamID);
                }
            }
        }
Exemplo n.º 13
0
        private void OnDamageStructureRequested(CSteamID instigatorSteamId, Transform structureTransform, ref ushort pendingTotalDamage, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            if (!StructureManager.tryGetInfo(structureTransform, out _, out _, out var index,
                                             out var region, out var drop))
            {
                return;
            }
            {
                var data      = region.structures[index];
                var buildable = new UnturnedStructureBuildable(data, drop);

                var nativePlayer = Provider.clients.FirstOrDefault(x => x?.playerID.steamID == instigatorSteamId)?.player;
                var player       = nativePlayer == null ? null : new UnturnedPlayer(nativePlayer);

                UnturnedBuildableDamagingEvent @event;
                if (pendingTotalDamage >= buildable.State.Health)
                {
                    @event = new UnturnedStructureDestroyingEvent(buildable, pendingTotalDamage, damageOrigin, player, instigatorSteamId);
                }
                else
                {
                    @event = new UnturnedStructureDamagingEvent(buildable, pendingTotalDamage, damageOrigin, player, instigatorSteamId);
                }

                Emit(@event);

                pendingTotalDamage = @event.DamageAmount;
                shouldAllow        = [email protected];
            }
        }
Exemplo n.º 14
0
        void OnDamageBarricadeRequested(CSteamID instigatorSteamID, Transform barricadeTransform, ref ushort pendingTotalDamage, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            UnturnedPlayer untPlayer = UnturnedPlayer.FromCSteamID(instigatorSteamID);

            if (untPlayer?.Player != null)
            {
                if (Utils.IsActive(untPlayer) && Config.BlockBuildableDamage)
                {
                    if (untPlayer.GodMode || untPlayer.VanishMode)
                    {
                        shouldAllow = false;
                        Utils.Announce(Translate("private_damaged_buildable_in_vanish"), untPlayer);
                        return;
                    }
                }
            }
            shouldAllow = true;
        }
Exemplo n.º 15
0
        private void OnDamageVehicleRequested(CSteamID instigatorSteamId, InteractableVehicle vehicle, ref ushort pendingTotalDamage, ref bool canRepair, ref bool shouldAllow, EDamageOrigin damageOrigin) // lgtm [cs/too-many-ref-parameters]
        {
            var @event = new UnturnedVehicleDamagingEvent(
                vehicle: new UnturnedVehicle(vehicle),
                instigator: instigatorSteamId == CSteamID.Nil ? null : instigatorSteamId,
                pendingTotalDamage: pendingTotalDamage,
                damageOrigin: damageOrigin,
                canRepair: canRepair)
            {
                IsCancelled = !shouldAllow
            };

            Emit(@event);

            pendingTotalDamage = @event.PendingTotalDamage;
            canRepair          = @event.CanRepair;
            shouldAllow        = [email protected];
        }
Exemplo n.º 16
0
        private void OnDamageVehicle(CSteamID instigatorSteamID, InteractableVehicle vehicle, ref ushort pendingTotalDamage, ref bool canRepair, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            UnturnedPlayer player = UnturnedPlayer.FromCSteamID(instigatorSteamID);

            // uff zombie detector and player -_-
            if (pendingTotalDamage <= 2)
            {
                return;
            }

            if (player == null)
            {
                return;
            }

            // need to do some changes here, with health update, because when u hit a player still working this function, nelson nigger don't want to fix this...
            if (damageOrigin.ToString() == "Vehicle_Collision_Self_Damage")
            {
                if (player.CurrentVehicle.asset.engine == EEngine.CAR)
                {
                    if (player.CurrentVehicle.health < VehicleCrash.Instance.Configuration.Instance.ifvehiclehasXhealthStopWork)
                    {
                        burn_Fuel(player.CurrentVehicle);

                        vehicle.forceRemoveAllPlayers();

                        if (VehicleCrash.Instance.Configuration.Instance.autowarnmechanic)
                        {
                            ChatManager.serverSendMessage(VehicleCrash.Instance.Translate("warning", player.DisplayName).Replace('(', '<').Replace(')', '>'), Color.white, null, null, EChatMode.SAY, VehicleCrash.Instance.Translate("iconwarning", player.DisplayName), true);
                        }
                    }
                    else
                    {
                        tire_Damage(player, UnityEngine.Random.Range(1, 2), UnityEngine.Random.value);

                        foreach (var passenger in vehicle.passengers)
                        {
                            UnturnedPlayer jugador = UnturnedPlayer.FromSteamPlayer(passenger.player);

                            if (jugador != null && !jugador.GetComponent <PlayerComponent>().niggagetwork)
                            {
                                StartCoroutine(crash(jugador));
                            }
                            // break; my cucumber idk, for prevent bugs
                            break;
                        }
                    }
                }
            }
        }
Exemplo n.º 17
0
        private void OnDamageResourceRequested(CSteamID instigatorSteamId, Transform objectTransform, // lgtm [cs/too-many-ref-parameters]
                                               ref ushort pendingTotalDamage, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            if (!ResourceManager.tryGetRegion(objectTransform, out byte x, out byte y, out ushort index))
            {
                return;
            }

            List <ResourceSpawnpoint> tree       = LevelGround.trees[x, y];
            ResourceSpawnpoint        spawnpoint = tree[index];

            Player?        nativePlayer = PlayerTool.getPlayer(instigatorSteamId);
            UnturnedPlayer?player       = GetUnturnedPlayer(nativePlayer);

            var @event = new UnturnedResourceDamagingEvent(spawnpoint, pendingTotalDamage, damageOrigin, player, instigatorSteamId)
            {
                IsCancelled = !shouldAllow
            };

            Emit(@event);

            pendingTotalDamage = @event.DamageAmount;
            shouldAllow        = [email protected];
        }
 private void OnDamageStructureRequested(CSteamID instigatorSteamID, Transform structureTransform,
                                         ref ushort pendingTotalDamage, ref bool shouldAllow, EDamageOrigin damageOrigin)
 {
     if (GetDoorOrItem(structureTransform) != null)
     {
         shouldAllow = false;
     }
 }
Exemplo n.º 19
0
//Damage prevention
        private void VehicleManager_onDamageVehicleRequested(CSteamID instigatorSteamID, InteractableVehicle vehicle, ref ushort pendingTotalDamage, ref bool canRepair, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            if (instigatorSteamID != CSteamID.Nil)
            {
                UnturnedPlayer sameplayer = UnturnedPlayer.FromCSteamID(instigatorSteamID);
                if (instigatorSteamID != vehicle.lockedOwner)
                {
                    if (pendingTotalDamage >= 20)
                    {
                        if (sameplayer.IsAdmin != true)
                        {
                            if (Configuration.Instance.ShouldWarnCriminal)
                            {
                                UnturnedChat.Say(sameplayer, $"{Configuration.Instance.ShouldWarnCriminalMessage}");
                            }
                            if (Configuration.Instance.ShouldAllowDamage == false)
                            {
                                shouldAllow = false;
                            }
                        }
                    }
                }
            }
        }
Exemplo n.º 20
0
        private void OnDamageBarric(CSteamID instigatorSteamID, Transform structureTransform, ref ushort pendingTotalDamage, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            BarricadeManager.tryGetInfo(structureTransform, out byte x, out byte y, out ushort plant, out ushort Index, out BarricadeRegion BarRegion);
            var currentRegion = GetRegionAt(BarRegion.barricades[Index].point);

            if (currentRegion == null)
            {
                return;
            }
            if (currentRegion.Flags.Exists(fg => fg.Name == "NoDestroy") && !R.Permissions.HasPermission(new RocketPlayer(instigatorSteamID.m_SteamID.ToString()), Configuration.Instance.NoDestroyIgnorePermission) && !Configuration.Instance.NoDestroyIgnoredItems.Exists(k => k == BarRegion.barricades[Index].barricade.id))
            {
                shouldAllow = false;
            }
            else
            {
                return;
            }
        }
Exemplo n.º 21
0
        private void OnDamageVehicleRequested(CSteamID instigatorSteamID, InteractableVehicle vehicle, ref ushort pendingTotalDamage, ref bool canRepair, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            UnturnedVehicleDamagingEvent @event = new UnturnedVehicleDamagingEvent(new UnturnedVehicle(vehicle), instigatorSteamID, pendingTotalDamage, damageOrigin, canRepair);

            Emit(@event);

            pendingTotalDamage = @event.PendingTotalDamage;
            canRepair          = @event.CanRepair;
            shouldAllow        = [email protected];
        }
Exemplo n.º 22
0
        private void OnElementDamaged(CSteamID instigatorSteamID, Transform elementTransform, ref ushort pendingTotalDamage, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            switch (damageOrigin)
            {
            case EDamageOrigin.Flamable_Zombie_Explosion:
            case EDamageOrigin.Mega_Zombie_Boulder:
            case EDamageOrigin.Radioactive_Zombie_Explosion:
            case EDamageOrigin.Zombie_Electric_Shock:
            case EDamageOrigin.Zombie_Fire_Breath:
            case EDamageOrigin.Zombie_Stomp:
            case EDamageOrigin.Zombie_Swipe:
            {
                if (Instance.Configuration.Instance.DisableZombieElementDamage)
                {
                    shouldAllow = false;
                }
                break;
            }

            case EDamageOrigin.Punch:
            case EDamageOrigin.Vehicle_Bumper:
            case EDamageOrigin.Vehicle_Explosion:
            case EDamageOrigin.Food_Explosion:
            {
                if (Instance.Configuration.Instance.DisableMiscElementDamage)
                {
                    shouldAllow = false;
                }
                break;
            }

            case EDamageOrigin.Trap_Explosion:
            case EDamageOrigin.Trap_Wear_And_Tear:
            {
                if (Instance.Configuration.Instance.DisableZombieTrapDamage)
                {
                    shouldAllow = false;
                }
                break;
            }
            }
        }
        private void VehiculoDaño(CSteamID instigatorSteamID, InteractableVehicle vehicle, ref ushort pendingTotalDamage, ref bool canRepair, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            if (Configuration.Instance.vidainfinita)
            {
                pendingTotalDamage = 0;
                shouldAllow        = false;
            }

            if (Configuration.Instance.mostrarlog)
            {
                UnturnedPlayer player = UnturnedPlayer.FromCSteamID(instigatorSteamID);

                if (damageOrigin == EDamageOrigin.Useable_Gun || damageOrigin == EDamageOrigin.Useable_Melee || damageOrigin == EDamageOrigin.Punch)
                {
                    Logger.LogWarning($"{player.CharacterName} Esta Intentando Romper: {vehicle.asset.name}");
                }
            }
        }
Exemplo n.º 24
0
        private void OnDamageVehicle(CSteamID instigatorSteamID, InteractableVehicle vehicle, ref ushort pendingTotalDamage, ref bool canRepair, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            var currentRegion = GetRegionAt(vehicle.transform.position);

            if (currentRegion == null)
            {
                return;
            }
            if (currentRegion.Flags.Exists(fg => fg.Name.Equals("NoVehicleDamage", StringComparison.OrdinalIgnoreCase)) && !R.Permissions.HasPermission(new RocketPlayer(instigatorSteamID.m_SteamID.ToString()), Configuration.Instance.NoVehicleDamageIgnorePermission) && !Configuration.Instance.NoDestroyIgnoredItems.Exists(k => k == vehicle.id))
            {
                shouldAllow = false;
            }
        }
Exemplo n.º 25
0
        private void BarricadeDamaged(CSteamID instigatorSteamID, Transform barricadeTransform, ref ushort pendingTotalDamage, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            if (!shouldAllow ||
                !BarricadeManager.tryGetInfo(barricadeTransform, out byte x, out byte y, out ushort plant, out ushort index, out var region, out var drop) ||
                plant != ushort.MaxValue)
            {
                return;
            }

            var newHp = region.barricades.FirstOrDefault(c => c.instanceID == drop.instanceID).barricade.health - pendingTotalDamage;

            if (newHp > 0)
            {
                return;
            }
            var barricade = region.barricades.FirstOrDefault(c => c.instanceID == drop.instanceID);

            if (UnturnedPlayer.FromCSteamID((CSteamID)barricade.owner)?.Player != null)
            {
                return;
            }

            var player = PlayerTool.getPlayer(instigatorSteamID);

            var playerInfo = InfoSerializer.Players.FirstOrDefault(c => c.Characters.Any(k => k.InstanceId == drop.instanceID));

            var character = playerInfo?.Characters?.FirstOrDefault(c => c.InstanceId == drop.instanceID);

            if (character == null)
            {
                return;
            }


            foreach (var item in character.Items)
            {
                ItemManager.dropItem(new Item(item.ItemId, item.Amount, item.Quality, item.State), character.BarricadeLocation.ToVector3() + new Vector3(0, 0.5f), true, true, true);
            }

            playerInfo.Characters.Remove(character);

            InfoSerializer.Save();
        }
Exemplo n.º 26
0
        private void OnDamageBarric(CSteamID instigatorSteamID, Transform structureTransform, ref ushort pendingTotalDamage, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            BarricadeManager.tryGetInfo(structureTransform, out byte x, out byte y, out ushort plant, out ushort Index, out BarricadeRegion BarRegion);
            var currentRegion = GetRegionAt(BarRegion.barricades[Index].point);

            if (currentRegion == null)
            {
                return;
            }

            if (currentRegion.Flags.Exists(fg => fg.Name.Equals("NoDestroy", StringComparison.OrdinalIgnoreCase)))
            {
                UnturnedPlayer dealer = UnturnedPlayer.FromCSteamID(instigatorSteamID);

                if (dealer == null)
                {
                    return;
                }

                if (dealer.HasPermission(Configuration.Instance.NoDestroyIgnorePermission) || Configuration.Instance.NoDestroyIgnoredItems.Exists(k => k == BarRegion.barricades[Index].barricade.id))
                {
                    return;
                }

                shouldAllow = false;
            }
            else
            {
                return;
            }
        }
Exemplo n.º 27
0
        private void OnDamageStructureRequested(CSteamID instigatorSteamId, Transform structureTransform, ref ushort pendingTotalDamage, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            if (!StructureManager.tryGetInfo(structureTransform, out _, out _, out var index,
                                             out var region, out var drop))
            {
                return;
            }
            {
                var data      = region.structures[index];
                var buildable = new UnturnedStructureBuildable(data, drop);

                var nativePlayer = PlayerTool.getPlayer(instigatorSteamId);
                var player       = GetUnturnedPlayer(nativePlayer);

                var @event = pendingTotalDamage >= buildable.State.Health
                    ? (UnturnedBuildableDamagingEvent) new UnturnedStructureDestroyingEvent(buildable,
                                                                                            pendingTotalDamage, damageOrigin, player !, instigatorSteamId)
                    : new UnturnedStructureDamagingEvent(buildable, pendingTotalDamage, damageOrigin, player !,
                                                         instigatorSteamId);

                @event.IsCancelled = !shouldAllow;

                Emit(@event);

                pendingTotalDamage = @event.DamageAmount;
                shouldAllow        = [email protected];
            }
        }
        public void OnVehicleGetDamage(CSteamID instigatorSteamId, InteractableVehicle vehicle, ref ushort pendingTotalDamage, ref bool canRepair, ref bool shouldAllow, EDamageOrigin damageOrigin)
        {
            switch (damageOrigin)
            {
            case EDamageOrigin.Bullet_Explosion:
                pendingTotalDamage = (ushort)(pendingTotalDamage * Instance.Configuration.Instance.DamageFromBulletExplosion);
                break;

            case EDamageOrigin.Animal_Attack:
                pendingTotalDamage = (ushort)(pendingTotalDamage * Instance.Configuration.Instance.DamageFromAnimalAttack);
                break;

            case EDamageOrigin.Flamable_Zombie_Explosion:
                pendingTotalDamage = (ushort)(pendingTotalDamage * Instance.Configuration.Instance.DamageFromFlammableZombieExplosion);
                break;

            case EDamageOrigin.Food_Explosion:
                pendingTotalDamage = (ushort)(pendingTotalDamage * Instance.Configuration.Instance.DamageFromFoodExplosion);
                break;

            case EDamageOrigin.Mega_Zombie_Boulder:
                pendingTotalDamage = (ushort)(pendingTotalDamage * Instance.Configuration.Instance.DamageFromMegaZombieBoulder);
                break;

            case EDamageOrigin.Radioactive_Zombie_Explosion:
                pendingTotalDamage = (ushort)(pendingTotalDamage * Instance.Configuration.Instance.DamageFromRadioactiveZombieExplosion);
                break;

            case EDamageOrigin.Rocket_Explosion:
                pendingTotalDamage = (ushort)(pendingTotalDamage * Instance.Configuration.Instance.DamageFromRocketExplosion);
                break;

            case EDamageOrigin.Sentry:
                pendingTotalDamage = (ushort)(pendingTotalDamage * Instance.Configuration.Instance.DamageFromSentry);
                break;

            case EDamageOrigin.Trap_Explosion:
                pendingTotalDamage = (ushort)(pendingTotalDamage * Instance.Configuration.Instance.DamageFromTrapExplosion);
                break;

            case EDamageOrigin.Useable_Gun:
                pendingTotalDamage = (ushort)(pendingTotalDamage * Instance.Configuration.Instance.DamageFromUseableGun);
                break;

            case EDamageOrigin.Useable_Melee:
                pendingTotalDamage = (ushort)(pendingTotalDamage * Instance.Configuration.Instance.DamageFromUseableMelee);
                break;

            case EDamageOrigin.Vehicle_Explosion:
                pendingTotalDamage = (ushort)(pendingTotalDamage * Instance.Configuration.Instance.DamageFromVehicleExplosion);
                break;

            case EDamageOrigin.Zombie_Electric_Shock:
                pendingTotalDamage = (ushort)(pendingTotalDamage * Instance.Configuration.Instance.DamageFromZombieElectricShock);
                break;

            case EDamageOrigin.Zombie_Fire_Breath:
                pendingTotalDamage = (ushort)(pendingTotalDamage * Instance.Configuration.Instance.DamageFromZombieFireBreath);
                break;

            case EDamageOrigin.Zombie_Stomp:
                pendingTotalDamage = (ushort)(pendingTotalDamage * Instance.Configuration.Instance.DamageFromZombieStomp);
                break;

            case EDamageOrigin.Zombie_Swipe:
                pendingTotalDamage = (ushort)(pendingTotalDamage * Instance.Configuration.Instance.DamageFromZombieSwipe);
                break;

            case EDamageOrigin.Vehicle_Collision_Self_Damage:
                pendingTotalDamage = (ushort)(pendingTotalDamage * Instance.Configuration.Instance.DamageFromVehicleCollisionSelfDamage);
                break;
            }
        }
 public UnturnedBarricadeDamagingEvent(UnturnedBarricadeBuildable buildable, ushort damageAmount,
                                       EDamageOrigin damageOrigin, UnturnedPlayer?instigator) : base(buildable,
                                                                                                     damageAmount, damageOrigin, instigator)
 {
 }
 public void OnVehicleGetTireDamage(CSteamID instigatorSteamId, InteractableVehicle vehicle, int tireIndex, ref bool shouldAllow, EDamageOrigin damageOrigin)
 {
     if (Instance.Configuration.Instance.TireProtection)
     {
         vehicle.asset.canTiresBeDamaged = false;
         vehicle.askRepairTire(tireIndex);
     }
 }