Açık Arttırma sisteminde eğer parası örneğin 5m den az ise paranız az diyor ama adamda 5 m varsa alabiliyor + parasından 1 kuruş gitmiyor :S
Yardımcı Olursanız Çok Sevinirim.
Buyrun Scp:

[itemdef i_acikarttirma]
id i_grave_stone
name acik arttirma

on=@create
color 49

on=@dclick
if (<var.acikarttirmabasla> = 1 )
sdialog d_acikarttirma
return 1
else
src.sysmessage Acik arttirma su an icin baslamamis.
endif
return 1


[dialog d_acikarttirma]
50,50
nomove
resizepic 0 0 5054 550 300
dtext 150 20 1152 <serv.name> Acik Arttirma Menusu
dtext 40 60 1152 Ihaleye sunulan esya: <var.ihaleesyasi>
dtext 40 80 1152 En yuksek teklif: <eval <var.enyuksek>>
dtext 40 100 1152 En yuksek teklifi yapan: <var.enyuksekyapan>
dtextentry 50 152 90 20 990 1 <eval <var.enyuksek> +50000>
dtext 40 120 1152 Bitis Fiyati: <eval <var.bitisfiyati>>
button 150 150 4005 4006 1 0 1
dtext 190 150 1152 Teklif Yap
dtext 200 250 00 By" KeLL


[dialog d_acikarttirma button]
on=0
src.sysmessage @07a1 Acik arttirmaya katilmaktan vazgectiniz.
return 1


on=1
if !(<isnum <argtxt[1]>>)
src.sysmessage Sadece rakam kullanabilirsiniz.
elseif (<eval <argtxt[1]>> < 1)
src.sysmessage Hatali bir rakam girdiniz.
elseif (<eval <argtxt[1]>> < <eval <var.enyuksek>+50000> )
src.sysmessage En yuksek tekliften 50k daha fazla teklif etmelisiniz
elseif (<eval <argtxt[1]>> > <src.totalgold>)
src.sysmessage Bankanizda <eval <argtxt[1]>> kadar altin bulunmuyor.
else
var.enyuksekyapan <src.name>
var.enyuksek <eval <argtxt[1]>>
var.enyuksekyapanuid <src.uid>
serv.allclients sysmessage @49 <serv.name> Acik Arttirma Duyuru:
serv.allclients sysmessage @49 <var.enyuksekyapan> , <var.ihaleesyasi> icin <eval <var.enyuksek>> teklifi yapti.
f_ihale_bittimi <eval <argtxt[1]>>
endif
endif

[function f_ihale_bittimi]
if (<eval <args>> >= <eval <var.bitisfiyati>>
src.sysmessage Acik arttirmayi kazandiniz.
f_ihalebitti
serv.allclients sysmessage @49 <serv.name> Acik arttirma Duyuru:
serv.allclients sysmessage @49 <var.enyuksekyapan> acik arttirmayi kazandi..
endif

[function ayarihale]
if (<account.plevel> < 6)
src.sysmessage Sadece admin ve ownerlar kullanabilir.
else
sdialog d_ihaleayar
endif
endif

[dialog d_ihaleayar]
50,50
nomove
resizepic 0 0 5054 550 300
dtext 150 20 1152 Acik Arttirma Ayar menusu
dtext 40 50 1152 binegin idsi:
dtextentry 120 50 90 20 49 1 c_m_unicorn
dtext 40 70 1152 binegin ismi:
dtextentry 120 70 90 20 49 2 Unicorn
dtext 40 90 1152 baslangic fiyati:
dtextentry 150 90 150 20 49 3 2500000
dtext 40 110 1152 bitis fiyati:
dtextentry 150 110 150 20 49 4 7000000

button 100 210 2473 2474 1 0 1
dtext 150 250 00 By Scripter KeLL
dtext 140 213 1153 Ihaleyi baslat!


[dialog d_ihaleayar button]
on=1
var.binek <argtxt[1]>
var.ihaleesyasi <argtxt[2]>
var.enyuksek <argtxt[3]>
var.bitisfiyati <argtxt[4]>
acikal <var.bitisfiyati>
var.acikarttirmabasla 1
serv.allclients sysmessage @49 <serv.name> Acik arttirma Duyuru:
serv.allclients sysmessage @49 Acik arttirma baslamistir.Satilan binek:<var.ihaleesyasi>.Baslangic fiyati <eval <var.enyuksek>>tir.
return 1

[function f_ihalebitti]
serv.newitem i_deed_ihalebinek
new.tag.binekid <var.binek>
new.cont <var.enyuksekyapanuid>
var.acikarttirmabasla 0
var.enyuksekyapan
var.enyuksekuid
var.enyuksek


[ITEMDEF i_deed_ihalebinek]
DEFNAME=i_deed_ihalebinek
NAME=Binek Deed
ID=i_deed
WEIGHT=5.0
TYPE=t_script

On=@Create
color 0fb4
attr 04

on=@Dclick
if !(<topobj.uid> = <src.uid>)
src.sysmessage @55 Hata : Bunu kullanabilmeniz icin cantanizda olmali.
return 1
else
src.newnpc <tag.binekid>
link <src.act.uid>
link.oskin <link.color>
link.newitem i_memory
link.act.attr 04
link.act.more1 04
link.act.more2 <serv.time>
link.act.morep <link.p>
link.act.color memory_ipet
link.act.timer -1
link.act.link <src.uid>
link.act.cont <link.uid>
link.flags <link.flags>&statf_pet
link.update
link.anim 5
link.bark 3
remove
return 1
endif

on=@click
message @07a1 <serv.name>
message @07a1 Acik Arttirma Binegi
return 1




[FUNCTION acikal]
IF (<totalgold> < <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


Bu konu Slothere tarafından düzenlendi(2009-05-02 04:56, 15 yıl önce)
[itemdef i_acikarttirma]
id i_grave_stone
name acik arttirma

on=@create
color 49

on=@dclick
if (<var.acikarttirmabasla> = 1 )
sdialog d_acikarttirma
return 1
else
src.sysmessage Acik arttirma su an icin baslamamis.
endif
return 1


[dialog d_acikarttirma]
50,50
nomove
resizepic 0 0 5054 550 300
dtext 150 20 1152 <serv.name> Acik Arttirma Menusu
dtext 40 60 1152 Ihaleye sunulan esya: <var.ihaleesyasi>
dtext 40 80 1152 En yuksek teklif: <eval <var.enyuksek>>
dtext 40 100 1152 En yuksek teklifi yapan: <var.enyuksekyapan>
dtextentry 50 152 90 20 990 1 <eval <var.enyuksek> +50000>
dtext 40 120 1152 Bitis Fiyati: <eval <var.bitisfiyati>>
button 150 150 4005 4006 1 0 1
dtext 190 150 1152 Teklif Yap
dtext 200 250 00 By" KeLL


[dialog d_acikarttirma button]
on=0
src.sysmessage @07a1 Acik arttirmaya katilmaktan vazgectiniz.
return 1


on=1
if !(<isnum <argtxt[1]>>)
src.sysmessage Sadece rakam kullanabilirsiniz.
elseif (<eval <argtxt[1]>> < 1)
src.sysmessage Hatali bir rakam girdiniz.
elseif (<eval <argtxt[1]>> < <eval <var.enyuksek>+50000> )
src.sysmessage En yuksek tekliften 50k daha fazla teklif etmelisiniz
elseif (<eval <argtxt[1]>> > <src.totalgold>)
src.sysmessage Bankanizda <eval <argtxt[1]>> kadar altin bulunmuyor.
else
var.enyuksekyapan <src.name>
var.enyuksek <eval <argtxt[1]>>
var.enyuksekyapanuid <src.uid>
serv.allclients sysmessage @49 <serv.name> Acik Arttirma Duyuru:
serv.allclients sysmessage @49 <var.enyuksekyapan> , <var.ihaleesyasi> icin <eval <var.enyuksek>> teklifi yapti.
f_ihale_bittimi <eval <argtxt[1]>>
endif
endif

[function f_ihale_bittimi]
if (<eval <args>> >= <eval <var.bitisfiyati>>
src.sysmessage Acik arttirmayi kazandiniz.
f_ihalebitti
serv.allclients sysmessage @49 <serv.name> Acik arttirma Duyuru:
serv.allclients sysmessage @49 <var.enyuksekyapan> acik arttirmayi kazandi..
endif

[function ayarihale]
if (<account.plevel> < 6)
src.sysmessage Sadece admin ve ownerlar kullanabilir.
else
sdialog d_ihaleayar
endif
endif

[dialog d_ihaleayar]
50,50
nomove
resizepic 0 0 5054 550 300
dtext 150 20 1152 Acik Arttirma Ayar menusu
dtext 40 50 1152 binegin idsi:
dtextentry 120 50 90 20 49 1 c_m_unicorn
dtext 40 70 1152 binegin ismi:
dtextentry 120 70 90 20 49 2 Unicorn
dtext 40 90 1152 baslangic fiyati:
dtextentry 150 90 150 20 49 3 2500000
dtext 40 110 1152 bitis fiyati:
dtextentry 150 110 150 20 49 4 7000000

button 100 210 2473 2474 1 0 1
dtext 150 250 00 By Scripter KeLL
dtext 140 213 1153 Ihaleyi baslat!


[dialog d_ihaleayar button]
on=1
var.binek <argtxt[1]>
var.ihaleesyasi <argtxt[2]>
var.enyuksek <argtxt[3]>
var.bitisfiyati <argtxt[4]>
acikal <var.bitisfiyati>
var.acikarttirmabasla 1
serv.allclients sysmessage @49 <serv.name> Acik arttirma Duyuru:
serv.allclients sysmessage @49 Acik arttirma baslamistir.Satilan binek:<var.ihaleesyasi>.Baslangic fiyati <eval <var.enyuksek>>tir.
return 1

[function f_ihalebitti]
serv.newitem i_deed_ihalebinek
new.tag.binekid <var.binek>
new.cont <var.enyuksekyapanuid>
var.acikarttirmabasla 0
var.enyuksekyapan
var.enyuksekuid
var.enyuksek


[ITEMDEF i_deed_ihalebinek]
DEFNAME=i_deed_ihalebinek
NAME=Binek Deed
ID=i_deed
WEIGHT=5.0
TYPE=t_script

On=@Create
color 0fb4
attr 04

on=@Dclick
if !(<topobj.uid> = <src.uid>)
src.sysmessage @55 Hata : Bunu kullanabilmeniz icin cantanizda olmali.
return 1
else
src.newnpc <tag.binekid>
link <src.act.uid>
link.oskin <link.color>
link.newitem i_memory
link.act.attr 04
link.act.more1 04
link.act.more2 <serv.time>
link.act.morep <link.p>
link.act.color memory_ipet
link.act.timer -1
link.act.link <src.uid>
link.act.cont <link.uid>
link.flags <link.flags>&statf_pet
link.update
link.anim 5
link.bark 3
remove
return 1
endif

on=@click
message @07a1 <serv.name>
message @07a1 Acik Arttirma Binegi
return 1




[FUNCTION acikal]
IF (<totalgold> < <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
src.findid.i_gold.remove
LOCAL.AMOUNT -= <LOCAL.GOLD>
ENDIF
ENDIF
ENDWHILE
UPDATE

Denermisin ?
Hiçbirşey Değişmedi :(
Daha Önce Script Bölümünde Varilmemişmiydi?(Açık Arttırma Script'i)(Bi Pvp Serverinda Kullanılmıştı.)
tamamda arkadas bu scriptste hic src.consume yada local,link ... .consume gibi bir madde gormedim consume olmadan nasil parayi aliyorsun ki???

Üye Ol veya Giriş Yap

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