[PLEVEL 1]
check

[function check]
src.dialog d_check

[dialog d_check]
50,50
nomove
resizepic 0 10 5120 190 240
resizepic 12 20 3000 170 140

button 30 45 2714 2715 1 0 1
button 30 65 2714 2715 1 0 2
button 30 85 2714 2715 1 0 3
button 30 105 2714 2715 1 0 4
button 30 125 2714 2715 1 0 5

htmlgump 70 45 100 20 0 0 0
htmlgump 70 65 100 20 1 0 0
htmlgump 70 85 100 20 2 0 0
htmlgump 70 105 100 20 3 0 0
htmlgump 70 125 100 20 4 0 0
dhtmlgump 12 160 170 80 1 0 Bankanizinda <BANKBALANCE> altin var. <def.br>Cekinizin degeri ne olacakti <sex bayim/bayan>?
dhtmlgump 25 23 120 20 0 0 <def.l1>basefont size="3" color="#578356" <def.r1><def.b>Check Defteri
[dialog d_check text]
50.000 gp
100.000 gp
250.000 gp
500.000 gp
1.000.000 gp

[dialog d_check button]
On=1
if (<BANKBALANCE> >= 50000)
FINDLAYER(29).FINDID.i_gold.remove 50000
newitem i_check_brnx
new.more1 50000
new.more2 <uid>
new.bounce
else
sysmessage @54,,1 Bankanizin en ust kisminda 50k altininiz bulunmuyor.
endif

On=2
if (<BANKBALANCE> >= 100000)
FINDLAYER(29).FINDID.i_gold.remove 100000
newitem i_check_brnx
new.more1 100000
new.more2 <uid>
new.bounce
else
sysmessage @54,,1 Bankanizin en ust kisminda 100k altininiz bulunmuyor.
endif

On=3
if (<BANKBALANCE> >= 250000)
FINDLAYER(29).FINDID.i_gold.remove 250000
newitem i_check_brnx
new.more1 250000
new.more2 <uid>
new.bounce
else
sysmessage @54,,1 Bankanizin en ust kisminda 250k altininiz bulunmuyor.
endif

On=4
if (<BANKBALANCE> >= 500000)
FINDLAYER(29).FINDID.i_gold.remove 500000
newitem i_check_brnx
new.more1 500000
new.more2 <uid>
new.bounce
else
sysmessage @54,,1 Bankanizin en ust kisminda 500k altininiz bulunmuyor.
endif

On=5
if (<BANKBALANCE> >= 1000000)
FINDLAYER(29).FINDID.i_gold.remove 1000000
newitem i_check_brnx
new.more1 1000000
new.more2 <uid>
new.bounce
else
sysmessage @54,,1 Bankanizin en ust kisminda 1m altininiz bulunmuyor.
endif

[itemdef i_check_brnx]
id i_deed
type t_script
weight 0.1
name check

On=@Create
color 096d
attr 04

On=@Click
message=@0790,,1 Cek miktari: <eval <more1>>
message=@0492,,1 [<src.uid.<more2>.name>]
return 1

On=@DClick
IF !(<topobj.uid> == <src.uid>)
src.sysmessage=@39 Sadece cantanizdayken kullanabilirsiniz !
else
target=@065,,1 Islem yapacaginiz bankeri seciniz.
endif
return 1

On=@TargOn_Char
if (<src.targ.npc> == 5)
src.f_cek <more1>
src.ctag.checkiz 1
src.sfx 50
src.sysmessage @54,,1 <eval <more1>> altin bankaniza aktarildi.
remove
endif
return 1

On=@TargOn_Item
return 1

[function f_cek]
var.check <eval (<argn> - 50000)>
newitem i_gold
act.amount 50000
act.cont <findlayer(29).uid>
if (<eval <var.check>> >= 50000)
f_cek <eval <var.check>>
elseif (<eval <var.check>> > 0)
newitem i_gold
act.amount <eval <var.check>>
act.cont <findlayer(29).uid>
var.check
else
var.check
endif

[function check_deneme]
say Deneme
Return 1


[eof]

Ne yaptım ne ettimse check yapınca hepsinden 50000 gold alıyor remove yerine

FINDLAYER(29).FINDID.i_gold.consume 500000
newitem i_check_brnx

şeklinde denedim ama sadece 50000 alıyor her checkte :@ yardımlarınızı bekliyorum.
Sunu Denermisin ;


[dialog d_check]
50,50
resizepic 10 20 5120 400 150
resizepic 20 30 3000 380 130
//text 30 70 955 4
//text 30 110 955 5
resizepic 150 90 3000 130 22
textentry 165 90 253 25 0 0 2
htmlgump 30 40 150 25 3 1 0
tilepic 50 85 3826
tilepic 40 80 3823
tilepic 50 80 3819
tilepic 55 95 3825
tilepic 25 85 3820
tilepic 35 95 3823
tilepic 45 95 3820

htmlgump 30 70 300 20 4 0 0
htmlgump 30 110 300 20 5 0 0

htmlgump 35 130 150 25 6 0 0
htmlgump 310 130 40 25 7 0 0

//text 305 130 955 7
button 355 130 4005 4006 1 0 1


[dialog d_check text]
Cek Haline Getirebileceginiz 0 Altininiz Var
       Bunun Ne Kadarini Cek Yapalim?
0
Tarihi : <serv.rtime>
            Bu Cek Karsiliginda Bankamdan 
                   GP Cekilebilir.
[<src.name>]
Tamam

[dialog d_check button]
On=1
//src.sysmessage @38,1,1 Check Sistemi Bakima aAlinmistir.
//return 1

//if (<eval <ARGTXT[0]>>=0)
//src.sysmessage @38,1,1 Girdiginiz Miktar Gecersizdir.
//src.dialog d_check
//return 1
//endif

if (<isempty <argtxt[0]>>)
src.sysmessage @38,1,1 Bos Birakamazsiniz.
return 1
endif

if !(<isnum <argtxt[0]>>)
src.sysmessage @38,1,1 Sadece Rakam Girebilirsiniz.
return 1
endif

if (<eval <ARGTXT[0]>><50000)
src.sysmessage @38,1,1 50.000 GP Altinda Check Yazamazsiniz.
src.dialog d_check
return 1
endif

if (<eval <ARGTXT[0]>>>2000000)
src.sysmessage @38,1,1 2 Milyondan Fazla Check Yazamazsiniz.
src.dialog d_check
return 1
endif

src.payup <eval <ARGTXT[0]>>
if (<var.enough>)
src.newitem i_check
src.act.more1 <eval <ARGTXT[0]>>
src.act.more2 <uid>
src.act.bounce
else
src.sysmessage @38,1,1 Bu Check'i Yazdirabilcek Kadar Paraniz Yok..
endif

[itemdef i_check]
id i_deed
type t_script
weight 0.1
name check

On=@Create
color 0846
attr 04

On=@Click 
message @68 Check [<src.uid.<more2>.name>]
message @1153 [<eval <more1>> GP]
return 1

On=@DClick
target @1153,1,1 Ceki Bozdurmak Icin Banker Seciniz.
return 1

On=@TargOn_Char
if (<src.targ.npc> == 5)
	src.check_deposit <more1>
	src.sysmessage @68,1,1 <eval <more1>> Altin Bankaniza Aktarildi.
	remove
endif
return 1


[function payup]
if !(<args>)
return 1
endif
var.enough 0
var.totalgold <src.findlayer.21.rescount i_gold> + <src.findlayer.29.rescount i_gold>
if (<eval <args>> > <var.totalgold>)
else
var.enough 1
if (<eval <args>> <= <src.findlayer.29.rescount i_gold>)
goldtopack <args>
else
goldtopackall
endif
payamount <args>
endif

[function goldtopackall]
if (<src.findlayer.29.findid.i_gold.uid>)
src.findlayer.29.findid.i_gold.cont <src.findlayer.21.uid>
goldtopackall
endif

[function goldtopack]
var.counter <eval <args>>
var.found (<var.counter> - <src.findlayer.29.findid.i_gold.amount>)
if (<var.found> > 0)
src.findlayer.29.findid.i_gold.cont <src.findlayer.21.uid>
goldtopack <var.found>
else
var.left (0 - <var.found>)
if (<var.left>)
src.findlayer.29.findid.i_gold.amount <var.left>
else
src.findlayer.29.findid.i_gold.remove
endif
src.newitem i_gold 
src.act.amount <args> 
src.act.cont <src.findlayer.21.uid>
endif 

[function payamount]
var.counter <eval <args>>
if (<var.counter> > 65000)
src.consume 65000 i_gold
var.counter (<var.counter> - 65000) 
payamount <var.counter>
else
src.consume <args> i_gold
endif


On=@TargOn_Item
return 1

[function check_deposit]
var.check <eval (<argn> - 50000)>
newitem i_gold
act.amount 50000
act.cont <findlayer(29).uid>
if (<eval <var.check>> >= 50000)
	check_deposit <eval <var.check>>
elseif (<eval <var.check>> > 0)
	newitem i_gold
	act.amount <eval <var.check>>
	act.cont <findlayer(29).uid>
	var.check
else
	var.check
endif

[function packo] // (special thx to laroux below this line)
try src.tag.<uid> <rescount>
packo_loop <args>

[function packo_loop]
if (<eval <src.tag.<uid>>> > 0)
	try src.tag.<uid> <eval (<src.tag.<uid>> - 1)>
	//if (strmatch('<findcont.<eval <src.tag.<uid>>>.type>','t_container'))
	//	try findcont.<eval <src.tag.<uid>>>.packo <args>
	//else
		try findcont.<eval <src.tag.<uid>>>.<args>
	//endif
	packo_loop <args>
else
	try src.tag.<uid>
endif

[function gp]
var.gp 0
//findlayer(21).packo gp_ctrl
findlayer(29).packo gp_ctrl
return <eval <var.gp>>

[function gp_ctrl]
if (strmatch('<baseid>','i_gold'))
	var.gp <eval (<var.gp> + <amount>)>
endif

[function gpconsume]
var.gp <argn>
//findlayer(21).packo gpconsume_ctrl <argn>
findlayer(29).packo gpconsume_ctrl <argn>
return 1

[function gpconsume_ctrl]
if ((<var.gp> > 0) && (strmatch('<baseid>','i_gold')))
	if (<amount> > <eval (<var.gp>)>)
		amount <eval (<amount> - <var.gp>)>
		var.gp 0
	else
		var.gp <eval (<var.gp> - <amount>)>
		remove
	endif
endif

[function allgold]
local.player=<eval <rescount i_gold>+<findlayer.29.rescount i_gold>>
local.tmp=<obj>
var.gold_house=0
obj=<uid>
FORCHARMEMORYTYPE 0100
IF (<LINK.TYPE>==t_multi) || (<LINK.TYPE>==t_ship)
LINK.TOTALGOLD_HOUSE
ENDIF
ENDFOR
LOCAL.GOLD_HOUSE=<VAR.GOLD_HOUSE>
VAR.GOLD_HOUSE=
OBJ=<LOCAL.TMP>
RETURN <EVAL <LOCAL.PLAYER>+<LOCAL.GOLD_HOUSE>>

[function TOTALGOLD_HOUSE]
LOCAL.TMP2=<OBJ>
OBJ=<UID>
FORITEMS 60
IF (<REGION.UID>==<OBJ>) && (<BASEID>!=i_gold) && (<TYPE>==t_container)
var.gold_house += <rescount i_gold>
ELIF (<REGION.UID>==<OBJ>) && (<BASEID>=i_gold)
var.gold_house += <amount>
ENDIF
ENDFOR
OBJ=<LOCAL.TMP2>


//Usage: [obj].allgold

//ex.:

//IF (<ALLGOLD> < 10000)
//SAY I'm poor!
//ENDIF

///////////////////

[FUNCTION consumegoldcoins]
IF (<ALLGOLD> < <ARGN1>)
RETURN 1
ENDIF
LOCAL.AMOUNT=<ARGN1>
WHILE (<LOCAL.AMOUNT>)
IF (0<FINDLAYER.21.FINDID.i_gold>)
LOCAL.GOLD=<FINDLAYER.21.FINDID.i_gold.amount>
IF (<EVAL <LOCAL.AMOUNT>-<LOCAL.GOLD>> < 0)
FINDLAYER.21.FINDID.i_gold.AMOUNT -= <LOCAL.AMOUNT>
LOCAL.AMOUNT=0
ELSE
FINDLAYER.21.FINDID.i_gold.remove
LOCAL.AMOUNT -= <LOCAL.GOLD>
ENDIF
ELIF (0<FINDLAYER.29.FINDID.i_gold>)
LOCAL.GOLD=<FINDLAYER.29.FINDID.i_gold.amount>
IF (<EVAL <LOCAL.AMOUNT>-<LOCAL.GOLD>> < 0)
FINDLAYER.29.FINDID.i_gold.AMOUNT -= <LOCAL.AMOUNT>
LOCAL.AMOUNT=0
ELSE
FINDLAYER.29.FINDID.i_gold.remove
LOCAL.AMOUNT -= <LOCAL.GOLD>
ENDIF
ENDIF
ENDWHILE
UPDATE

//[function goldcheck]
//IF (<ALLGOLD> > <eval  <args>>)
//consumegoldcoins <eval <args>>
//ENDIF

[FUNCTION addgold]
IF (<ARGN1>)
IF (<ARGN1> > 64999)
SERV.NEWITEM i_gold
NEW.AMOUNT 65000
IF !(0<ARGN2>)
BOUNCE <NEW>
addgold <EVAL <ARGN1>-65000>
ELSE
NEW.CONT=<HVAL <ARGN2>>
addgold <EVAL <ARGN1>-65000> <ARGN2>
ENDIF
ELSE
SERV.NEWITEM i_gold
NEW.AMOUNT <ARGN1>
IF !(0<ARGN2>)
BOUNCE <NEW>
ELSE
NEW.CONT=<HVAL <ARGN2>>
ENDIF
ENDIF
ENDIF
UPDATE

[eof]

House Bugunu Biliyormusun Bilmiyorum Ama Onu Fixlemek İcin Housing.scp Gir Ordan Control F Yaz sabitliyemezsin Yazar Orayi Silerek Sunu Yapistir ;

elseif (<morex> == 1) // I wish to lock this down
	if ((<src.targ.type> == t_stone_guild) || (<src.targ.type> == t_spell) || (<src.targ.baseid> == i_corpse) || (<src.targ.type> == t_blood)) || (<src.targ.baseid> == i_check))
		src.sysmessage @026,,1 Bunu evine sabitleyemezsin.

Üye Ol veya Giriş Yap

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