21.YILTürkiye'nin en eski ve aktif online oyun platformu, Ultima Online, Counter-Strike ve diğer online oyunlar hakkında Türkçe haber, bilgi ve forum sunuyor. Türkiye'nin en eski ve aktif online oyun platformu, Ultima Online, Counter-Strike ve diğer online oyunlar hakkında Türkçe haber, bilgi ve forum sunuyor.
  • ANASAYFA
  • ULTIMA ONLINE
  • FORUM
  • DOKÜMAN
  • İNDİR
   Üye ol    Giriş
972
48
  1. Anasayfa
  2. UO Scriptleri
  3. Sphere Scripts
  4. Events
  5. Bandaj sistemi
Mortal

Bandaj sistemi

  • Mortal
  • 2009-11-15 17:35
  • 0 Yorumlar
  • 4849 Görüntüleme
Güncellemeler kısmında kendi eklediğim özellikleri yazıyor onun dışında sıradan bir bandaj sistemi (ayarlar defnameli)


// Healing System v5.0
// Scripted by Fusion (a.k.a. Jdog)
// Güncelleyen Mortal

[comment Healing System v5.0]
güncellemeler :
- bandaj atılırken frozen olma eklendi
- dexe göre delay ayarlandı
- ikinci bandajda atmayı bekleme süreside dexe göre ayarlandı
- zehir tedavi için gerekli skill eklendi
- tedavi yapan/yapılan messageleri eklendi
- sysmessageler türkçeleştirildi

[defname def_bandage]
BloodyBandageAtFail 0 // Bloody bandages at failure or success?
EnableFail 0 // Enable/disable failing.
HealCriminal 1 // Healing criminals is a crime?
HealInterrupt 1 // Healing interruption.
MessageColor 1001 // Color of the sysmessages.
SkillCancel 1 // Cancel used skill(s) when bandage is applied?
TargMaxDistance 3 // Maximum distance from target.
UseFromGround 1 // Can bandages be used from the ground?
SecondBandageTimer 5 // ikinci bandajı atmayı beklemek için gerekli zaman
PoisonSkillAmount 700 // poiyi tedavi için gerekli skill ihtiyacı

[defname def_bandage_resurrect]
EnableResurrect 1 // Allow resurrection?
FirstSkillAmount 800 // First skill amount required for resurrection.
FirstSkillResurrect healing // First skill check for resurrection.
ResurrectConsume 2 // Amount of bandages consumed at resurrection.
ResurrectDelay 0 // Delay for resurrection.
SecondSkillAmount 1000 // Second skill amount required for resurrection.
SecondSkillResurrect anatomy // Second skill check for resurrection.

[typedef t_bandage]
on=@DClick
if (<src.tag0.heal>)
src.sysmessage @<def0.messagecolor>,,1 Bir süre beklemelisiniz.
return 1
endif
if (!<def0.UseFromGround>)
if (<topobj.uid> == <src.uid>)
src.sysmessage @<def0.MessageColor>,,1 Bandajları kullanabilmek için üzerinizde olmalı.
endif
else
target @<def0.MessageColor>,,1 Kimi tedavi etmek istiyorsunuz ?
endif
return 1

on=@Targon_Char
if (<src.targ.distance> <= <def0.TargMaxDistance>)
if (<src.targ.findid(i_rune_poison)>)
if (<src.<def.firstskillresurrect>> < <def0.poisonskillamount>)
src.sysmessage @<def0.messagecolor>,,1 Zehiri tedavi edebilicek kadar bilginiz yok.
return 1
endif
endif
if (<src.targ.flags> & statf_dead)
if (<def0.EnableResurrect>)
if (<src.<def0.FirstSkillResurrect>> >= <def0.FirstSkillAmount>)
if (<src.<def0.SecondSkillResurrect>> >= <def0.SecondSkillAmount>)
if (<src.rescount i_bandage> >= <def0.ResurrectConsume>)
src.consume <def0.ResurrectConsume> i_bandage
serv.newitem = i_memory_healer
new.cont = <src.uid>
new.link = <src.targ.uid>
new.more = 1
new.timer = <def0.ResurrectDelay>
//src.tag.heal 1
//timerf <eval <bandajsuresi> + <def0.Secondbandagetimer>>,src.tag.heal
if (!<new.timer>)
new.trigger = @Timer
endif
if (<def0.HealInterrupt>)
src.events +e_heal_interrupt
endif
endif
else
src.sysmessage @<def0.MessageColor>,,1 Yetenekleriniz bu işlem için yeterli değil.
endif
endif
endif
else
if (<src.targ.hits> < <src.targ.maxhits>)
if (<src.targ.uid> == <src.uid>)
src.sysmessage @<def0.MessageColor>,,1 Kendinize bandaj uyguluyorsunuz.
else
src.sysmessage @<def0.MessageColor>,,1 Seçtiğiniz canlıya bandaj uygulanıyor.
endif
if (<def0.SkillCancel>)
src.action = -1
endif
src.consume 1 i_bandage
src.sound = 058
serv.newitem = i_memory_healer
new.cont = <src.uid>
new.link = <src.targ.uid>
new.timer = <src.bandajsuresi>
SRC.FLAGS=<SRC.FLAGS>|020004
src.tag.heal 1
timerf <eval <bandajsuresi> + <def0.Secondbandagetimer>>,src.tag.heal
if (!<new.timer>)
new.trigger = @Timer
endif
if (<def0.HealInterrupt>)
src.events +e_heal_interrupt
endif
else
src.sysmessage @<def0.MessageColor>,,1 Seçtiğiniz canlı tedaviye gerek duymuyor.
endif
endif
else
src.sysmessage @<def0.MessageColor>,,1 Seçilen canlı sizden uzakta.
endif
return 1

on=@targon_item
return 0


[itemdef i_memory_healer]
id = i_memory
name = Healing Memory Object
weight = 0
type = t_eq_script

on=@Create
attr = attr_invis|attr_decay

on=@Timer
if (<distance <link>> <= <def0.TargMaxDistance>)
if (<cont.tag0.failrate> > 3)
cont.tag0.failrate = 0
else
f_fail_healing
endif
doswitch <more>
begin
if (!<qval <link.flags> & statf_dead ? 1:0>) // Workaround for logical NOT issue.
f_heal
endif
end
begin
if (<link.flags> & statf_dead)
link.resurrect
endif
end
enddo
if (<def0.HealCriminal>)
if (<link.kills> > <serv.murdermincount>) || (<link.flags> & statf_criminal)
cont.criminal = 1
endif
endif
f_gain_healing
else
cont.sysmessage @<def0.MessageColor> Seçilen canlı sizden uzakta.
endif
if (<def0.HealInterrupt>)
cont.events -e_heal_interrupt
endif
remove
return 1


[function f_heal]
if (<link.flags> & statf_poisoned)
if (<link.uid> == <cont.uid>)
link.findid(i_rune_poison).remove
link.message @<def.messagecolor>,,1 Zehiri tedavi eder
link.flags <link.flags>&~04
elif (<link.uid> == !<cont.uid>)
link.findid(i_rune_poison).remove
link.message @<def.messagecolor>,,1 <uid.<cont>.name> tarafından zehir tedavi edildi
link.flags <link.flags>&~04
endif
else
if (<link.uid> == <cont.uid>)
local.heal_val = <eval (<cont.healing> @ 2) / rand(20000,30000)>
link.hits += <local.heal_val>
link.message @<def.messagecolor>,,1 Kendini tedavi eder
link.flags <link.flags>&~04
elif (<link.uid> == !<cont.uid>)
local.heal_val = <eval (<cont.healing> @ 2) / rand(20000,30000)>
link.hits += <local.heal_val>
link.message @<def.messagecolor>,,1 <uid.<cont>.name> tarafından tedavi edilir
link.flags <link.flags>&~04
endif
endif
if (<link.hits> > <link.maxhits>)
link.hits = <link.maxhits>
endif


[function f_fail_healing]
if (<def0.EnableFail>)
local.failchance = <eval rand(1,1100)>
if (<local.failchance> > <cont.healing>)
doswitch <cont.findid(i_memory_healer).more>
cont.sysmessage @<def0.MessageColor>,,1 Bandajlarınız etkili olmadı. Tekrar deneyiniz.
enddo
cont.tag0.failrate += 1
cont.findid(i_memory_healer).remove
cont.flags <cont.flags>&~04
endif
endif


[function f_gain_healing]
if (<cont.healing> < 1000)
cont.tag0.gainchance += 70
if (<cont.tag0.gainchance> > <cont.healing>)
cont.healing += 0.1
cont.tag0.gainchance = 0
endif
endif


[events e_heal_interrupt]
on=@GetHit
if (<R1,4> > 2)
sysmessage @<def0.MessageColor>,,1 Bandaj uygularken elleriniz kaydı, yaranızı iyileştiremediniz.
findid(i_memory_healer).remove
events -e_heal_interrupt
message @089,,1 * Bandajlar yirtilir *
flags <flags>&~04
return 0
endif

[function bandajsuresi]
if (<src.dex> < 26)
local.zaman 7
elif (<src.dex> < 36)
local.zaman 6
elif (<src.dex> < 91)
local.zaman 5
elif (<src.dex> < 101)
local.zaman 4
endif
return <dlocal.zaman>


[eof]

Değerlendirmeler

0 0

Total votes: 0

Üye Ol veya Giriş Yap

Bu içeriğe yorum atmak istiyorsanız hemen üye olun veya giriş yapın.

Discord ile Bağlan
Twitch ile Bağlan
Steam ile Bağlan
Google ile Bağlan

Yorumlar (0)

Henüz yorum yapılmamış
Sadece kayıtlı kullanıcılar yeni yorum yapabilir.


Ultima-Strike Discord
Benzer Sayfalar
  • Pin Sistemi

    2008-10-24 22:28

  • Mf Ev Sistemi

    2008-08-05 12:33

  • Help Sistemi

    2008-10-24 22:29

  • Ban Sistemi

    2007-12-02 12:20

  • Pin Sistemi.

    2009-04-28 11:01



  • Son Forumlar
  • Sayfalar
  • Syntax
    UO:Nimloth Yeniden Doğuyor !

    Sunucular 1 gün önce

  • Tovertis
    WEST ULTİMA ONLİNE

    Sunucular 2 gün önce

  • J7
    RAMPAGE PVP

    Sunucular 3 gün önce

  • DarkSlayTR
    UORoots - Köklerine dön! Baştan sona Türkçe...

    Sunucular 3 gün önce

  • AnhElUs 333
    Eryndor UO

    Sunucular 3 gün önce

  • crazydodo
    Düzgün bir RP ya da PP yok mudur?

    Sunucular 4 gün önce

  • Syntax
    UOFiddler Arama Plugin

    Ultima Online 1 hafta önce

  • mastik750
    Üyeliği 20 yıl ve üstünde olanlar.

    Ultima Online 1 hafta önce

  • Mortal
    SphereNet: SphereServer Source-X'in Modern .NET 9...

    Ultima Online 1 hafta önce

  • stark_nephilim_uo
    Nephilim Pvp - Age Of Gold

    Sunucular 2 hafta önce

  • Nero Pvp
    NERO PVP 20/09/2026 PAZAR AKTİF OLACAKTIR.

    Sunucular 2 hafta önce

  • Rowall
    Volantis Ultima Online Hakkında

    Sunucular 2 hafta önce

  • MtHan
    Runuo daha iyi değil mi ya?

    Ultima Online 2 hafta önce

  • Morechild
    Moongate üzerinden geçince 1,1 konumuna atıyor.

    Sphere Scripting 3 hafta önce

  • Tayfun Dayioglu
    New Hope UO | Custom ML Era | Seviyeli Sınıf...

    Sunucular 2 ay önce

  • UOFiddler Arama Plugin

    2026-10-01 15:40

  • Ultima Online .mul Konu anim4.mul ile Binek ekleme

    2026-01-25 20:19

  • MMORPG'de Devrim Yaptı: Sınıf Tanımayan Ultima Online!

    2025-12-27 21:13

  • Ultima Online'ın Oynanışını Tamamen Değiştiren Harita Kararı!

    2025-12-23 23:17

  • Yeni Başlayanlar İçin Ultima Online

    2025-11-27 19:07

  • Skill seçimlerinizi planlamak artık çok daha kolay

    Ultima Online Karakter Yapılandırma Aracı Bölümü Açıldı!

    2024-10-31 22:47

  • Ultima Online topluluğu, ClassicUO'nun sadece web client olarak kullanılabileceğinin açıklanmasının ardından tepkili.

    Resmi UO, Oyuncuları İkiye Böldü: Web Client Yeterli mi?

    2024-10-14 17:45

  • Ultima Online, ClassicUO ile resmi işbirliği yapıyor! Performans iyileştirmeleri, geniş oyun penceresi ve daha fazlası geliyor.

    Ultima Online, ClassicUO ile Resmi İşbirliğine Gidiyor

    2024-09-26 14:21

Menü
  • ANASAYFA
  • FORUM
  • DOKÜMAN
  • İNDİR
  • İLETİŞİM
  • Bağlantılar
  • CS 1.6 indir
  • CS 1.6 Türkçe
  • CS 1.6 Bot
  • CS 1.6 CFG
  • CS 1.6 Rate Ayarları
  • UO Server
  • Ghost Mouse indir
  • FPS Nedir?
  • Ultima Online PVP Server
  • Makroman
  • UO Karakter Yapılandırma
    © 2004 - 2026 Ultima-Strike. Her hakkı saklıdır.