Weapon

Bu, sadece silahlar için mevcut olan tüm metotların bir listesidir. Silahlarda Entity fonksiyonlarını çağırmak da mümkündür.

Mevcut metotların bir listesi navigasyon çubuğunuzda genişletilmiştir.

Entity'den metotlar miras alır.

Metotlar

Daha iyi bir (Weapon:GetWeight) silah alındığında silahtan otomatik olarak geçiş yapılıp yapılamayacağını döndürür.
Daha iyi bir (Weapon:GetWeight) silah alındığında silaha otomatik olarak geçiş yapılıp yapılamayacağını döndürür.
Weapon:CallOnClient( string functionName, string data = "" )
İstemcide bir SWEP fonksiyonu çağırır. İstemcide hiçbir şey yapmaz. Bu, dahili olarak usermessage kullanır, bu nedenle, bu fonksiyonun argümanlarının toplam uzunluğu 254 baytı/karakteri geçmemelidir, aksi takdirde fonksiyon çalışmayı durdurur!
number Weapon:Clip1()
Şarjörde ne kadar birincil mermi olduğunu döndürür. Bu, istemciler arasında paylaşılmaz ve bunun yerine maksimum birincil şarjör boyutunu döndürür.
number Weapon:Clip2()
Şarjörde ne kadar ikincil mermi olduğunu döndürür. Bu, istemciler arasında paylaşılmaz ve bunun yerine maksimum ikincil şarjör boyutunu döndürür.
Belirtilen animasyonu oynatırken silahı yeniden doldurmaya zorlar. Bu, silah yeniden doldurulurken WEAPON:Think fonksiyonunun çağrılmasını durduracaktır!
Silahın oynattığı sekans numaralandırma (enumeration) sayısını döndürür. Bu, sunucu ve istemci arasında tutarsız sonuçlar döndürebilir. Sorun Takipçisi: 2543
Weapon:SetDeploySpeed tarafından ayarlandığı şekilde silahın kuşanma hızını döndürür. Eğer daha önce ayarlanmamışsa, değer sv_defaultdeployspeed ConVar'ından alınır.
Silahın tutuş tipini döndürür.
Maksimum birincil şarjör boyutunu döndürür.
Maksimum ikincil şarjör boyutunu döndürür.
Silahın bir sonraki birincil ateşleme yapabileceği zamanı alır. ( WEAPON:PrimaryAttack çağırabilir )
Silahın bir sonraki ikincil ateşleme yapabileceği zamanı alır. ( WEAPON:SecondaryAttack çağırabilir )
Verilen silahın birincil mermi türünü alır.
Silahın görüntülenmesi gereken, dahili olmayan adını döndürür. Eğer bu, çevrilmemiş bir mesaj (#HL2_XX) döndürürse, "güzel" adı görmek için language.GetPhrase kullanın. Eğer SWEP.PrintName, silahta veya silah tabanında (Weapon Base) ayarlanmamışsa, "<MISSING SWEP PRINT NAME>" döndürülür.
Verilen silahın ikincil ateşlemesinin mermi türünü alır.
number Weapon:GetSlot()
Silahın yuvasını (slot) döndürür. Yuva numaraları 0'dan başlar.
Silahın yuva pozisyonunu döndürür.
Silahın görüş modelini (view model) döndürür.
Silahın dünya modelini (world model) döndürür.
number Weapon:GetWeight()
Motor tarafından hangi silahın daha iyi olduğuna karar verilirken kullanılan silahın "ağırlığını" döndürür.
boolean Weapon:HasAmmo()
Silahın mermisi kalıp kalmadığını döndürür. Şarjörde ve yedekte hiç mermi kalmadığında false döndürür. Levye, gravity gun gibi silahlar için true döndürür.
Silahın yerel oyuncu tarafından taşınıp taşınmadığını döndürür.
Silahın bir SWEP mi yoksa dahili bir silah mı olduğunu kontrol eder.
Silahın görünür olup olmadığını döndürür. Burada kontrol edilen tam olarak görünürlük terimi değildir, önce sahibinin bir oyuncu olup olmadığını kontrol eder, ardından aktif görüş modelinin EF_NODRAW bayrağının ayarlanıp ayarlanmadığını kontrol eder.
Bu silahın Entity:FireBullets ile en son mermi ateşlemesinden bu yana geçen süreyi saniye cinsinden döndürür. Ağa bağlı (networked) değildir.
Weapon:SendWeaponAnim( number act )
Silahı etkinlik/animasyon oynamaya zorlar.
Weapon:SetActivity( number act )
Silahın oynattığı etkinliği ayarlar. Ayrıca bakınız Weapon:GetActivity.
Weapon:SetClip1( number ammo )
Verilen silahın birincil şarjöründeki mermi sayısını değiştirmenizi sağlar.
Weapon:SetClip2( number ammo )
Verilen silahın ikincil şarjöründeki mermi sayısını değiştirmenizi sağlar.
Weapon:SetDeploySpeed( number speed )
Silahın kuşanma hızını ayarlar. Bu değerin istemci ve sunucuda eşleşmesi gerekir.
Weapon:SetHoldType( string name )
Silahın tutuş tipini ayarlar. Bu fonksiyon aynı zamanda WEAPON:SetWeaponHoldType'ı çağırır ve tüm istemcilere düzgün bir şekilde ağ üzerinden iletir. Bu sadece scriptli silahlarda çalışır. Bu fonksiyonu botların tuttuğu silahlarda kullanmak, dünya modeli boş bir dizeye ayarlanmışsa (SWEP.WorldModel = "") tutuş tipi değişikliklerini istemcilere ağ üzerinden iletmez.
Weapon:SetLastShootTime( number time = CurTime() )
Bu silahın en son ateşlemesinden bu yana geçen süreyi saniye cinsinden ayarlar. Weapon:LastShootTime ile birlikte kullanılır.
Weapon:SetNextPrimaryFire( number time )
Silahın ne zaman tekrar ateş edebileceğini ayarlar. Zaman CurTime'a dayalı olmalıdır. Standart HL2 Pistol (weapon_pistol), dahili bir uygulama nedeniyle bu fonksiyonu atlar. Zaman CurTime'dan daha aza ayarlanırsa bu, fazladan mermi ateşler. Sorun Takipçisi: 3786
Silahın ne zaman tekrar alternatif ateş edebileceğini ayarlar. Zaman CurTime'a dayalı olmalıdır.

Entity'den metotlar miras alır.

Olaylar

boolean WEAPON:AcceptInput( string inputName, Entity activator, Entity called, string data )
Başka bir varlık (entity) bu varlığa bir olay (event) ateşlediğinde çağrılır.
Fare hassasiyetini ayarlamanıza olanak tanır. Bu kanca (hook) yalnızca GM:AdjustMouseSensitivity'yi geçersiz kılmadıysanız çalışır.
number WEAPON:Ammo1()
Oyuncunun ne kadar birincil mermisi olduğunu döndürür.
number WEAPON:Ammo2()
Oyuncunun ne kadar ikincil mermisi olduğunu döndürür.
Vector, Angle, number WEAPON:CalcView( Player ply, Vector pos, Angle ang, number fov )
Bu silah kullanımdayken oyuncu görüşünü ayarlamanıza olanak tanır. Bu kanca, GM:CalcView'in burada bulunan varsayılan uygulamasından çağrılır. Bu nedenle, CalcView'e eklenen başka bir kanca herhangi bir değer döndürürse veya mevcut oyun modu varsayılan kancayı geçersiz kılar ve SWEP fonksiyonunu çağırmazsa çağrılmaz.
Vector, Angle WEAPON:CalcViewModelView( Entity ViewModel, Vector OldEyePos, Angle OldEyeAng, Vector EyePos, Angle EyeAng )
Görüş modelinin (viewmodel) pozisyonunu ve açısını geçersiz kılmaya olanak tanır. Bu kanca yalnızca GM:CalcViewModelView'i geçersiz kılmadıysanız çalışır.
Bir Vatandaş (Citizen) NPC'si almak için (daha iyi) bir silah aradığında çağrılır.
Mermi olmamasını kontrol etmek için yardımcı bir fonksiyondur.
Mermi olmamasını kontrol etmek için yardımcı bir fonksiyondur.
HUD'daki mermi göstergesi için istediğiniz sayıları kullanmanıza olanak tanır. Standart mermi kullanmayan silahlar için faydalı olabilir.
boolean WEAPON:Deploy()
Oyuncu bu silaha yeni geçtiğinde çağrılır. Bu kancanın tahmin edilebilir (predicted) olması nedeniyle, tek oyunculu modda istemci tarafında hiç çağrılmaz ve çok oyunculu modda silah Player:SelectWeapon veya "use" konsol komutu ile değiştirilirse istemci tarafında çağrılmaz, ancak varsayılan silah seçim menüsüyle ve CUserCmd:SelectWeapon kullanıldığında istemci tarafında çağrılır.
Nişangah (crosshair) çizilmek üzereyken çağrılır ve onu geçersiz kılmanıza olanak tanır. Bu fonksiyon, eğer SWEP.DrawCrosshair false olarak ayarlanmışsa veya oyuncu Player:CrosshairDisable'dan etkilenmişse çağrılmaz.
boolean WEAPON:DoImpactEffect( table tr, number damageType )
Silahın yarattığı çarpma efektlerini geçersiz kılabilmesi için çağrılır. Eğer mermi tahmin edilebilir (predicted) bir ortamda ateşlendiyse, kanca CLIENT alanında çağrılmaz. Bu kanca ayrıca WEAPON:GetOwner():FireBullets çağrıldığında da çağrılır. MULTIPLAYER modundayken, bu kanca ilgili durumda çağrılır, ancak SINGLEPLAYER modunda, FireBullets SERVER'da çağrılmış olsa bile bu kanca her zaman CLIENT alanında çağrılır.
WEAPON:DrawHUD()
Bu kanca, bu silah kullanımdayken ekrana çizim yapmanıza olanak tanır. Özel bir nişangah çizmek istiyorsanız, bunun yerine WEAPON:DoDrawCrosshair kullanmayı düşünün.
Bu kanca, bu silah kullanımdayken ekrana çizim yapmanıza olanak tanır. Bu kanca, WEAPON:DrawHUD'dan önce çağrılır ve GM:HUDPaintBackground'a eşdeğerdir.
WEAPON:DrawWeaponSelection( number x, number y, number width, number height, number alpha )
Bu kanca, silah seçim menüsündeki seçim ikonunu çizer.
WEAPON:DrawWorldModel( number flags )
Dünya modelini (world model) çizmek üzereyken çağrılır.
Yarı saydam dünya modelini (translucent world model) çizmek üzereyken çağrılır.
WEAPON:Equip( Entity NewOwner )
Bir oyuncu veya NPC silahı aldığında çağrılır.
WEAPON:EquipAmmo( Player ply )
Oyuncu silahı aldı ve mermisini de aldı. Silah bu çağrıdan hemen sonra kaldırılacaktır.
boolean WEAPON:FireAnimationEvent( Vector pos, Angle ang, number event, string options, Entity source )
Namlu parlaması veya kovan fırlatma gibi bir animasyon olayını yürütmeden önce çağrılır. Bu, sadece 3000 aralığındaki olaylar için sunucu tarafında ve 5000 aralığındaki ve diğer olaylar için istemci tarafında çağrılacaktır.
Bu kanca, oyuncuların ekranını dondurmanıza olanak tanır. Oyuncu hala hareket edebilir veya ateş edebilir.
Bu kanca NPC'ler içindir, onunla ne yapmaya çalışmaları gerektiğini döndürürsünüz. Bu kancada aynı varlık üzerinde NPC:CapabilitiesGet çağırmak sonsuz döngülere neden olabilir, çünkü bu fonksiyon WEAPON:GetCapabilities'in sonucunu dönüş değerinin üzerine ekler.
number WEAPON:GetNPCBulletSpread( number proficiency )
Silah NPC'ler tarafından kullanıldığında, ateşlenen mermilerin ne kadar isabetli olması gerektiğini belirlemek için çağrılır. İsabetsizlik, bu kancadan döndürülen değere göre NPC:GetAimVector değiştirilerek simüle edilir.
Silah NPC'ler tarafından kullanıldığında, NPC'ye bu silahı nasıl kullanacağını söylemek için çağrılır. NPC'nin ne kadar süreyle sürekli ateş edebileceğini veya etmesi gerektiğini kontrol eder.
Silah NPC'ler tarafından kullanıldığında, NPC'ye bu silahı nasıl kullanacağını söylemek için çağrılır. NPC'nin atış aralarında ne kadar süre dinlenebileceğini (ateş etmeyeceğini) kontrol eder.
Mermi izi (tracer) efektinin nereden geldiğini geçersiz kılmanıza olanak tanır. ( Görsel mermiler )
Vector, Angle WEAPON:GetViewModelPosition( Vector EyePos, Angle EyeAng )
Bu kanca, görüş modeli (view model) pozisyonunu ve açılarını ayarlamanıza olanak tanır.
boolean WEAPON:Holster( Entity weapon )
Silah kılıfına konulmaya çalışıldığında çağrılır. Bu, yalnızca Player:SelectWeapon kullanıldığında sunucu tarafında çağrılır, çünkü bu fonksiyon silahı hemen tahminden (prediction) çıkarır. Bu, her kılıfa koyma işlemi için istemci tarafında iki kez çağrılır, biri Prediction içinde diğeri değil. Sorun Takipçisi: 2854
WEAPON:OnRemove çağrılmadan önce, bu fonksiyon sadece sunucu tarafında çağrılır. Sorun Takipçisi: 3133
boolean WEAPON:HUDShouldDraw( string element )
Bu kanca HUD'ın hangi kısımlarının çizileceğini belirler.
WEAPON:Initialize()
Silah varlığı oluşturulduğunda çağrılır. Entity:GetOwner bu noktada NULL döndürür çünkü silah henüz bir oyuncu veya NPC tarafından kuşanılmamıştır. Sahibin geçerli olması gerekiyorsa WEAPON:Equip veya WEAPON:Deploy kullanın. Bu, hızlı kayıttan (quicksave) sonra sunucu tarafında çağrılmaz. Sorun Takipçisi: 3015
boolean WEAPON:KeyValue( string key, string value )
Motor bu scriptli silah için bir değer ayarladığında çağrılır. Tüm varlıklar için çalışan bir kanca için GM:EntityKeyValue'e bakın. Scriptli varlıklar için çalışan bir kanca için ENTITY:KeyValue'e bakın.
WEAPON:OnDrop( Entity owner )
Silah Player:DropWeapon tarafından düşürüldüğünde çağrılır. Ayrıca bakınız WEAPON:OwnerChanged.
WEAPON:OnReloaded()
Silahın Lua scripti yeniden yüklendiğinde çağrılır.
WEAPON:OnRemove()
SWEP kaldırılmak üzereyken çağrılır.
WEAPON:OnRestore()
Silah varlığı bir Source Engine kaydından (Sandbox kayıtları veya kopyaları değil) yeniden yüklendiğinde veya bir seviye değişikliğinde (örneğin Half-Life 2 kampanya seviye geçişleri) çağrılır. Kopyalayıcı (duplicator) geri çağrıları için ENTITY:OnDuplicated'e bakın. İlgili fonksiyonlar için ayrıca saverestore'a bakın.
WEAPON:OwnerChanged()
Silah düşürüldüğünde veya yeni bir oyuncu tarafından alındığında çağrılır. Silahın sahibi yoksa ve alınırsa bu, sunucudaki tüm oyuncular için istemci tarafında çağrılabilir. Ayrıca bakınız WEAPON:OnDrop.
WEAPON:PostDrawViewModel( Entity vm, Weapon weapon, Player ply )
Silah kullanımdayken görüş modeli çizildikten sonra çağrılır. Bu kanca, GM:PostDrawViewModel'in varsayılan uygulamasından çağrılır ve bu nedenle, geçersiz kılınmışsa gerçekleşmez. WEAPON:ViewModelDrawn, her zaman GM:PostDrawViewModel'den önce çağrılan alternatif bir kancadır.
WEAPON:PreDrawViewModel( Entity vm, Weapon weapon, Player ply )
Silah kullanımdayken, çizilmeden önce görüş modelini değiştirmenize olanak tanır. Bu kanca yalnızca GM:PreDrawViewModel'i geçersiz kılmadıysanız çalışır.
WEAPON:PrimaryAttack()
Birincil saldırı tuşuna ( +attack ) basıldığında çağrılır. Tek oyunculu modda, bu fonksiyon yalnızca sunucu alanında çağrılır. Çok oyunculu modda, kanca hem sunucuda hem de istemcide çağrılarak Tahmin (Prediction) özelliğine izin verilir. Kancanın her zaman istemcide çağrılmasını şu şekilde zorlayabilirsiniz: if ( game.SinglePlayer() ) then self:CallOnClient( "PrimaryAttack" ) end Unutmayın ki tahmin nedeniyle, çok oyunculu modda SWEP:PrimaryAttack silahla yapılan her bir "atış" için birden çok kez çağrılır. Bu durumu aşmak için IsFirstTimePredicted kullanın.
WEAPON:PrintWeaponInfo( number x, number y, number alpha )
WEAPON:DrawWeaponSelection'da kullanılan, silah bilgi kutusunu çizen kullanışlı bir fonksiyondur.
WEAPON:Reload()
Yeniden doldurma tuşuna ( +reload ) basıldığında çağrılır.
WEAPON:RenderScreen()
Her karede GM:RenderScene'den hemen önce çağrılır. Tool Gun tarafından görüş modeli ekranlarını (TOOL:DrawToolScreen) renderlamak için kullanılır. Bu kancada renderlanan materyallerin düzgün çizilmesi için $ignorez parametresi gerekir.
WEAPON:SecondaryAttack()
İkincil saldırı tuşuna ( +attack2 ) basıldığında çağrılır. Bu kancanın istemci tarafında hızla çağrılmasıyla ilgili sorunlar için, genel fonksiyon olan IsFirstTimePredicted'e bakın.
WEAPON:SetupDataTables()
SWEP'in Veri Tablolarını (Data Tables) kurması gerektiğinde çağrılır.
WEAPON:SetWeaponHoldType( string name )
Silahın tutuş tipini ayarlar. Düzgün çalışması için hem sunucuda hem de istemcide çağrılmalıdır. NOT: Bu fonksiyonu çağırmaktan kaçınmalı ve artık Weapon:SetHoldType'ı çağırmalısınız.
WEAPON:ShootBullet( number damage, number num_bullets, number aimcone, string ammo_type = "self.Primary.Ammo", number force = 1, number tracer = 5 )
Mermi atmak için kullanışlı bir fonksiyondur.
WEAPON:ShootEffects()
Ateş etme efektleri oluşturmak için kullanışlı bir fonksiyondur.
Görüş modelinin (view model) çizilip çizilmeyeceğini belirlemek için çağrılır.
Bu silah, sahibi öldüğünde düşürülmeli mi? Bu yalnızca oyuncunun Player:ShouldDropWeapon özelliği true olarak ayarlanmışsa çalışır.
WEAPON:TakePrimaryAmmo( number amount )
Şarjörden birincil mermiyi çıkarmak için kullanışlı bir fonksiyondur.
WEAPON:TakeSecondaryAmmo( number amount )
Şarjörden ikincil mermiyi çıkarmak için kullanışlı bir fonksiyondur.
WEAPON:Think()
Silah düşündüğünde (think) çağrılır. Bu kanca kuşanma animasyonu sırasında ve Weapon:DefaultReload kullanıldığında çağrılmaz. Tahmin edilebilir (predicted) bir kanca olmasına rağmen, bu kanca tek oyunculu modda (kolaylık olması için) istemci tarafında çağrılır, ancak Player:GetCurrentCommand aracılığıyla tahmin edilebilir bir kanca olarak tanınmaz ve bu durumda daha sık çalışır. Bu kanca istemcide Oyuncu hareketi işlenmeden önce, sunucuda ise sonra çağrılır. Bu kanca yalnızca silah oyuncuların elindeyken çalışır. Bir NPC tarafından taşınırken çalışmaz. Sadece sunucu tarafında yapılan bir kuşanmadan sonraki kuşanma animasyonları sırasında çalışmaz. Bu genellikle +use ile bir nesneyi alıp bıraktıktan sonra olur. Sorun Takipçisi: 2855
WEAPON:Tick()
Bunu kullanmamanızı tavsiye ederiz. Gelecekteki bir güncellemede değiştirilebilir veya kaldırılabilir. Bunun yerine Weapon:Think kullanın. Weapon:Think'in takma adıdır (alias).
Genel bir etkinliği, tutuş tipine özgü etkinlikler gibi daha spesifik bir etkinliğe çevirir. Çevrilen etkinlik daha sonra Entity:SelectWeightedSequence ve benzeri fonksiyonlar aracılığıyla sahibin modelinden animasyonlar istemek için kullanılır. Örneğin, ACT_MP_RUN, ACT_HL2MP_RUN_PISTOL olur.
number WEAPON:TranslateFOV( number fov )
Oyuncu silahı tutarken oyuncunun görüş alanını (field of view) değiştirmeye olanak tanır. Bu kancanın paylaşımlı (shared) olarak tanımlanması ve Alan Portallarını (Area Portals) düzgün şekilde etkilemesi için her ikisinde de aynı değeri döndürmesi gerekir.
WEAPON:ViewModelDrawn( Entity ViewModel )
Görüş modeli çizildikten hemen sonra çağrılır. Bu, GM:PostDrawViewModel ve WEAPON:PostDrawViewModel'den önce çağrılır.

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