noisiv 1
noisiv
Manwe Work 1
Manwe Work
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
Cannn6161 1
Cannn6161
onur akbaş 1
onur akbaş
PrimeAC 1
PrimeAC
Mt2Hizmet 1
Mt2Hizmet
romegames 1
romegames
Fethi Polat 1
Fethi Polat
xranzei 1
xranzei
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

[C++] İteme + basınca alttan duyuru verdirme

  • Konuyu başlatan Konuyu başlatan a✘seee;
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 21
  • Görüntüleme Görüntüleme 3K

a✘seee;

Manager
Telefon Numarası Onaylanmış Üye TC Kimlik Numarası Doğrulanmış Üye
TM Üye
Katılım
16 Eyl 2009
Konular
123
Mesajlar
2,377
Çözüm
25
Online süresi
1mo 5d
Reaksiyon Skoru
1,255
Altın Konu
0
Başarım Puanı
304
MmoLira
8,568
DevLira
-19
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!

İşinize yararmı bilmem ama ince detaylara önem veren biriyim :D
Önceki paylaşılandan farkı Yükseltme işlemine göre duyuru gönderir.
Büyülü Metal, Kutsama kağıdı gibi vs.

Sistem Görseli
vPJyWA.png


 
Moderatör tarafında düzenlendi:

En Çok Reaksiyon Alan Mesajlar

Bu kelilde örnekteki gibi yapıp istenilen itemler için yapabilirsiniz :)

Merhaba
char_item.cpp

Artı basma geçerse alttaki gibi yapacaksınız .


Arayın : ITEM_MANAGER::instance().RemoveItem(item, "REMOVE (REFINE SUCCESS)");

2 tane çıkması gerekiyor 2 sininde altına yapıştırın

Altına Yapıştır
C++:
#ifdef __UPDATE_NOTICE__
        const int MAX_SPECIAL_ITEMS = 18;
        const DWORD SPECIAL_ITEM_CODES[MAX_SPECIAL_ITEMS] = {11298,11498,11698,11898,3158,298,278,1138,288,198,4048,2168,5128,7198,12018,12028,12038,12048};
        for (int i = 0; i < MAX_SPECIAL_ITEMS; ++i)
            {
                if (item->GetVnum() == SPECIAL_ITEM_CODES[i] && pkNewItem->GetRefineLevel() >= 7)
            {       
                char gelistirmeduyuru[QUERY_MAX_LEN];
                snprintf(gelistirmeduyuru, sizeof(gelistirmeduyuru), "<Demirci> %s isimli oyuncu %s elde etti!", GetName(), pkNewItem->GetName());
                BroadcastNotice(gelistirmeduyuru);
                break;
            }
            }
#endif

Artı basma yanarsa
Arayın: ITEM_MANAGER::instance().RemoveItem(item, "REMOVE (REFINE FAIL)");

altına yapıştırın üstteki koddan 2 tane var 2 sinede aynı işlem
C++:
#ifdef __UPDATE_NOTICE__
        const int MAX_SPECIAL_ITEMS = 18;
        const DWORD SPECIAL_ITEM_CODES[MAX_SPECIAL_ITEMS] = {11298,11498,11698,11898,3158,298,278,1138,288,198,4048,2168,5128,7198,12018,12028,12038,12048};
        for (int i = 0; i < MAX_SPECIAL_ITEMS; ++i)
            {
                if (item->GetVnum() == SPECIAL_ITEM_CODES[i] && item->GetRefineLevel() >= 7)
            {       
                char gelistirmeduyuru[QUERY_MAX_LEN];
                snprintf(gelistirmeduyuru, sizeof(gelistirmeduyuru), "|cffff0000<Demirci> %s isimli oyuncu %s yaktı", GetName(), item->GetName());
                BroadcastNotice(gelistirmeduyuru);
                break;
            }
            }
#endif

son olarak service.h #define __UPDATE_NOTICE__ ekle#defineutmayın item kodlarını istediniz gibi düzeltin.

kanıtlar istenilen item geçtinde duyuru geçiyor

Öğeyi görmek için üye olmalısınız.

2. sura çelinin kodu yok listede onun duyurusu geçmiyor :D

Öğeyi görmek için üye olmalısınız.
Teşekkürler.
 
Serverde 1000 kişi olduğunu düşünün 300 ü + bassa Chat kısmı komple gitti .
 

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

Geri
Üst