Entity:TakeDamageInfo

  Entity:TakeDamageInfo( CTakeDamageInfo damageInfo )

Açıklama

Hasar bilgisi tarafından belirtilen hasarı varlığa uygular.

Bu fonksiyonu kurban varlık üzerinde ENTITY:OnTakeDamage içerisinde çağırmak sonsuz döngülere neden olabilir.
Bu fonksiyon, prop_vehicle_jeep veya prop_vehicle_jeep_old aracını süren bir oyuncuya uygulandığında herhangi bir hasar vermiyor gibi görünmektedir. Bunun yerine araca çağırmanız gerekir.
Bu fonksiyon, func_breakable_surf varlıklarına doğru şekilde hasar uygulamaz. Bunu yapmak için, bunun yerine Entity:DispatchTraceAttack kullanmanız gerekecektir.

Argümanlar

1 CTakeDamageInfo damageInfo
Uygulanacak hasar.

Örnek

Hedefi eriterek yok eder.

function DissolveIt( ent, ply ) local d = DamageInfo() d:SetDamage( ent:Health() ) d:SetAttacker( ply or ent ) d:SetDamageType( DMG_DISSOLVE ) ent:TakeDamageInfo( d ) end concommand.Add( "dissolve_it", function( ply, cmd, arg ) local ent = ply:GetEyeTrace().Entity if ( !IsValid( ent ) ) then return end -- Geçerli bir varlığa bakılmıyor DissolveIt( ent, ply ) end )

Örnek

İçindeki oyuncuyu öldürmeniz gerekiyorsa araca hasar verin.

function TakeDamage( victim, damage, attacker, inflictor ) local dmg = DamageInfo() -- Sunucu taraflı bir hasar bilgisi sınıfı oluşturur dmg:SetDamage( damage ) dmg:SetAttacker( attacker ) dmg:SetInflictor( inflictor ) dmg:SetDamageType( DMG_ENERGYBEAM ) victim:TakeDamageInfo( dmg ) end concommand.Add( "kill_this_entity", function( ply, cmd, args ) local target = ply:GetEyeTrace().Entity if ( target:IsVehicle() ) then target = target:GetDriver() -- Bunu içerideki oyuncuya hasar vermek için dönüştürün end -- Hedef bir araç içindeki oyuncu olduğunda hasar almaz TakeDamage( target, target:Health(), ply, ply:GetActiveWeapon() ) end )

Tüm sunucular · GmodTR Launcher · Rehber · GMod Wiki · GmodTR nedir? · Sunucu ekle · Discord