Soru GM karakterinin boyunu nasıl ayarlayabilirim.

  • Konuyu açan Konuyu açan eldem07
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 18
  • Gösterim Gösterim 460
Herhangi bir konuda danışmak istediğiniz soru varsa bu öneki seçebilirsiniz.
martysama 5.8 kullanmaktayım denedim olmadı

char.cpp aç ve ara:

C++:
Genişlet Daralt Kopyala
d->Packet(addPacket);

Değiştir:

C++:
Genişlet Daralt Kopyala
if (IsPC() && IsGM())
    addPacket.bCharacterSize = 7;
d->Packet(addPacket);

Client/InstanceBase.h aç

arat:

C++:
Genişlet Daralt Kopyala
SetPKMode

altına Ekle:

C++:
Genişlet Daralt Kopyala
void                    GMBuyut();

InstanceBase.cpp aç

arat:

C++:
Genişlet Daralt Kopyala
m_dwGuildID = c_rkCreateData.m_dwGuildID;

Üstüne Ekle:

C++:
Genişlet Daralt Kopyala
    if (IsPC() && c_rkCreateData.m_bCharacterSize > 0)
        GMBuyut();

1737110968927.webp
 
char.cpp aç ve ara:

C++:
Genişlet Daralt Kopyala
d->Packet(addPacket);

Değiştir:

C++:
Genişlet Daralt Kopyala
if (IsPC() && IsGM())
    addPacket.bCharacterSize = 7;
d->Packet(addPacket);

Client/InstanceBase.h aç

arat:

C++:
Genişlet Daralt Kopyala
SetPKMode

altına Ekle:

C++:
Genişlet Daralt Kopyala
void                    GMBuyut();

InstanceBase.cpp aç

arat:

C++:
Genişlet Daralt Kopyala
m_dwGuildID = c_rkCreateData.m_dwGuildID;

Üstüne Ekle:

C++:
Genişlet Daralt Kopyala
    if (IsPC() && c_rkCreateData.m_bCharacterSize > 0)
        GMBuyut();

21252 eklentisini görüntüle

char.cpp:1013:13: error: no member named 'bCharacterSize' in 'packet_char_additional_info'
addPacket.bCharacterSize = 7;


Clientsrc: 'm_bCharacterSize': bir 'CInstanceBase::SCreateData' üyesi değil
 
elinizde varmıdır ?

yada indirebiliceğim
 
char.cpp aç ve ara:

C++:
Genişlet Daralt Kopyala
d->Packet(addPacket);

Değiştir:

C++:
Genişlet Daralt Kopyala
if (IsPC() && IsGM())
    addPacket.bCharacterSize = 7;
d->Packet(addPacket);

Client/InstanceBase.h aç

arat:

C++:
Genişlet Daralt Kopyala
SetPKMode

altına Ekle:

C++:
Genişlet Daralt Kopyala
void                    GMBuyut();

InstanceBase.cpp aç

arat:

C++:
Genişlet Daralt Kopyala
m_dwGuildID = c_rkCreateData.m_dwGuildID;

Üstüne Ekle:

C++:
Genişlet Daralt Kopyala
    if (IsPC() && c_rkCreateData.m_bCharacterSize > 0)
        GMBuyut();

21252 eklentisini görüntüle
bCharacterSize hangi sistemde tanımlı link var mı
 
mob scale sisteminide ekledim ama malasef olmadı bCharacterSize buda tanımlı olmadığı için build sırasında error vermekte
Client/Src/UserInterface/InstanceBase.h aç

Arat:

C++:
Genişlet Daralt Kopyala
        void                    SetPKMode(BYTE byPKMode);

Altına Ekle:

C++:
Genişlet Daralt Kopyala
        void                    GMBuyut();

InstanceBase.cpp aç ve arat:

C++:
Genişlet Daralt Kopyala
DWORD CInstanceBase::GetRace()

Üstüne Ekle:

C++:
Genişlet Daralt Kopyala
void CInstanceBase::GMBuyut()
{


    float sizeMultiplier = 1.0f;


    float fScale = (120 * 0.004f) + sizeMultiplier;
    m_GraphicThingInstance.SetScale(fScale, fScale, fScale,true);
}

Tekrar Arat:

C++:
Genişlet Daralt Kopyala
    return true;
}

void CInstanceBase::__Create_SetName(const SCreateData& c_rkCreateData)

Değiştir:

C++:
Genişlet Daralt Kopyala
        if (IsPC() && IsGameMaster())
            GMBuyut();

    return true;
}

void CInstanceBase::__Create_SetName(const SCreateData& c_rkCreateData)

Son görünüm:

1737287247875.webp


Gamede hiçbir işlem yapmana gerek yok
 
Client/Src/UserInterface/InstanceBase.h aç

Arat:

C++:
Genişlet Daralt Kopyala
        void                    SetPKMode(BYTE byPKMode);

Altına Ekle:

C++:
Genişlet Daralt Kopyala
        void                    GMBuyut();

InstanceBase.cpp aç ve arat:

C++:
Genişlet Daralt Kopyala
DWORD CInstanceBase::GetRace()

Üstüne Ekle:

C++:
Genişlet Daralt Kopyala
void CInstanceBase::GMBuyut()
{


    float sizeMultiplier = 1.0f;


    float fScale = (120 * 0.004f) + sizeMultiplier;
    m_GraphicThingInstance.SetScale(fScale, fScale, fScale,true);
}

Tekrar Arat:

C++:
Genişlet Daralt Kopyala
    return true;
}

void CInstanceBase::__Create_SetName(const SCreateData& c_rkCreateData)

Değiştir:

C++:
Genişlet Daralt Kopyala
        if (IsPC() && IsGameMaster())
            GMBuyut();

    return true;
}

void CInstanceBase::__Create_SetName(const SCreateData& c_rkCreateData)

Son görünüm:

21302 eklentisini görüntüle

Gamede hiçbir işlem yapmana gerek yok
hocam buna item kontrol şartı client srcde nasıl eklenebilir örnek Sadrazam Power isminde item olsa basınca 2 katına karakter büyüse, server tarafındaki efsun olaylarını hallederim de client srcde item kullanılınca nasıl bir eklenti yapacağımı bilmiyorum
 
hocam buna item kontrol şartı client srcde nasıl eklenebilir örnek Sadrazam Power isminde item olsa basınca 2 katına karakter büyüse, server tarafındaki efsun olaylarını hallederim de client srcde item kullanılınca nasıl bir eklenti yapacağımı bilmiyorum

Bunun için game kullanman daha sağlıklı olur

C++:
Genişlet Daralt Kopyala
TPacketGCCharacterAdditionalInfo

içerisinde kontrol yap.
C++:
Genişlet Daralt Kopyala
LPITEM ustumdekiesyalar;
bool buyuyecekmiyim = false;



        for (int is = 0; is < WEAR_MAX_NUM; ++is)
        {
            if ((ustumdekiesyalar = GetWear (is)))
            {
                if (ustumdekiesyalar->GetVnum() == esyavnum)
                    buyuyecekmiyim = true;

            }
        }

TPacketGCCharacterAdditionalInfo

içerisine buyuyecekmiyim adında bir değişken oluşturup bunu cliente iletip kontrol sağlayabilirsin.
 
Bunun için game kullanman daha sağlıklı olur

C++:
Genişlet Daralt Kopyala
TPacketGCCharacterAdditionalInfo

içerisinde kontrol yap.
C++:
Genişlet Daralt Kopyala
LPITEM ustumdekiesyalar;
bool buyuyecekmiyim = false;



        for (int is = 0; is < WEAR_MAX_NUM; ++is)
        {
            if ((ustumdekiesyalar = GetWear (is)))
            {
                if (ustumdekiesyalar->GetVnum() == esyavnum)
                    buyuyecekmiyim = true;

            }
        }

TPacketGCCharacterAdditionalInfo

içerisine buyuyecekmiyim adında bir değişken oluşturup bunu cliente iletip kontrol sağlayabilirsin.
Hocam yardiminiz için teşekkür ederim şehir dışı işim olduğundan dolayı biraz beklemeye aldım
 
Geri
Üst