// ----------------------------
// FIX.SCP - GENEL BUG FIXLERI
// SON GUNCELLENME TARIHI: 17:18 13.09.2004 / Arion
// ----------------------------
version=0.55
[function spell_say]
sayua 0482,0,0,1 <args>
[events e_death_announce]
On=@Death
if !(<isevent.e_qchar>)
if (<fame> > 9900) && (<memoryfindtype.memory_harmedby>) && (<act.ischar>) && (<act.uid> != <uid>) && (0<act.npc> == 0)
serv.allclients sysmessage @0481 <sex Lord/Lady> <name>, <act.name> tarafindan <region.name> civarlarinda olduruldu.
endif
endif
[events fix]
On=@Profile
if (<src.uid> == <uid>) || (0<src.account.plevel> > 2)
src.smg Kullanici Adi: <account>,
src.smg Online Sureniz: <eval (<account.totalconnecttime> / 60)>s
src.smg Kayit Tarihi: <account.firstconnectdate>
if (strmatch('<src.uid.04009a3fa.tag.<account>_vet>','01'))
src.sysmessage Veteran: odul verilmis.
endif
src.smg Karakter: <eval (<age> / 86400)> gun once dogmus.
endif
On=@GetHit
if (<findtype.t_eq_trade_window>)
findtype.t_eq_trade_window.remove
endif
On=@EnvironChange
if !(<memoryfindtype.memory_guild.link.align>) || (<kills> > 5)
if (<findlayer(2).baseid> == i_shield_chaos) || (<findlayer(2).baseid> == i_shield_order)
findlayer(2).unequip
endif
endif
if !((<findlayer(32)> || <findlayer(44)> || <findlayer(47)>)) // active stat-effecting spell?
stchk
if ((<findlayer(10).baseid> == i_platemail_gorget) && (<findlayer(6).baseid> == i_platemail_helm) && (<findlayer(7).baseid> == i_platemail_gloves) && (<findlayer(13).baseid> == i_platemail_chest) && (<findlayer(19).baseid> == i_platemail_arms) && (<findlayer(24).baseid> == i_platemail_leggings))
if (<dex> > 80)
dex 80
endif
elseif ((<findlayer(6).baseid> == i_bone_helmet) && (<findlayer(13).baseid> == i_bone_chest) && (<findlayer(19).baseid> == i_bone_arms) && (<findlayer(7).baseid> == i_bone_gloves) && (<findlayer(4).baseid> == i_bone_leggings))
if (<dex> > 85)
dex 85
endif
endif
if !((<isevent.e_str>) || (<isevent.e_dex>) || (<isevent.e_int>) || (<isevent.e_spr>))
var.stats <eval (<str> + <int> + <dex>)> // stat cap fix
if (<eval <var.stats>> > 225)
statcapdex
endif
endif
endif
On=@Death
if (<src.stam> < 1)
src.stam 5
endif
On=@SpellCast
if (<findlayer(1).type> == t_spellbook)
findlayer(2).unequip
elseif !(<findlayer(2).type> == t_weapon_mace_staff)
findlayer(1).unequip
findlayer(2).unequip
endif
if ((<flags>&statf_freeze) || (<flags>&statf_stone) || (<findtype.t_armor.cont.uid> == <uid>)) // dur bakim nolyo
f_fizzle
return 1
endif
//if (<kills> < 6) && (strmatch('<targ.region.name>','Calimport'))
// smg Calimport'da kotuluk hukum surer.
// go 5249 3918 28
// f_fizzle
// return 1
//endif
if (<act.ischar>)
if !(<act.flags>&statf_insubstantial) && (0<act.account.plevel> > 0<account.plevel>)
f_fizzle
return 1
elseif ((<argn> == 7) || (<argn> == 15)) // no prot. & reac. arm. over armor
if (<act.findtype.t_armor.cont.uid> == <act.uid>)
f_fizzle
return 1
endif
elseif (<argn> == 59) && !(<act.flags>&statf_dead)
f_fizzle
return 1
endif
endif
if (<act.id> == c_pv)
if !((<argn> == 25) || (<argn> == 26) || (<argn> == 46) || (<argn> == 48) || (<argn> == 49) || (<argn> == 54) || (<argn> == 55) || (<argn> == 57))
f_fizzle
return 1
endif
endif
// spell freeze time
if (<argn> == 1) // Clumsy
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Uus Jux
mg1
elseif (<argn> == 2) // Create food
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say In Mani Ylem
mg1
elseif (<argn> == 3) // Feeblemind
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Rel Wis
mg1
elseif (<argn> == 4) // Heal
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say In Mani
sd 1,5
mg1
elseif (<argn> == 5) // Magic Arrow
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say In Por Ylem
mg1
elseif (<argn> == 6) // Night Sight
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say In Lor
mg1
elseif (<argn> == 7) // Reactive Armor
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
elseif !(<src.uid> == <act.uid>)
f_fizzle
src.sms Bu buyuyu baskasina atamazsiniz.
// elseif !(<act.id> = c_woman) || (<act.id> = c_man)
// src.sysmessage Yaratiklara Atamazsiniz!
return 1
endif
spell_say Flam Sanct
sd 1,5
mg1
elseif (<argn> == 8) // Weaken
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Des Mani
mg1
elseif (<argn> == 9) // Agility
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Ex Uus
mg2
elseif (<argn> == 10) // Cunning
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Uus Wis
mg2
elseif (<argn> == 11) // Cure
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say An Nox
sd 1
if (<act.findid.i_rune_poison>)
if (<act.findid.i_rune_poison.morey> > <eval ((<magery> + 400) / 2)>)
if !(rand(8) == 1)
act.effect 3,0374a,1,15,1
act.sound snd_spell_poison
f_fizzle
return 1
endif
endif
endif
mg2
elseif (<argn> == 12) // Harm
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say An Mani
sd 1
mg2
elseif (<argn> == 13) // Trap
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say In Jux
f_fizzle
return 1
elseif (<argn> == 14) // Untrap
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say An Jux
f_fizzle
return 1
elseif (<argn> == 15) // Protection
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
elseif !(<src.uid> == <act.uid>)
f_fizzle
src.sms Bu buyuyu baskasina atamazsiniz.
// elseif !(<act.id> = c_woman) || (<act.id> = c_man)
// src.sysmessage Yaratiklara Atamazsiniz!
return 1
endif
spell_say Uus Sanct
sd 1
mg2
elseif (<argn> == 16) // Strength
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Uus Mani
sd 1
mg2
elseif (<argn> == 17) // Bless
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
elseif !(<src.uid> == <act.uid>)
f_fizzle
src.sms Bu buyuyu baskasina atamazsiniz.
// elseif !(<act.id> = C_woman) || (<act.id> = c_man)
// src.sysmessage Yaratiklara Atamazsiniz!
return 1
endif
spell_say Rel Sanct
sd 1
mg3
elseif (<argn> == 18) // Fireball
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Vas Flam
sd 1
mg3
elseif (<argn> == 19) // Lock
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say An Por
f_fizzle
return 1
elseif (<argn> == 20) // Poison
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
if (<act.hits> == 0)
f_fizzle
return 1
endif
spell_say In Nox
psg
sd 1
elseif (<argn> == 21) // Telekinesis
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Ort Por Ylem
sd 1
if (<act.isitem>)
if (<act.cont.isitem>)
if ((<act.cont.type> == t_corpse) || (<act.topobj.id> == c_pv))
f_fizzle
return 1
endif
endif
else
f_fizzle
return 1
endif
mg3
elseif (<argn> == 22) // Teleport
if (<src.findid.i_buger>)
return 1
endif
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
if (<hits> <= (<str> - 40))
SRC.SYSMESSAGE Fazla yaraliyken teleport olmazsiniz.
f_fizzle
return 1
endif
spell_say Rel Por
mg3
elseif (<argn> == 23) // Unlock
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Ex Por
f_fizzle
return 1
elseif (<argn> == 24) // Wall
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say In Sanct Ylem
if (<act.topobj.ischar>)
f_fizzle
return 1
endif
sd 1
mg3
elseif (<argn> == 25) // Arch Cure
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Vas An Nox
sd 2
mg4
elseif (<argn> == 26) // Arch Protection
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Vas Uus Sanct
sd 2
mg4
elseif (<argn> == 27) // Curse
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Des Sanct
sd 2
mg4
elseif (<argn> == 28) // Fire Field
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say In Flam Grav
if (<act.topobj.ischar>)
f_fizzle
return 1
endif
sd 2
mg4
elseif (<argn> == 29) // Greater Heal
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say In Vas Mani
sd 2
mg4
elseif (<argn> == 30) // Lightning
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Por Ort Grav
sd 2
mg4
elseif (<argn> == 31) // Mana Drain
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Ort Rel
f_fizzle
return 1
elseif (<argn> == 32) // Recall
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Kal Ort Por
sd 2
mg4
elseif (<argn> == 33) // Blade Spirits
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say In Jux Hur Ylem
sd 2
mg5
elseif (<argn> == 34) // Dispel Field
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say An Grav
if (<act.ischar>)
f_fizzle
return 1
endif
sd 2
mg5
elseif (<argn> == 35) // Incognito
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Kal In Ex
sd 2
mg5
elseif (<argn> == 36) // Magic Reflect
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
elseif !(<src.uid> == <act.uid>)
f_fizzle
src.sms Bu buyuyu baskasina atamazsiniz.
// elseif !(<act.id> = c_woman) || (<act.id> = C_man)
// src.sysmessage Yaratiklara Atamazsiniz!
return 1
endif
spell_say In Jux Sanct
sd 2
mg5
elseif (<argn> == 37) // Mind Blast
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Por Corp Wis
sd 2
mg5
elseif (<argn> == 38) // Paralyze
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say An Ex Por
sd 2
mg5
elseif (<argn> == 39) // Poison Field
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say In Nox Grav
if (<act.topobj.ischar>)
f_fizzle
return 1
endif
sd 2
mg5
elseif (<argn> == 40) // Summon Creature
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Kal Xen
sd 2
mg5
elseif (<argn> == 41) // Dispel
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say An Ort
sd 2
mg6
elseif (<argn> == 42) // Energy Bolt
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Corp Por
sd 2
mg6
elseif (<argn> == 43) // Explosion
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Vas Ort Flam
sd 2
mg6
elseif (<argn> == 44) // Invisibility
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
elseif (<src.findid.i_gater>)
src.smg Gate kapanana kadar beklemelisiniz.
return 1
endif
spell_say An Lor Xen
sd 2
mg6
elseif (<argn> == 45) // Mark
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Kal Por Ylem
sd 2
mg6
elseif (<argn> == 46) // Mass Curse
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Vas Des Sanct
sd 2
mg6
elseif (<argn> == 47) // Paralyze Field
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say In Ex Grav
if (<act.topobj.ischar>)
f_fizzle
return 1
endif
sd 3
mg6
elseif (<argn> == 48) // Reveal
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Wis Quas
sd 2
mg6
elseif (<argn> == 49) // Chain Lightning
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Vas Ort Grav
if (<act.uid> == <uid>)
f_fizzle
return 1
endif
sd 3
mg7
elseif (<argn> == 50) // Energy Field
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say In Sanct Grav
if (<act.topobj.ischar>)
f_fizzle
return 1
endif
sd 3
mg7
elseif (<argn> == 51) // Flame strike
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Kal Vas Flam
sd 3
mg7
elseif (<argn> == 52) // Gate Travel
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Vas Rel Por
sd 3
mg7
elseif (<argn> == 53) // Mana Vampire
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Ort Sanct
f_fizzle
return 1
elseif (<argn> == 54) // Mass Dispel
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Vas An Ort
sd 3
mg7
elseif (<argn> == 55) // Meteor Swarm
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Flam Kal Des Ylem
if (<act.uid> == <uid>)
f_fizzle
return 1
endif
sd 3
mg7
elseif (<argn> == 56) // Polymorph
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
// spell_say Vas Ylem Rel
skillmenu sm_polymorph
elseif (<argn> == 57) // Earthquake
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say In Vas Por
sd 3
mg8
elseif (<argn> == 58) // Energy Vortex
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Vas Corp Por
sd 3
mg8
elseif (<argn> == 59) // Resurrect
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say An Corp
psg
sd 3
mg8
elseif (<argn> == 60) // Air Elemental
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Kal Vas Xen Hur
sd 3
mg8
elseif (<argn> == 61) // Summon Deamon
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Kal Vas Xen Corp
sd 3
mg8
elseif (<argn> == 62) // Earth Elemental
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Kal Vas Xen Ylem
sd 3
mg8
elseif (<argn> == 63) // Fire Elemental
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Kal Vas Xen Flam
sd 3
mg8
elseif (<argn> == 64) // Water Elemental
if (<src.findid.i_mem_spellheal>)
src.sysmessage Bandaj yaparken buyu atamazsiniz.
return 1
endif
spell_say Kal Vas Xen An Flam
sd 3
mg8
endif
On=@SpellEffect
if (<flags>&statf_dead) // oluye dokunulmaz, ayiptir
if (<argn> == 59)
sfx snd_spell_resurrection
//findlayer(22).remove
color <oskin>
update
effect 3,0376a,2,20,1
else
return 1
endif
elseif ((<argn> == 9) || (<argn> == 10) || (<argn> == 16) || (<argn> == 17)) // stat fix
findlayer(32).remove // spell
findlayer(44).remove // potion
elseif ((<argn> == 49) || (<argn> == 55)) // eve disardan chain atsalar bile icerdeki yemez
if !(<src.region.type> == <region.type>)
return 1
endif
elseif (<argn> == 37) // mindblast
if (<src.int> > <int>)
var.mb (<src.int> - <int>)
var.mb <eval (<var.mb> / 2)>
if (<eval <var.mb>> > 40)
var.mb 40
endif
damage <eval (<var.mb> + {-5 5)>
else
damage {5 10}
endif
sfx snd_spell_mind_blast
effect 3,0374a,1,15,1
elseif ((<argn> == 41) || (<argn> == 54)) // dispel & mass dispel
if (<findid.i_morpher>)
if !(<findid.i_pre_morph>)
findid.i_morpher.remove
endif
endif
elseif ((<argn> == 20) || (<argn> == 39)) // poison, poison field
if !(<findid.i_rune_poison>) && (<flags>&statf_poisoned)
flags <flags>&~statf_poisoned
endif
if !(<src.uid> == <uid>)
skill fail
endif
if (<eval (<src.poisoning> + 100)> > <eval <findid.i_rune_poison.morey>>)
findid.i_rune_paralyze.remove
findid.i_rune_paralyze_field.remove
findid.i_rune_poison.remove
if (<distance> > 3) && (<eval (<src.poisoning> + 100)> > 700)
poison (600 + {-100 100})
else
poison (<src.poisoning> + {-100 100})
endif
endif
sfx snd_spell_poison
effect 3,0374a,1,15,1
return 1
elseif ((<argn> == 38) || (<argn> == 47)) // paralyze & paralyze field
if (<findid.i_pouch_trapped>)
effect 3,i_fx_explode,3,25,1
sound snd_spell_explosion
damage 20
findid.i_pouch_trapped.remove
return 1
elseif !(<src.uid> == <uid>)
findid.i_rune_poison.remove
endif
elseif (<argn> == 26) // no arch prot. over armor
if (<findtype.t_armor.cont.uid> == <uid>)
return 1
endif
elseif (<argn> == 25) // arch cure
if (<memoryfindtype.memory_town>) && !(<src.memoryfindtype.memory_town>)
return 1
elseif (<memoryfindtype.memory_guild.link.align> > 0) && !(<src.memoryfindtype.memory_guild.link.align>)
return 1
endif
if (<findid.i_rune_poison>)
if (<findid.i_rune_poison.morey> > <eval ((<src.magery> + 400) / 2)>)
if !(rand(8) == 1)
effect 3,0374a,1,15,1
sound snd_spell_poison
return 1
endif
endif
endif
elseif (<argn> == 4) || (<argn> == 29) || (<argn> == 11)
if (<memoryfindtype.memory_town>) && !(<src.memoryfindtype.memory_town>)
src.sms Faction uyelerini iyilestiremezsiniz.
return 1
elseif (<memoryfindtype.memory_guild.link.align> > 0) && !(<src.memoryfindtype.memory_guild.link.align>)
src.sms Order/Chaos uyelerini iyilestiremezsiniz.
return 1
endif
if (<argn> == 4) || (<argn> == 29)
if (<findid.i_rune_poison>)
effect 3,0374a,1,15,1
sound snd_spell_poison
return 1
endif
endif
endif
if (<action> == id(skill_stealth)) || (<action> == skill_stealth)
if (<hiding> < 80.0)
smg Stealth yapabilmek icin 80 hiding skilline ihtiyaciniz var.
skill fail
return 1
// elseif (<eval (<ac> * 100)> > <eval (<stealth> + 200)>)
// sms Zirhinizin verdigi agirlik gizlenmenizi engelliyor
// skill fail
// return 1
// elseif (<flags>&statf_onhorse)
// sms Binek uzerinde gizlenemezsiniz.
// skill fail
// return 1
endif
//elseif (<action> == id(skill_hiding)) || (<action> == skill_hiding)
// if (<eval (<ac> * 100)> > <eval (<hiding> + 200)>)
// sms Zirhinizin verdigi agirlik gizlenmenizi engelliyor
// skill fail
// return 1
// elseif (<flags>&statf_onhorse)
// sms Binek uzerinde gizlenemezsiniz.
// skill fail
// return 1
// endif
elseif ((<action> == id(skill_herding)) || (<action> == skill_herding))
if (<targ.id> == c_pv)
skill fail
return 1
endif
elseif ((<action> == id(skill_stealing)) || (<action> == skill_stealing)) // stealing fiks
if ((<targ.topobj.id> == c_pv) || (<act.id> == c_man) || (<act.id> == c_m_kraken) || (<act.id> == c_ogre) || (<act.id> == c_ettin) || (<act.id> == c_zombie) || (<act.id> == c_gargoyle) || (<act.id> == c_eagle) || (<act.id> == c_orc_lord) || (<act.id> == c_corpser) || (<act.id> == c_daemon) || (<act.id> == c_daemon_w_sword) || (<act.id> == c_dragon_green) || (<act.id> == c_elem_air) || (<act.id> == c_elem_earth) || (<act.id> == c_elem_fire) || (<act.id> == c_elem_water) || (<act.id> == c_orc) || (<act.id> == c_ettin_w_axe) || (<act.id> == c_snake_giant) || (<act.id> == c_gazer) || (<act.id> == c_liche) || (<act.id> == c_spectre) || (<act.id> == c_spider_giant) || (<act.id> == c_harpy) || (<act.id> == c_headless) || (<act.id> == c_lizardman) || (<act.id> == c_lizardman_spear) || (<act.id> == c_lizardman_mace) || (<act.id> == c_mongbat) || (<act.id> == c_orc_w_club) || (<act.id> == c_ratman) || (<act.id> == c_ratman_w_mace) || (<act.id> == c_ratman_w_sword))
skill fail
return 1
elseif !(<targ.topobj.ischar>)
sms Sadece canli varliklardan calabilirsiniz.
skill fail
return 1
elseif (<targ.isitem>)
if (<targ.cont>)
if (<targ.cont.type> == t_eq_trade_window)
skill fail
return 1
endif
endif
endif
endif
if (strmatch('<tag.ms>','<action>'))
tag.mn <eval (<tag.mn> + 1)>
elseif ((strmatch('<tag.ms>','Skill_Magery')) && (strmatch('Skill_Meditation','<action>')))
tag.mn <eval (<tag.mn> + 1)>
elseif ((strmatch('<tag.ms>','Skill_Meditation')) && (strmatch('Skill_Magery','<action>')))
tag.mn <eval (<tag.mn> + 1)>
else
tag.mn 0
endif
if (<eval <tag.mn>> > 2500) // bu sayi ile oynamayin, sicar.
var.act <act>
newitem i_macro_detect
tag.mt <act.uid>
act.link <uid>
act.name <act.link.name> [<serv.time>]
act.more1 <serv.time>
if (strmatch('<serv.name>','Locus'))
act.cont 04018c20d
try var.mts <uid.04018c20d.rescount>
elseif (strmatch('<serv.name>','Quann'))
act.cont 040132e0c
try var.mts <uid.040132e0c.rescount>
endif
var.smsgx 0251
serv.allclients macrodetect <eval <var.mts>>: <name>
act <var.act>
tag.mn 0
else
tag.ms <action>
endif
On=@Click
if !(<isevent.e_faction>) && !(<findid.i_rune_incognito>) && (<memoryfindtype.memory_guild>)
if (strmatch('<tag.gs_title>',''))
message [<memoryfindtype.memory_guild.link.name>]
else
message [<tag.gs_title>, <memoryfindtype.memory_guild.link.abbrev>]
endif
endif
On=@ItemSpell
if !((<argn> == 2) || (<argn> == 13) || (<argn> == 14) || (<argn> == 19)|| (<argn> == 21) || (<argn> == 23) || (<argn> == 24) || (<argn> == 28) || (<argn> == 32) || (<argn> == 34) || (<argn> == 39) || (<argn> == 45) || (<argn> == 46) || (<argn> == 47) || (<argn> == 48) || (<argn> == 50) || (<argn> == 54) || (<argn> == 55) || (<argn> == 57)) // no enchant
f_fizzle
return 1
endif
On=@ItemEquip
if (<act.type> == t_weapon_axe)
events +e_axer
endif
if (<act.attr>&attr_magic) && !(<act.type> == t_armor) && !(<act.type> == t_shield) && !(<act.type> == t_armor_leather)
if (<act.color> == 02bc) || (<act.color> == 0373) || (<act.color> == 070d) || (<act.color> == 075f) || (<act.color> == 0454)
act.color 0
act.name
endif
endif
On=@ItemUnEquip
if (<act.type> == t_weapon_axe)
events -e_axer
endif
On=@ItemDClick
if (<targ.topobj.id> == c_pv)
if (<targ.type> == t_container)
targ.open
endif
return 1
endif
if ((<src.act.topobj.uid> == <src.uid>) && (<src.act.attr> == 04018))
src.act.attr == 00
src.serv.writefile logs/playerlog/<src.account>.txt <serv.rtime> <src.name>, cantamda ev bugi kullanarak newbified item vardi, ona tiklayarak normale dondurdum, ama ben okuz oldugum icin cezami istiyorum. Item id: <src.act.uid>
(Dclick)
endif
On=@ItemClick
if (strmatch('t_eq_trade_window'))
act.message [secure]
endif
if ((<src.act.topobj.uid> == <src.uid>) && (<src.act.attr> == 04018))
src.act.attr == 00
src.serv.writefile logs/playerlog/<src.account>.txt <serv.rtime> <src.name>, cantamda ev bugi kullanarak newbified item vardi, ona tiklayarak normale dondurdum, ama ben okuz oldugum icin cezami istiyorum. Item id: <src.act.uid>
(Click)
endif
if (<act.topobj.id> == c_pv)
if (strmatch('<act.price>',''))
act.message [satilamaz]
elseif (<act.price> <= 0)
act.message [satilik degil]
else
if ((<act.type> == t_armor) || (<act.type> == t_armor_leather) || (<act.type> == t_shield) || (<act.type> == t_clothing) || (<act.type> == t_weapon_sword) || (<act.type> == t_weapon_fence) || (<act.type> == t_weapon_mace_staff) || (<act.type> == t_weapon_mace_smith) || (<act.type> == t_weapon_mace_pick) || (<act.type> == t_weapon_bow) || (<act.type> == t_weapon_xbow))
if !(<eval ((<act.more1l> * 100) / <act.more1h>)> == 100)
act.message [<act.price> gp] [%<eval (100 - ((<act.more1l> * 100) / <act.more1h>))> eski]
else
act.message [<act.price> gp]
endif
else
act.message [<act.price> gp]
endif
endif
endif
if (<act.layer> == 21) && (<act.cont.ischar>)
act.message Inventory
return 1
else
if (<act.attr>&attr_newbie) // blessed itemlari belirt
act.message [newbified]
endif
if (<act.type> == t_container)
if !(<act.baseid> == i_strong_box)
if (<act.attr>&attr_move_never) && !(strmatch('<act.region.tag.owner>,'')) && (<act.region.type> == <region.type>)
act.message [sabit]
endif
if (<act.baseid> == i_bones)
act.message [loot: <act.rescount> esya]
act.message <act.name>
elseif (<act.rescount> > 0)
act.message <act.typedef.name> [<act.rescount>,<eval ((<act.weight> / 10) - <act.typedef.weight>)>]
else
act.message <act.typedef.name>
endif
return 1
endif
endif
endif
if ((<act.topobj.uid> == <uid>))
if (<act.type> == t_weapon_xbow)
act.message [bolts: <eval <rescount <act.tdata3>>>]
elseif (<act.type> == t_weapon_bow)
act.message [arrows: <eval <rescount <act.tdata3>>>]
endif
endif
On=@ItemPickUp_Pack
if (<act.topobj.id> == c_pv)
if !(<uid> == <act.topobj.tag.owner>)
return 1
endif
elseif !(strmatch('<act.price>',''))
if (<act.price> > 0)
act.price 0
endif
endif
On=@ItemTargOn_Item
if ((<targ.topobj.id> == c_pv) && (<act.cont.uid> != <targ.topobj.uid>))
return 1
//elseif (<targ.baseid> == i_corpse) // human cesetleri bicememe
// if ((<targ.amount> == 400) || (<targ.amount> == 401))
// return 1
// endif
endif
On=@ItemDropOn_Ground
if (<act.attr> == 04008)
act.attr 0
endif
if !((<weight> + <act.weight>) > <weightmax>)
if ((<action> == id(skill_fishing)) || (<action> == skill_fishing))
if (<act.type> == t_fish) // tutulan baliklari
act.bounce // at cantaya
endif
elseif ((<action> == id(skill_magery)) || (<action> == skill_magery))
if (<act.type> == t_food) || (<act.type> == t_fruit) // yapilan yemekleri
act.bounce // at cantaya
endif
endif
endif
// end of main fixes
ON=@logout
if (<action>==skill_magery)
f_fizzle
endif
ON=@UserExtCmd
if (<eval(<argn1>)>==0ff)
if (strmatch("<argv[0]>","-136810870")) //(<eval(<argv[0]>)>==<Eval(-1722137869)>)
//SRC.SAYU DOGRULANDI
if !<findid.i_accountlang.isitem>
//serv.allclients smsj * WildGenie * Denemedir
endif
dialogclose d_connect
dialogclose d_connect
DIALOG d_connectok
consume 99 i_accountlang
return 0
else
//say <argv[0]>
//dialogclose d_connect
return 0
endif
else
endif
//
[events e_qchar]
On=@Death
hits 5
fame 10000
return 1
On=@GetHit
hits (<hits> + 15)
if (<hits> > <str>)
hits <str>
endif
On=@EnvironChange
if (<npc>)
food 999
endif
[events e_fix_anim]
ON=@SpellCast
src.events +e_fix_anim
If (<argn>=s_resurrection)
If (<argn>=s_bless)
If (<argn>=s_protection)
If (<argn>=s_reactive_armor)
If (<argn>=s_magic_reflection)
If (<src.act.npc>=brain_animal)
src.sysmessage Bu büyüyü hayvanlar üzerinde kullanamazsiniz.
endif
endif
endif
endif
endif
endif
[events e_cikis]
On=@spellcast
skill fail
src.f_fizzle
on=@logout
src.findid.i_logouter.remove
serv.newitem i_logouter
new.equip
return 1
[itemdef i_logouter]
name=Logouter
id=i_gold
type=t_eq_script
weight=0
layer=layer_special
On=@Equip
src.events +e_cikis
timer 3
return 1
On=@UnEquip
cont.events -e_cikis
return 1
On=@Timer
timer 3
attr attr_decay
remove
memorydel
return 1
[function memorydel] // memory silen loop
if (0<args>)
if (<findid.i_memory.link> == <args>)
findid.i_memory.remove
memorydel <args>
endif
endif
[PLEVEL 4]
[FUNCTION oldur]
src.xhits 0
[EOF]
[function spell_say]
if ((<src.magery> > 98.0) && (<src.meditation> > 98.0) && (<src.anatomy> > 98.0) && (<src.evaluatingintel> > 98.0))
src.diemasterca <args>
return 1
else
sayua 1153,6,6,eng, <args>
endif
[events e_death_announce]
On=@Death
if !(<isevent.e_qchar>)
if (<fame> > 9050) && (<memoryfindtype.memory_harmedby>) && (<act.ischar>) && (<act.uid> != <uid>) && (0<act.npc> == 0)
SERV.ALLCLIENTS sysmessage @0481 <sex Lord/Lady> <name>, <act.name> tarafindan <region.name> civarlarinda olduruldu.
endif
endif
src.findid.i_rune_poison.remove
[events fix]
On=@Attack
//if (<memoryfindtype.memory_guild.link.more1> == 1) && (<src.memoryfindtype.memory_guild.link.more1> == 1) && //!(<src.isevent.e_dm>)
//sysmessage @54,,1 Yandaslariniza zarar veremezsiniz.
//return 1
//elseif (<memoryfindtype.memory_guild.link.more1> == 2) && (<src.memoryfindtype.memory_guild.link.more1> == 2) //&& !(<src.isevent.e_dm>)
//sysmessage @54,,1 Yandaslariniza zarar veremezsiniz.
//return 1
//endif
If (<src.id> == c_pv)
sysmessage @54 Player vendorlarina zarar veremezsiniz.
return 1
endif
if (<src.region.safe> == 1)
return 1
endif
if (<src.region.magic> == 0)
return 1
endif
On=@HitTry
if (<memoryfindtype.memory_guild.link.more1> == 1) && (<act.memoryfindtype.memory_guild.link.more1> == 1) && !(<src.isevent.e_dm>)
Src.Action = -1
Src.Flags = <SRC.FLAGS> & ~statf_war
Return 1
elseif (<memoryfindtype.memory_guild.link.more1> == 2) && (<act.memoryfindtype.memory_guild.link.more1> == 2) && !(<src.isevent.e_dm>)
Src.Action = -1
Src.Flags = <SRC.FLAGS> & ~statf_war
Return 1
endif
If (<src.npc> == brain_vendor) || (<src.npc> == brain_guard) || (<src.npc> == brain_banker) || (<src.npc> == brain_animal_trainer) || (<src.npc> == brain_healer)
Src.Action = -1
Src.Flags = <SRC.FLAGS> & ~statf_war
Return 1
Elseif (<Src.Uid> == <Uid>)
Src.Action = -1
Src.Flags = <SRC.FLAGS> & ~statf_war
Return 1
Elseif (<Src.Flags>&(statf_stone|statf_invul|statf_hidden|statf_invisible))
Src.Action = -1
Src.Flags = <SRC.FLAGS> & ~statf_war
Return 1
Endif
On=@Logout
src.action -1
return 1
On=@Profile
if (<src.uid> == <uid>) || (0<src.account.plevel> > 2)
src.sysmessage @54 Kullanici Adi: <account>,
src.sysmessage @54 Online Sureniz: <eval (<account.totalconnecttime> / 60)>s
src.sysmessage @54 Kayit Tarihi: <account.firstconnectdate>
if (strmatch('<src.uid.04009a3fa.tag.<account>_vet>','01'))
src.sysmessage Veteran: odul verilmis.
endif
src.sysmessage @54 Karakter: <eval (<age> / 86400)> gun once dogmus.
endif
On=@GetHit
if (<findtype.t_eq_trade_window>)
findtype.t_eq_trade_window.remove
endif
On=@EnvironChange
If !((<Findlayer(32)> || <Findlayer(44)> || <Findlayer(47)>))
statcheckk
If !((<isevent.e_stat_str>) || (<isevent.e_stat_dex>) || (<isevent.e_stat_int>) || (<isevent.e_stat_sys>))
Var.Stats <eval (<str> + <int> + <dex>)>
If (<eval <var.stats>> > 225)
statcheck_dex
Endif
Endif
On=@SpellCast
//If (<memoryfindtype.memory_guild.link.more1> == 1) && (<act.memoryfindtype.memory_guild.link.more1> == 1) && ////!(<src.isevent.e_dm>)
//If (<argn> == 1) || (<argn> == 3) || (<argn> == 5) || (<argn> == 8) || (<argn> == 12) || (<argn> == 18) || //(<argn> == 20) || (<argn> == 27) || (<argn> == 30) || (<argn> == 31) || (<argn> == 37) || (<argn> == 38) || //(<argn> == 42) || (<argn> == 43) || (<argn> == 51) || (<argn> == 53) || (<argn> == 55)
//sysmessage @54 Yandaslariniza zarar veremezsiniz.
//action -1
//return 1
//endif
//elseif (<memoryfindtype.memory_guild.link.more1> == 2) && (<act.memoryfindtype.memory_guild.link.more1> == 2) //&& !(<src.isevent.e_dm>)
//If (<argn> == 1) || (<argn> == 3) || (<argn> == 5) || (<argn> == 8) || (<argn> == 12) || (<argn> == 18) || //(<argn> == 20) || (<argn> == 27) || (<argn> == 30) || (<argn> == 31) || (<argn> == 37) || (<argn> == 38) || //(<argn> == 42) || (<argn> == 43) || (<argn> == 51) || (<argn> == 53) || (<argn> == 55)
//sysmessage @54 Yandaslariniza zarar veremezsiniz.
//action -1
//return 1
//endif
//endif
IF (<eval <SRC.REGION.FLAGS>> & 04000) ///////////Sehirde Summon buyulerini yapamama
IF (<SRC.ISGM>)
RETURN 0
ELSEIF (<ARGN>==33) || (<ARGN>==40) || (<ARGN>==58) || (<ARGN>==60) || (<ARGN>==61) || (<ARGN>==62) || (<ARGN>==62) || (<ARGN>==63) || (<ARGN>==64) || (<ARGN>==65) || (<ARGN>==66)
SRC.ACTION -1
SRC.sysmessage @54 Bu alanda summon buyulerini kullanamazsiniz.
RETURN 1
ENDIF
ENDIF
IF ( <SRC.FLAGS> & statf_freeze )
SRC.sysmessage @54 Su anda bunu yapamazsiniz.
src.f_fizzle
RETURN 1
ENDIF
IF (<eval <SRC.REGION.FLAGS>> & 04000) ///////////Sehirde Field buyusu atamama
IF (<SRC.ISGM>)
RETURN 0
ELSEIF (<ARGN>==24) || (<ARGN>==28) || (<ARGN>==39) || (<ARGN>==47) || (<ARGN>==50)
SRC.ACTION -1
SRC.sysmessage @54 Bu alanda field veya wall buyulerini kullanamazsiniz.
RETURN 1
ENDIF
ENDIF
if (<findlayer(1).type> == t_spellbook)
findlayer(2).unequip
elseif !(<findlayer(2).type> == t_weapon_mace_staff)
findlayer(1).unequip
findlayer(2).unequip
endif
if ((<flags>&statf_freeze) || (<flags>&statf_stone) || (<findtype.t_armor.cont.uid> == <uid>)) // dur bakim nolyo
f_fizzle
return 1
endif
if (<act.id> == c_pv)
if !((<argn> == 25) || (<argn> == 26) || (<argn> == 46) || (<argn> == 48) || (<argn> == 49) || (<argn> == 54) || (<argn> == 55) || (<argn> == 57))
f_fizzle
return 1
endif
endif
// spell freeze time
if (<argn> == 1) // Clumsy
spell_say Uus Jux
mg1
elseif (<argn> == 2)
spell_say In Mani Ylem // Create food
foodverici
mg1
elseif (<argn> == 3) // Feeblemind
spell_say Rel Wis
mg1
elseif (<argn> == 4) // Heal
spell_say In Mani
sd 1
if (<src.findid.i_bleeding> || (<src.findid.i_bleeding2>)
sysmessage @066d,,1 Yaranızı iyileştirmelisiniz.
f_fizzle
return 1
return 1
endif
mg2
elseif (<argn> == 5) // Magic Arrow
spell_say In Por Ylem
mg1
elseif (<argn> == 6) // Night Sight
spell_say In Lor
mg1
elseif (<argn> == 7) // Reactive Armor
if (<act.serial>==<targ.serial>)
spell_say Flam Sanct
sd 1
mg1
else
skill fail
sysmessage @066d,,1 Bu büyüyü sadece kendinizde kullanabilirsiniz.
return 1
endif
elseif (<argn> == 8) // Weaken
spell_say Des Mani
mg1
elseif (<argn> == 9) // Agility
spell_say Ex Uus
mg2
elseif (<argn> == 10) // Cunning
spell_say Uus Wis
mg2
elseif (<argn> == 11) // Cure
spell_say An Nox
sd 1
if (<act.findid.i_rune_poison>)
if (<act.findid.i_rune_poison.morey> > <eval ((<magery> + 400) / 2)>)
if !(rand(8) == 1)
act.effect 3,0374a,1,15,1
act.sound snd_spell_poison
f_fizzle
return 1
endif
endif
endif
mg2
elseif (<argn> == 12) // Harm
spell_say An Mani
sd 1
mg2
elseif (<argn> == 13) // Trap
spell_say In Jux
f_fizzle
return 1
elseif (<argn> == 14) // Untrap
spell_say An Jux
f_fizzle
return 1
elseif (<argn> == 15) // Protection
if (<act.serial>==<targ.serial>)
spell_say Uus Sanct
sd 1
mg2
else
skill fail
sysmessage @066d,,1 Bu büyüyü sadece kendinizde kullanabilirsiniz.
return 1
endif
elseif (<argn> == 16) // Strength
spell_say Uus Mani
sd 1
mg2
elseif (<argn> == 17) // Bless
if (<act.serial>==<targ.serial>)
spell_say Rel Sanct
sd 1
mg3
else
skill fail
sysmessage @066d,,1 Bu büyüyü sadece kendinizde kullanabilirsiniz.
return 1
endif
elseif (<argn> == 18)
IF (<SRC.ACT.ISCHAR>)
IF !(<src.ACT.ISEVENT.e_evabonus>)
src.ACT.EVENTS +e_evabonus
endif
endif // Fireball
spell_say Vas Flam
sd 1
mg3
elseif (<argn> == 19) // Lock
spell_say An Por
f_fizzle
return 1
elseif (<argn> == 20) // Poison
if !(<act.serial>==<targ.serial>)
spell_say In Nox
psg
sd 1
else
skill fail
sysmessage @066d,,1 Bu büyüyü kendinize atamazsınız.
return 1
endif
elseif (<argn> == 21) // Telekinesis
spell_say Ort Por Ylem
src.sysmessage @066d,,1 Bu büyünün kullanımı kapatılmıştır.
f_fizzle
return 1
elseif (<argn> == 22) // Teleport
spell_say Rel Por
if (<src.region.guarded> == 1)
src.sysmessage @066d,,1 Bu büyüyü korunaklı bir şehirde yapamazsınız.
f_fizzle
return 1
endif
mg3
sd 2
elseif (<argn> == 23) // Unlock
spell_say Ex Por
f_fizzle
return 1
elseif (<argn> == 24) // Wall
spell_say In Sanct Ylem
if (<act.topobj.ischar>)
f_fizzle
return 1
elseif (<src.region.guarded> == 1)
src.sysmessage @066d,,1 Bu büyüyü korunaklı bir şehirde yapamazsınız.
f_fizzle
return 1
endif
mg3
sd 2
elseif (<argn> == 25) // Arch Cure
spell_say Vas An Nox
sd 2
mg4
elseif (<argn> == 26) // Arch Protection
spell_say Vas Uus Sanct
sd 2
mg4
elseif (<argn> == 27) // Curse
spell_say Des Sanct
sd 2
mg4
elseif (<argn> == 28) // Fire Field
spell_say In Flam Grav
if (<act.topobj.ischar>)
f_fizzle
return 1
elseif (<src.region.guarded> == 1)
src.sysmessage @066d,,1 Bu büyüyü korunaklı bir şehirde yapamazsınız.
f_fizzle
return 1
endif
mg4
sd 2
elseif (<argn> == 29) // Greater Heal
spell_say In Vas Mani
sd 2
if (<src.findid.i_bleeding> || (<src.findid.i_bleeding2>
sysmessage @066d,,1 Yaranizi iyilestirmelisiniz.
f_fizzle
return 1
return 1
endif
mg4
elseif (<argn> == 30)
IF (<SRC.ACT.ISCHAR>)
IF !(<src.ACT.ISEVENT.e_evabonus>)
src.ACT.EVENTS +e_evabonus
endif
endif // Lightning
spell_say Por Ort Grav
sd 2
mg4
elseif (<argn> == 31) // Mana Drain
spell_say Ort Rel
f_fizzle
return 1
elseif (<argn> == 32) // Recall
spell_say Kal Ort Por
sd 2
mg4
if (0<src.tag.ticaret>==01)
if !(0<src.tag.ticaretk>==0<uid>
src.sysmessage @066d,,1 Ticaret yaparken bunu kullanamazsınız.
f_fizzle
return 1
endif
endif
elseif (<argn> == 33) // Blade Spirits
spell_say In Jux Hur Ylem
if (<src.region.guarded> == 1)
src.sysmessage @066d,,1 Bu büyüyü korunaklı bir şehirde yapamazsınız.
f_fizzle
return 1
endif
mg5
sd 2
elseif (<argn> == 34) // Dispel Field
spell_say An Grav
if (<act.ischar>)
f_fizzle
return 1
endif
sd 2
mg5
elseif (<argn> == 35) // Incognito
spell_say Kal In Ex
f_fizzle
return 1
elseif (<argn> == 36) // Magic Reflect
spell_say In Jux Sanct
sd 2
mg5
elseif (<argn> == 37) // Mind Blast
spell_say Por Corp Wis
sd 2
mg5
elseif (<argn> == 38) // Paralyze
spell_say An Ex Por
sd 2
mg5
elseif (<argn> == 39) // Poison Field
spell_say In Nox Grav
if (<act.topobj.ischar>)
f_fizzle
return 1
elseif (<src.region.guarded> == 1)
src.sysmessage @066d,,1 Bu büyüyü korunaklı bir şehirde yapamazsınız.
f_fizzle
return 1
endif
sd 2
mg5
elseif (<argn> == 40) // Summon Creature
spell_say Kal Xen
if (<src.region.guarded> == 1)
src.sysmessage @066d,,1 Bu büyüyü korunaklı bir şehirde yapamazsınız.
f_fizzle
return 1
endif
mg5
sd 2
elseif (<argn> == 41) // Dispel
spell_say An Ort
sd 2
mg6
elseif (<argn> == 42)
IF (<SRC.ACT.ISCHAR>)
IF !(<src.ACT.ISEVENT.e_evabonus>)
src.ACT.EVENTS +e_evabonus
endif
endif // Energy Bolt
spell_say Corp Por
sd 2
mg6
elseif (<argn> == 43) // Explosion
spell_say Vas Ort Flam
sd 2
mg6
elseif (<argn> == 44) // Invisibility
spell_say An Lor Xen
sd 2
mg6
elseif (<argn> == 45) // Mark
spell_say Kal Por Ylem
sd 2
mg6
elseif (<argn> == 46) // Mass Curse
spell_say Vas Des Sanct
sd 2
mg6
elseif (<argn> == 47) // Paralyze Field
spell_say In Ex Grav
if (<act.topobj.ischar>)
f_fizzle
return 1
elseif (<src.region.guarded> == 1)
src.sysmessage @066d,,1 Bu büyüyü korunaklı bir şehirde yapamazsınız.
f_fizzle
return 1
endif
mg6
sd 2
elseif (<argn> == 48) // Reveal
spell_say Wis Quas
sd 2
mg6
elseif (<argn> == 49) // Chain Lightning
spell_say Vas Ort Grav
if (<act.uid> == <uid>)
f_fizzle
return 1
endif
sd 3
mg7
if (<src.region.guarded> == 1)
f_fizzle
src.sysmessage @066d,,1 Bu büyüyü korunaklı bir şehirde yapamazsınız.
return 1
endif
elseif (<argn> == 50) // Energy Field
spell_say In Sanct Grav
if (<act.topobj.ischar>)
f_fizzle
return 1
elseif (<src.region.guarded> == 1)
src.sysmessage @066d,,1 Bu büyüyü korunaklı bir şehirde yapamazsınız.
f_fizzle
return 1
endif
mg7
sd 2
elseif (<argn> == 51)
src.events +e_evabonus // Flame strike
spell_say Kal Vas Flam
sd 3
mg7
elseif (<argn> == 52) // Gate Travel
spell_say Vas Rel Por
sd 3
mg7
elseif (<argn> == 53) // Mana Vampire
spell_say Ort Sanct
f_fizzle
return 1
elseif (<argn> == 54) // Mass Dispel
spell_say Vas An Ort
sd 3
mg7
elseif (<argn> == 55) // Meteor Swarm
spell_say Flam Kal Des Ylem
if (<src.region.guarded> == 1)
src.sysmessage @066d,,1 Bu büyüyü korunaklı bir şehirde yapamazsınız.
f_fizzle
return 1
endif
mg7
sd 3
elseif (<argn> == 56) // Polymorph
spell_say Vas Ylem Rel
sd 7
mg3
elseif (<argn> == 57) // Earthquake
spell_say In Vas Por
if (<src.region.guarded> == 1)
src.sysmessage @066d,,1 Bu büyüyü korunaklı bir şehirde yapamazsınız.
f_fizzle
return 1
endif
mg8
sd 4
elseif (<argn> == 58) // Energy Vortex
spell_say Vas Corp Por
if (<src.region.guarded> == 1)
src.sysmessage @066d,,1 Bu büyüyü korunaklı bir şehirde yapamazsınız.
f_fizzle
return 1
endif
mg8
sd 3
elseif (<argn> == 59) // Resurrect
spell_say An Corp
sd 3
mg8
elseif (<argn> == 60) // Air Elemental
spell_say Kal Vas Xen Hur
if (<src.region.guarded> == 1)
src.sysmessage @066d,,1 Bu büyüyü korunaklı bir şehirde yapamazsınız.
f_fizzle
return 1
endif
mg8
sd 3
elseif (<argn> == 61) // Summon Deamon
spell_say Kal Vas Xen Corp
if (<src.region.guarded> == 1)
src.sysmessage @066d,,1 Bu büyüyü korunaklı bir şehirde yapamazsınız.
f_fizzle
return 1
endif
mg8
sd 3
elseif (<argn> == 62) // Earth Elemental
spell_say Kal Vas Xen Ylem
if (<src.region.guarded> == 1)
src.sysmessage @066d,,1 Bu büyüyü korunaklı bir şehirde yapamazsınız.
f_fizzle
return 1
endif
mg8
sd 3
elseif (<argn> == 63) // Fire Elemental
spell_say Kal Vas Xen Flam
if (<src.region.guarded> == 1)
src.sysmessage @066d,,1 Bu büyüyü korunaklı bir şehirde yapamazsınız.
f_fizzle
return 1
endif
mg8
sd 3
elseif (<argn> == 64) // Water Elemental
spell_say Kal Vas Xen An Flam
if (<src.region.guarded> == 1)
src.sysmessage @066d,,1 Bu büyüyü korunaklı bir şehirde yapamazsınız.
f_fizzle
return 1
endif
mg8
sd 3
endif
On=@SpellEffect
If (<argn> == 38) || (<argn> == 47)
if (<findid.i_pouch_trapped>)
effect 3,i_fx_explode,3,25,1
sound snd_spell_explosion
damage 2
findid.i_pouch_trapped.remove
return 1
elseif !(<src.uid> == <uid>)
findid.i_rune_poison.remove
endif
endif
If (<isevent.e_dm>)
return 0
elseif (<memoryfindtype.memory_guild.link.more1> == 1) && (<src.memoryfindtype.memory_guild.link.more1> == 1)
If (<argn> == 28) || (<argn> == 39) || (<argn> == 46) || (<argn> == 47) || (<argn> == 49) || (<argn> == 54) || (<argn> == 55) || (<argn> == 57)
return 1
endif
elseif (<memoryfindtype.memory_guild.link.more1> == 2) && (<src.memoryfindtype.memory_guild.link.more1> == 2)
If (<argn> == 28) || (<argn> == 39) || (<argn> == 46) || (<argn> == 47) || (<argn> == 49) || (<argn> == 54) || (<argn> == 55) || (<argn> == 57)
return 1
endif
endif
IF (<argn> == 38)
findid.i_rune_poison.remove
endif
If (<argn> == 20)
findid.i_rune_poison.remove
If (<src.act.distance> < 2 )
Poison <eval (<src.poisoning> / <src.act.distance>)>
damage 1
effect 3,i_fx_curse,1,15,1
Return 1
elseif (<src.poisoning> < 900)
Poison 750
damage 1
effect 3,i_fx_curse,1,15,1
Return 1
elseif (<src.poisoning> < 700)
Poison 550
damage 1
effect 3,i_fx_curse,1,15,1
Return 1
elseif (<src.poisoning> < 500)
Poison 350
damage 1
effect 3,i_fx_curse,1,15,1
Return 1
endif
endif
if (<flags>&statf_dead) //
if (<argn> == 59)
sfx snd_spell_resurrection
findlayer(22).remove
color <oskin>
update
effect 3,0376a,2,20,1
else
return 1
endif
elseif ((<argn> == 9) || (<argn> == 10) || (<argn> == 16) || (<argn> == 17)) // stat fix
findlayer(32).remove // spell
findlayer(44).remove // potion
elseif ((<argn> == 49) || (<argn> == 55)) // eve disardan chain atsalar bile icerdeki yemez
if !(<src.region.type> == <region.type>)
return 1
endif
elseif (<argn> == 37) // mindblast
if (<src.int> > <int>)
var.mb <eval(<src.int> - <int>)>
var.mb <eval ((<var.mb> * 3) / 1)>
if (<eval <var.mb>> > 55)
var.mb 55
endif
damage <eval (<var.mb> + {-5 10)>
else
damage {3 13}
endif
sfx snd_spell_mind_blast
effect 3,0374a,1,15,1
return 1
elseif ((<argn> == 41) || (<argn> == 54)) // dispel & mass dispel
if (<findid.i_morpher>)
if !(<findid.i_pre_morph>)
findid.i_morpher.remove
endif
endif
elseif ((<argn> == 20) || (<argn> == 39)) // poison, poison field
if !(<findid.i_rune_poison>) && (<flags>&statf_poisoned)
flags <flags>&~statf_poisoned
endif
if !(<src.uid> == <uid>)
skill fail
endif
if (<eval (<src.poisoning> + 100)> > <eval <findid.i_rune_poison.morey>>)
findid.i_rune_paralyze.remove
findid.i_rune_paralyze_field.remove
findid.i_rune_poison.remove
if (<distance> > 3) && (<eval (<src.poisoning> + 100)> > 700)
poison (600 + {-100 100})
else
poison (<src.poisoning> + {-100 100})
endif
endif
sfx snd_spell_poison
effect 3,0374a,1,15,1
return 1
elseif (<argn> == 26) // no arch prot. over armor
if (<findtype.t_armor.cont.uid> == <uid>)
return 1
endif
elseif (<argn> == 25) // arch cure
if (<memoryfindtype.memory_town>) && !(<src.memoryfindtype.memory_town>)
return 1
elseif (<memoryfindtype.memory_guild.link.align> > 0) && !(<src.memoryfindtype.memory_guild.link.align>)
return 1
endif
if (<findid.i_rune_poison>)
if (<findid.i_rune_poison.morey> > <eval ((<src.magery> + 400) / 2)>)
if !(rand(8) == 1)
effect 3,0374a,1,15,1
sound snd_spell_poison
return 1
endif
endif
endif
elseif (<argn> == 4) || (<argn> == 29) || (<argn> == 11)
if (<memoryfindtype.memory_town>) && !(<src.memoryfindtype.memory_town>)
src.sysmessage @54 Faction uyelerini iyilestiremezsiniz.
return 1
elseif (<memoryfindtype.memory_guild.link.align> > 0) && !(<src.memoryfindtype.memory_guild.link.align>)
src.sysmessage @54 Order/Chaos uyelerini iyilestiremezsiniz.
return 1
endif
if (<argn> == 4) || (<argn> == 29)
if (<findid.i_rune_poison>)
effect 3,0374a,1,15,1
sound snd_spell_poison
return 1
endif
endif
endif
On=@SkillStart
if (<action> == id(skill_stealth)) || (<action> == skill_stealth)
if (<hiding> < 80.0)
sysmessage @0481,,1 Stealth yapabilmek icin 80 hiding skilline ihtiyaciniz var.
skill fail
return 1
elseif (<eval (<ac> * 100)> > <eval (<stealth> + 200)>)
sms Zirhinizin verdigi agirlik gizlenmenizi engelliyor
skill fail
return 1
elseif (<flags>&statf_onhorse)
sms Binek uzerinde gizlenemezsiniz.
skill fail
return 1
endif
elseif (<action> == id(skill_hiding)) || (<action> == skill_hiding)
if (<eval (<ac> * 100)> > <eval (<hiding> + 200)>)
sms Zirhinizin verdigi agirlik gizlenmenizi engelliyor
skill fail
return 1
elseif (<flags>&statf_onhorse)
sms Binek uzerinde gizlenemezsiniz.
skill fail
return 1
endif
elseif ((<action> == id(skill_herding)) || (<action> == skill_herding))
if (<targ.id> == c_pv)
skill fail
return 1
endif
elseif ((<action> == id(skill_stealing)) || (<action> == skill_stealing)) // stealing fiks
if (<targ.topobj.id> == c_pv)
skill fail
return 1
elseif !(<targ.topobj.ischar>)
sms Sadece canli varliklardan calabilirsiniz.
skill fail
return 1
elseif (<targ.isitem>)
if (<targ.cont>)
if (<targ.cont.type> == t_eq_trade_window)
skill fail
return 1
endif
endif
endif
endif
if (strmatch('<tag.ms>','<action>'))
tag.mn <eval (<tag.mn> + 1)>
elseif ((strmatch('<tag.ms>','Skill_Magery')) && (strmatch('Skill_Meditation','<action>')))
tag.mn <eval (<tag.mn> + 1)>
elseif ((strmatch('<tag.ms>','Skill_Meditation')) && (strmatch('Skill_Magery','<action>')))
tag.mn <eval (<tag.mn> + 1)>
else
tag.mn 0
endif
On=@Click
If (<isevent.e_necroyum>)
return 0
elseif !(<findid.i_rune_incognito>) && (<memoryfindtype.memory_guild>)
if (strmatch('<tag.gs_title>','')
message @0 [<memoryfindtype.memory_guild.link.name>]
else
message @0 [<tag.gs_title>, <memoryfindtype.memory_guild.link.abbrev>]
endif
endif
On=@ItemSpell
if !((<argn> == 2) || (<argn> == 13) || (<argn> == 14) || (<argn> == 19)|| (<argn> == 21) || (<argn> == 23) || (<argn> == 24) || (<argn> == 28) || (<argn> == 32) || (<argn> == 34) || (<argn> == 39) || (<argn> == 45) || (<argn> == 46) || (<argn> == 47) || (<argn> == 48) || (<argn> == 50) || (<argn> == 54) || (<argn> == 55) || (<argn> == 57)) // no enchant
f_fizzle
return 1
endif
On=@ItemEquip
if (<act.type> == t_weapon_axe)
events +e_axer
endif
On=@ItemUnEquip
if (<act.type> == t_weapon_axe)
events -e_axer
endif
On=@ItemDClick
if (<targ.topobj.id> == c_pv)
if (<targ.type> == t_container)
targ.open
endif
return 1
endif
On=@ItemClick
if (<act.topobj.id> == c_pv)
if (strmatch('<act.price>',''))
act.message @54 [satilamaz]
elseif (<act.price> <= 0)
act.message @54 [satilik degil]
else
if ((<act.type> == t_armor) || (<act.type> == t_armor_leather) || (<act.type> == t_shield) || (<act.type> == t_clothing) || (<act.type> == t_weapon_sword) || (<act.type> == t_weapon_fence) || (<act.type> == t_weapon_mace_staff) || (<act.type> == t_weapon_mace_smith) || (<act.type> == t_weapon_mace_pick) || (<act.type> == t_weapon_bow) || (<act.type> == t_weapon_xbow))
if !(<eval ((<act.more1l> * 100) / <act.more1h>)> == 100)
act.message @54 [<act.price> gp] [%<eval (100 - ((<act.more1l> * 100) / <act.more1h>))> eski]
else
act.message @54 [<act.price> gp]
endif
else
act.message @54 [<act.price> gp]
endif
endif
endif
if (<act.layer> == 21) && (<act.cont.ischar>)
act.message @0 Backpack
return 1
endif
if ((<act.attr>&attr_newbie) // blessed itemlari belirt
act.message @56 [blessed]
endif
if !(<act.type> == t_container)
if !(<act.baseid> == i_strong_box)
if (<act.attr>&attr_move_never) && !(strmatch('<act.region.tag.owner>,'')) && (<act.region.type> == <region.type>)
act.message @56 [sabit]
return 0
endif
if (<act.baseid> == i_bones)
act.message @56 [loot: <act.rescount> esya]
act.message @056 <act.name>
return 1
//elseif (<act.rescount> > 0)
// if !(<act.baseid> == i_deed)
// act.message @60 <act.typedef.name> [<act.rescount>,<eval ((<act.weight> / 10) - <act.typedef.weight>)>]
// return 1
// endif
//else
// if !(<act.baseid> == i_deed)
// act.message @606,,1 <act.typedef.name>
// return 1
// endif
endif
endif
endif
endif
On=@ItemPickUp_Pack
if (<act.topobj.id> == c_pv)
if !(<uid> == <act.topobj.tag.owner>)
return 1
endif
if ((<act.baseid> == i_spellbook) || (<act.baseid> == i_f_s) || (<act.baseid> == i_runebook) || (<act.baseid> == i_magic_reg30) || (<act.baseid> == i_magic_reg60) || (<act.baseid> == i_magic_reg90) || (<act.baseid> == i_necro_reg20) || (<act.baseid> == i_necro_reg40) || (<act.baseid> == i_taxi_kit) || (<act.dispid> == i_deed))
act.attr <act.attr>|attr_newbie
endif
endi
On=@ItemTargOn_Item
if ((<targ.topobj.id> == c_pv) && (<act.cont.uid> != <targ.topobj.uid>)
return 1
//elseif (<targ.baseid> == i_corpse) << ßaşına // koy
if ((<targ.amount> == 400) || (<targ.amount> == 401))
return 1
endif
On=@ItemDropOn_Ground
if (<act.attr> == 04008)
act.attr 0
endif
if !(<weight> + <act.weight>) > <weightmax>)
if ((<action> == id(skill_fishing)) || (<action> == skill_fishing))
if (<act.type> == t_fish) // tutulan baliklari
act.bounce // at cantaya
endif
elseif ((<action> == id(skill_magery)) || (<action> == skill_magery))
if (<act.type> == t_food) // yapilan yemekleri
act.bounce // at cantaya
endif
endif
endif
// end of main fixes
[events e_qchar]
On=@Death
hits 5
fame 10000
return 1
On=@GetHit
hits (<hits> + 15)
if (<hits> > <str>)
hits <str>
endif
on=@hit
if (<account.plevel> < 2)
return 1
endif
On=@EnvironChange
if (<account.plevel>>1)
food 999
endif
[events e_fix_anim]
ON=@SpellCast
src.events +e_fix_anim
If (<argn>=s_bless)
If (<argn>=s_protection)
If (<argn>=s_reactive_armor)
If (<argn>=s_magic_reflection)
If (<src.act.npc>=brain_animal)
src.sysmessage Bu buyuyu hayvanlar uzerinde kullanamazsiniz.
endif
endif
endif
endif
endif
//////////////////////////////////////////////////////////////////
[function diefreeze]
src.newitem i_die_freeze
src.act.equip
[itemdef i_die_freeze]
name=Die Freeze
id=i_gold
type=t_eq_script
weight=0
layer=layer_special
On=@Equip
src.flags <src.flags>|04
src.events +e_die_freeze
timer 2
On=@UnEquip
if !(<cont.flags>&statf_dead)
cont.flags <cont.flags>&~04
endif
On=@Timer
attr attr_decay
remove
return 1
//[events e_die_freeze]
//On=@GetHit
//if (rand(2) == 1)
//src.f_fizzle
//findid.i_die_freeze.remove
//src.events -e_die_freeze
//endif
[function gc]
if <memoryfindtype.memory_guild.link.uid>
serv.allclients guild <name> : <args>
else
src.sysmessage @54 Bu komutu kullanabilmek icin bir guilde uye olmaniz gerekiyor.
return 1
endif
[function guild]
if (<memoryfindtype.memory_guild.link.uid> == <src.memoryfindtype.memory_guild.link.uid>)
sysmessage @70,,1 <args>
endif
[EVENTS e_staff_title]
if (0<account.plevel> == 2)
src.title ScoField Pvp Counselor
endif
if (0<account.plevel> == 3)
src.title ScoField Pvp Seer
endif
if (0<account.plevel> == 4)
src.title ScoField Pvp GameMaster
endif
if (0<account.plevel> == 5)
src.title ScoField Pvp Developer
endif
if (0<account.plevel> == 6)
src.title ScoField Pvp Admin
endif
if (0<account.plevel> == 7)
src.title SaiLoR Pvp Sunucu Sahibi
endif
endif
endif
On=@Click
On=@Click
[eof]