01 Oca 2018

Sona Kalan

Alanın çeşitli yerlerine gönderilen oyuncular stone halde beklerler.Yarışma başlayınca doğan yaratıklara karşı ölmeyen son oyuncu etkinliği kazanır.

 

//Ultima Online Club

[plevel 5]
sonakalanyap

[Function sonakalanyap]
serv.allclients sysmessage @38,1,1 [Yarisma Duyuru]
serv.allclients sysmessage @0790,1,1 Sona Kalan Turnuvasi Katilimlari Baslamistir.
serv.allclients sysmessage @0790,1,1 Katilimlar 5 Dakika Sonra Biticektir.
src.newitem i_sonakalan_gate
new.p 5982,2127,10

[itemdef i_sonakalan_gate]
id i_moongate_blue
type t_sonakalancugate2222
name Sona Kalan Gate

on=@create
var.sonakalankatilim=0
color 07d3
timer 300
timerf 10,serv.allclients sysmessage @50,,1 Duyuru: Sona Kalan Yarismasi vardir.Katilmak icin safede’ki gateyi kullaniniz.
timerf 60,serv.allclients sysmessage @50,,1 Yarisma Duyuru: Sona Kalan yarismasina katilabilmek icin Son 4 Dk.
timerf 120,serv.allclients sysmessage @50,,1 Yarisma Duyuru: Sona Kalan yarismasina katilabilmek icin Son 3 Dk.
timerf 180,serv.allclients sysmessage @50,,1 Yarisma Duyuru: Sona Kalan yarismasina katilabilmek icin Son 2 Dk
timerf 240,serv.allclients sysmessage @50,,1 Yarisma Duyuru: Sona Kalan yarismasina katilabilmek icin Son 1 Dk
timerf 270,serv.allclients sysmessage @50,,1 Yarisma Duyuru: Sona Kalan yarismasina katilabilmek icin Son 30 sn
timerf 299,serv.allclients sysmessage @50,,1 Yarisma Duyuru: Sona Kalan Yarismasi Katilimlari Sona Ermistir!

on=@click
message @38,,1 [Sona Kalan Turnuvasi]
message @0798,,1 [<eval <var.sonakalankatilim>> Kisi Katildi ]
message @0796,1,1 <eval ((<timer>%86400)%3600)/60> Dakika <eval ((<timer>%86400)%3600)%60)/60> Saniye
return 1

on=@step
src.sysmessage @0790,1,1 Cift Tiklayin.
return 1

on=@dclick
IF ( <DISTANCE> < 4 )
src.sdialog d_sonakalankatilim
return 1
else
src.sysmessage @0790,,1 Yeterince Yakin Degilsiniz.
return 1
endif

on=@timer
sonakalanbaslataga
serv.allclients stone 0
serv.allclients nightsight 1
serv.allclients sysmessage @50,1,1 Katilimlar Sona Ermistir.Sona Kalan Yarismasi Baslamistir. Butun yarismacilara basarilar dileriz.
remove
if (<var.sonakalankatilim> == 1)
sonakalanbirkisi
endif
if (<var.sonakalankatilim> == 0)
f_sonakalanyaratiklarisil
endif

[events e_sonakaldik]
on=@logout
timerf 30,oyundandustum

on=@login

//src.timerf clear
//src.go safe alan
//var.sonakalankatilim +=-1
//src.resurrect
//src.stone 0
//src.events +//SAFE EVENTİ
//src.events -e_sonakaldik

on=@attack
skill fail
action -1
return 1

on=@itemdclick
src.sysmessage @2028 Yarismadayken bunu yapamassiniz!
return 1

on=@itempickup_ground
src.sysmessage @2028 Yarismadayken bunu yapamassiniz!
return 1

on=@skillstart
if (<action> == id(skill_hiding)) || (<action> == skill_hiding) || (<action> == id(skill_stealth)) || (<action> == skill_stealth)
src.sysmessage @2028 Yarismadayken bunu yapamassiniz!
skill fail
return 1
endif

on=@spellcast
if (<src.account.plevel> == 1)
src.sysmessage @2028 Yarismadayken bunu yapamassiniz!
f_fizzle
return 1
endif

on=@death
if (<eval <var.sonakalankatilim>> > 3)
src.sysmessage @38,,1 Basarisiz Oldunuz ve Elendiniz.
serv.allclients sysmessage @50,1,1 <src.name> Sona Kalan yarismasindan elendi.
hits <str>
go safe alan
var.sonakalankatilim <eval <var.sonakalankatilim>-1>
src.events +//SAFE EVENTİ
src.events -e_sonakaldik

return 1
endif

if (<eval <var.sonakalankatilim>> = 3)

hits <str>
go safe alan
var.sonakalankatilim <eval <var.sonakalankatilim>-1>
src.events -e_sonakaldik
src.events +//SAFE EVENTİ

return 1
elif (<eval <var.sonakalankatilim>> = 2)

hits <str>
go safe alan
var.sonakalankatilim <eval <var.sonakalankatilim>-1>
src.events -e_sonakaldik
src.events +//SAFE EVENTİ

return 1
elif (<eval <var.sonakalankatilim>> = 1)
src.sysmessage @0790,,1 Tebrikler ! Yarisma 1.si oldunuz.
serv.allclients sysmessage @50,1,1 Turnuvayi “<name>” kazandi !
//db.execute “INSERT INTO etkinlikler (etkinlik_adi, kazanan, saat) VALUES(‘Sona Kalan’,'<name>’,'<serv.rtime>’)”
hits <str>
go safe alan
var.sonakalankatilim <eval <var.sonakalankatilim>-1>

src.events -e_sonakaldik
src.events +//SAFE EVENTİ

newitem // VERİLECEK ÖDÜL
new.bounce
f_sonakalanyaratiklarisil
endif
return 1

on=@click
message @033 [ Sona Kalan ]
message @07a1 <name>
return 1

on=@dismount
src.sysmessage @2028 Sona Kalan’da iken Binekten inemezsiniz!
return 1

on=@mount
src.sysmessage @2028 Bu Alanda Binek’e Binemezsiniz.
return 1

[dialog d_sonakalankatilim]
20, 20
nomove
PAGE 1
resizepic 100 3 9500 281 365
resizepic 105 10 2620 270 350
gumppic 205 100 9000
gumppic 150 130 072
dtext 170 50 49 Sona Kalan’a Katilim
button 160 255 07d 07e 1 0 1
timerf 10,dialogclose d_sonakalankatilim

[dialog d_sonakalankatilim button]

ONBUTTON=0

ONBUTTON=1

IF (<src.ISNEARTYPE t_sonakalancugate2222 3>)
forchars 20
if (<memoryfindtype.memory_ipet>)
if (<memoryfindtype.memory_ipet.link>==<src.uid>)
src.sysmessage @0790,,1 Etrafta binegin varken yarismaya katilamazsiniz..
return 1
endif
endif
endfor
if (<src.findlayer.25.uid>)
src.sysmessage @0790,1,1 Altinizda binek varken Katilamazsiniz.
return 1
endif
if (<src.account.plevel> > 1)
src.sysmessage @0790,1,1 Stafflar Yarismalara Katilamaz.
return 1
endif

if (<src.hits> < <src.str>)
src.sysmessage @0790,1,1 Yaraliyken Yarismaya Katilamazsiniz.
return 1
endif

if (<src.findid.i_rune_poison>)
src.sysmessage @0790,1,1 Uzerinizde poison varken yarismaya Katilamazsiniz.
return 1
endif

src.invis 0
src.events +e_sonakaldik
var.sonakalankatilim +=1
src.stone 1
src.hits <src.str>
src.stam <src.dex>
src.mana <src.int>
src.findid.i_rune_reactive_armor.remove
src.findid.i_rune_bless.remove
dorand 6
src.go // OYUNCULARIN GİDECEĞİ YERLER
src.go // OYUNCULARIN GİDECEĞİ YERLER
src.go // OYUNCULARIN GİDECEĞİ YERLER
src.go 5// OYUNCULARIN GİDECEĞİ YERLER
src.go // OYUNCULARIN GİDECEĞİ YERLER
src.go // OYUNCULARIN GİDECEĞİ YERLER
enddo

src.itemyolla
src.events -//SAFE EVENTİ
serv.allclients sysmessage @50,1,1 <src.name> Yarismaya Katildi.Toplam Yarismaci Sayisi: <eval <var.sonakalankatilim>>
return 1
else
src.sysmessage @0790,,1 Yeterince Yakin Degilsiniz.
return 1
endif

[function sonakalancuoldur]
forplayers 6143
if (<isevent.e_sonakaldik>)
hits 0
endif
endfor

[function sonakalanbaslataga]

serv.newnpc c_sonakalannpc
new.name Rare Titan
new.p //YARATIĞIN DOĞACAĞI YER

serv.newnpc c_sonakalannpc
new.name Rare Titan
new.p //YARATIĞIN DOĞACAĞI YER

serv.newnpc c_sonakalannpc
new.name Rare Titan
new.p //YARATIĞIN DOĞACAĞI YER

serv.newnpc c_sonakalannpc
new.name Rare Titan
new.p //YARATIĞIN DOĞACAĞI YER

serv.newnpc c_sonakalannpc
new.name Rare Titan
new.p //YARATIĞIN DOĞACAĞI YER

serv.newnpc c_sonakalannpc
new.name Rare Titan
new.p //YARATIĞIN DOĞACAĞI YER

serv.newnpc c_sonakalannpc
new.name Rare Titan
new.p //YARATIĞIN DOĞACAĞI YER

serv.newnpc c_sonakalannpc
new.name Rare Titan
new.p //YARATIĞIN DOĞACAĞI YER

[function f_sonakalanyaratiklarisil]
forchars 6144
if (<id>==c_sonakalannpc)
remove
endif
endfor
endif

[typedef t_sonakalancugate2222]

[function sonakalanbirkisi]
forplayers 12555
if (<isevent.e_sonakaldik>)
hits 0
endif
endfor

[function oyundandustum]
src.hits 0
src.stone 0
src.invis 0

[FUNCTION f_bankayat]
findlayer(1).bounce
findlayer(2).bounce
findlayer(3).bounce
findlayer(4).bounce
findlayer(5).bounce
findlayer(6).bounce
findlayer(7).bounce
findlayer(8).bounce
findlayer(10).bounce
findlayer(12).bounce
findlayer(13).bounce
findlayer(14).bounce
findlayer(17).bounce
findlayer(18).bounce
findlayer(19).bounce
findlayer(20).bounce
findlayer(22).bounce
findlayer(23).bounce
findlayer(24).bounce
for 24
if (<local._for>!=11) && (<local._for>!=15) && (<local._for>!=16) && (<local._for>!=18) && (<local._for>!=21)

findlayer(layer_pack).attr 0
findlayer(layer_pack).cont <findlayer(layer_bankbox)>
findlayer(layer_pack).empty
findlayer(layer_pack).dclick
bank
update
src.newitem i_gold
src.act.bounce
return 1
endif
endfor

[EOF]

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir