ShadowFon 1
ShadowFon
bikral 1
bikral
-TuRKuaZ- 1
-TuRKuaZ-
SLyFeLLowTR 1
SLyFeLLowTR
TGamesZeus 1
TGamesZeus
Best Studio 1
Best Studio
berkmenoo 1
berkmenoo
InfernoShade 1
InfernoShade
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Agora Metin2 1
Agora Metin2
Bvural41 1
Bvural41
Hikaye Ekle

Cevaplanmadı overlay sorunu

  • Konuyu başlatan Konuyu başlatan IMD
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 4
  • Görüntüleme Görüntüleme 61

IMD

IMD
TM Üye
Üye
Katılım
6 Şub 2025
Konular
728
Mesajlar
1,046
Çözüm
1
Reaksiyon Skoru
302
Altın Konu
0
Başarım Puanı
195
MmoLira
15,409
DevLira
9
Ticaret - 0%
0   0   0

HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!

1766961203153.png


envanterdeki pazara konulamayan itemlerin overlay olmasını istiyorum nerden yapabilirim? 5.8 kullanııyorum yardımcı olursnız sevinirim
 
Bunu client tarafında envanter slot çiziminde yapıyorsun. Mantık şu: “Bu item pazara konulamaz” durumunu client zaten bir yerden anlıyor (kontrol fonksiyonu / flag). Sen de envanterde o slotun üstüne cover/overlay basıyorsun.

5.8’lerde en pratik yerler genelde şuralar:

  • root/uiinventory.py (envanter pencere kodu)
  • bazen root/uiprivateShopBuilder.py / root/uiofflineshopbuilder.py (pazar kurma penceresi)
  • slot güncellemesi yapan fonksiyonlar: RefreshBag(), RefreshItemSlot(), RefreshSlot() gibi

Yapılacak iş (özet)

  1. “pazara konulamaz” kontrolünü bul / oluştur
  2. Envanter refresh’inde o item varsa slotun üstüne overlay bas
  3. Pazar/normal mod değişince overlay’leri temizle

1) Kontrolü nereden alacağız?

Bu kısım sende hangi sistem olduğuna göre değişir:

  • Eğer item “antiflag” ile engelleniyorsa: item.IsAntiFlag(...) veya item.GetAntiFlags() benzeri.
  • OfflineShop özel engel listesi varsa: builder tarafında bir fonksiyon olur (örn. IsCanAddItem, CanAddItemToShop, IsSellableItem gibi).
Pratikte kontrol şöyle bir şeye bağlanır:

  • görev itemi / mühürlü / takılı / süreli / ruh bağlı / pazara kapalı flag
Senin sistemde bu kontrol zaten vardır çünkü pazar penceresi itemi reddediyor. Onu bulup aynı kontrolü envanterde kullanacaksın.

2) Overlay’yi envanter slotuna basma

Slot objelerinde genelde şu tarz fonksiyonlar oluyor (source’a göre isim değişebilir):

  • self.wndItem.SetCoverButton(slotIndex, imageName, ...)
  • self.wndItem.SetSlotColor(slotIndex, r, g, b, a) / SetSlotBaseImage
  • DisableSlot(slotIndex) (bu tıklamayı da kapatır, bazen istemezsin)
  • bazı clientlarda “cover” sistemi direkt var
Senin istediğin: tıklama dursun/durmasın fark etmez, ama görsel overlay olsun.

Envanterde refresh yapan yerde örnek mantık:

  • slot index 0..x dön
  • player.GetItemIndex(slot) ile vnum al
  • vnum 0 değilse kontrol et
  • uygunsa overlay kaldır, değilse overlay bas

3) Nerede ekleyeyim? (en doğru nokta)

Genelde en temiz yer:

uiinventory.py içinde

  • RefreshBag() veya RefreshItemSlot() fonksiyonu
  • çünkü her item değişiminde zaten burası çalışıyor
Oraya küçük bir blok ekleniyor:

  • if self.isOfflineShopBuildMode: gibi bir durumun varsa, sadece o moddayken overlay bas
  • yoksa sürekli basarsan envanter hep “pazara göre” boyanır (genelde istenmez)

4) Sende doğru dosyayı hızlı bulma

Arama yap:

  • SetCoverButton
  • Cover
  • RefreshItemSlot
  • RefreshBag
  • GetItemIndex
  • privateShop / offlineshop
Bu kelimeler seni direkt doğru çözüme götürür.
 
Ekstra eklenti yapmak gerekiyor fakat orjinal 5.8lerde zaten bu eklenti mevcut bende çalışmadığı için 5.8 kullanıp bilen kişiler tam yerini söylebilirse çok daha iyi olur çünkü eklenti ile çalışıyor ama ben farklı bir yerde bozmuşsam onu bulamıyorum :)
gine bilgilendirme için teşekkürler
 
Ekstra eklenti yapmak gerekiyor fakat orjinal 5.8lerde zaten bu eklenti mevcut bende çalışmadığı için 5.8 kullanıp bilen kişiler tam yerini söylebilirse çok daha iyi olur çünkü eklenti ile çalışıyor ama ben farklı bir yerde bozmuşsam onu bulamıyorum :)
gine bilgilendirme için teşekkürler
Overlaydan kastın ticaret ekranına veya pazara konulmayan envanterde oluşan görüntüden mi bahsediyorsun?

bunu indirip karşılaştırırmısın
"Slot Marking System"
 
Normal 5.8lerde mevcut pazarlı olanlarda bende bir sorun var bende tam yerini bilmediğim için soruyorum hocam
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst