Hikayeler

Reklam vermek için turkmmo@gmail.com

Şebnem Fixi

Katılım
20 Kas 2016
Konular
65
Mesajlar
1,263
Online süresi
1ay 3g
Reaksiyon Skoru
619
Altın Konu
0
Başarım Puanı
201
TM Yaşı
9 Yıl 5 Ay 2 Gün
MmoLira
2,443
DevLira
82

Metin2 EP, Valorant VP dahil tüm oyun ürünlerini en uygun fiyatlarla bulabilir, Item ve Karakterlerinizi hızlıca satabilirsiniz. HEMEN TIKLA!

char_item.cpp

Arat

Kod:
// 아이템 최초 사용 이후부터는 사용하지 않아도 시간이 차감되는 방식 처리.

Ustune Ekle

Kod:
    if (!IsLoadedAffect())
    {
        ChatPacket(CHAT_TYPE_INFO, "Bug Engel");
        return false;
    }

DB Eklentisi

db/ClientManager.h

arat

Kod:
    void        RESULT_AFFECT_LOAD(CPeer * pkPeer, MYSQL_RES * pRes, DWORD dwHandle);

değiştir
Kod:
    void        RESULT_AFFECT_LOAD(CPeer * pkPeer, MYSQL_RES * pRes, DWORD dwHandle, DWORD dwRealPID);

db/ClientManagerPlayer.cpp

arat

Kod:
void CClientManager::RESULT_AFFECT_LOAD(CPeer * peer, MYSQL_RES * pRes, DWORD dwHandle)
{
    int iNumRows;

    if ((iNumRows = mysql_num_rows(pRes)) == 0) // µ¥ÀÌÅÍ ¾øÀ½
        return;

değiştir

Kod:
void CClientManager::RESULT_AFFECT_LOAD(CPeer * peer, MYSQL_RES * pRes, DWORD dwHandle, DWORD dwRealPID)
{
    int iNumRows;

    if ((iNumRows = mysql_num_rows(pRes)) == 0) // µ¥ÀÌÅÍ ¾øÀ½
    {
        static DWORD dwPID;
        static DWORD dwCount = 0; //1;
        static TPacketAffectElement paeTable = {0};

        dwPID = dwRealPID;
        sys_log(0, "AFFECT_LOAD: count %u PID %u RealPID %u", dwCount, dwPID, dwRealPID);

        peer->EncodeHeader(HEADER_DG_AFFECT_LOAD, dwHandle, sizeof(DWORD) + sizeof(DWORD) + sizeof(TPacketAffectElement) * dwCount);
        peer->Encode(&dwPID, sizeof(DWORD));
        peer->Encode(&dwCount, sizeof(DWORD));
        peer->Encode(&paeTable, sizeof(TPacketAffectElement) * dwCount);
        return;
    }

arat

Kod:
case QID_AFFECT:
            sys_log(0, "QID_AFFECT %u", info->dwHandle);
            RESULT_AFFECT_LOAD(peer, pSQLResult, info->dwHandle);
            break;

değiştir

Kod:
case QID_AFFECT:
            sys_log(0, "QID_AFFECT %u", info->dwHandle);

            RESULT_AFFECT_LOAD(peer, pSQLResult, info->dwHandle, info->player_id);
            break;

arat

Kod:
snprintf(szQuery, sizeof(szQuery),
                    "SELECT dwPID,bType,bApplyOn,lApplyValue,dwFlag,lDuration,lSPCost FROM affect%s WHERE dwPID=%d",
                    GetTablePostfix(), pTab->id);
            CDBManager::instance().ReturnQuery(szQuery, QID_AFFECT, peer->GetHandle(), new ClientHandleInfo(dwHandle));
        }

değiştir

Kod:
snprintf(szQuery, sizeof(szQuery),
                    "SELECT dwPID,bType,bApplyOn,lApplyValue,dwFlag,lDuration,lSPCost FROM affect%s WHERE dwPID=%d",
                    GetTablePostfix(), pTab->id);
            CDBManager::instance().ReturnQuery(szQuery, QID_AFFECT, peer->GetHandle(), new ClientHandleInfo(dwHandle, pTab->id));
        }

Kod biraz geliştirilip otomatik ban sistemine dönüşebilir veya böylede kullanılabilir iyi kullanımlar.
 
Son düzenleme:

En Çok Reaksiyon Alan Mesajlar

Gözünü seveyim bune yav bune :D isLoadedAffect e yazı göndersen nolur göndermesen nolur hadi gönderdin doğruda gönderemiyorsun zaten bunu böyle yaparsan kullanacak kişinin başına iş verirsin sadece neyse.
boş laf yazmakta biliyor gibi davranmakta üstünüze yok IsLoadAffect affectler işlendikte sonra true değeri verir yani fix gayet güzel düşünülmüş.fix yapımcısı büyük ihtimalle martysama ona burdan ayrıca teşekkürler.
db/ClientManager.h

arat

Kod:
    void        RESULT_AFFECT_LOAD(CPeer * pkPeer, MYSQL_RES * pRes, DWORD dwHandle);

değiştir
Kod:
    void        RESULT_AFFECT_LOAD(CPeer * pkPeer, MYSQL_RES * pRes, DWORD dwHandle, DWORD dwRealPID);

db/ClientManagerPlayer.cpp

arat

Kod:
void CClientManager::RESULT_AFFECT_LOAD(CPeer * peer, MYSQL_RES * pRes, DWORD dwHandle)
{
    int iNumRows;

    if ((iNumRows = mysql_num_rows(pRes)) == 0) // µ¥ÀÌÅÍ ¾øÀ½
        return;

değiştir

Kod:
void CClientManager::RESULT_AFFECT_LOAD(CPeer * peer, MYSQL_RES * pRes, DWORD dwHandle, DWORD dwRealPID)
{
    int iNumRows;

    if ((iNumRows = mysql_num_rows(pRes)) == 0) // µ¥ÀÌÅÍ ¾øÀ½
    {
        static DWORD dwPID;
        static DWORD dwCount = 0; //1;
        static TPacketAffectElement paeTable = {0};

        dwPID = dwRealPID;
        sys_log(0, "AFFECT_LOAD: count %u PID %u RealPID %u", dwCount, dwPID, dwRealPID);

        peer->EncodeHeader(HEADER_DG_AFFECT_LOAD, dwHandle, sizeof(DWORD) + sizeof(DWORD) + sizeof(TPacketAffectElement) * dwCount);
        peer->Encode(&dwPID, sizeof(DWORD));
        peer->Encode(&dwCount, sizeof(DWORD));
        peer->Encode(&paeTable, sizeof(TPacketAffectElement) * dwCount);
        return;
    }

arat

Kod:
case QID_AFFECT:
            sys_log(0, "QID_AFFECT %u", info->dwHandle);
            RESULT_AFFECT_LOAD(peer, pSQLResult, info->dwHandle);
            break;

değiştir

Kod:
case QID_AFFECT:
            sys_log(0, "QID_AFFECT %u", info->dwHandle);

            RESULT_AFFECT_LOAD(peer, pSQLResult, info->dwHandle, info->player_id);
            break;

arat

Kod:
snprintf(szQuery, sizeof(szQuery),
                    "SELECT dwPID,bType,bApplyOn,lApplyValue,dwFlag,lDuration,lSPCost FROM affect%s WHERE dwPID=%d",
                    GetTablePostfix(), pTab->id);
            CDBManager::instance().ReturnQuery(szQuery, QID_AFFECT, peer->GetHandle(), new ClientHandleInfo(dwHandle));
        }

değiştir

Kod:
snprintf(szQuery, sizeof(szQuery),
                    "SELECT dwPID,bType,bApplyOn,lApplyValue,dwFlag,lDuration,lSPCost FROM affect%s WHERE dwPID=%d",
                    GetTablePostfix(), pTab->id);
            CDBManager::instance().ReturnQuery(szQuery, QID_AFFECT, peer->GetHandle(), new ClientHandleInfo(dwHandle, pTab->id));
        }
Kullanacak Arkadaşlar için uyarı : Eğer üzerinizde çıkış yaptığınızda tek bir affect bile kalmamışsa hiçbir nesneye basamayacaksınız.
 
what is it , more details , and photo
 
char_item.cpp

Arat

Kod:
// 아이템 최초 사용 이후부터는 사용하지 않아도 시간이 차감되는 방식 처리.

Ustune Ekle

Kod:
    if (!IsLoadedAffect())
    {
        ChatPacket(CHAT_TYPE_INFO, "Bug Engel");
        return false;
    }

Kod biraz geliştirilip otomatik ban sistemine dönüşebilir veya böylede kullanılabilir iyi kullanımlar.

Gözünü seveyim bune yav bune :D isLoadedAffect e yazı göndersen nolur göndermesen nolur hadi gönderdin doğruda gönderemiyorsun zaten bunu böyle yaparsan kullanacak kişinin başına iş verirsin sadece neyse.
 
Gözünü seveyim bune yav bune :D isLoadedAffect e yazı göndersen nolur göndermesen nolur hadi gönderdin doğruda gönderemiyorsun zaten bunu böyle yaparsan kullanacak kişinin başına iş verirsin sadece neyse.
boş laf yazmakta biliyor gibi davranmakta üstünüze yok IsLoadAffect affectler işlendikte sonra true değeri verir yani fix gayet güzel düşünülmüş.fix yapımcısı büyük ihtimalle martysama ona burdan ayrıca teşekkürler.
 

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

Geri
Üst