#bul
class GameWindow(ui.ScriptWindow):
def __init__(self, stream):
# self.playerGauge = None altına ekle:
self.LastMoveTime = False
self.AfkCheck = False
#bul
def OnUpdate(self):
#üstüne ekle
def CheckAfk(self):
if self.interface:
if self.LastMoveTime:
if app.GetTime() - self.LastMoveTime >= 5 and self.AfkCheck == False:
#net.SendChatPacket("/afk 1")
chat.AppendChat(1,"afk aktif")
self.AfkCheck = True
elif self.AfkCheck and (app.GetTime() - self.LastMoveTime < 5):
#net.SendChatPacket("/afk 0")
chat.AppendChat(1,"afk deaktif")...
Yazdığın sorguyu tam olarak atabilir misin? Paylaştığın kod satırlarıyla mı yapmayı amaçlıyorsun?Oyunda bir süre geçince karekter hareket etmişmi sorgusu yazdım ama çalışmıyori Oyunda buna benzer fonksiyon var mı?
Gerekli olan karekterin hareket edip etmediği afk kalmış gibi düşünülebilir.
Bu quest üzerinden ve eski konuŞu link belki yardımcı olur.
Linkleri görebilmek için giriş yap veya kayıt ol.
Konuyu şöyle güncelleyeyimYazdığın sorguyu tam olarak atabilir misin? Paylaştığın kod satırlarıyla mı yapmayı amaçlıyorsun?
if (get_dword_time() - ch->GetLastMoveTime() > 60000*3)
{
neden?Sunucu tarafında da bunu halledebilirsiniz ama benden bir tavsiye , client - python tarafından bu işi halletmeniz çok daha iyi olur.
client tarafında GetLastMoveTime() Sorgusu yok. Yani son hareket zamanı, halihazırda sunucu tarafında var sadeceSunucu tarafında da bunu halledebilirsiniz ama benden bir tavsiye , client - python tarafından bu işi halletmeniz çok daha iyi olur.
if (get_dword_time() - ch->GetLastMoveTime() > 60000*3)
{
Mantıklı olduğu için, düşün sunucuda +1000 online var misal. Her online oyuncu için sunucunun afk kontrolü yapıp sunucuya yük oluşturmasındansa her oyuncunun kendi bilgisayarında kontroller gerçekleşse?
Client tarafını dert ediyorsan yardımcı olurum sana, sen sunucu tarafında afk olunca gerçekleşmesini istediğin şeyleri bir komuta koy , onun aracılığıyla gerçekleştirirsin. İlla sunucuda kontrol edeceğim diyosan da eve gidince bakarım istediğine.client tarafında GetLastMoveTime() Sorgusu yok. Yani son hareket zamanı, halihazırda sunucu tarafında var sadece
Gerçekleşmesini istediklerim şuan belirsiz benim için bir süre afk kalınca çalışan fonksiyon gerekli yardımcı olursanız sevinirim.Client tarafını dert ediyorsan yardımcı olurum sana, sen sunucu tarafında afk olunca gerçekleşmesini istediğin şeyleri bir komuta koy , onun aracılığıyla gerçekleştirirsin. İlla sunucuda kontrol edeceğim diyosan da eve gidince bakarım istediğine.
#bul
class GameWindow(ui.ScriptWindow):
def __init__(self, stream):
# self.playerGauge = None altına ekle:
self.LastMoveTime = False
self.AfkCheck = False
#bul
def OnUpdate(self):
#üstüne ekle
def CheckAfk(self):
if self.interface:
if self.LastMoveTime:
if app.GetTime() - self.LastMoveTime >= 5 and self.AfkCheck == False:
#net.SendChatPacket("/afk 1")
chat.AppendChat(1,"afk aktif")
self.AfkCheck = True
elif self.AfkCheck and (app.GetTime() - self.LastMoveTime < 5):
#net.SendChatPacket("/afk 0")
chat.AppendChat(1,"afk deaktif")
self.AfkCheck = False
#def OnUpdate(self): içinde app.UpdateGame() bul ve altına ekle
if self.interface:
self.CheckAfk()
elif self.AfkCheck:
self.AfkCheck = False
#net.SendChatPacket("/afk 0")
chat.AppendChat(1,"afk deaktif")
#Bul def MoveUp(self): , MoveDown(self): , MoveLeft(self): , def MoveRight(self):
#ve bu 4 farklı fonksiyonun hepsinin içine şu satırı ekle
self.LastMoveTime = app.GetTime()
Teşekkürler hemen deniyorum dönüş yapacağım.game.py:#bul class GameWindow(ui.ScriptWindow): def __init__(self, stream): # self.playerGauge = None altına ekle: self.LastMoveTime = False self.AfkCheck = False #bul def OnUpdate(self): #üstüne ekle def CheckAfk(self): if self.PrintCoord.IsShow(): if self.LastMoveTime: if app.GetTime() - self.LastMoveTime >= 5 and self.AfkCheck == False: #net.SendChatPacket("/afk 1") chat.AppendChat(1,"afk aktif") self.AfkCheck = True elif self.AfkCheck and (app.GetTime() - self.LastMoveTime < 5): #net.SendChatPacket("/afk 0") chat.AppendChat(1,"afk deaktif") self.AfkCheck = False #def OnUpdate(self): içinde app.UpdateGame() bul ve altına ekle if self.interface: self.CheckAfk() elif self.AfkCheck: self.AfkCheck = False #net.SendChatPacket("/afk 0") chat.AppendChat(1,"afk deaktif") #Bul def MoveUp(self): , MoveDown(self): , MoveLeft(self): , def MoveRight(self): #ve bu 4 farklı fonksiyonun hepsinin içine şu satırı ekle self.LastMoveTime = app.GetTime()
Bu şekilde sadece w,a,s,d ile hareket edince afk durumu bozulur, CheckAfk fonksiyonu içindeki 5 değeri de kaç saniye hareket edilmediğinde afk kalacağını belirtiyor. Sunucu tarafında nasıl bir işlem yaptıracağını da söylersin ona göre ek kontroller eklememiz gerekir , üstünkörü bi şekilde bunu temel alıp üstüne ekleyebilirsin. Başka şeylerin de afk durumunu bozmasını istiyosan move fonksiyonlarına eklediğin satırları diğer klavye veyahut mouse fonksiyonlarının içine ekleyebilirsin.
En son düzenlediğim bir yeri silmeyi unutmuşum, CheckAfk fonksiyonunu değiştirdim ona bir göz at.Teşekkürler hemen deniyorum dönüş yapacağım.
Elinize sağlık çalıştı sorunsuz, kafamda değişik fikirler varEn son düzenlediğim bir yeri silmeyi unutmuşum, CheckAfk fonksiyonunu değiştirdim ona bir göz at.
Elinize sağlık çalıştı sorunsuz, kafamda değişik fikirler varUğraştığınız için teşekkür ederim.
Size deRica ederim. İyi forumlar.