Yardım Oto quest İle ilgili bir problem

  • Konuyu açan Konuyu açan jantue
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 5
  • Gösterim Gösterim 44
  • Etiketler Etiketler
    lmaohw
Konu sahibi bu konuda soru soruyor. Sorusu ile ilgili bilgisi olanların yanıtlamasını bekliyor.

jantue

Üye
Üye
Mesaj
19
Beğeni
1
Puan
50
Ticaret Puanı
0
Öncelikle merhaba arkadaşlar bir script geliştiriyorum metin2 de işlerimi kolaylaştırmak için.

Çoğu şeyi hallettim takıldığım yerlerde buradan yardım konusu açıp sizlerin yardımları ıle sorunlarıda çözdüm.

Şimdi iki adet sorunum mevcut
1) Otomatik görev aldırıyorum 5 saniyede bir görevin varlığını kontrol ettiriyorum eğer görev yok ise diğer karakterlere sırası ile geçmesini sağlıyorum. Buraya kadar bir problem yok. Fakat oyundan DC/KARAKTER DEĞİŞTİRME/MAP DEĞİŞTİRME gibi seneryolar olduğunda otomatik görevi kontrol etme kısmı bozuluyor. Bir kaç deneme yaptım bu seferde Yukarıda belirttiğim seneryolar gerçekleştiginde görev bulunamadı hatası alıp sürekli karakter değiştirmeye başlıyor.

2) event.SelectAnswer(0,0) ile görev diyaloglarında butonları ayarlayarak tıklatma yapabılıyorum. Fakat bu tıklatma yöntemi sadece NPC görevlerinde çalışıyor.
N harfi ile alınan görevlerdeki OK butonuna tıklayıp kapatmıyor.
Denediğim bir kaç kod var fakat başarı elde edemedim o kodlar şu şekilde.
lambda x=self:x.CloseSelf()
event.SelectAnswer(event.BUTTON_TYPE_NEXT, 255)
Otomatik ESC Ve Enter tuşuna bastırma
event.SelectAnswer(0,0)
Ok butonuna hook attığımda 1, 254 olarak gözüküyor onuda denedım sonuç elde edemedim.
En sonunda game.GameWindow.OpenQuestWindow = 0 Kodunu kullanarak bütün npc diyaloglarını iptal ettim Fakat bu seferde npclere tıklayıp pot vs alamıyorum clientı kapatıp baştan açmam gerekıyor. 1 pozisyonuna getirincede bir değişiklik olmuyor.

Konu ile alakalı yardımlarınızı bekliyorum Tşkler.
 
1.Otomatik görev kontrolü DC/karakter değişimi/map değişiminde bozuluyor;


Python:
Genişlet Daralt Kopyala
def IsPlayerReady():
    # player.IsObserverMode() karakter henüz oyuna tam geçmediğinde True döner
    return not player.IsObserverMode() and chr.GetMainInstanceIndex() != 0

def WaitForPlayerReady():
    while not IsPlayerReady():
        time.sleep(1)


2. event.SelectAnswer(0,0) ve benzeri kodlar N tuşu ile açılan görevlerde çalışmıyor ;

Python:
Genişlet Daralt Kopyala
import app

def PressEnterKey():
    app.SendKey(app.VK_RETURN)

def PressEscKey():
    app.SendKey(app.VK_ESCAPE)
    
    
// veya

event.SelectAnswer(descIndex, 255)  # 255 genelde OK butonunun ID'si
 
1.Otomatik görev kontrolü DC/karakter değişimi/map değişiminde bozuluyor;


Python:
Genişlet Daralt Kopyala
def IsPlayerReady():
    # player.IsObserverMode() karakter henüz oyuna tam geçmediğinde True döner
    return not player.IsObserverMode() and chr.GetMainInstanceIndex() != 0

def WaitForPlayerReady():
    while not IsPlayerReady():
        time.sleep(1)


2. event.SelectAnswer(0,0) ve benzeri kodlar N tuşu ile açılan görevlerde çalışmıyor ;

Python:
Genişlet Daralt Kopyala
import app

def PressEnterKey():
    app.SendKey(app.VK_RETURN)

def PressEscKey():
    app.SendKey(app.VK_ESCAPE)
   
   
// veya

event.SelectAnswer(descIndex, 255)  # 255 genelde OK butonunun ID'si
Yorumunuz için teşekkür ederim deneyip olumlu/olumsuz donuşleri yapacağım.
 
1.sorunum kısmen çözüldü bu kodları geliştirerek sorunu çözebilirim artık teşekkür ederim. Fakat 2.sorunum hala devam ediyor.
Linkleri görebilmek için giriş yap veya kayıt ol.

İndex kodu bu sekılde gozukuyor butonun fakat tıklamıyor.
Quest modulu ile alakalı bır kod ile tıklama yaptırmam gerekıyor sanırım.
buda ok butonunun görseli
Linkleri görebilmek için giriş yap veya kayıt ol.
 
1.sorunum kısmen çözüldü bu kodları geliştirerek sorunu çözebilirim artık teşekkür ederim. Fakat 2.sorunum hala devam ediyor.
Linkleri görebilmek için giriş yap veya kayıt ol.

İndex kodu bu sekılde gozukuyor butonun fakat tıklamıyor.
Quest modulu ile alakalı bır kod ile tıklama yaptırmam gerekıyor sanırım.
buda ok butonunun görseli
Linkleri görebilmek için giriş yap veya kayıt ol.
eğer uiquest.py dosyasına ekleme yapabilirim dersen sorunu daha kolay çözebiliriz ama sadece script üzerinden ilerlediğimiz için şöyle bir şey yapabilirsin ;


Python:
Genişlet Daralt Kopyala
def PressEnter():
    app.SendKey(app.VK_RETURN)
    
    

#YA ÜSTTEKİ GİBİ YA DA AŞAĞIDAKİ ŞEKİLDE 

# index ve slot değişkenlerini değiştirerek deneyebilirsin
event.SelectAnswer(1, 255)
event.SelectAnswer(1, 1)
event.SelectAnswer(1, 0)
event.SelectAnswer(0, 254)
 
eğer uiquest.py dosyasına ekleme yapabilirim dersen sorunu daha kolay çözebiliriz ama sadece script üzerinden ilerlediğimiz için şöyle bir şey yapabilirsin ;


Python:
Genişlet Daralt Kopyala
def PressEnter():
    app.SendKey(app.VK_RETURN)
   
   

#YA ÜSTTEKİ GİBİ YA DA AŞAĞIDAKİ ŞEKİLDE

# index ve slot değişkenlerini değiştirerek deneyebilirsin
event.SelectAnswer(1, 255)
event.SelectAnswer(1, 1)
event.SelectAnswer(1, 0)
event.SelectAnswer(0, 254)
eğer uiquest.py dosyasına ekleme yapabilirim dersen sorunu daha kolay çözebiliriz;
Ne demek istediğinizi tam anlayamadım.
 
Geri
Üst