NPC не получает урона в своём SWEP оружии Garry`s Mod

почему NPC не получает урон ? умирает от выстрела исключительно Example NPC

заранее извините за плохой код, просто только начинаю писать скрипты для гарис мода

    SWEP.PrintName = "Auto Crossbow"
    SWEP.Author = ""
    SWEP.Contact = ""
    SWEP.Purpose = "for chaos"
    SWEP.Instructions = ""
    
    SWEP.Category = "VaneZ's Weapons"
    
    SWEP.Spawnable= true
    SWEP.AdminSpawnable= true
    SWEP.AdminOnly = false
    
    SWEP.ViewModelFOV = 70
    SWEP.ViewModel = "models/weapons/v_crossbow.mdl" 
    SWEP.WorldModel = "models/weapons/w_crossbow.mdl"
    SWEP.ViewModelFlip = false
    SWEP.VElements = {
        ["bolts"] = { type = "Model", model = "models/items/crossbowrounds.mdl", bone = "Crossbow_model.Base", rel = "", pos = Vector(0, 0, 0), angle = Angle(0, 0, 0), size = Vector(0.5, 0.5, 0.5), color = Color(255, 255, 255, 255), surpresslightning = false, material = "", skin = 0, bodygroup = {} },
        ["element_name"] = { type = "Model", model = "models/items/boxsrounds.mdl", bone = "Crossbow_model.Crossbow_base", rel = "", pos = Vector(0, -5.715, 8.831), angle = Angle(0, 0, 90), size = Vector(0.5, 0.885, 0.5), color = Color(255, 255, 255, 255), surpresslightning = false, material = "", skin = 0, bodygroup = {} }
    }
    
    SWEP.AutoSwitchTo = false
    SWEP.AutoSwitchFrom = false
    
    SWEP.Slot = 4
    SWEP.SlotPos = 1
     
    SWEP.UseHands = false
    
    SWEP.HoldType = "crossbow" 
    
    SWEP.FiresUnderwater = true
    
    SWEP.DrawCrosshair = true
    
    SWEP.DrawAmmo = true
    
    SWEP.ReloadSound = "sound/weapons/crossbow/reload1.wav"
    
    SWEP.Base = "weapon_base"
    
    SWEP.Primary.Sound = Sound("sound/weapons/crossbow/fire1.wav")
    SWEP.Primary.Damage = 1000
    SWEP.Primary.TakeAmmo = 1
    SWEP.Primary.ClipSize = 10
    SWEP.Primary.Ammo = "XBowBolt"
    SWEP.Primary.DefaultClip = 40
    --SWEP.Primary.Spread = 0.01
    SWEP.Primary.NumberofShots = 1
    SWEP.Primary.Automatic = true
    --SWEP.Primary.Recoil = 0.01
    --SWEP.Primary.Delay = 0.5 
    --SWEP.Primary.Force = 1000
    
    SWEP.Secondary.ClipSize = -1
    SWEP.Secondary.Ammo = "none"
    SWEP.Secondary.DefaultClip = -1
    
    SWEP.CSMuzzleFlashes = false
    
    --function SWEP:Initialize()
    --util.PrecacheSound(self.Primary.Sound) 
    --util.PrecacheSound(self.Secondary.Sound) 
    --util.PrecacheSound(self.ReloadSound) 
            --self:SetWeaponHoldType( self.HoldType )
    --end
    
    
    
    
    function SWEP:PrimaryAttack()
    if  ( self.Weapon:Clip1() <= 0 ) then return end
    self.Weapon:SetNextPrimaryFire( CurTime() + 0.2 )
    self.Owner:EmitSound("Weapon_Crossbow.Single")
    self.Weapon:SendWeaponAnim(ACT_VM_PRIMARYATTACK)                    
    self.Owner:SetAnimation( PLAYER_ATTACK1 )
    self.Owner:ViewPunch(Angle( math.random( -5, -4.5 ),math.random( -0.2, 0.2 ),0))
    self:TakePrimaryAmmo(1)
    local c = self.Owner:EyeAngles()
                    local b = ents.Create('crossbow_bolt')
                    b:SetOwner(self.Owner)
                    b:SetPos(self.Owner:GetShootPos())
                    b:SetAngles(self.Owner:EyeAngles())
                    b:Spawn()
                    b:Activate()
                    b:SetVelocity(self.Owner:GetAimVector()*3500)
    
    end
    
    
    function SWEP:SecondaryAttack() 
        if(Zoom == 0) then 
            if(SERVER) then self.Owner:SetFOV( 45, 0 ) 
        end 
    
        Zoom = 2 
        else if(SERVER) then self.Owner:SetFOV( 0, 0 ) 
        end 
    
        Zoom = 0 
    end 
    end

Ответы (0 шт):