Best Studio 1
Best Studio
D 1
delimuratt
Aliyldrim 1
Aliyldrim
Mt2Hizmet 1
Mt2Hizmet
noisiv 1
noisiv
Manwe Work 1
Manwe Work
melankolıa18 1
melankolıa18
Agora Metin2 1
Agora Metin2
Cannn6161 1
Cannn6161
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

Cevaplanmadı Steckli itemleride NEW item efect olmama sorunu

  • Konuyu başlatan Konuyu başlatan safsag
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 2
  • Görüntüleme Görüntüleme 57

safsag

Level 1
Üye
Katılım
23 Mar 2010
Konular
18
Mesajlar
44
Online süresi
7d 18h
Reaksiyon Skoru
6
Altın Konu
0
TM Yaşı
16 Yıl 2 Ay 16 Gün
Başarım Puanı
100
MmoLira
2,637
DevLira
0
Ticaret - 0%
0   0   0

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

Envantere aldığım her item Pickup effect sistemi sayesinde parlıyor envanterde yeni geldiği için
Ama stacklanan yanı bk yada artı basma materyalleri vs 10 adet var diyelim 11 adet oluyor AA parlama gelmiyor bunu nasıl yapabiliriz
 
Envantere aldığım her item Pickup effect sistemi sayesinde parlıyor envanterde yeni geldiği için
Ama stacklanan yanı bk yada artı basma materyalleri vs 10 adet var diyelim 11 adet oluyor AA parlama gelmiyor bunu nasıl yapabiliriz
Pickup effect dediğimiz parlama olayı genelde envantere yeni bir item girdi mi mantığıyla çalışıyor. Yerden aldığın normal bir item slot’a ilk defa girince sistem “yeni item geldi” diye algılıyor ve efekti basıyor.

Stack itemlerde ise olay farklı.
Mesela envanterinde 10 tane BK var. Yerden bir tane daha aldığında oyunda yeni bir item oluşmuyor. O slot zaten var olduğu için sadece sayı 10’dan 11’e çıkıyor. Slot değişmediği için sistem bunu “yeni item” olarak görmüyor, doğal olarak da parlama gelmiyor.

Yani sorun efektte değil, stack mantığında.

Bunu yapmak için pickup kontrolünü biraz genişletmek gerekiyor. Sadece “yeni slot açıldı mı” diye bakmak yetmiyor, mevcut slotta sayı arttı mı ona da bakmak lazım.

Mantık şu şekilde ilerliyor:

  • Item yerden alındı
  • Envanterde aynı item varsa stacklendi
  • Stacklenen itemin count değeri arttıysa
  • O slot için pickup effect’i elle tetikle
Bunu yaptığında 10’dan 11’e çıktığında da efekt gelir.

Bazı sistemlerde bu tamamen client tarafında packet ile dönüyor. Server stack işlemini yaptıktan sonra client’a “bu slot güncellendi” gibi ekstra bir bilgi gönderiyorsun, client da “yeni mi eski mi” umursamadan efekti oynatıyor. Görsel olarak en temiz çözüm bu oluyor.

Şunu da söylemek lazım, herkesin düştüğü bir hata var:
Her count artışında efekt vermek özellikle oto-pickup açıkken fazla parlama yapıyor. Ekran sürekli yanıp sönebiliyor. O yüzden çoğu kişi sadece:

  • Yerden alınan itemlerde
  • Market, trade, depo gibi yerlerden gelenlerde değil
    şeklinde sınır koyuyor.
Bazıları stack itemi önce ayrı slotmuş gibi gösterip sonra tekrar birleştiriyor ama bu yöntem hem envanteri zıplatıyor hem de ileride saçma buglar çıkarıyor. Pek sağlıklı değil.

Özetle:

  • Pickup effect yeni slot mantığıyla çalışıyor
  • Stack itemde yeni slot yok, sadece sayı artıyor
  • Çözüm, sayı artışını da pickup olarak kabul etmek
Bunu eklediğinde BK olsun, artı taşı olsun, stacklenen her şeyde parlama sorunsuz çalışır.
 
Çok teşekkür ederim bu kadar açıklayıcı bir Yorumunuz karşısında mahçup hissettim o kadar güzel açıklamışsın ki.
Malesef benim kod bilgim oldukça zayıf bi şekilde game tarafını halletsem bile client Tarafın paket gönderme falan karmaşık henüz
 

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

Geri
Üst