Orijinalini görmek için tıklayınız: Forumlar » Script Yardımı » Kumbara !!! » Sayfa: 4636



Gelelim arkadaşın sorununa,
Scriptingde imkansız diye birşey yoktur yeteri kadar uğraştıktan sonra oyun dinamikleri içerisinde herşey yapılabilir. Sorununa birden fazla çözüm var.Probleme çözüm ararken olaya farklı açılardan bakmaya çalışın,nasıl kumbara ve goldu birleştiririm diye düşünerek hata yapılmış ikisinin beraber çalışması için bunları birleştirmeye gerek yok aslında sadece oyuncunun para durumunu sorgulayan fonksyonu değiştirmek yeticektir. yukarda bahsedilmiş sanırım kumbaranin uid sini tag.kumbara olarak kaydet. ondan sonra stone scriptinde para sorgunu nasıl yapıyorsun bilmem ama aşağıdaki mantığa uyarlarsan sorun kalmayacaktır.

Kod:
[function f_purchase_item]  // kodda kumbaradaki parayı more1 değerine kaydettiğini varsaydım.
local.item = <argv[0]>
local.price = <argv[1]>
ref1 = <src.tag.kumbara>

if (<local.price> > <src.gold>)
    if (<ref1.more1> >= <local.price>)
         serv.newitem <local.item>,1,<src.findlayer(layer_pack)>
         ref1.more1 -= <local.price>
         src.sysmessage @1153,,1 <dlocal.price>gp kumbaranızdan çekilmiştir.
         return 1
    endif       
    src.sysmessage @1153,,1 <serv.itemdef.<local.item>.name> adlı eşyayı almak için yeterli paranız yok.     
else
    serv.newitem <local.item>,1,<src.findlayer(layer_pack)>
    src.gold -=<local.price>
    return 1
endif


yukardaki kod sadece bir yol göstericidir yani kopayala yapıştur ile çalışmasını bekleme. Eğer sıkıntın olursa başlık altından tekrar yardımcı olurum.

Edit : mac-fusionun paylaştığı kumbarayıda şimdi gördüm birden fazla yol derken aklıma gelen ikincisinide mutlu yazmış zaten. Mutlunun paylaştığı kod daha stabil çalışıcakdır ancak kalabalık bir sunucuda o kumbarayı kullanmakta pek sağlıklı olmaz sanırım. Bu arada mutlunun verdiği kodda kumbara bankadaysa bile sorun yaratacağını sanmıyorum çünkü yanlış hatırlamıyorsam gold fonksyonu banka içindeki konteynırlarıda kontrol ediyordu.

Son güncelleme: Alcholic tarafından 01-04-2012 00:56 GMT, önce düzenlendi.
 
Sayfa Önceki (> 1 < [2] ) Sonraki