Master
59.2997
Önceden yazmış olduğum birkaç kodu burada yayınlamaya karar verdim, öğrenmeye hevesli kişilere örnek olacak birkaç bölüm bulunduğunu düşünüyorum scriptlerde. Umarım işinize yarar.


[function scrollduzenle] // scroll birlestirme - Slothere
targetf f_scroll
sys_normal Birlestirilecek scrollardan bir tanesini seciniz?

[function f_scroll]
ref1 = <argo>
local.sayi = 0
ctag.scroll = <argo.baseid>
if (<ref1.type> != t_scroll)
	src.sys_error Sadece scroll..
return 1
endif
if (<ref1.amount> > 1)
	src.sys_error Bu scrollar zaten birlesik.
return 1
endif
forconttype t_scroll
	if (<baseid> == <ref1.baseid>) && (<amount> == 1)
		local.sayi +=1
		remove
	endif
endfor
serv.newitem <ctag0.scroll>
new.amount <dlocal.sayi>
new.cont = <src.uid>
new.update
sys_normal <dlocal.sayi> tane <serv.itemdef.<ctag0.scroll>.name> birlestirildi.
ctag.scroll =
return 1

// * writer : Slothere ( Item Transfer System v2.0)
// * date: 24.06.2008
// * version: 056b+

[defname slthritemtransfer]
// navigasyon aktif olsun mu?
sltnavigation 1
// transfer ücreti ( tane başına bu kadar alınacak )
sltgold 250

[plevel 1]
esyaaktar

[function esyaaktar]
src.sdialog d_charsecim
return 1

[dialog d_charsecim]
0,0
noclose

Page 0
resizepic 100 100 5120 250 200
resizepic 110 110 3000 230 180
dtext 170 110 0456 Transfer System
button 320 110 2714 2715 1 0 6

FOR 0 <eval (<account.chars>)-1>
dtext 180 <eval (<dlocal._for>*20)+150> 0456 <account.char.<dlocal._for>.name>
IF (<account.char.<dlocal._for>.uid> != <src.uid>)
button 155 <eval (<dlocal._for>*20)+150> 2714 2715 1 0 <eval (<dlocal._for>)+1>
ENDIF
ENDFOR

[dialog d_charsecim button]
on= 1 5
src.ctag.atilacak <account.char.<eval (<dargn>)-1>.uid>
src.sdialog d_itemsecim
sys_normal <account.char.<eval (<dargn>)-1>.name> isimli karaktere aktarilacak itemi secin?

[dialog d_itemsecim]
0,0

Page 0
resizepic 100 100 5120 250 300
resizepic 110 110 3000 230 280

local.sayfa = 1
local.esya = 0
obj = <findid.i_bankbox.uid>
dtext 170 110 0456 Transfer System
button 320 110 3 4 1 0 99999
PAGE 1
FOR 0 <eval (<obj.rescount>)-1>
IF <dlocal.esya> > 9
local.esya 0
button 280 360 015e1 015e5 0 <eval <local.sayfa>+1> 1
local.sayfa +=1
PAGE <eval <local.sayfa>>
button 300 360 015e3 015e7 0 <eval <local.sayfa>-1> 1
ENDIF
IF ((<uid.<obj.uid>.findcont.<dlocal._for>>) && (<uid.<obj.uid>.findcont.<dlocal._for>.type> != t_gold))
local.esya +=1
dtext 180 <eval (<local.esya>*20)+130> 0456 <uid.<obj.uid>.findcont.<dlocal._for>.name>
button 160 <eval (<local.esya>*20)+130> 2714 2715 1 0 <eval (<dlocal._for>)+1>
ENDIF
ENDFOR

[Dialog d_itemsecim button]
on = 1 10000
ref1 = <findid.i_bankbox.uid>
//sayu <dargn>. Item (<uid.<ref1.uid>.findcont.<eval (<dargn>)-1>.uid>)
IF ((<uid.<ref1.uid>.findcont.<eval (<dargn>)-1>.type> == t_container) && (<def.sltnavigation> == 1))
obj = <uid.<ref1.uid>.findcont.<eval (<dargn>)-1>.uid>
src.sdialog d_navigation
ELSE
obj = <uid.<ref1>.findcont.<eval (<dargn>)-1>.uid>
src.sdialog d_aktar
ENDIF

[dialog d_navigation]
0,0

noclose

Page 0
resizepic 100 100 5120 250 300
resizepic 110 110 3000 230 280

local.sayfa = 1
local.esya = 0
dtext 170 110 0456 Navigation System
dtext 180 360 0456 Cantayi yolla
button 160 360 2714 2715 1 0 10001
button 320 110 3 4 1 0 10000
PAGE 1
FOR 0 <eval (<obj.rescount>)-1>
IF <dlocal.esya> > 9
local.esya 0
button 280 360 2714 2715 0 <eval <local.sayfa>+1> 1
local.sayfa +=1
PAGE <eval <local.sayfa>>
button 300 360 015e3 015e7 0 <eval <local.sayfa>-1> 1
ENDIF
IF ((<uid.<obj>.findcont.<dlocal._for>>) && (<uid.<obj>.findcont.<dlocal._for>.type> != t_gold))
local.esya +=1
dtext 180 <eval (<local.esya>*20)+130> 0456 <uid.<obj>.findcont.<dlocal._for>.name>
button 160 <eval (<local.esya>*20)+130> 2714 2715 1 0 <eval (<dlocal._for>)+1>
ENDIF
ENDFOR

[dialog d_navigation button]
on  = 1 1000
ref1 = <obj>
obj = <uid.<ref1>.findcont.<eval (<dargn>)-1>.uid>
src.sdialog d_aktar

on = 10001
obj = <obj>
src.sdialog d_aktar

[Dialog d_aktar]
0,0

Page 0
resizepic 100 100 5120 400 200
resizepic 110 110 3000 380 180

resizepic 390 190 3000 90 90
// 2x serisi için.
// tilepic 405 210 <serv.itemdef.<obj.id>.id>
// 5x serisi için
tilepichue 405 210 <serv.itemdef.<obj.id>.id> <dobj.color>
dtext 245 110 0456 Transfer System
dhtmlgump 160 140 300 35 0 0 <def.bfont_red><obj.amount> <def.bfont_black>tane <def.bfont_red><obj.name> <def.bfont_black>isimli esyanizi <def.bfont_red><uid.<ctag0.atilacak>.name> <def.bfont_black>isimli chariniza transfer etmek istiyor musunuz?
button 160 190 4006 4007 1 0 1
dtext 200 190 0456 Evet
button 160 210 4006 4006 1 0 2
dtext 200 210 0456 Hayir
dhtmlgump 160 240 300 20 0 0 * Toplam transfer ucreti: <eval (<obj.amount>*<def.sltgold>)>gp

[Dialog d_aktar button]
on = 1
IF !(<src.restest <eval (<obj.amount>*<def.sltgold>)> i_gold>)
src.sys_error yaninizda <eval (<obj.amount>*<def.sltgold>)> altininiz bulunmuyor..
return 1
ENDIF
obj.cont <uid.<ctag0.atilacak>.findlayer.29.uid>
src.consume <eval (<obj.amount>*<eval <def.sltgold>>)> i_gold
src.sys_normal <obj.name> esyasini <uid.<ctag0.atilacak>.name> isimli karakterinize basariyla aktardiniz..
src.update
src.ctag.atilacak =

[EOF]

// * writer: Slothere
// * date: 02.09.2008
// * version: 056b+

[FUNCTION unvan]
sdialog d_title_select_slt
return 1

[DIALOG d_title_select_slt]
0,0

PAGE 0
resizepic 0 0 5054 270 320
//resizepic 10 10 3000 250 300
dcroppedtext 50 23 200 20 920 Ünvan Değişimi
local.page = 1
local.skills = 0

PAGE 1
FOR 0 48
IF (<dlocal.skills> > 11)
local.skills = 0
button 230 296 015e1 015e5 0 <eval (<dlocal.page>)+1> 1
local.page +=1
PAGE <dlocal.page>
button 200 296 015e3 015e7 0 <eval (<dlocal.page>)-1> 1
ENDIF
IF (<<serv.skill.<dlocal._for>.name>> > 98.1)
resizepic 48 <eval (<dlocal.skills>*20)+50> 3000 200 20
dhtmlgump 50 <eval (<dlocal.skills>*20)+50> 250 20 0 0 <def.bfont_dgray> <serv.skill.<dlocal._for>.name> (<serv.skill.<dlocal._for>.title>)
button 30 <eval (<dlocal.skills>*20)+50> 2714 2715 1 0 <eval (<dlocal._for>)+1>
local.skills +=1
ENDIF
ENDFOR

[DIALOG d_title_select_slt BUTTON]
on = 1 48
local.sayi = <eval (<dargn>)-1>
IF !(<<serv.skill.<dlocal.sayi>.name>> > 98.1)
	src.sysmessage @1153,1,1 <serv.skill.<dlocal.sayi>.name> yeteneginiz 98.1'den dusuk durumda.
return 1
ELSE
	src.title Grandmaster <serv.skill.<dlocal.sayi>.title>
	src.sysmessage @1153,1,1 Su anki unvaniniz: "Grandmaster <serv.skill.<dlocal.sayi>.title>"
return 1
ENDIF

[EOF]

// * writer : Slothere ( Family System )
// * date: 18.08.2008
// * version: 056b+

// Eksikler;
//# Aile Chat
//# Üyeler için çıkış fonksiyonu.

[COMMENT FAMILYSYSTEM]
- Sunucuda kurulan aile isimlerinin tek olması eklendi.
- Üye alımı aktif edildi.
- Üye listesi eklendi.
- Üye'lerin detaylarının incelenmesi eklenildi.
- Soy isim alırken ' karakteri ile alınması eklendi.
- Aileden üye atılması eklendi.
# finish: 18.08.2008 - 05:00

[DEFNAME FAMILYSYSTEM]
// Aileye alınacak max. kişi sayısı
familymaxmember 15
// Üye alımında alınacak ücret
familyinvitecash 25000

[ITEMDEF i_deed_family]
ID = i_deed
TYPE = t_script
WEIGHT = 2
NAME = Family Deed
VALUE = 270000

ON=@CREATE
COLOR = 0810
ATTR = ATTR_NEWBIE

ON=@CLICK
message @1153 <name>
return 1

ON=@DCLICK
IF (<src.uid> != <topobj.uid>)
	src.sys_error Sadece cantanizda kullanabilirsiniz..
return 1
ELIF (<src.flags>&statf_dead)
	src.sys_error Su anki halinizle kullanamazsiniz..
return 1
ENDIF
IF !(<isempty <src.tag.soyisim>>)
	src.sys_error Siz bir aileye uyesiniz.
return 1
ELSE
	src.sdialog d_createfamily
return 1
ENDIF

[Dialog d_createfamily]
0,0

PAGE 0
resizepic 200 100 5120 300 150
resizepic 210 110 3000 280 130
resizepic 280 150 3000 200 25
dtext 220 110 1153 <serv.name> Aile Sistemi
dtext 215 150 1153 Soyisim:
dtextentry 285 148 150 20 030 1
button 230 190 4006 4007 1 0 1
dtext 270 190 1153 Aileyi Kur

[Dialog d_createfamily button]
on = 1
FORPLAYERS 6144
IF (<src.uid> != <uid>) && (strmatch('<argtxt[1]>','<uid.<uid>.tag0.soyisim>')
	src.sys_error Bu soyisimden sunucuda bulunuyor.
return 1
ENDIF
ENDFOR
IF (strlen(<argtxt[1]>) < 5) || (strlen(<argtxt[1]>) > 15)
	src.sys_error Soyisim en az 5, en fazla 15 karakter olabilir..
return 1
ENDIF
FOR s 1 <eval (strlen(<argtxt[1]>))-1>
IF !(strmatch('[abcdefghijklmnoprstuvyz']','<strsub <dlocal.s> 1 <argtxt[1]>>'))
	src.sys_error Soy isminizde gecersiz karakterler bulunuyor.
return 1
ENDIF
ENDFOR
serv.newitem i_family_necklace_owner
new.tag.soyisim = <argtxt[1]>
new.tag.membernum= 0
new.tag.member0 = <src.uid>
new.link <src.uid>
new.equip
src.tag.soyisim <argtxt[1]>
src.tag.realname <src.name>
local.isim = <strtoupper(<strsub 0 1 <src.name>>)><strtolower(<strsub 1 15 <src.name>>)>
local.soyisim = <strtoupper(<strsub 0 1 <argtxt[1]>>)>
src.name <local.isim> <local.soyisim>
serv.allclients sysmessage @1153 <local.soyisim> isimli aile <local.isim> tarafindan kurulmustur.
src.findid.i_deed_family.remove
return 1

[ITEMDEF i_family_necklace_member]
ID = i_necklace_gold
TYPE t_jewelry
name = uye kolyesi
weight = 0.5

ON=@Create
COLOR = 07a1
ATTR = attr_newbie

ON=@CLICK
message @1153 [<link.name>]
message @030 Uye: <tag0.soyisim>
return 1

ON=@DCLICK
obj = <tag.masternecklace>
sdialog d_uyeler
return 1

[ITEMDEF i_family_necklace_owner]
ID = i_necklace_gold
TYPE = t_jewelry
name = aile kolyesi
weight = 0.5

ON=@CREATE
COLOR = 07a1
ATTR = attr_newbie

ON=@CLICK
message @1153 [<link.name>]
message @030 Reis: <tag0.soyisim>
return 1

ON=@EQUIP
IF (<link.uid> != <src.uid>)
	src.sys_error Bu kolye size ait degil.
return 1
ENDIF

ON=@DCLICK
IF (<link.uid> != <src.uid>)
	src.sys_error Bu kolye size ait degil..
return 1
ELIF (<src.uid> != <topobj.uid>)
	src.sys_error Bunu sadece uzerinizdeyken kullanabilirsiniz
return 1
ENDIF
obj = <uid>
sdialog d_familycontrol
return 1

[Dialog d_familycontrol]
0,0

PAGE 0
resizepic 150 90 5120 250 200
resizepic 160 100 3000 230 180
dcroppedtext 200 110 200 20 1153 <serv.name> Aile Menusu

dtext 220 140 0456 Aileye Uye Al
dtext 220 160 0456 Aileden Uye At
dtext 220 180 0456 Uyelere Bak
dtext 220 200 0456 Aileyi Sil
button 200 140 2714 2715 1 0 1
button 200 160 2714 2715 1 0 2
button 200 180 2714 2715 1 0 3
button 200 200 2714 2715 1 0 4

[Dialog d_familycontrol BUTTON]
on=1
IF !(<src.flags> & statf_dead)
	src.targetf f_uyealimi <uid>
	src.sys_normal Ailenize almak istediginiz kisiyi secin?
return 1
ENDIF

on=2
obj = <uid>
sdialog d_uyeat
return 1

on=3
obj = <uid>
sdialog d_uyeler
return 1

on=4
obj = <uid>
sdialog d_ailedagit
return 1

// üye alımı

[FUNCTION f_uyealimi]
ref1 = <argv[0]>
IF (<isempty <ref1>>) || (<isempty <ref2>>)
	src.sys_error Bir hata olustu yetkiliye basvurunuz.
return 1
ENDIF
IF !(<argo.isplayer>)
	src.sys_error Sadece oyunculari secebilirsiniz.
return 1
ENDIF
IF !(<isempty <argo.tag.soyisim>>)
	src.sys_error <argo.name>'in bir ailesi var.
return 1
ENDIF
IF (<argo.flags> & statf_dead)
	src.sys_error <argo.name>'i su anda ailenize alamazsiniz.
return 1
ENDIF
IF (<ref1.tag0.membernum> == <eval (<def0.familymaxmember>)>
	src.sys_error Bir aile <eval (<def0.familymaxmember>)>'den fazla uye alamaz.
return 1
ENDIF
IF !(<argo.restest <eval (<def0.familyinvitecash>)> i_gold>)
	src.sys_error <argo.name>'in yaninda <eval (<def0.familyinvitecash>)> altin bulunmuyor.
return 1
ENDIF
OBJ = <REF1>
TRYSRC <ARGO> sdialog d_invitefamily
//ARGO.TIMERF 10, dialogclose d_invitefamily
src.sys_error <argo.name> davet edildi cevap bekleniyor.
argo.sys_normal <src.name> sizi <src.tag0.soyisim> ailesine davet ediyor.

[DIALOG d_invitefamily]
0,0

resizepic 100 100 5120 250 150
resizepic 110 110 3000 230 130

dtext 115 130 0456 <obj.tag0.soyisim> ailesine davet edildiniz.
dtext 115 150 0456 Kabul ediyor musunuz?
button 125 180 2714 2715 1 0 1
button 125 200 2714 2715 1 0 2
dtext 145 180 0456 Evet
dtext 145 200 0456 Hayir

[DIALOG d_invitefamily BUTTON]
ON=0
try uid.<obj.link.uid>.sys_error <src.name> davetinizi red etti.
src.sys_error Daveti red ettiniz.

ON=2
try uid.<obj.link.uid>.sys_error <src.name> davetinizi red etti.
src.sys_error Daveti red ettiniz.
return 1

ON=1
IF (<obj.tag0.membernum> == <eval (<def0.familymaxmember>)>)
	src.sys_error <obj.tag0.soyisim> ailesinin uye sayisi dolmus.
return 1
ENDIF
IF !(<isempty <src.tag.soyisim>>)
	src.sys_error Sizin zaten bir aileniz bulunuyor. (<src.tag0.soyisim>)
	try uid.<obj.link.uid>.sys_error <src.name>'in bir ailesi bulunuyor. (<src.tag0.soyisim>)
return 1
ENDIF
IF !(<src.restest <eval (<def0.familyinvitecash>)> i_gold>)
	src.sys_error Uzerinizde <eval (<def0.familyinvitecash>)> altin bulunmuyor.
	try uid.<obj.link.uid>.sys_error <src.name>'in uzerinde <eval (<def0.familyinvitecash>)> altin bulunmuyor.
return 1
ENDIF
FOR <eval (<def0.familymaxmember>)> 1 
	IF (<isempty <obj.tag.member<dlocal._for>>>)
		local.bosslot = <dlocal._for>
	ENDIF
ENDFOR
	IF (<local.bosslot>)
		obj.tag.member<dlocal.bosslot> = <src.uid>
		obj.tag.membernum +=1
		src.tag.soyisim = <obj.tag0.soyisim>
		src.tag.realname = <src.name>
		src.name = <src.name> <obj.tag0.soyisim>
		serv.newitem i_family_necklace_member
		new.tag.soyisim = <obj.tag0.soyisim>
		new.tag.masternecklace = <obj.uid>
		new.link = <src.uid>
		new.equip <src>
		src.consume <eval (<def0.familyinvitecash>)> i_gold
		src.sys_normal <obj.tag0.soyisim> ailesine katildiniz.
		try uid.<obj.link.uid>.sys_normal <src.name> ailenize katildi.
		try uid.<obj.link.uid>.sys_normal Toplam: <eval (<obj.tag0.membernum>)> uyeniz var.
	return 1
	ELSE
		src.sys_error Ailede bos yer kalmamis.
		try uid.<obj.link.uid>.sys_error Ailede bos yer kalmamis.
	return 1
	ENDIF


// üyeyi atma işlemleri
[DIALOG d_uyeat]
0,0

resizepic 0 35 5120 250 400
resizepic 10 45 3000 230 380
dtext 30 45 1153 <obj.tag0.soyisim> Ailesinin Uyeleri

FOR 1 <eval (<def0.familymaxmember>)-1>
IF !(<isempty <obj.tag.member<dlocal._for>>>)
dtext 35 <eval (<local._for>*20)+70> <qval (<uid.<obj.tag.member<dlocal._for>>.isonline>)? 040:025> <uid.<obj.tag.member<dlocal._for>>.name>
button 15 <eval (<local._for>*20)+70> 2714 2715 1 0 <dlocal._for>
ENDIF
ENDFOR

[DIALOG d_uyeat button]
on=1 15
src.ctag.atilacak = <obj.tag.member<dargn>>
obj = <src.ctag0.atilacak>
sdialog d_atilimonay
return 1

[dialog d_atilimonay]
0,0

resizepic 100 100 5120 300 150
resizepic 110 110 3000 280 130

dtext 130 130 0456 <obj.name> isimli kisiyi 
dtext 130 149 0456 atmak istediginize emin misiniz?

button 150 180 2714 2715 1 0 1
button 150 200 2714 2715 1 0 2
dtext 170 180 0456 Evet
dtext 170 200 0456 Hayir

[dialog d_atilimonay button]
on=2
return 1

on=1
targetf f_uyeat
src.sys_normal Lutfen aile kolyenizi seciniz.
return 1

[function f_uyeat]
ref1 = <ctag.atilacak>
IF (<argo.baseid> == i_family_necklace_owner) && (strmatch('<argo.tag0.soyisim>','<src.tag0.soyisim>')
src.sys_normal <ref1.name> isimli kisi aileden atildi.
argo.tag.membernum -=1
ref1.tag.soyisim =
ref1.name = <obj.tag.realname>
ref1.findid.i_family_necklace_member.remove
ctag.atilacak =
FOR 1 <eval (<def0.familymaxmember>)>
	IF (<argo.tag0.member<dlocal._for>> == <ref1.uid>)
		argo.tag.member<dlocal._for> =
	return 1
	ENDIF
ENDFOR
else
src.sys_error Bu kolye degil..
return 1
ENDIF

[dialog d_ailedagit]
0,0

resizepic 100 100 5120 300 150
resizepic 110 110 3000 280 130

dtext 130 130 0456 <obj.tag0.soyisim> ailesini
dtext 130 149 0456 dagitmak istediginize emin misiniz?

button 150 180 2714 2715 1 0 1
button 150 200 2714 2715 1 0 2
dtext 170 180 0456 Evet
dtext 170 200 0456 Hayir

[dialog d_ailedagit button]
on=2
return 1

on=1
serv.allclients sysmessage @1153 <obj.tag0.soyisim> ailesi dagitilmistir.
FOR 1 <eval (<def0.familymaxmember>)-1>
IF !(<isempty <obj.tag.member<dlocal._for>>>)
try uid.<obj.tag.member<dlocal._for>>.name = <uid.<obj.tag.member<dlocal._for>>.tag.realname>
try uid.<obj.tag.member<dlocal._for>>.tag.soyisim =
try uid.<obj.tag.member<dlocal._for>>.tag.realname =
try uid.<obj.tag.member<dlocal._for>>.findid.i_family_necklace_member.remove
src.sys_normal <uid.<obj.tag.member<dlocal._for>>.name> aileden cikartildi.
obj.tag.member<dlocal._for> =
ENDIF
ENDFOR
obj.remove
src.tag.soyisim =
src.update
src.name = <src.tag.realname>
src.tag.realname =
src.sys_normal Aileyi dagittiniz.

// kolyedeki üye listeleri
[DIALOG d_uyeler]
0,0

resizepic 0 35 5120 250 400
resizepic 10 45 3000 230 380
dtext 30 45 1153 <obj.tag0.soyisim> Ailesinin Uyeleri

FOR 0 <eval (<def0.familymaxmember>)>
IF !(<isempty <obj.tag.member<dlocal._for>>>)
dtext 35 <eval (<local._for>*20)+70> <qval (<uid.<obj.tag.member<dlocal._for>>.isonline>)? 040:025> <uid.<obj.tag.member<dlocal._for>>.name>
button 15 <eval (<local._for>*20)+70> 2714 2715 1 0 <eval (<dlocal._for>)+1>
ENDIF
ENDFOR

[DIALOG d_uyeler button]
on=1 15
src.ctag.member = <obj.tag.member<eval (<argn>)-1>>
sdialog d_uyedetay
return 1

[dialog d_uyedetay]
0,0

obj = <src.ctag0.member>
resizepic 100 100 5120 350 300
resizepic 110 110 3000 330 280
FOR 1 10
resizepic 125 <eval (<local._for>*20)+130> 3000 120 20
ENDFOR
FOR 1 10
resizepic 220 <eval (<local._for>*20)+130> 3000 200 20
ENDFOR
dtext 130 150 0456 Isim:
dtext 130 170 0456 Str:
dtext 130 190 0456 Dex:
dtext 130 210 0456 Int:
dtext 130 230 0456 Fame:
dtext 130 250 0456 Karma:
dtext 130 270 0456 Kills:
dtext 130 290 0456 Region:
dtext 130 310 0456 Skilltotal:
dtext 130 330 0456 Bankbalance:
dtext 230 150 0 <obj.name>
dtext 230 170 0 <obj.str> / <obj.hits>
dtext 230 190 0 <obj.dex> / <obj.stam>
dtext 230 210 0 <obj.int> / <obj.mana>
dtext 230 230 0 <obj.fame>
dtext 230 250 0 <obj.karma>
dtext 230 270 0 <obj.kills>
dtext 230 290 0 <obj.region.name>
dtext 230 310 0 <fval <obj.skilltotal>>
dtext 230 330 0 <obj.bankbalance>

[EOF]

// * writer : Slothere (Runebook System)
// * date: 27 haziran 2008 (Güncelleme: 30.06.2008)
// * version: 056b+

[ITEMDEF i_runebook]
NAME = runebook
ID = i_spellbook
TYPE = t_script
VALUE = 1550
WEIGHT = 1.5

SKILLMAKE=INSCRIPTION 100.0, MAGERY 70.0
RESOURCES=50 i_scroll_blank, 3 i_scroll_recall, 5 i_scroll_gate_travel

ON=@CREATE
COLOR = 0845
ATTR = Attr_Newbie
tag.charge = 3
tag.runeisim =

ON=@CLICK
message @1153 <qval (!<isempty <tag.runeisim>>)? <name> [<tag.runeisim>]:<name>>
return 1

ON=@DCLICK
//IF (<src.isplayer>) && !(<src.isgm>)
//src.sys_error bir sureligine bakimda.
//return 1
//ENDIF
//IF (<src.isevent.e_hapiste>)
	//src.sys_error Jailde kullanamazsiniz.
//return 1
//ENDIF
IF (<src.flags>&statf_dead) || (<src.flags>&04)
	src.sys_error Su anki halinizle kullanamazsiniz.
return 1
ELIF (<region.flags>&region_flag_ship)
	src.sys_error Gemi icerisinde kullanamazsiniz.
return 1
ELIF (<src.action> == id(skill_magery)) || (<src.action> == skill_magery)
	src.sys_error Buyu yaparken kullanamazsiniz.
return 1
ELIF (<src.isevent.e_recall>)
return 1
ELIF (<src.tag0.kullanamaz>)
return 1
ENDIF
	sdialog d_runebook
return 1

ON=@DROPON_SELF
ref2 = <argo>
IF (<ref2.baseid> == i_rune_marker)
	IF (<ref2.morep>)
		ref1 = <ref2.uid>
		local.bosalan 0
		FOR s 14 1
		IF (<isempty <tag.rune.<dlocal.s>>>)
			local.bosalan = <dlocal.s>
		ENDIF
		ENDFOR
		IF (<local.bosalan>)
			try tag.rune.<dlocal.bosalan> = <ref1.name>
			try tag.lokasyon.<dlocal.bosalan> = <ref1.morep>
			src.sys_normal <ref1.name> isimli rune kitaba eklendi.
			sound 85
			ref1.remove
			//src.sayu <dlocal.bosalan>
		ELSE
			src.sys_error Kitapta bos yer kalmamis.
		ENDIF
	return 1
	ELSE
		src.sys_error Bu rune bos.
	return 1
	ENDIF
ENDIF
IF (<ref2.baseid> == i_scroll_recall)
	tag.charge = <eval (<tag.charge>+<ref2.amount>)>
	ref2.remove
	src.sys_normal Kitaba <ref2.amount> adet sarj eklendi.
return 1
ENDIF

[Dialog d_runebook]
0,0
Nomove

PAGE 0

gumppic 200 150 2200
gumppic 230 300 57
FOR 1 7
gumppic <eval (<local._for>*16)+230> 300 58
ENDFOR
gumppic 400 300 57
FOR 1 6
gumppic <eval (<local._for>*16)+400> 300 58
ENDFOR

button 230 320 55 56 1 0 500
dcroppedtext 255 318 100 20 0456 Isim: <tag.runeisim>
dtext 400 320 0456 Sarj: <dtag.charge>

FOR sl 1 7
IF !(<isempty <tag.rune.<dlocal.sl>>>)
	dhtmlgump 252 <eval (<local.sl>*18)+145> 105 20 0 0 <tag.rune.<dlocal.sl>>
	button 238 <eval (<local.sl>*18)+150> 2103 2104 1 0 <eval <local.sl>+50>
	button 353 <eval (<local.sl>*18)+150> 2103 2104 1 0 <eval <local.sl>+100>
	button 363 <eval (<local.sl>*18)+150> 2103 2104 1 0 <eval <local.sl>+200>
	button 228 <eval (<local.sl>*18)+150> 2103 2104 1 0 <dlocal.sl>
ENDIF
ENDFOR

FOR slt 8 14
IF !(<isempty <tag.rune.<dlocal.slt>>>)
	dhtmlgump 405 <eval (<local.slt>*18)+20> 100 20 0 0 <tag.rune.<dlocal.slt>>
	button 383 <eval (<local.slt>*18)+25> 2103 2104 1 0 <dlocal.slt>
	button 393 <eval (<local.slt>*18)+25> 2103 2104 1 0 <eval <local.slt>+50>
	button 511 <eval (<local.slt>*18)+25> 2103 2104 1 0 <eval <local.slt>+100>
	button 520 <eval (<local.slt>*18)+25> 2103 2104 1 0 <eval <local.slt>+200>
ENDIF
ENDFOR

[dialog d_runebook button]
on = 1 14
IF (<src.flags>&statf_dead) || (<src.flags>&04)
return 1
ENDIF
if (<src.mana> < 15)
	src.sound=92
	src.sys_error Yeterli mananiz yok.
return 1
endif
if (<dtag0.charge> > 0
	src.mana -=15
	tag.charge -=1
	src.anim 16
	src.events +e_recall
	src.sltnomove 30
	src.timerf 3,recall <tag.lokasyon.<dargn>>
	src.tag.recall = 1
	src.sayua 0481,6,6,0 Kal Ort Por
ELSEIF (<src.magery> < 25.0)
	src.sys_error Reagent ile kullanim icin magery skilliniz yetersiz. (Gereken: 25.0)
return 1
ELSEIF (<src.restest 1 i_reag_black_pearl>) && (<src.restest 1 i_reag_mandrake_root>) && (<src.restest 1 i_reag_blood_moss>)
	src.events +e_recall
	src.sltnomove 30
	src.timerf 3,recall <tag.lokasyon.<dargn>>
	src.consume 1 i_reag_black_pearl
	src.consume 1 i_reag_mandrake_root
	src.consume 1 i_reag_blood_moss
	src.mana -=15
	src.anim 16
	src.tag.recall = 1
	src.sayua 0481,6,6,0 Kal Ort Por
ELSE
	src.sys_error Uzerinizde kitabi kullanicak kadar sarj veya reagent bulunmuyor.
return 1
ENDIF

on = 51 64
IF (<src.flags>&statf_dead) || (<src.flags>&04)
return 1
ENDIF
IF (<src.magery> < 70.0)
	src.sys_error Magery skilliniz yetersiz. (Gereken: 70.0)
return 1
endif
if (<src.mana>< 40)
	src.sound=92
	src.sys_error Yeterli mananiz yok.
return 1
endif
IF (<dtag0.charge> > 0)
	src.mana -=40
	tag.charge -=1
	src.events +e_recall
	src.sltnomove 50
	src.timerf 5,runegate <tag.lokasyon.<eval (<argn>)-50>>
	src.anim 16
	src.tag.recall = 1
	src.sayua 0481,6,6,0 Vas Rel Por
ELIF (<src.restest 1 i_reag_black_pearl>) && (<src.restest 1 i_reag_mandrake_root>) && (<src.restest 1 i_reag_sulfur_ash>)
	src.events +e_recall
	src.sltnomove 30
	src.timerf 3,runegate <tag.lokasyon.<eval (<argn>)-50>>
	src.consume 1 i_reag_black_pearl
	src.consume 1 i_reag_mandrake_root
	src.consume 1 i_reag_sulfur_ash
	src.mana -=40
	src.anim 16
	src.tag.recall = 1
	src.sayua 0481,6,6,0 Vas Rel Por
ELSE
	src.sys_error Uzerinizde kitabi kullanicak kadar sarj veya reagent bulunmuyor.
RETURN 1
ENDIF

on = 101 114
src.sys_normal <eval (<argn>)-100>. siradaki <tag.rune.<eval (<argn>)-100>> isimli rune'u cikarttiniz.
serv.newitem i_rune_marker
new.morep <tag.lokasyon.<eval (<argn>)-100>>
new.name <tag.rune.<eval (<argn>)-100>>
new.cont <src.uid>
try tag.lokasyon.<eval (<argn>)-100> =
try tag.rune.<eval (<argn>)-100> =
try tag.region.<eval (<argn>)-100> =
return 1

on = 201 214
src.tag.uid = <uid>
src.tag.sira = <eval (<argn>)-200>
sdialog d_rnamechange
return 1

on = 500
src.ctag.runebook = <uid>
sdialog d_namechange
return 1


[dialog d_namechange]
0,0

PAGE 0
resizepic 250 90 5120 250 120
resizepic 260 100 3000 230 100
alphablack 260 100 230 100
resizepic 280 130 3000 200 20
dtext 280 110 0456 Kitabin yeni ismi ne olsun?
button 280 150 4006 4007 1 0 1
dtext 315 150 0456 Tamam
dtextentry 285 127 130 20 150 0
dtext 415 150 0456 Sifirla
button 380 150 4006 4007 1 0 2

[dialog d_namechange button]
on = 1
obj = <src.ctag0.runebook>
IF (<isempty <argtxt[0]>>)
	src.sys_error Kitap ismini bos birakamazsiniz..
return 1
ELIF (strlen(<argtxt[0]>) > 15)
	src.sys_error 15 karakterden uzun olamaz.
return 1
ENDIF
obj.tag.runeisim <argtxt[0]>
src.sys_normal Kitabin ismi <argtxt[0]> olarak degistirildi.
return 1

on = 2
obj.tag.runeisim =
src.sys_normal Kitabin ismi sifirlandi.
return 1

[dialog d_rnamechange]
0,0

PAGE 0
resizepic 250 90 5120 250 120
resizepic 260 100 3000 230 100
resizepic 280 130 3000 200 20
dtext 280 110 0456 Rune'un ismi ne olsun.?
button 280 150 4006 4007 1 0 1
dtext 315 150 0456 Tamam
dtextentry 285 127 130 20 150 0
dtext 415 150 0456 Sifirla
button 380 150 4006 4007 1 0 2

[dialog d_rnamechange button]
on = 1
obJ = <src.tag.uid>
src.tag.uid =
IF (<isempty <argtxt[0]>>)
	src.sys_error Rune ismini bos birakamazsiniz.
return 1
ELIF (strlen(<argtxt[0]>) > 20)
	src.sys_error 20 karakterden uzun olamaz.
return 1
ENDIF
IF (<isempty <obj.tag.region.<eval (<src.tag.sira>)>>>)
obj.tag.region.<eval (<src.tag0.sira>)> = <obj.tag.rune.<eval (<src.tag.sira>)>>
obj.tag.rune.<eval (<src.tag.sira>)> = <argtxt[0]>
src.sys_normal Rune'un ismi <argtxt[0]> olarak degistirildi.
src.tag.sira =
else
obj.tag.rune.<eval (<src.tag.sira>)> <argtxt[0]>
src.sys_normal Rune'un ismi <argtxt[0]> olarak degistirildi.
src.tag.sira =
ENDIF

on = 2
obj = <src.tag.uid>
src.tag.uid =
IF !(<isempty <obj.tag.region.<eval (<src.tag.sira>)>>>)
obj.tag.rune.<eval (<src.tag.sira>)> = <obj.tag.region.<eval (<src.tag.sira>)>>
obj.tag.region.<eval (<src.tag.sira>)> =
src.sys_normal Rune'un ismi sifirlandi.
src.tag.sira =
ENDIF

[function sltnomove]
IF (<tag0.nomovetill> < <eval <tag0.nomovetill>+<argn>>)
tag.nomovetill <eval <serv.time>+<argn>>
ENDIF

[events e_recall]
on=@logout
src.tag.kullanamaz 1
src.timerf 3,src.tag.kullanamaz =
src.tag.nomovetill =
src.tag.recall =
events -e_recall
effect 3,i_fx_smoke_small,30,36,0
sys_normal The spell fizzles
sound 92

on=@Skillstart
src.tag.kullanamaz 1
src.timerf 3,src.tag.kullanamaz =
src.tag.nomovetill =
src.tag.recall =
skill fail
events -e_recall
effect 3,i_fx_smoke_small,30,36,0
sys_normal The spell fizzles
sound 92

ON=@Gethit
src.tag.kullanamaz 1
src.timerf 3,src.tag.kullanamaz =
src.tag.nomovetill =
src.tag.recall =
events -e_recall
effect 3,i_fx_smoke_small,30,36,0
sys_normal The spell fizzles
sound 92

On=@Death
src.tag.kullanamaz 1
src.timerf 3,src.tag.kullanamaz =
src.tag.nomovetill =
src.tag.recall =
src.events -e_recall
src.effect 3,i_fx_smoke_small,30,36,0
src.sys_normal The spell fizzles
src.sound 92

on=@UserWarMode
src.tag.kullanamaz 1
src.timerf 3,src.tag.kullanamaz =
src.tag.nomovetill =
src.tag.recall =
src.events -e_recall
src.tag.recall =
src.effect 3,i_fx_smoke_small,30,36,0
src.sys_normal The spell fizzles
src.sound 92

[function recall]
IF (<flags>&statf_dead)
return 1
ENDIF
IF (<tag0.recall>)
src.go <args>
src.events -e_recall
src.sound 254
src.tag.recall =
src.tag.kullanamaz 1
src.timerf 3,src.tag.kullanamaz =
return 1
ENDIF

[function runegate]
IF (<flags>&statf_dead)
return 1
ENDIF
IF (<tag0.recall>)
serv.newitem i_gate_rune
new.morep <strarg <args>>,<strarg <streat <args>>>,<strarg <streat <streat <args>>>>,<strarg <streat <streat <streat <args>>>>>
new.attr attr_static|attr_decay
new.p <src.p>
serv.newitem i_gate_rune
new.morep <src.p>
new.attr attr_static|attr_decay
new.p <args>
src.tag.recall =
src.events -e_recall
src.tag.kullanamaz 1
src.timerf 3,src.tag.kullanamaz =
return 1
ENDIF

[ITEMDEF i_gate_rune]
ID = i_moongate_blue
NAME = rune gate
TYPE = t_moongate

ON=@CREATE
COLOR = 0455
TIMER = 30

ON=@CLICK
message @<qval (<serv.map(<morex>,<morey>,<morez>,<morem>).region.guarded>)? 02:025>,1,1 (<serv.map(<morex>,<morey>,<morez>,<morem>).region.name>)
return 1

ON=@STEP
sdialog d_gatetravel2
return 1

on=@dclick
sdialog d_gatetravel2
return 1

on=@timer
remove
return 1

[dialog d_gatetravel2]
0,0

PAGE 0
resizepic 150 70 5120 250 150
resizepic 160 80 3000 230 130
dcroppedtext 165 190 200 20 <qval (<serv.map(<morex>,<morey>,<morez>,<morem>).region.guarded>)? 02:025> (<serv.map(<morex>,<morey>,<morez>,<morem>).region.name>)
dcroppedtext 200 90 200 20 1153 Gitmek istiyor musunuz?
button 200 130 4006 4007 1 0 1
dtext 235 130 1153 Evet
button 290 130 4006 4007 1 0 2
dtext 325 130 1153 Hayir

[dialog d_gatetravel2 button]
on = 2
return 1

on = 1 
IF (<distance> > 2) || !(<canseelos>)
	src.sys_normal Gate'e uzaktasiniz..
return 1
ENDIF
src.go <morep>
src.update
return 1

[EOF]

// * writer: Slothere (Page System)
// * date: 06.09.2008
// * version: (056b+) - (client 4x+)

[EVENTS e_send]
on=@LOGIN
SDIALOG d_page_answer
EVENTS -e_send

[PLEVEL 2]
pg

[FUNCTION pg]
IF (<serv.gmpages>)
	sdialog d_page_view
else
	sys_error Page bulunmuyor..
return 1
ENDIF

[DIALOG d_page_send]
0,0

PAGE 0
nomove
resizepic 30 30 5054 500 120
checkertrans 40 40 480 100
resizepic 70 60 3000 420 35
dcroppedtext 70 35 400 20 920 Lütfen sorununuzu kısaca ve net olarak belirtiniz.
dtextentry 75 65 400 20 920 1
dtext 100 100 920 Gönder
button 80 100 2714 2715 1 0 1

[DIALOG d_page_send button]
on=1
GMPAGE add <uid> <argtxt[1]>

[DIALOG d_page_view]
0,0

PAGE 0
nomove
resizepic 0 50 5054 650 300
checkertrans 10 60 630 280
dtext 55 60 025 Gönderen
dtext 195 60 025 Gönderilen
dtext 350 60 025 Süre
dtext 450 60 025 Durum
button 20 305 4006 4007 1 0 20000
dtext 50 305 920 Hepsini Sil
local.page = 1
local.bildiri = 0

PAGE 1
FOR 0 <eval (<serv.gmpages>)-1>
	IF (<dlocal.bildiri> > 10)
		local.bildiri = 0
		button 610 320 015e1 015e5 0 <eval (<dlocal.page>)+1> 1
		local.page += 1
PAGE <dlocal.page>
	button 580 320 015e3 015e7 0 <eval (<dlocal.page>)-1> 1
	ENDIF
resizepic 55 <eval (<dlocal.bildiri>*20)+80> 3000 140 20
dcroppedtext 60 <eval (<dlocal.bildiri>*20)+80> 135 20 <QVAL (<uid.<strarg <serv.gmpage.<dlocal._for>.reason>>.isonline>)? 040:025> <uid.<strarg <serv.gmpage.<dlocal._for>.reason>>.name>
resizepic 195 <eval (<dlocal.bildiri>*20)+80> 3000 155 20
dcroppedtext 200 <eval (<dlocal.bildiri>*20)+80> 145 20 920 <streat <serv.gmpage.<dlocal._for>.reason>>
resizepic 350 <eval (<dlocal.bildiri>*20)+80> 3000 100 20
dcroppedtext 355 <eval (<dlocal.bildiri>*20)+80> 95 20 920 <eval (<serv.gmpage.<dlocal._for>.time>)/60> dk önce
resizepic 450 <eval (<dlocal.bildiri>*20)+80> 3000 180 20
dcroppedtext 455 <eval (<dlocal.bildiri>*20)+80> 175 20 920 <QVAL (<serv.gmpage.<dlocal._for>.handled>)? İlgileniliyor (<uid.<serv.gmpage.<dlocal._for>.handled>.name>):Beklemede>
button 20 <eval (<dlocal.bildiri>*20)+80> 4006 4007 1 0 <eval (<dlocal._for>)+1>
local.bildiri +=1
ENDFOR

[DIALOG d_page_view BUTTON]
ON = 1 1000
IF (<serv.gmpage.<eval <argn>-1>.handled>) && (<uid.<serv.gmpage.<eval <argn>-1>.handled>> != <src.uid>)
	src.sys_error Bu bildiriyle <uid.<serv.gmpage.<eval <argn>-1>.handled>.name> ilgileniyor.
return 1
ENDIF
src.ctag.sira = <eval <argn>-1>
sdialog d_page_info
return 1

on=20000
IF (<ispghandled>)
	src.sys_error Şu anda ilgilenilen bildiriler var..
return 1
ELSE
	PAGE WIPE
	serv.allclients sys_normal Tüm pageler silinmiştir.
ENDIF

[DIALOG d_page_info]
0,0

PAGE 0
resizepic 100 50 5054 300 330
checkertrans 110 60 280 310
dtext 120 70 025 Gönderenin;
dtext 120 210 025 Gönderilen;
dhtmlgump 120 100 200 105 0 0 <def.bfont_white>Account: <uid.<strarg <serv.gmpage.<src.ctag0.sira>.reason>>.account><def.br>Ismi: <uid.<strarg <serv.gmpage.<src.ctag0.sira>.reason>>.name><def.br>SkillTotal <fval <uid.<strarg <serv.gmpage.<src.ctag0.sira>.reason>>.skilltotal>><def.br>StatTotal: <eval (<uid.<strarg <serv.gmpage.<src.ctag0.sira>.reason>>.str>)+(<uid.<strarg <serv.gmpage.<src.ctag0.sira>.reason>>.dex>)+(<uid.<strarg <serv.gmpage.<src.ctag0.sira>.reason>>.int>)><def.br>Kayit: <uid.<strarg <serv.gmpage.<src.ctag0.sira>.reason>>.account.firstconnectdate><def.br>IP: <uid.<strarg <serv.gmpage.<src.ctag0.sira>.reason>>.account.lastip>
dhtmlgump 120 230 225 110 1 1 <streat <serv.gmpage.<src.ctag0.sira>.reason>>

resizepic 100 380 5054 300 150
checkertrans 110 390 280 130
FOR 5
button 120 <eval (<dlocal._for>*20)+380> 4006 4007 1 0 <dlocal._for>
ENDFOR
dtext 160 400 1153 Sil
dtext 160 420 1153 Cevap Gönder
dtext 160 440 1153 Yanına Getir
dtext 160 460 1153 Yanına Git
dtext 160 480 1153 Hapise Gönder

[DIALOG d_page_info BUTTON]
on = 1
IF (<serv.gmpage.<src.ctag0.sira>.handled>) && (<uid.<serv.gmpage.<src.ctag0.sira>.handled>> != <src.uid>)
	src.sys_error Şu anda bu bildiri ile ilgileniliyor. (<uid.<serv.gmpage.<src.ctag0.sira>.handled>.name>)
return 1
ENDIF
TRY gmpage.<eval <src.ctag0.sira>>.handle
TRY gmpage.<eval <src.ctag0.sira>>.d
src.sys_normal Page silindi.

on=2
IF (<serv.gmpage.<src.ctag0.sira>.handled>) && (<uid.<serv.gmpage.<src.ctag0.sira>.handled>> != <src.uid>)
	src.sys_error Şu anda bu bildiri ile ilgileniliyor. (<uid.<serv.gmpage.<src.ctag0.sira>.handled>.name>)
return 1
ENDIF
TRY gmpage.<eval <src.ctag0.sira>>.handle
ref1 = <strarg <serv.gmpage.<src.ctag0.sira>.reason>>
ref1.sdialog d_send_reply

on=3
IF (<serv.gmpage.<src.ctag0.sira>.handled>) && (<uid.<serv.gmpage.<src.ctag0.sira>.handled>> != <src.uid>)
	src.sys_error Şu anda bu bildiri ile ilgileniliyor. (<uid.<serv.gmpage.<src.ctag0.sira>.handled>.name>)

return 1
ENDIF
ref1 = <strarg <serv.gmpage.<src.ctag0.sira>.reason>>
IF (<ref1.isonline>)
	TRY gmpage.<eval <src.tag0.sira>>.handle
	ref1.summonto
ELSE
	src.sys_error <ref1.name> şu anda oyunda değil..
return 1
ENDIF

on=4
IF (<serv.gmpage.<src.ctag0.sira>.handled>) && (<uid.<serv.gmpage.<src.ctag0.sira>.handled>> != <src.uid>)
	src.sys_error Şu anda bu bildiri ile ilgileniliyor. (<uid.<serv.gmpage.<src.ctag0.sira>.handled>.name>)
return 1
ENDIF
ref1 = <strarg <serv.gmpage.<src.ctag0.sira>.reason>>
IF (<ref1.isonline>)
	TRY gmpage.<eval <src.tag0.sira>>.handle
	src.go <ref1.p>
ELSE
	src.sys_error <ref1.name> şu anda oyunda değil..
return 1
ENDIF

on=5
// jail eklenicek..

[DIALOG d_send_reply]
0,0

PAGE 0
nomove
resizepic 30 30 5054 500 250
checkertrans 40 40 480 230
resizepic 70 170 3000 420 50
dcroppedtext 70 150 400 20 920 <uid.<strarg <serv.gmpage.<src.ctag0.sira>.reason>>.name> isimli kişiye gönderilecek iletiyi yazınız.
dtextentrylimited 75 175 400 45 920 1 175
dtext 100 230 920 Gönder
button 80 230 2714 2715 1 0 1
dtext 70 40 920 Gönderilen İleti,
dhtmlgump 70 65 420 65 1 1 <streat <serv.gmpage.<src.ctag0.sira>.reason>>

[DIALOG d_send_reply BUTTON]
on=1
tag.pagemsg = <argtxt[1]>
tag.date = <serv.rtime>
tag.sender = <src.uid>
tag.sended = <streat <serv.gmpage.<src.ctag0.sira>.reason>>
IF (<ISONLINE>)
	TRYSRC <UID> sdialog d_page_answer
	src.page d
ELSE
	events +e_send
	src.page d
ENDIF
src.sys_normal Cevap gönderildi.
return 1

[DIALOG d_page_answer]
0,0

PAGE 1
button 15 30 30 30 0 2 1
dtext 15 60 1153 Mesajınız Var!

PAGE 2
resizepic 30 30 5054 500 300
checkertrans 40 40 480 280
dtext 70 60 1153 Mesajı Gönderen: <uid.<tag0.sender>.name> | Tarih: <tag0.date>
dhtmlgump 70 85 400 90 1 1 <tag0.pagemsg>
dtext 70 180 1153 Gönderdiğiniz İleti,
dhtmlgump 70 205 400 70 1 1 <tag0.sended>

[DIALOG d_page_answer BUTTON]
on=0
tag.sended =
tag.sender = 
tag.pagemsg =
tag.date =

[FUNCTION ispghandled]
FOR 0 <eval (<serv.clients>-1>
IF (<serv.client.<dlocal._for>.account.plevel> > 1) && (<serv.gmpage.<dlocal._for>.handled>)
		return 1
ENDIF
ENDFOR
return 0

[EOF]

* Page sisteminde staff panelindeki 5. buttona kendi hapis sisteminize göre entegre edilmiş bir ceza fonksiyonu eklenmeli.

Bu konu Slothere tarafından düzenlendi(2008-09-12 17:33, 15 yıl önce)
Eline sağlık gene döktürmüşsün..
Unvan Sistemini Begendim SLothere Basarilarinin Devami :=)
Master
59.2997
Ünvan sistemindeki teknik bir sorun düzeltildi.
Sistemlerin hepsini biliyordum page sistemi en hoşuma gideni oldu Gökberk farkı :D
alie cocuklarım olmadan asla ...Bu arada Slothere Scpler cok güzel zaten emek vererk yapıldıktan sonra bi işe cirkin demek o insanın çirkefliği olur xD ama şöyle bi durum varki scpleri ne aldım ne denedim ne baktım sadece içerige baktım 56b den köküne kadar yararlanmışsın xD
Gökberk zaten eskide kalmaz aynı benim gibi bana çekmiş aferim :D
Gökberk'e sen öğrettin bu işi zaten.. :)
Evet yoksa kalıcaktı 55ide 56bdeki bütün yeniliklerin hepsini ben öğrettim Gökberke ama şöyle bir durum oldu boynuz kulağı geçti. :D
56b yi değilde sen script yazmayı öğrettin sanıyorum..
Temelini öğrettin bu işin sen.. :)
Yani aslında orasıda öylede yani scripting girişi ben öğretmiştim ama 56b yenilikler hakkında daha çok eğittim.Şaka bir yana bu adam bu işi biliyor ya süper kardeşim.
Eline sağlık ne diyeyim.. zaman ayırıp yazması yeter.. :)
Unvan Sistemin Cok Güzel Olmusta Bisi Denedim

Mesela ArmsLore 'un100 Oldugunda Cinsiyet Farkına Göre

ArmsWoman Veya ArmsMan Gibi Sey Aliorda

Unvansecmede
Arms^+% Gibi Bisi Cikiyor.Onu Player O Titlelerden Düzeltmek Lazm :)
Master
59.2997
Onlar skill'lerin tanımlandığı yerde Armsman veya Armswoman gibi otomatik tanımlanmaların yapılmasından kaynaklanıyor. Sphere_skills.scp'in içerisindeki skillerin title'larını düzeltirseniz sorun kalmayacaktır.

Örn;
[Skill 4]
DEFNAME=Skill_Armslore
KEY=ArmsLore
TITLE=Arms%s
PROMPT_MSG=Neyi inceleyeceksiniz?
DELAY=1.0,3.0
ADV_RATE=1.0,1.0,1.0
Slothere Saolasinda Ben Yapmistim Zaten :) Scriptti Denemek Icin alan Baska arkdaslar Yapamazlar Diye Solemistim Ama..

Bilgi Icin Genede SaoL.

Üye Ol veya Giriş Yap

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