Hesabına erişemeyen eski üyeler Discord üzerinden yardım alabilir.



Merhabalar arkadaşlar sizlerden bir konuda yardım isteyeceğim.

Ben bir item'in örnek bir weapon(katana)'ın ele alındığında life steal özelliği kazandırmasını yani her vurduğu damage'in %10'unu kendi hit point sayısına eklemesini istiyorum bu nasıl yapılabilir.

Not: Rica ediyorum lütfen hazır yazıp vermeyin nasıl yapabiliceğim hakkında bilgilendirin şimdiden teşekkürler(Amaç Öğrenmek).

Dikkat: Str'sinin üzerine çıkmayacak mesela hp'si 100 ise ne kadar çalarsa çalsın eklenmeyecek böyle olması lazım nasıl yapabilirim.

Bu konu Marlock tarafından düzenlendi(2010-01-25 04:38, 14 yıl önce)

[events e_life_steal]
on=@hit
local.damage =<eval <argn1>/10>
hits +=<dlocal.damage>
if <hits> > <maxhits>
hits=<maxhits>
endif
say life steal

silaha bu eventi verirsin equip ve unequip de eventi ekler kaldırırsın. burada yaptımız şey @hit triggerında <argn1> değeri hasarın miktarını bildirir. bunun %10 unu hesaplayıp vuran kişi hits olarak ekledik ve en sonda hitsin strden fazla olmamasını kontrol ettik.
çok teşekkürler hemen deniyorum
Members
0.1
Yalnız argn1 değeri saf vuruş değeri öyle değil mi? Yani armor hesapları, koruyucu büyüler falan bunun dışında kalıyor.
Yani anlatmak istediğim bu armoru falan bilemem karşıya vurduğu damage 30 ise ben 3 hp kendisine eklenmesini istiyordum olay bu.
Members
0.1
@Marlock
Hmm anladım senin istediğinle tam örtüşüyor o zaman verilen script.

@Noxier
Elle yazılan kontrolle uğraşmadan armoru da hesaba katan argn benzeri bir şey var mı? Mesela vurduğum damage 30 ancak karşı tarafın aldığı 5 (armoru sebebiyle) damage.
Yalnız şöyle birşey var ee events çalışıyor fakat mesela c_man yaratıyorum 100 str-dex-int-hits-mana-stam veriyorum üstüne 30 armor veriyorum ben bu itemle bu adama tek attığım yetmezmiş gibi hp 60k oluyor. tüm skillerim 100 gm kapalı invul kapalı ama adama tek atıyorum ve 60k cana sahip oluyorum 100'ü geçiyor yani.
Not:55i kullanıyorum 56b'de denesem bir fark yaratır mı ?
Novice
11.9
Bu devirde hala 55i kullanılır mı yahu. Hemen geç bakıyım 56b ye
Güner abicim bilgisayarda onlar vardı :D dedim hiç indirmeyeyim emrin olur abim öpüyorum.
Novice
11.9
Sen msn mi değiştirdin, gözükmüyosun ?
56b geçtim ve evet abi değiştirdim p.m at eklerim yeniden :).
Adept
4.3
@GetHit Trigger'i üzerinden yaparsan verilen saf hasardan hesaplayabilirsin, daha mantikli olur. Telefondayim detaya giremeyecegim suan.
Hım bende buna benzer bişi yazmıştım bi bakıyım aklıma gelmedi şimdi. ( bu sırada uyusuna gece gece nerden geldi akLına :D )
Script'in son hali budur ve yardımları için Noxier ve Rowall'a sonsuz teşekkürler.
[itemdef i_steal_katana]
id i_katana
name Life Stealer Katana
type t_weapon_sword
dam 15,30

on=@create
color=1194
attr 04
HITPOINTS={30 80}

on=@click
message @1160 [Stealer Item]
message @1177 Life Stealer Katana
return 1

on=@equip
src.events +e_life_steal

on=@unequip
src.events -e_life_steal

[events e_life_steal]
on=@hit
local.damage =<eval <argn1>/5>
hits +=<dlocal.damage>
if <hits> > <maxhits>
hits=<maxhits>
sysmessage @1177,,1 Life steal ile <dlocal.damage> hitpoint kazandiniz.
endif
Tebrikler :)
Sende bu işe koyuldun demek.



Üye Ol veya Giriş Yap

Bu forum başlığına mesaj atmak istiyorsanız hemen üye olun veya giriş yapın.