Benm Scripts'le Alakam Olmadığı İçin Bilemiyorum :)
evet arkadaslar bana kım yardımcı olcak hertarafta pazar alanındasınız bunu yapamassınız dıyor bı yardımcı olun arkadaslar bıde bınekler 1 dakkada cıkıyor onlarada bı el atarmısınız rıca etsem acaba ? jumperwanted@hot
@jumperwanted

pazar alanında yapmıyorsa maps dosyasından orayı bulup flaglerini ayarlaman lazım....bineklerin sürelerini ayarlamak için axis programını kullan.
Silindi
Banned
0
beyler ben sphere server kurdum fakat scp attgmda menu scpsi haric hic bi scp calısmıo yada komutlarını bulamıorm attgm scplerın yardm edermsınız
atıığın scripti bi koyarsan ona göre yardımcı olmaya calısırım.
Silindi
Neophyte
0.5
// * yazan: Chernobel --- uoscripts.net
// * son güncelleme: 15:32 25.01.2007

// Emulator uyumu : Sphere 55r - 56b - 57 - +

//Genelde her serverda bulunan düello sistemi.Lootlu lootsuz,magical,poison,max potion bandage seçenekleri vardır.
//Uzun bir araştırma sonucunda scripti buldum ve sizlerle paylaşıyorum
//bycomrade

// -------------------------------------------------------------------------------------------------
// Binekle girilmez.
// Pvp sirasinda shrinkten animal çikartma fixlendi.
// 25 kare yakinda binegi varsa pvpye giremiyor.
// Pvp sirasini bekleyen kisi oyundan çikarsa diskalifiye olmaz. Pvpsi baslayana kadar girerse sorun yok. Girmezse atilir.
// Pvp yaparken oyundan çikan kisi yenilmis kabul edilir.
// Pvpden çikista, karma,fame,kill,crim eski haline döner.
// Pvp sirasinda poisonlu silah kullanilmaz. (çantada durur ama ele alinmaz)
// Pvp sirasinda runebook açilmaz.
// Pvpde mark,recall,gate travel büyüleri kullanilamaz.
// Playerlar bekleme yerinde 10 farkli koordinatta dizilir. Yani hepsi üst üste olmaz..
// Seyirci olayi yapildi.
// Pvp'ye nerde girildiyse çikista oraya atiyor.
// Loot süresi eklendi.
// .profilim eklendi.
// -------------------------------------------------------------------------------------------------

// Order ordera - chaos chaos a dalmasi için fix.scp veya guild.scp de ayarlamalar yapmak gerekir.

// ...::: AYARLAR :::... \\

[defname cpvp_ayarlar]
cpvp_p1 5571,1117 // Pvp npcsinin duracagi koordinat.

cpvp_p2_1 5565,1109,5 // Playerlarin bekleyecekleri yer.
cpvp_p2_2 5566,1109,5 // Playerlarin bekleyecekleri yer.
cpvp_p2_3 5567,1109,5 // Playerlarin bekleyecekleri yer.
cpvp_p2_4 5568,1109,5 // Playerlarin bekleyecekleri yer.
cpvp_p2_5 5569,1109,5 // Playerlarin bekleyecekleri yer.
cpvp_p2_6 5570,1109,5 // Playerlarin bekleyecekleri yer.
cpvp_p2_7 5571,1109,5 // Playerlarin bekleyecekleri yer.
cpvp_p2_8 5572,1109,5 // Playerlarin bekleyecekleri yer.
cpvp_p2_9 5573,1109,5 // Playerlarin bekleyecekleri yer.
cpvp_p2_10 5574,1109,5 // Playerlarin bekleyecekleri yer.

cpvp_p3 5566,1117 // Pvp yapicak 1. playerin duracagi yer.
cpvp_p4 5576,1117 // Pvp yapicak 2. playerin duracagi yer.
cpvp_p5 5570,1125,5 // Seyircilerin duracagi yer.

cpvp_pgate1 5944,1977,5 // Pvp'ye girmek için gatein açilacagi yer.

cpvp_gateseyirci 5929,1977,5 // Seyircilerin geçecegi gate'in koordinati.
cpvp_pbitis 5937,1977 // Pvp Bittiginde seyircinin gidecegi yer.

cpvp_periyot 12 // Kaç saatte bir pvp düzenlenecegi.
cpvp_gatesuresi 10 // Pvpye katilmak için gatelerin açik kalacagi süre. (dakika)
cpvp_pvpbasliyor 20 // 2 kisi alana atildiginda geri sayim saniyesi.
cpvp_lootsuresi 25 // Loot için beklenecek süre.(saniye)

cpvp_girisparasi 10000 // Katilmak için gereken altin.
cpvp_seyirciparasi 3000 // Seyircilerin verecegi para.

//-----------------------------------------------------------------------------------------


//Npcs

[chardef c_cpvpci]
name #NAMES_HUMANMALE
id c_man
can mt_equip|mt_nonmover

On=@Create
str 9500
dex 25
int 25
color colors_skin
speechcolor 0481
food 990
npc 1

itemnewbie random_male_hair
color colors_hair
itemnewbie random_facial_hair
color match_hair
itemnewbie i_blackrock_chainmail_tunic
itemnewbie i_blackrock_chainmail_leggings
itemnewbie i_blackrock_chainmail_coif
itemnewbie i_halberd_vanq

on=@gethit
return 1
on=@spelleffect
return 1
on=@death
hits 100
return 1
on=@attack
return 1
on=@hit
return 1
on=@dclick
return 1

on=@click
if !(strmatch(<eval <p>>,<eval <def.cpvp_p1>>)
go <def.cpvp_p1>
endif
if !(<findid.i_cpvpci>)
serv.newitem i_cpvpci
new.cont <uid>
endif
if (<findid.i_cpvpci.timer>==-1)
findid.i_cpvpci.timer <eval <def.cpvp_periyot>*3600>
endif

messageua 0481,6,6,enu [Pvp Organizator]
messageua 0481,6,6,enu <name>
return 1




// Items

[itemdef i_cpvpci]
id i_memory
type t_eq_script
name pvpci

on=@create
attr 04

on=@timer
cont.tag.player 
cont.tag.gold 
timer <eval <def.cpvp_periyot>*36000>
cpvp_gate <cont.uid>
serv.newitem i_cpvpyapici
new.timer 60*<eval <def.cpvp_gatesuresi>>
new.link <cont.uid>
new.cont <cont.uid>
serv.allclients sysmessage @47,,1 Auto Pvp Turnuvasi icin pazara gate acilmisitir. Katilmak isteyenler <eval <def.cpvp_gatesuresi>> dakika icinde gateden gecebilirler.
serv.allclients sysmessage @54,,1 Izleyici olarak katilmak isteyenlerde Pazar'daki gateden alana gidebilirler.
return 1


[itemdef i_cpvpgate]
id i_moongate_blue
type t_script
name Pvp Gate

on=@create
attr 010

on=@click
if (<timer> <60)
messageua 035,6,6,enu [Toplam : <eval <link.tag.player>> oyuncu]
messageua 035,6,6,enu [<timer> saniye]
else
messageua 035,6,6,enu [Toplam : <eval <link.tag.player>> oyuncu]
messageua 035,6,6,enu [<eval <timer>/60> dakika]
endif
messageua 035,6,6,enu Pvp Gate
return 1

on=@dclick
sdialog d_cpvp_katil
return 1

on=@step
sdialog d_cpvp_katil
return 1

on=@timer
remove
return 1

[itemdef i_cpvpgateseyirci]
id i_moongate_blue
type t_script
name Pvp Gate

on=@create
attr 010

on=@click
messageua 035,6,6,enu [<eval <def.cpvp_seyirciparasi>> gp]
messageua 035,6,6,enu Pvp Seyirci Gate
return 1

on=@dclick
sdialog d_cpvp_katil 2
return 1

on=@step
sdialog d_cpvp_katil 2
return 1

on=@timer
if (<morex> < <eval <def.cpvp_gatesuresi>-1>)
morex <morex> +1
timer 60
serv.allclients sysmessage @47,,1 Pazardaki gatelerin kalkip, Turnuvanin baslamasina <eval <def.cpvp_gatesuresi>-<eval <morex>>> dakika kaldi
else
remove
endif
return 1

[itemdef i_cpvpyapici]
id i_memory
type t_eq_script
name pvp yapici

on=@timer
if (<morex>==0)
cont.cpvpplayer
endif
remove
return 1

[itemdef i_cpvpbasliyor]
id i_memory
type t_eq_script
name pvp baslatici

on=@timer
morex -=1
timer 1
if (<morex> >1)
link.say ~~
link.say ~~
link.say ~~
link.say <eval <morex>-1>
endif
if (<morex>==1)
link.say ~~
link.say ~~
link.say ~~
link.say BASLA!
endif
if (<morex> <1)
link.invis 1
remove
endif
return 1



[itemdef i_cpvp_oldumgonder]
id i_memory
type t_eq_script
name oldum gonder

on=@timer
cont.go <cont.tag.cpvp_katildim>
remove
return 1

[itemdef i_cpvp_lootbekle]
id i_memory
type t_eq_script
name loot bekle

on=@timer
dorand 10
cont.go <def.cpvp_p2_1>
cont.go <def.cpvp_p2_2>
cont.go <def.cpvp_p2_3>
cont.go <def.cpvp_p2_4>
cont.go <def.cpvp_p2_5>
cont.go <def.cpvp_p2_6>
cont.go <def.cpvp_p2_7>
cont.go <def.cpvp_p2_8>
cont.go <def.cpvp_p2_9>
cont.go <def.cpvp_p2_10>
enddo
cont.stone 1
link.cpvpplayer
remove
return 1



//Functions

[function cpvp_gate] // Gate açici
for 1 1
serv.newitem i_cpvpgate
new.timer 60*<eval <def.cpvp_gatesuresi>>
new.link <args>
new.p <def.cpvp_pgate<eval <local._for>>>
endfor
serv.newitem i_cpvpgateseyirci
new.timer 60
new.link <args>
new.p <def.cpvp_gateseyirci>


[function cpvpplayer] 
invis 0
foritems 50
if (<type>==t_corpse
remove
endif
endfor
if (<eval <tag.player>>==1)
obj <tag.player1>
obj.events -e_cpvp
obj.tag.pvpci 
obj.cekverpvp <eval <tag.gold>>
obj.sysmessage @55,,1 Tebrikler. Turnuvada 1. oldunuz.
serv.allclients sysmessage @0481 Pvp turnuvasini <obj.name> kazandi
obj.tag.cpvp_win <eval <obj.tag.cpvp_win>> +1
obj.go pazar
obj.fame <eval <obj.tag.fame>>
obj.karma <eval <obj.tag.karma>>
obj.kills <eval <obj.tag.kills>>
if (<obj.memoryfindtype.memory_sawcrime>)
obj.memoryfindtype.memory_sawcrime.remove
endif
obj.stone 0
for 1 <eval <tag.seyirci>>
try uid.<tag.seyirci<eval <local._for>>>.stone 0
try uid.<tag.seyirci<eval <local._for>>>.go <def.cpvp_pbitis>
endfor
return 1
elif (<eval <tag.player>> > 1)
if !(<uid.<tag.player1>.isonline>) 
playerat 1
cpvpplayer
return 1
endif
if !(<uid.<tag.player2>.isonline>) 
playerat 2
cpvpplayer
return 1
endif
try uid.<tag.player1>.go <def.cpvp_p3>
try uid.<tag.player1>.tag.cpvprakip <uid.<tag.player2>.uid>
try uid.<tag.player1>.stone 0
try uid.<tag.player1>.findlayer.1.cont <uid.<tag.player1>.findlayer.21>
try uid.<tag.player1>.findlayer.2.cont <uid.<tag.player1>.findlayer.21>
if (<uid.<tag.player1>.findid.i_cpvpbasliyor>)
try uid.<tag.player1>.findid.i_cpvpbasliyor.remove
endif
serv.newitem i_cpvpbasliyor
new.morex <eval <def.cpvp_pvpbasliyor>>
new.timer 1
new.link <uid>
new.cont <uid.<tag.player1>.uid>
try uid.<tag.player2>.go <def.cpvp_p4>
try uid.<tag.player2>.tag.cpvprakip <uid.<tag.player1>.uid>
try uid.<tag.player2>.stone 0
try uid.<tag.player2>.findlayer.1.cont <uid.<tag.player2>.findlayer.21>
try uid.<tag.player2>.findlayer.2.cont <uid.<tag.player2>.findlayer.21>
if (<uid.<tag.player2>.findid.i_cpvpbasliyor>)
try uid.<tag.player2>.findid.i_cpvpbasliyor.remove
endif
serv.newitem i_cpvpbasliyor
new.morex <eval <def.cpvp_pvpbasliyor>>
new.timer 1
new.link <uid>
new.cont <uid.<tag.player2>.uid>
2playerat
tag.player <eval <tag.player>> -2
endif


[function playerat]
obj <tag.player<argn1>>
obj.events -e_cpvp
obj.tag.pvpci 
obj.stone 0
obj.go <obj.tag.cpvp_katildim>
for <argn1> <eval <tag.player>>
try tag.player<eval <local._for>> <tag.player<eval <local._for>+1>>
endfor
tag.player <eval <tag.player>> -1

[function 2playerat]
for 1 <eval <tag.player>>
try tag.player<eval <local._for>> <tag.player<eval <local._for>+2>>
endfor

[plevel 1]
profilim

[function profilim]
src.sysmessageua 0481,6,6,enu <eval <src.tag.cpvp_win>> turnuva kazandiniz. <eval <src.tag.cpvp_kills>> kez oldurdunuz. <eval <src.tag.cpvp_deaths>> kez oldunuz.


//Events

[events e_cpvp]
on=@attack
if (<findid.i_cpvpbasliyor>)
sysmessage @55,,1 Pvp henuz baslamadi
return 1
endif
on=@hit
if (<findid.i_cpvpbasliyor>)
sysmessage @55,,1 Pvp henuz baslamadi
return 1
endif
on=@spellcast 
if (<src.findid.i_cpvpbasliyor>) && !(<src.uid>==<act.uid>)
src.sysmessage @55,,1 Pvp henuz baslamadi
return 1
endif
if (<argn>==45) || (<argn>==32) || (<argn>==52)
src.sysmessage @55,,1 Pvpde bu buyuleri kullanamazsiniz
f_fizzle
skill fail
return 1
endif

on=@itemdclick
if (<act.baseid>==i_deed_animal)
src.sysmessage @55,,1 Duelloda bunu yapamazsin
return 1
endif
if (<act.baseid>==i_runebook)
src.sysmessage @55,,1 Pvp'de runebook kullanamazsiniz
return 1
endif


[function f_cpvp_death]
act <tag.cpvprakip>
obj <tag.pvpci>
act.tag.cpvp_kills <eval <act.tag.cpvp_kills>> +1
tag.cpvp_deaths <eval <act.tag.cpvp_deaths>> +1
serv.newitem i_cpvp_oldumgonder
new.timer 1
new.cont <uid>
serv.newitem i_cpvp_lootbekle
new.timer <eval <def.cpvp_lootsuresi>>
new.link <obj>
new.cont <act.uid>
act.tag.cpvprakip 
act.sysmessage @55,,1 Tebrikler Kazandiniz
obj.tag.player <eval <obj.tag.player>> +1
act.tag.pvpsirasi <eval <obj.tag.player>>
try uid.<obj.uid>.tag.player<eval <obj.tag.player>> <tag.cpvprakip>
tag.pvpsirasi 
tag.pvpci 
tag.cpvprakip 
events -e_cpvp

[function f_cpvp_logout]
if !(<src.flags>&statf_stone)
act <tag.cpvprakip>
obj <tag.pvpci>
act.tag.cpvprakip 
dorand 10
act.go <def.cpvp_p2_1>
act.go <def.cpvp_p2_2>
act.go <def.cpvp_p2_3>
act.go <def.cpvp_p2_4>
act.go <def.cpvp_p2_5>
act.go <def.cpvp_p2_6>
act.go <def.cpvp_p2_7>
act.go <def.cpvp_p2_8>
act.go <def.cpvp_p2_9>
act.go <def.cpvp_p2_10>
enddo
act.stone 1
act.sysmessage @0481 Rakibiniz ciktigi icin hukmen kazandiniz
obj.tag.player <eval <obj.tag.player>> +1
act.tag.pvpsirasi <eval <obj.tag.player>>
try uid.<obj.uid>.tag.player<eval <obj.tag.player>> <tag.cpvprakip>
tag.pvpsirasi 
tag.pvpci 
tag.cpvprakip 
go <tag.cpvp_katildim>
events -e_cpvp
obj.cpvpplayer
hits <str>
return 1
endif



// Dialogs
[dialog d_cpvp_katil]
0,0

page 1
resizepic 200 100 5120 250 200
resizepic 210 110 9350 230 180
dhtmlgump 253 250 200 20 0 0 Turnuvaya katilmak istiyorum
button 220 250 4023 4025 1 0 1

dhtmlgump 220 120 230 120 0 0 KURALLAR<def.br>Loot Serbesttir.<def.br>Poisonlu silah serbesttir.<def.br>Pvp sirasinda logout olan diskalifiye olur.<def.br>Pvp alaninda banka acamazsiniz.

page 2
dhtmlgump 253 250 200 20 0 0 Seyirci olarak katilmak istiyorum
button 220 230 4023 4025 1 0 2

[dialog d_cpvp_katil button]
onbutton 1
if (<src.flags>&statf_dead)
return 1
endif
if (<src.findlayer.25>)
src.sysmessage @55,,1 Binekle giremezsiniz
return 1
endif
forchars 25
if (<memoryfindtype.memory_ipet>)
if (<memoryfindtype.memory_ipet.link>==<src.uid>)
src.sysmessage @55,,1 Etrafta binegin varken pvpye giremezsin
return 1
endif
endif
endfor
if (<src.restest <eval <def.cpvp_girisparasi>> i_gold>)
src.tag.cpvp_katildim <src.p>
src.food 15
dorand 10
src.go <def.cpvp_p2_1>
src.go <def.cpvp_p2_2>
src.go <def.cpvp_p2_3>
src.go <def.cpvp_p2_4>
src.go <def.cpvp_p2_5>
src.go <def.cpvp_p2_6>
src.go <def.cpvp_p2_7>
src.go <def.cpvp_p2_8>
src.go <def.cpvp_p2_9>
src.go <def.cpvp_p2_10>
enddo
src.consume <eval <def.cpvp_girisparasi>> i_gold
src.stone 1
src.tag.karma <src.karma>
src.tag.fame <src.fame>
src.tag.kills <src.kills>
src.events +e_cpvp
src.tag.pvpci <link>
link.tag.player <eval <link.tag.player>> +1
src.tag.pvpsirasi <eval <link.tag.player>>
link.tag.gold <eval <link.tag.gold>> + <eval <def.cpvp_girisparasi>>
try link.tag.player<eval <link.tag.player>> <src.uid>
else
src.sysmessage @55,,1 Yaninizda <eval <def.cpvp_girisparasi>> altin yok
endif

onbutton 2
if (<src.flags>&statf_dead)
return 1
endif
if (<src.restest <eval <def.cpvp_seyirciparasi>> i_gold>)
src.go <def.cpvp_p5>
src.consume <eval <def.cpvp_seyirciparasi>> i_gold
src.stone 1
link.tag.seyirci <eval <link.tag.seyirci>> +1
try link.tag.seyirci<eval <link.tag.seyirci>> <src.uid>
link.tag.gold <eval <link.tag.gold>> + <eval <def.cpvp_seyirciparasi>>
else
src.sysmessage @55,,1 Yaninizda <eval <def.cpvp_seyirciparasi>> altin yok
endif


[eof]


Bu konu Ghlahn tarafından düzenlendi(2013-11-21 20:04, 10 yıl önce)
Silindi
Neophyte
0.5
anlamadım ne yapcagımı daha genıs anlatrmısın?



Üye Ol veya Giriş Yap

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