Selamın Aleyküm Arkadaşlar;

Bir Adet Yarışma Gate Yapmaya Calışıyorum Ama Bazı Kodları Unutum.

Misal Player Üstündekileri Ve Cantasındakileri Kontrol Ettirip İtem Varsa Bankasına Yollanması.
alana düştünde stone etme olayı tamam ama o enson iş.
binekle girememe olayıda tamam.
işin en kötü tarafı

findlayer hangisinin cantasını ve üstümdeki itemleri kontrol ettini unutum.

bu konuda yardımcı olucak arkadaşlara teşekkürler hatırlatsalar yeterler aradan baya zaman gecmiş hatırlayamadım bir türlü.

[itemdef i_bombala_yarim]
id i_moongate_blue
name=Bombala Canım Gateti
on=@create
color 0455
attr 010

on=@click
message=@56,0,1  Bomber Gate
message=@55,0,1 <name>
src.sysmessage=@26,0,1 Bomber Yarışma Alanı

return 1

On=@DClick
src.sysmessage @0809 Tıklama Canım Tıklama
return 1

ON=@Step
if !(<src.findlayer.25>==0)
src.sysmessage @026 buraya binekle giremezsiniz
else
gpconsume 15000
src.go xxx.xxx.xxx
return 1


bişiy daha aklıma geldi.

if <src.targ.topobj.uid> != <src.uid> 

yukarıdaki kod cantada olup olmadını kontrol ediyordu ama farzedinki adamın cantasında itemler var e nasıl tanıtıcaz.
simdi iş karıştı işte.
tmm işte ifle sorgualat remove let :D
up
yahu hacı adamın üstündekileri ve cantasındakileri sildirtmicem sadece potion ve bandaj varsa sildirticem.

remove biliyoruz bende diyorum ki nasıl yerleştircem bir örnek kod yazın demiştim.
Layer Listesi..
1 One handed weapon
2 Two handed weapon, shield, or misc.
3 Shoes
4 Pants
5 Shirt
6 Helm/Hat
7 Gloves
8 Ring
9 Unused
10 Neck
11 Hair
12 Waist (half apron)
13 Torso (inner) (chest armor)
14 Bracelet
15 Unused (backpack, but backpacks go to 21)
16 Facial Hair
17 Torso (middle) (sircoat, tunic, full apron, sash)
18 Earrings
19 Arms
20 Back (cloak)
21 Backpack
22 Torso (outer) (robe)
23 Legs (outer) (skirt/kilt)
24 Legs (inner) (leg armor)
25 Mount (horse, ostard, etc)
26 NPC Buy Restock container
27 NPC Buy no restock container
28 NPC Sell container
29 Bank Box
[FUNCTION packfix]
findlayer(1).cont=<findlayer.layer_pack.uid>
findlayer(2).cont=<findlayer.layer_pack.uid>
findlayer(3).cont=<findlayer.layer_pack.uid>
findlayer(4).cont=<findlayer.layer_pack.uid>
findlayer(5).cont=<findlayer.layer_pack.uid>
findlayer(6).cont=<findlayer.layer_pack.uid>
findlayer(7).cont=<findlayer.layer_pack.uid>
findlayer(8).cont=<findlayer.layer_pack.uid>
findlayer(10).cont=<findlayer.layer_pack.uid>
findlayer(12).cont=<findlayer.layer_pack.uid>
findlayer(13).cont=<findlayer.layer_pack.uid>
findlayer(14).cont=<findlayer.layer_pack.uid>
findlayer(17).cont=<findlayer.layer_pack.uid>
findlayer(18).cont=<findlayer.layer_pack.uid>
findlayer(19).cont=<findlayer.layer_pack.uid>
findlayer(20).cont=<findlayer.layer_pack.uid>
findlayer(22).cont=<findlayer.layer_pack.uid>
findlayer(23).cont=<findlayer.layer_pack.uid>
findlayer(24).cont=<findlayer.layer_pack.uid>
findlayer(layer_pack).attr 0
findlayer(layer_pack).color 07a1
findlayer(layer_pack).cont <findlayer(layer_bankbox)>
findlayer(layer_pack).empty
findlayer(layer_pack).dclick
update
return 1
Arkadaşlar Teşekkür Ediyorum Saolun Gercekten Yararı Dokuncak Bunların.

Simdi Ben Biraz Calışayım İnş Olur.


Şimdi Buraya Kadar Herşey Normal Calısıyor.

Fakat Nedense Playerın bankasında 25K olup olmadını kontrol ettiremedim oysaki gpconsume fuction da var.


buyrun script nerelerde yanlıs yaptım acaba. birde siz kontrol edermisiniz arkadaşlar.


[itemdef i_bombala_yarim]
id i_moongate_blue
name=Bombala Canım Gateti
on=@create
color 0455
attr 010

on=@click
message=@56,0,1  Bomber Gate
message=@55,0,1 <name>
src.sysmessage=@26,0,1 Bomber Yarışma Alanı

return 1

On=@DClick
src.sysmessage @0809 Tiklama Canim Tiklama
return 1

ON=@Step
if !(<src.findlayer.25>==0)
src.sysmessage @026 buraya binekle giremezsiniz
	elseif !(<gpconsume> >= 25000)
	sysmessage @50,,1 Bankanizda 25000 gp Paraniz Bulunmuyor!..
endif
src.events e_packpix
src.sysmessage @07a1 ustunuzdekiler kontrol ediliyor Lutfen BEKLEYiN
newitem i_bomber
src.go 6072,457,-22
src.sysmessage @07a1 Yarisma Alanina Gonderiliyorsunuz
src.stone 1
src.sysmessage @025 Yarisma Alanina Hos Geldiniz.
endif

[itemdef i_bomber]
name bomber
id 0186a
type t_eq_script
weight 0
layer layer_special

On=@Create
attr attr_invis|attr_newbie
more1 60

On=@Equip
cont.gpconsume 25000
cont.sysmessage @07a1 * Yarışmaya Gidiyorsunuz Lutfen Bekleyin *
cont.sysmessage @50 Bankanizdan 25.000 Gp Para Alindi!..
timer 1
return 1
endif

	

[events e_packfix]
findlayer(1).cont=<findlayer.layer_pack.uid>
findlayer(2).cont=<findlayer.layer_pack.uid>
findlayer(3).cont=<findlayer.layer_pack.uid>
findlayer(4).cont=<findlayer.layer_pack.uid>
findlayer(5).cont=<findlayer.layer_pack.uid>
findlayer(6).cont=<findlayer.layer_pack.uid>
findlayer(7).cont=<findlayer.layer_pack.uid>
findlayer(8).cont=<findlayer.layer_pack.uid>
findlayer(10).cont=<findlayer.layer_pack.uid>
findlayer(12).cont=<findlayer.layer_pack.uid>
findlayer(13).cont=<findlayer.layer_pack.uid>
findlayer(14).cont=<findlayer.layer_pack.uid>
findlayer(17).cont=<findlayer.layer_pack.uid>
findlayer(18).cont=<findlayer.layer_pack.uid>
findlayer(19).cont=<findlayer.layer_pack.uid>
findlayer(20).cont=<findlayer.layer_pack.uid>
findlayer(22).cont=<findlayer.layer_pack.uid>
findlayer(23).cont=<findlayer.layer_pack.uid>
findlayer(24).cont=<findlayer.layer_pack.uid>
findlayer(layer_pack).attr 0
findlayer(layer_pack).color 07a1
findlayer(layer_pack).cont <findlayer(layer_bankbox)>
findlayer(layer_pack).empty
findlayer(layer_pack).dclick
update
return 1


Bu konu wolcano tarafından düzenlendi(2008-09-17 13:08, 15 yıl önce)
[itemdef i_bombala_yarim]
id i_moongate_blue
name=Bombala Canım Gateti

on=@create
color 0455
attr 010

on=@click
message @56,0,1  Bomber Gate
message @55,0,1 <name>
src.sysmessage @26,0,1 Bomber Yarışma Alanı
return 1

On=@DClick
src.sysmessage @0809 Tiklama Canim Tiklama
return 1

ON=@Step
if (<src.findlayer(25).baseid> > 0)
src.sysmessage @026 buraya binekle giremezsiniz
return 1
elseif !(<src.totalgold> > 25000)
sysmessage @50,,1 Bankanizda 25000 gp Paraniz Bulunmuyor!..
return 1
else
src.packfix
src.go 6072,457,-22
src.stone 1
src.messageua 0481,6,6,0 Tum esyalariniz bankada!
src.messageua 0481,6,6,0 Yarisma Alanina Geldiniz.
src.gpconsume 25000
return 1
endif

[function packfix]
findlayer(1).cont=<findlayer.layer_pack.uid>
findlayer(2).cont=<findlayer.layer_pack.uid>
findlayer(3).cont=<findlayer.layer_pack.uid>
findlayer(4).cont=<findlayer.layer_pack.uid>
findlayer(5).cont=<findlayer.layer_pack.uid>
findlayer(6).cont=<findlayer.layer_pack.uid>
findlayer(7).cont=<findlayer.layer_pack.uid>
findlayer(8).cont=<findlayer.layer_pack.uid>
findlayer(10).cont=<findlayer.layer_pack.uid>
findlayer(12).cont=<findlayer.layer_pack.uid>
findlayer(13).cont=<findlayer.layer_pack.uid>
findlayer(14).cont=<findlayer.layer_pack.uid>
findlayer(17).cont=<findlayer.layer_pack.uid>
findlayer(18).cont=<findlayer.layer_pack.uid>
findlayer(19).cont=<findlayer.layer_pack.uid>
findlayer(20).cont=<findlayer.layer_pack.uid>
findlayer(22).cont=<findlayer.layer_pack.uid>
findlayer(23).cont=<findlayer.layer_pack.uid>
findlayer(24).cont=<findlayer.layer_pack.uid>
findlayer(layer_pack).attr 0
findlayer(layer_pack).color 07a1
findlayer(layer_pack).cont <findlayer(layer_bankbox)>
findlayer(layer_pack).empty
findlayer(layer_pack).dclick
update
return 1
Dreamer :
[itemdef i_bombala_yarim]
id i_moongate_blue
name=Bombala Canım Gateti

on=@create
color 0455
attr 010

on=@click
message @56,0,1  Bomber Gate
message @55,0,1 <name>
src.sysmessage @26,0,1 Bomber Yarışma Alanı
return 1

On=@DClick
src.sysmessage @0809 Tiklama Canim Tiklama
return 1

ON=@Step
if (<src.findlayer(25).baseid> > 0)
src.sysmessage @026 buraya binekle giremezsiniz
return 1
elseif !(<src.totalgold> > 25000)
sysmessage @50,,1 Bankanizda 25000 gp Paraniz Bulunmuyor!..
return 1
else
src.packfix
src.go 6072,457,-22
src.stone 1
src.messageua 0481,6,6,0 Tum esyalariniz bankada!
src.messageua 0481,6,6,0 Yarisma Alanina Geldiniz.
src.gpconsume 25000
return 1
endif

[function packfix]
findlayer(1).cont=<findlayer.layer_pack.uid>
findlayer(2).cont=<findlayer.layer_pack.uid>
findlayer(3).cont=<findlayer.layer_pack.uid>
findlayer(4).cont=<findlayer.layer_pack.uid>
findlayer(5).cont=<findlayer.layer_pack.uid>
findlayer(6).cont=<findlayer.layer_pack.uid>
findlayer(7).cont=<findlayer.layer_pack.uid>
findlayer(8).cont=<findlayer.layer_pack.uid>
findlayer(10).cont=<findlayer.layer_pack.uid>
findlayer(12).cont=<findlayer.layer_pack.uid>
findlayer(13).cont=<findlayer.layer_pack.uid>
findlayer(14).cont=<findlayer.layer_pack.uid>
findlayer(17).cont=<findlayer.layer_pack.uid>
findlayer(18).cont=<findlayer.layer_pack.uid>
findlayer(19).cont=<findlayer.layer_pack.uid>
findlayer(20).cont=<findlayer.layer_pack.uid>
findlayer(22).cont=<findlayer.layer_pack.uid>
findlayer(23).cont=<findlayer.layer_pack.uid>
findlayer(24).cont=<findlayer.layer_pack.uid>
findlayer(layer_pack).attr 0
findlayer(layer_pack).color 07a1
findlayer(layer_pack).cont <findlayer(layer_bankbox)>
findlayer(layer_pack).empty
findlayer(layer_pack).dclick
update
return 1

saol bir deniyim bakıyım sphere versiyon r4.0.2 totalgold daha önce kullanmadım ama denemekte fayda var saol

Üye Ol veya Giriş Yap

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