Kulanmadan önce
Buraya bakın
Buradaki eksik kodlamaları alınız.
Kod:
[defname binekler]
binekler c_horse_brown_dk,c_kirin,c_horse_gray,c_horse_tan
[function f_binekkoy]
//MORTAL selamlar
local.x <R7168>
local.y <R4096>
if <serv.map(<eval <local.x>>,<eval <local.y>>).type> == t_grass
if (<serv.map(<eval <local.x>>,<eval <local.y>>).region.flags>&04000) || (<serv.map(<eval <local.x>>,<eval <local.y>>).region.flags>&02000)
f_binekkoy <argv[0]>,<argv1>
else
if !strmatch('*britain*','<serv.map(<eval <local.x>>,<eval <local.y>>).region.name>') && !strmatch('*Serpen*','<serv.map(<eval <local.x>>,<eval <local.y>>).region.name>') && !strmatch('*occlo*','<serv.map(<eval <local.x>>,<eval <local.y>>).region.name>') && !strmatch('*felucca*','<serv.map(<eval <local.x>>,<eval <local.y>>).region.name>') && !strmatch('*dungeons*','<serv.map(<eval <local.x>>,<eval <local.y>>).region.name>') && !strmatch('*moonglow*','<serv.map(<eval <local.x>>,<eval <local.y>>).region.name>') && !strmatch('*graveyard*','<serv.map(<eval <local.x>>,<eval <local.y>>).region.name>')
serv.newnpc <argv[0]>
ref1=<new>
new.tag0.random 1
new.tag0.gorunur 1
if (<dargv1> > 0)
serv.log <argv0> <dargv1> suresiyle olusturuldu.
new.timerf <dargv1>,remove
endif
new.p <eval <local.x>>,<eval <local.y>>,60
new.fix
new.food 20
new.update
else
f_binekkoy <argv[0]>,<argv1>
endif
endif
else
f_binekkoy <argv[0]>,<argv1>
endif
[function skt]
if (<src.ISSTUCK>) || (<ISNEARTYPE T_WATER>) || (<P.TERRAIN> == 0244) || (<ISNEARTYPE T_WALL>)
src.say @,,1 sd
else
src.say @,,1 ds
endif
[function spawntakip]
src.dialogclose d_spawntakip
src.ctag0.spawntakip
forinstances i_worldgem_bit
for 1 <f_array_lenght <def.binekler>>
if <more1> > 0
if <more1> == <f_moonsep <dlocal._for>,<def.binekler>>
if !(<src.isgm>)
if !(<tag0.gorunur>)
src.ctag0.spawntakip ++
src.ctag0.spawnuid<dsrc.ctag0.spawntakip> <uid>
endif
else
src.ctag0.spawntakip ++
src.ctag0.spawnuid<dsrc.ctag0.spawntakip> <uid>
endif
endif
endif
endfor
endfor
forchars 6144
if <tag0.random>
if !<owner>
if !(<src.isgm>)
if !(<tag0.gorunur>)
src.ctag0.spawntakip ++
src.ctag0.spawnuid<dsrc.ctag0.spawntakip> <uid>
endif
else
src.ctag0.spawntakip ++
src.ctag0.spawnuid<dsrc.ctag0.spawntakip> <uid>
endif
endif
endif
endfor
sdialog d_spawntakip
[dialog d_spawntakip]
150,150
bozobag 10,10,580,300
local.loop=0
local.page=1
page 1
for 1 <dsrc.ctag0.spawntakip>
ref1=<src.ctag0.spawnuid<dlocal._for>>
if (<local.loop> > 9)
local.loop=0
button 460 275 015e1 015e5 0 <eval <local.page>+1> 1
local.page += 1
page <dlocal.page>
button 35 275 015e3 015e7 0 <eval <local.page>-1> 1
endif
dtext 60 40 0481 Spawn
dtext 160 40 0850 Durum
dtext 420 40 0455 Yeri
local.loop +=1
if (<ref1.isitem>)
dtext 60 <eval 45+<hval <local.loop>*20>> 0481 <serv.chardef.<ref1.more1>.name>
else
dtext 60 <eval 45+<hval <local.loop>*20>> 0481 <ref1.name>
endif
if <ref1.isitem>
if (<ref1.dmore2>)
dtext 160 <eval 45+<hval <local.loop>*20>> 0481 Spawn aktif
else
dtext 160 <eval 45+<hval <local.loop>*20>> 0850 <f_zamangoster <ref1.timer>>
endif
else
if !(<ref1.istimerf.remove>)
dtext 160 <eval 45+<hval <local.loop>*20>> 0850 Random Spawn Süresiz
else
dtext 160 <eval 45+<hval <local.loop>*20>> 0850 Random Spawn <f_zamangoster <ref1.istimerf.remove>>
endif
endif
if <isgm>
button 30 <eval 45+<hval <local.loop>*20>> 021 022 1 0 <dlocal._for>
endif
if !(<ref1.tag0.yeri>)
dtext 420 <eval 45+<hval <local.loop>*20>> 0455 <ref1.region.name>
else
dtext 420 <eval 45+<hval <local.loop>*20>> 0455 Gizlenmiş
endif
endfor
page 100
ref1=<src.ctag0.spawndetay>
button 10 10 021 022 0 1 1
dtext 40 10 0481 Geri dön
if <ref1.isitem>
dtext 60 60 0481 Spawn adı: <serv.chardef.<ref1.more1>.name>
else
dtext 60 60 0481 Spawn adı: <ref1.name>
endif
dtext 60 80 0481 Durum:
button 30 80 021 022 1 0 101
dtext 60 100 0481 Spawn'a git
button 30 100 021 022 1 0 102
dtext 60 120 0481 Rastgele spawn ekle
button 30 120 021 022 1 0 103
resizepic 178 118 9300 95 25
dtextentrylimited 180 120 130 20 0481 2 10 ?
dtext 273 120 0481 saniye sonra silinsin
dtext 60 140 0481 Spawnı sil
button 30 140 021 022 1 0 104
if !(<ref1.tag0.gorunur>)
dtext 60 160 0481 Spawnı görünür kapat
else
dtext 60 160 0481 Spawnı görünür aç
endif
button 30 160 021 022 1 0 105
if !<ref1.tag0.yeri>
dtext 60 180 0481 Spawn yeri kapat
else
dtext 60 180 0481 Spawn yeri aç
endif
button 30 180 021 022 1 0 106
if (<ref1.isitem>)
if !(<ref1.dmore2>)
resizepic 98 78 9300 85 25
dtextentrylimited 100 80 130 25 0481 1 10 <ref1.timer>
dtext 190 80 0481 sny sonra aktif
else
dtext 100 80 0481 Spawn aktif
endif
else
dtext 100 80 0481 Random spawn
endif
[dialog d_spawntakip button]
on 1 60
src.ctag0.spawndetay <src.ctag0.spawnuid<dargn>>
sdialog d_spawntakip,100
on 101
ref1=<src.ctag0.spawndetay>
if (<ref1.isitem>)
if (<ref1.dmore2>)
ref1.dclick
src.sysmessage @,,1 <serv.chardef.<ref1.more1>.name> de-aktif edildi.
return 1
endif
else
src.sysmessage @,,1 <ref1.name> silindi.
ref1.remove
return 1
endif
if (<isempty <argtxt1>>)
src.sysmessage @,,1 Boş bırakamazsınız.
return 1
elif !(<isnumeric <argtxt1>>)
src.sysmessage @,,1 Hatalı karakter girdinz.
return 1
else
ref1.timer <dargtxt1>
src.sysmessage @,,1 <serv.chardef.<ref1.more1>.name> süresini <dargtxt1> saniye olarak değiştirdiniz.
endif
on 102
ref1=<src.ctag0.spawndetay>
src.go <ref1.p>
if <ref1.isitem>
src.sysmessage @,,1 <serv.chardef.<ref1.more1>.name> in bulunduğu bölgeye gittiniz.
else
src.sysmessage @,,1 <ref1.name> yanına gittiniz.
endif
on 103
ref1=<src.ctag0.spawndetay>
if (<isempty <argtxt2>>)
src.sysmessage @,,1 Boş bırakamazsınız.
return 1
elif !(<isnumeric <argtxt2>>)
src.sysmessage @,,1 Hatalı karakter girdinz.
return 1
else
if (<ref1.isitem>)
src.f_binekkoy <ref1.more1>,<dargtxt2>
else
src.f_binekkoy <ref1.id>,<dargtxt2>
endif
src.sysmessage @,,1 Rastgele spawn oluşturuldu. Silinme süresi <f_zamangoster <dargtxt2>> olarak ayarlandı.
endif
on 104
ref1=<src.ctag0.spawndetay>
src.sysmessage @,,1 Spawn silindi.
ref1.remove
on 105
ref1=<src.ctag0.spawndetay>
if !(<ref1.tag0.gorunur>)
ref1.tag0.gorunur 1
ref1.tag0.yeri 1
src.sysmessage @,,1 Görünürlülüğü kapattınız.
else
ref1.tag0.gorunur
src.sysmessage @,,1 Görünürlülüğü açtınız.
endif
on 106
ref1=<src.ctag0.spawndetay>
if !(<ref1.tag0.yeri>)
ref1.tag0.yeri 1
src.sysmessage @,,1 Yerini kapattınız.
else
ref1.tag0.yeri
ref1.tag0.gorunur
src.sysmessage @,,1 Yeri ve görünürlülüğünü açtınız.
endif
Eklenen özellikler:
World üzerinde varolan bi spawnı random spawn olarak çıkarması
Burada kafanız karıştı bende okurken sonradan anlamadım
Yani worldde Kirin spawnı var ben birde bunu rastgele bir yere süreli çıkarmak istiyorum o özellik eklendi
Süre kısmını 0 yaparsanız spawn süresiz olur
Sonra spawnların yerini gösterilmesi ve gösterilmemesi eklendi.
Spawnların player tarafından görünmesi ve görünmemesi eklendi. Yeri derken GM gibi yerdeki kırmızı worldgem bit gözükmesinden bahsetmiyorum .spawntakip yazdıkların çıkan menüden bahsediyorum.
Spawnı sil eklendi.
Kod:
Eklenmesini istediğiniz özellik varsa ekleyebilirim.
Önemli: 56b de istimerf çalışıyor mu bilmiyorum hata alabilirsiniz.
Sağlıklı şekilde kullanmak istiyorsanız 56c sürümünü deneyiniz.