Catacaombda yada oyunun herhangi bir yerinde "w" tuşuna sürekli bas çek bas çek yapıldığında mapteki slotlar nesneler yüklenmemeye başlıyor bunu nasıl fixleyebiliriz ?
Yani bir cata için klavyeyi bozma riskine girmezdim şahsen
Fix hakkında bilgim yok fakat bir de şöyle bir bug var bazılarında, at skili ile kapıların içinden geçilebiliyor.
Yani bir cata için klavyeyi bozma riskine girmezdim şahsen
Fix hakkında bilgim yok fakat bir de şöyle bir bug var bazılarında, at skili ile kapıların içinden geçilebiliyor.
Ne saçma bişey hayatımda böyle bug görmedim. Uğraşmak bir yana bunu bulan ağır işsizmiş. Fakat oyunda belli bir mesafeden sonra moblar yükleniyor fakat böyle milim milim yürüyerek falan ne bileyim değişik bişey.
Kod yazma konusunda çok iyi sayılmam. Src tarafını bilemem şuanlı ama python tarafından bilgim kadarıyla bir şeyler yapmaya çalıştım ve işe de yaradı. Herhangi bir sıkıntı yaratır mı emin değilim ancak sanmıyorum.
Basit bir sayaç mantığı ve timer kontrolüyle bu durumun önüne geçtim sadece. Bu engel sayesinde belirlenen süre boyunca karaker W ve Ok tuşuyla ilerleyemez. (Sol mouse tuşuyla tıklayarak ilerleyebilir fakat bu da bug'a sebep olmaz zaten)
Aşağıda verdiğim düzenlemeler test amacıyla sadece ve sadece Mavi 1.Köyde çalışmaktadır. Mavi 1.Köy Haritası haricinde hiç bir haritaya etkisi yoktur. Ayrıca, W tuşuna etki ettiği gibi klavyedeki Yukarı Ok tuşuna da aynı engeli uygulamaktadır.
Yine test amacıyla koddaki değerler minimum seviyede tutulmuştur. Saniyeyi ve tuşa basma sayısını falan kendinize göre düzenleyebilirsiniz.
defMoveUp(self):### Özel Haritalar İçin 'W' Tuş Engeli -- Startif self.bugsayac <10:
player.SetSingleDIKKeyState(app.DIK_UP,True)
self.bugsayac +=1if self.bugsayac ==10and background.GetCurrentMapName()=="metin2_map_c1":### 'and' KISMI KALACAK. SONRAKİ HARİTALAR ARASINA 'or' EKLENECEK
player.SetSingleDIKKeyState(app.DIK_UP,False)
chat.AppendChat(1,"<Uyarı> Şüpheli hareket algılandı. Lütfen bir süre bekleyin..")if app.GetTime()< self.bugfix +5:### 'W' TUŞU VE YUKARI OK TUŞU 5 SANİYE UYKUYA GECECEK
player.SetSingleDIKKeyState(app.DIK_UP,False)returnelse:
self.bugsayac =0
player.SetSingleDIKKeyState(app.DIK_UP,True)### Özel Haritalar İçin 'W' Tuş Engeli -- Endelse:
player.SetSingleDIKKeyState(app.DIK_UP,True)
self.bugfix = app.GetTime()#player.SetSingleDIKKeyState(app.DIK_UP, True)
Kod içerisinde göreceğiniz üzere haritayı packteki ismiyle tanıtıyoruz. Eğer harita klasörü tek bir dizine aitse koddaki gibi ekleyeceksiniz. Fakat ikili veya daha fazla dizine bağlıysa aşağıdaki örnekteki gibi eklemeniz gerek.
Örneğin mmotutkunlari adında bir harita var diyelim ve bunun yolu şu şekilde olsun; haritalar.eix içinde > klasör1 > mmotutkunlari
Koda eklenme şekli; "klasör1/mmotutkunlari"
Eğer haritalar.eix içinde > mmotutkunlari şeklinde ise benim kodda eklediğim gibi direkt adını yazabilirsiniz.
Kod yazma konusunda çok iyi sayılmam. Src tarafını bilemem şuanlı ama python tarafından bilgim kadarıyla bir şeyler yapmaya çalıştım ve işe de yaradı. Herhangi bir sıkıntı yaratır mı emin değilim ancak sanmıyorum.
Basit bir sayaç mantığı ve timer kontrolüyle bu durumun önüne geçtim sadece. Bu engel sayesinde belirlenen süre boyunca karaker W ve Ok tuşuyla ilerleyemez. (Sol mouse tuşuyla tıklayarak ilerleyebilir fakat bu da bug'a sebep olmaz zaten)
Aşağıda verdiğim düzenlemeler test amacıyla sadece ve sadece Mavi 1.Köyde çalışmaktadır. Mavi 1.Köy Haritası haricinde hiç bir haritaya etkisi yoktur. Ayrıca, W tuşuna etki ettiği gibi klavyedeki Yukarı Ok tuşuna da aynı engeli uygulamaktadır.
Yine test amacıyla koddaki değerler minimum seviyede tutulmuştur. Saniyeyi ve tuşa basma sayısını falan kendinize göre düzenleyebilirsiniz.
defMoveUp(self):### Özel Haritalar İçin 'W' Tuş Engeli -- Startif self.bugsayac <10:
player.SetSingleDIKKeyState(app.DIK_UP,True)
self.bugsayac +=1if self.bugsayac ==10and background.GetCurrentMapName()=="metin2_map_c1":### 'and' KISMI KALACAK. SONRAKİ HARİTALAR ARASINA 'or' EKLENECEK
player.SetSingleDIKKeyState(app.DIK_UP,False)
chat.AppendChat(1,"<Uyarı> Şüpheli hareket algılandı. Lütfen bir süre bekleyin..")if app.GetTime()< self.bugfix +5:### 'W' TUŞU VE YUKARI OK TUŞU 5 SANİYE UYKUYA GECECEK
player.SetSingleDIKKeyState(app.DIK_UP,False)returnelse:
self.bugsayac =0
player.SetSingleDIKKeyState(app.DIK_UP,True)### Özel Haritalar İçin 'W' Tuş Engeli -- Endelse:
player.SetSingleDIKKeyState(app.DIK_UP,True)
self.bugfix = app.GetTime()#player.SetSingleDIKKeyState(app.DIK_UP, True)
Kod içerisinde göreceğiniz üzere haritayı packteki ismiyle tanıtıyoruz. Eğer harita klasörü tek bir dizine aitse koddaki gibi ekleyeceksiniz. Fakat ikili veya daha fazla dizine bağlıysa aşağıdaki örnekteki gibi eklemeniz gerek.
Örneğin mmotutkunlari adında bir harita var diyelim ve bunun yolu şu şekilde olsun; haritalar.eix içinde > klasör1 > mmotutkunlari
Koda eklenme şekli; "klasör1/mmotutkunlari"
Eğer haritalar.eix içinde > mmotutkunlari şeklinde ise benim kodda eklediğim gibi direkt adını yazabilirsiniz.
Farenin sol tuşuna basılı tutarak ard arda W'ye basarak oluşan durumu diyorsanız, bu engel ona da etki etmektedir.
Kodlar döngü şeklinde çalışıyor, ilk engelden sonra tekrar aynı şey yapılırsa yine aynı engel uygulanıyor.
Farenin sol tuşuna basılı tutarak ard arda W'ye basarak oluşan durumu diyorsanız, bu engel ona da etki etmektedir.
Kodlar döngü şeklinde çalışıyor, ilk engelden sonra tekrar aynı şey yapılırsa yine aynı engel uygulanıyor.
Klavye bir nebze teşvik eder belki ama en uyanık oyuncunun bile mouse tuşuna ard arda basmaya yelteneceğini veya o kadar basmaya parmağının dayanacağını sanmam
Klavye bir nebze teşvik eder belki ama en uyanık oyuncunun bile mouse tuşuna ard arda basmaya yelteneceğini veya o kadar basmaya parmağının dayanacağını sanmam
Catacomb yollarını ezbere bilen oyuncular, buga girişecek oyunculardan kat be kat daha fazla. Hal böyle olunca böyle işsizliklere yeltenecek kişi sayısı bir hayli az olur. Bu engel fazlasıyla yeterli diye düşünüyorum