Kayıt ol!             
Şifremi unuttum ?
   

  
 

Karakter Boyutu:  

Etiketler: vendor kiralamagt

Yazar Mesaj

herakmos

Banned

Online durumu

Nereden: Turkey Ankara
Meslek: Öğrenci
Yaş: 19
U-S Puan: 0
  0  

#254609   2007-10-08 00:40 GMT      


Kod:
[ITEMDEF i_vendor_kira]
ID=i_grave_stone
NAME=Kiralik Vendor
TYPE=t_script
DESCRIPTION=Kiralik Vendor

ON=@CREATE
COLOR=0455
TAG.kiralik=0
TAG.sahip=0
ATTR attr_decay

ON=@CLICK
message <name>
if (<eval <tag.kiralik>> == 1)
message @0493,1,1 [Kiralanmis]
else
message @0493,1,1 [Kiralanmamis]
endif
return 1

ON=@DCLICK
IF ( <DISTANCE> > 1 )
SRC.sysMESSAGE Yeterince yakin degilsiniz!
RETURN 1
ENDIF
SRC.ACT=<UID>
IF !(<eval <SRC.ACT.TAG.kiralik>>)
      SRC.DIALOG d_vendor_intro
src.tag.dist <src.act.uid>
      RETURN 1
ELSE
   IF (<SRC.ACT.LINK.TAG.sahip>==<SRC.UID>)||(<SRC.ISGM>)
      VAR.LEASE=<eval <SRC.ACT.TIMER>/500000>
      VAR.LEASE=<eval <VAR.LEASE>/500000>
      SRC.MENU m_vendor_admin
      RETURN 1
   ELSE
   SRC.SYSMESSAGE @0712,1,1  Bu dukkan ve vendor kiralanmis.
   RETURN 1
   ENDIF
ENDIF
RETURN 1

ON=@TIMER
LINK.REMOVE
LINK=04fffffff
TAG.kiralik=0
TAG.sahip=0
COLOR=0455
RETURN 1

[DIALOG d_vendor_intro]
100, 100
PAGE 0
resizepic 81 93 3500 305 126
text 170 103 1153 0
text 131 134 1153 1
button 107 169 2151 2152 1 0 1
text 141 171 1152 2

[DIALOG d_vendor_intro TEXT]
Synix Vendor Kiralama
(Kiralamak icin 500k gereklidir).
Bir haftaligina vendoru Kirala..


[DIALOG d_vendor_intro BUTTON]
on=0
src.tag.dist
on=1
IF (<uid.<src.tag.dist>.DISTANCE> > 1 )
SRC.sysMESSAGE Yeterince yakin degilsiniz!
else
if (<src.restest 500000 i_gold>)
src.tag.dist
VAR.SIGN=<SRC.ACT>
SRC.ACT.TAG.kiralik=1
SRC.ACT.COLOR=0455
SRC.ACT.TAG.sahip=<SRC.UID>
SRC.ACT.TIMER=60*60*24*7
src.consume 500000 i_gold
VAR.SIGN=<SRC.ACT>
src.newnpc c_pv
src.act.p <p>
src.act.tag.p <p>
src.act.tag.px <p.x>
src.act.tag.py <p.y>
src.act.tag.pz <p.z>
src.act.tag.owner <src.uid>
VAR.VEND=<SRC.ACT.UID>
src.act.findlayer(29).more1 2500
SRC.ACT.TAG.sahip=<SRC.UID>
SRC.ACT=<VAR.SIGN>
SRC.ACT.LINK=<VAR.VEND>
SRC.ACT=<VAR.VEND>
src.act.newitem i_memory
SRC.act.ACT.LINK=<SRC.UID>
src.act.act.attr 04
src.act.act.more1 04
src.act.act.more2 <serv.time>
src.act.act.morep <src.act.p>
src.act.act.color memory_ipet
src.act.act.timer -1
src.act.act.link <src.uid>
src.act.act.cont <src.act.uid>
SRC.ACT.act.CONT=<VAR.VEND>
src.act.flags <src.act.flags>&statf_pet
src.tag.vendor <src.act.uid>
SRC.ACT=<VAR.SIGN>
src.act.update
ELSE
SRC.SYSMESSAGE @0712,1,1 Kiralamak icin 500k cantanizda olmali.
src.tag.dist
ENDIF
endif
return 1


// **************
// VENDOR CHARDEF
// **************

[chardef c_pv]
defname c_pv
name #names_humanmale the Player Vendor
id c_man
can mt_equip|mt_nonmover
hiredaywage 52
desires i_gold

tspeech pv_spch
tevents e_pv
//tevents vendorfix

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
item i_Tc_r
attr attr_static
color 01
item i_lantern_lit
morey -1
itemnewbie i_backpack
itemnewbie i_bankbox
color 0455
timer 900
attr 014
itemnewbie i_pv

// *******
// ITEMLAR
// *******

[itemdef i_pv]
id i_memory
name vendor ana kontroller
type t_eq_script

On=@TargOn_Char
if (<src.targ.uid> == <cont.uid>)
cont.findlayer(21).open
target
endif
return 1

On=@TargOn_Item
if (<more1> == 1) // dinamik fiyatlandirma
if !(<src.uid> == <cont.tag.owner>)
cont.sayu <src.name>, siz benim isverenim degilsiniz.
elseif !(<src.targ.topobj.uid> == <cont.uid>)
cont.sayu Bu esya cantamda degil.
elseif (strmatch('<src.targ.price>',''))
cont.sayu Bu satilabilecek bir esya degil.
elseif (<eval <more2>> <= 0)
src.targ.price 0
cont.sayu <src.targ.name>: 'satilik degil' olarak isaretlendi.
else
src.targ.price <eval <more2>>
more2 0
cont.sayu <src.targ.name>: <src.targ.price> altin.
endif
elseif (<more1> == 2) // satis
if !(<src.targ.topobj.uid> == <cont.uid>)
cont.sayu Bu esya cantamda degil.
elseif (strmatch('<src.targ.price>',''))
cont.sayu Bu esya satilik degil.
elseif (<src.targ.price> <= 0)
cont.sayu Bu esya satilik degil.
elseif (<src.gp> < <src.targ.price>)
cont.sayu Bankanizin en ust kisminda <src.targ.price> altininiz bulunmuyor.
else
src.targ.dialog d_pv_buy
endif
elseif (<more1> == 3) // para aktarma
if !(<src.uid> == <cont.tag.owner>)
cont.sayu <src.name>, siz benim isverenim degilsiniz.
elseif !(<src.targ.topobj.uid> == <src.uid>)
cont.sayu Gosterdiginiz nesne sizin uzerinizde degil.
elseif !(<src.targ.baseid> == i_gold)
cont.sayu Bu gosterdiginiz altin degil.
else
cont.findlayer(29).more1 <eval (<cont.findlayer(29).more1> + <src.targ.amount>)>
if (<eval (<src.targ.amount> / <cont.hiredaywage>)> > 0)
cont.sayu <src.targ.amount> altin calisma suremi <eval (<src.targ.amount> / <cont.hiredaywage>)> gun uzatti, tesekkur ederim.
else
cont.sayu <src.targ.amount> altin kasama eklendi, tesekkur ederim.
endif
src.targ.remove
endif
endif
return 1

On=@Timer
return 1

// *********
// DIALOGLAR
// *********

[MENU m_vendor_admin]
Kiralik vendor yonetimi.

ON=0 Bir hafta daha kirala. (Kalan sure: <eval <VAR.LEASE>> saat)
IF (<src.restest 500000 i_gold>)
    SRC.CONSUME 500000 i_gold
    SRC.UPDATE
    SRC.TAG.vendtimer <SRC.ACT.TIMER>
    SRC.ACT.TIMER= <eval <SRC.ACT.TIMER>> + 604800
    src.act.link.message @90 Calisma suremi 1 hafta daha uzattiniz. Tesekkurler.
ELSE
    SRC.SYSMESSAGE @38 Bir hafta daha calismam icin yeterli paraniz yok!(10.000gp)
ENDIF

ON=0 Vendoru terket.
    SRC.ACT.TIMER 1

ON=0 Banka
    SRC.BANKSELF

[dialog d_pv_cash]
300,300

resizepic 0 0 5054 200 75
resizepic 5 10 2620 190 35
textentry 15 16 600 20 1152 1 0
button 165 50 4005 4006 1 0 1

[dialog d_pv_cash text]
<eval (<findlayer(29).more1> - 2500)>

[dialog d_pv_cash button]
On=1
if (<eval <argtxt[1]>> <= 0)
sayu Hmm.. Sanirim tam anlayamadim?
elseif (<eval <argtxt[1]>> > <eval <findlayer(29).more1>>)
sayu Bu miktar kasamda bulunmuyor.
elseif (<eval (<findlayer(29).more1> - <argtxt[1]>)> < 2500)
sayu Bu miktari veremeyecegim, kasamda en az 2500 altin kalmali.
elseif (<eval <argtxt[1]>> >= 500000)
vend_collect <eval <argtxt[1]>>
sayu <argtxt[1]> altin bankaniza aktarildi.
else
findlayer(29).more1 <eval (<findlayer(29).more1> - <argtxt[1]>)>
src.newitem i_gold
src.act.amount <eval <argtxt[1]>>
src.act.cont <src.findlayer(29).uid>
sayu <argtxt[1]> altin bankaniza aktarildi.
endif

[dialog d_pv_buy]
300,300

resizepic 0 0 5054 270 105
htmlgump 10 15 250 60 0 1 0
button 200 80 1153 1155 1 0 1
button 233 80 1150 1152 1 0 0

[dialog d_pv_buy text]
<name>, fiyati: <price> altin. Bunu satin almak istediginize emin misiniz?

[dialog d_pv_buy button]
On=1
if (strmatch('<price>',''))
src.sysmessage Bu esya satilik degil.
elseif (<price> <= 0)
src.sysmessage Bu esya satilik degil.
elseif (<src.gp> >= <price>)
src.gpconsume <price>
topobj.findlayer(29).more1 (<topobj.findlayer(29).more1> + <price>)
cont <src.findlayer(21).uid>
price
update
if ((<baseid> == i_spellbook) || (<baseid> == i_runebook) || (<baseid> == i_magic_reg30) || (<baseid> == i_magic_reg60) || (<baseid> == i_magic_reg90) || (<baseid> == i_necro_reg20) || (<baseid> == i_necro_reg40) || (<baseid> == i_taxi_kit) || (<baseid> == i_dye_tub_furny) || (<dispid> == i_deed))
attr <attr>|attr_newbie
endif
else
topobj.sayu Bankanizin en ust kisminda bunu alacak kadar altininiz yok.
endif

// ******
// SPEECH
// ******

[speech pv_spch]
On=bilgi
On=yardim
if (<src.uid> == <tag.owner>)
sayu Kullanabileceginiz komutlar: durum, kasa, hasilat, fiyat.
sayu Belirli bir komut hakkinda bilgi icin 'Komut ?' yazmaniz yeterlidir.
else
sayu Uzerime cift tiklayarak veya 'alisveris' komutuyla cantami acabilir, cantamdaki kutu veya torbalara cift tiklayarak iclerine bakabilir, 'buy' veya 'satin al' komutuyla satilik esyalari satin alabilirsiniz.
endif
return 1

On=durum*
if ((<src.uid> == <tag.owner>) || (<src.isgm>))
if (strmatch('<args>','DURUM ?'))
sayu Kasamdaki para miktarini ve kasamdaki parayla calisacagim gun sayisini (reel gun) ogrenmek icin kullancaginiz komuttur.
else
sayu Kasamdaki <eval <findlayer(29).more1>> altin ile <eval (<findlayer(29).more1> / (<hiredaywage> * 24))> gun daha sizin icin calisacagim.
endif
endif
return 1

On=kasa*
if (<src.uid> == <tag.owner>)
if (strmatch('<args>','KASA ?'))
sayu Satis olmamasi ve kasamdaki paranin azalmasi durumunda kasama yaninizda getireceginiz altini eklemek icin kullanacaginiz komuttur.
else
findid.i_pv.more1 3
findid.i_pv.target
sayu Kasama yatirmak istediginiz parayi seciniz.
endif
endif
return 1

On=hasilat*
if (<src.uid> == <tag.owner>)
if (strmatch('<args>','HASILA ?'))
sayu Kasamdaki parayi banka hesabiniza aktarmakta kullanacaginiz komuttur. Kasamdaki son 2500 altini aktarmaniz mumkun degildir.
else
if (<eval <findlayer(29).more1>> < 2501)
sayu Kasamda 2500 veya daha az altin var, su durumda size nakit veremem.
else
dialog d_pv_cash
endif
endif
endif
return 1

On=fiyat *
if (<src.uid> == <tag.owner>)
if (strmatch('<args>','FIYAT ?'))
sayu Cantama yerlestirdiginiz esyalari fiyatlandirmakta kullanacaginiz komuttur. Kullanilisi, X'in yerine bir sayi gelecek bicimde 'Fiyat X' seklindedir.
sayu Satilamaz ibareli esyalari asla fiyatlandiramazsiniz. Satilik haldeki bir esyayi 'satilik degil' hale getirmek icin 0 fiyat vermeniz gereklidir.
else
if !(<findlayer(21).findcont(0)>)
sayu Cantamda fiyatlandirilacak mal bulunmuyor.
else
try <args>
endif
endif
endif
return 1
On=alisveris
if ((<canseelos>) && (<distance> < 4))
face
if (<src.uid> == <tag.owner>)
sayu Satilacak esyalari buraya koyabilirsiniz.
pack
elseif !(<findlayer(21).findcont(0)>)
sayu Su an satilik malim yok, lutfen daha sonra tekrar geliniz.
else
pack
endif
else
src.sysmessage Vendor'a ulasamiyorsunuz.
endif
return 1

On=buy
On=satin al
if (<src.uid> == <tag.owner>)
sayu Isverenim oldugunuz icin istediginizi alabilirsiniz, para vermenize gerek yok.
elseif !(<findlayer(21).findcont(0)>)
sayu Su an satilik malim yok uzgunum.
elseif (<isgm>)
sayu Benden birsey satin alamazsiniz.
else
findid.i_pv.more1 2
findid.i_pv.target
endif
return 1

On=*
return 1

// *****
// EVENT
// *****

[events e_pv]
On=@GetHit
if !(<src.npc>)
src.newitem i_killer
src.act.equip
else
src.leave 20
endif
return 1

On=@Hit
return 1

On=@HitTry
return 1

On=@Death
hits <str>
return 1

On=@SpellEffect
if (<src.npc>)
src.leave 20
endif
return 1

On=@ItemEquip
if ((<act.layer> == 1) || (<act.layer> == 2))
findid.i_torch.equip
findid.i_torch.dclick
return 1
endif

on=@skillstart
if (<action>==skill_stealing)
src.sysmessage @38 Stealing yeteneginizi player vendorlari uzerinde kullanamazsiniz.
src.action=-1
return 1
endif

On=@Click
if !(strmatch('<eval 0<tag.px>>','<eval <p.x>>')) || !(strmatch('<eval 0<tag.py>>','<eval <p.y>>')) || !(strmatch('<eval 0<tag.pz>>','<eval <p.z>>'))
p <tag.p>
update
return 1
endif

message @09c1 <memoryfindtype.memory_ipet.link.name>
return 1

On=@DClick
if !(strmatch('<eval 0<tag.px>>','<eval <p.x>>')) || !(strmatch('<eval 0<tag.py>>','<eval <p.y>>')) || !(strmatch('<eval 0<tag.pz>>','<eval <p.z>>'))
p <tag.p>
update
return 1
endif

if !(<memoryfindtype.memory_ipet>)
memorydel <src.uid>
newitem i_memory
act.attr 04
act.more1 04
act.more2 <serv.time>
act.morep <link.p>
act.color memory_ipet
act.timer -1
act.link <tag.owner>
act.cont <uid>
flags <flags>&statf_pet
endif

if (<src.uid> == <tag.owner>)
src.tag.vendor <uid>
endif

if (<src.isgm>)
pack
elseif (<src.flags>&statf_dead)
src.sysmessage Su anki durumuzda bu islemi gerceklestiremezsiniz.
elseif ((<canseelos>) && (<distance> < 4))
face
if (<src.uid> == <tag.owner>)
sayu Satilacak esyalari buraya koyabilirsiniz.
pack
elseif !(<findlayer(21).findcont(0)>)
sayu Su an satilik malim yok, lutfen daha sonra tekrar geliniz.
else
pack
endif
else
src.sysmessage Vendor'a ulasamiyorsunuz.
endif
return 1

On=@EnvironChange
if (<flags>&statf_war)
flags <flags>&~statf_war
update
endif
food 990
p <tag.p>
tag.p <p>
tag.px <p.x>
tag.py <p.y>
tag.pz <p.z>

// *********************
// ALTINSAL FONKSIYONLAR
// *********************

[function fiyat]
if (<eval <argn>> > 2000000)
sayu Tek bir mali 2 milyon altinin uzerinde fiyatla satmam yasalara aykiridir.
else
findid.i_pv.more1 1
findid.i_pv.more2 <eval <argn>>
findid.i_pv.target
endif

[function vend_collect]
var.vendorcash <eval (<argn> - 500000)>
findlayer(29).more1 <eval (<findlayer(29).more1> - 500000)>
src.newitem i_gold
src.act.amount 500000
src.act.cont <src.findlayer(29).uid>
if (<eval <var.vendorcash>> >= 500000)
vend_collect <eval <var.vendorcash>>
elseif (<eval <var.vendorcash>> > 0)
findlayer(29).more1 <eval (<findlayer(29).more1> - <var.vendorcash>)>
src.newitem i_gold
src.act.amount <eval <var.vendorcash>>
src.act.cont <src.findlayer(29).uid>
var.vendorcash
else
var.vendorcash
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 evl]

sysmessage Evaluating [0<args>]: <eval 0<args>>.
return <valstr 0<args>>

[events e_vendclick]
On=@itemclick
if (<act.topobj.id> == c_pv1)
if !((<act.type> == t_spellbook) || (<act.type> == t_reagent))
act.message [satilamaz]
elseif (<act.price> <= 0)
act.message  [satilik degil]
else
if ((<act.type> == t_armor) || (<act.type> == t_armor_leather) || (<act.type> == t_shield) || (<act.type> == t_clothing) || (<act.type> == t_weapon_sword) || (<act.type> == t_weapon_fence) || (<act.type> == t_weapon_mace_staff) || (<act.type> == t_weapon_mace_smith) || (<act.type> == t_weapon_mace_pick) || (<act.type> == t_weapon_bow) || (<act.type> == t_weapon_xbow))
if !(<eval ((<act.more1l> * 100) / <act.more1h>)> == 100)
act.message [<act.price> gp] [%<eval (100 - ((<act.more1l> * 100) / <act.more1h>))> eski]
else
act.message [<act.price> gp]
endif
else
act.message [<act.price> gp]
endif
endif
endif

[eof]


burda vendor normalde 60k'dan kıralanıyordu ben onu 500k yapmaya calıstım ama 50kya dustu nerde hata yaptım bulamadım bı yardımcı olursanız cok komık bır durum bılıyorum ama lutfen bı sunu halledelım..


Aventis PvP
http://www.uoshard.com/Tiklayiniz

Nixdorf

U-Ser

Online durumu

Nereden: Israel tekirdag
Meslek: ..
Yaş: 23
U-S Puan: 1.46
  0  

#254619   2007-10-08 01:25 GMT      


consume yerine gpconsume fonksiyonu kullan.


yeni msn adresim : admin@lastsiege.com
www.lastsiege.com

herakmos

Banned

Online durumu

Nereden: Turkey Ankara
Meslek: Öğrenci
Yaş: 19
U-S Puan: 0
  0  

#254640   2007-10-08 10:29 GMT      


yaptim olmadi gene ayni 50k ya kıralıoo


Aventis PvP
http://www.uoshard.com/Tiklayiniz

TheRaskol



Online durumu

Nereden:
Meslek:
Yaş:
U-S Puan:
   

#254641   2007-10-08 11:44 GMT      


Alt alta bir çok .consume yaptır.
Bir kerede 60000'den fazla aldıramazsın.


Slothere

Moderator

Online durumu

Nereden: Turkey Izmir
Meslek: Student
Yaş:
U-S Puan: 48.36
  1  

#254647   2007-10-08 12:09 GMT      


Veya ;

Kod:
for 1 10
src.consume 50000 i_gold
endfor


"Milletimiz her güçlük ve zorluk karşısında, durmadan ilerlemekte ve yükselmektedir. Büyük Türk Milletinin bu yoldaki hızını, her vasıtayla arttırmaya çalışmak, bizim hepimizin en kutlu vazifemizdir."
M. Kemal Atatürk

UO: Nuldemor

herakmos

Banned

Online durumu

Nereden: Turkey Ankara
Meslek: Öğrenci
Yaş: 19
U-S Puan: 0
  0  

#254673   2007-10-08 17:16 GMT      


yaptım 2sınıde olmadı !!


Aventis PvP
http://www.uoshard.com/Tiklayiniz

TheRaskol



Online durumu

Nereden:
Meslek:
Yaş:
U-S Puan:
   

#254676   2007-10-08 17:19 GMT      


imkansız!


herakmos

Banned

Online durumu

Nereden: Turkey Ankara
Meslek: Öğrenci
Yaş: 19
U-S Puan: 0
  0  

#254678   2007-10-08 17:21 GMT      


kardeş su en ustte koydugum scpsı sen neler duzeltımesı gerekıosa duzeltıp koyabılır mısın 2 gunumu aldı ya cok güzel olur + imza kısmında reklam ucretlı mı


Aventis PvP
http://www.uoshard.com/Tiklayiniz



İlgili Başlıklar:

BaşlıklarBaşlık Yazarı
Vendor'larım hiçbirşey Satmıyor.Turin
Arkadaşlar bana biri binek Seller vendorunun scriptini verebilirsuldor
Klasik Vendor MenüsüKadios
Vendor isimleriorhangul
vendorların bulunduğu scpmazirodesss
  Online:
  7 site üyesi, 43 misafir
    toplam 50 kişi  
Giris sayfan olarak ayarla Sik Kullanilanlara Ekle Yenile Burdan bize ulasabilirsiniz

 


ANASAYFA | FORUMLAR | DÖKÜMANLAR | DOSYALAR | SCRIPTLER | SUNUCULAR | İLETİŞİM
Copyright (c) 2004-09 Ultima-Strike. All rights reserved.
Tasarım / Programlama: Uğur GÖK

Sistem Yapısı Seditio
Sayfa açılma süresi 1.436 sn.
SQL toplam zamanı: 0.821 sn. - SQL sorgusu: 36 - Ortalama SQL zamanı: 0.02281 sn.
Hosting Hizmetleri