Yardım Derece sistemi ekledikten sonra npclerde tarafsız yazıyor

  • Konuyu açan Konuyu açan muhammet53
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 12
  • Gösterim Gösterim 227
Konu sahibi bu konuda soru soruyor. Sorusu ile ilgili bilgisi olanların yanıtlamasını bekliyor.

muhammet53

Üye
Üye
Mesaj
307
Çözümler
3
Beğeni
19
Puan
454
Ticaret Puanı
0
Derece sistemi ekledikten sonra npclerde tarafsız yazıyor
Ekran Görüntüsü (115).webp
 
Theadmin33'ün paylaştığını eklediysen


InstanceBase.h::
Genişlet Daralt Kopyala
//Arat;

            TITLE_NUM                = 9,
            TITLE_NONE                = 4,


//Değiştir;

#ifdef ENABLE_ALIGN_RENEWAL
            TITLE_NUM                = 46,
            TITLE_NONE                = 41,
#else
            TITLE_NUM                 = 9,
            TITLE_NONE                 = 4,
#endif

bu adımları uygula
 
En son bir moderatör tarafından düzenlenmiş:
Derece sistemi ekledikten sonra npclerde tarafsız yazıyor
20788 eklentisini görüntüle

Client/Src/InstanceBase.h 'yi aç

bul

C++:
Genişlet Daralt Kopyala
TITLE_NONE

Burası normalde 4 'dür sende kaç bilmiyorum hesaplamasıda şöyle. Kaç tane - derece tipin varsa ona göre numaralandırma vericeksin örneğin default olarak
Zalim
Kötü Niyetli
Hileli
Agresif
Gördüğün gibi 4 tane - derece olduğu için normali
C++:
Genişlet Daralt Kopyala
TITLE_NONE = 4;
Sende mesela 6 tane - derece mevcutsa bunu = 6 yapman sorununu çözücektir.
 
Düzeltemediysen InstanceBase.cpp ve InstanceBase.h dosyalarını konuya dahil et biz hallederiz.
 
Bug değil yeni özellik 😂 Npcleri kahramana yükseltince ödül verdir ne güzel sistem olur.
 
Son düzenleme:
şuanlık kahraman kodunun üstüne eklediğimde hata veriyor eklemediğimde vermiyor onu çözmek istiyorum
şu şekilde olması gerekiyor;

InstanceBase.cpp:
Genişlet Daralt Kopyala
int CInstanceBase::GetAlignmentType()
{
    switch (GetAlignmentGrade())
    {
        case 0:
        case 1:
        case 2:
        case 3:
        {
            return ALIGNMENT_TYPE_WHITE;
            break;
        }

        case 5:
        case 6:
        case 7:
        case 8:
        {
            return ALIGNMENT_TYPE_DARK;
            break;
        }
    }

    return ALIGNMENT_TYPE_NORMAL;
}

al sen bunu ekle keyfine bak

 
şu şekilde olması gerekiyor;

InstanceBase.cpp:
Genişlet Daralt Kopyala
int CInstanceBase::GetAlignmentType()
{
    switch (GetAlignmentGrade())
    {
        case 0:
        case 1:
        case 2:
        case 3:
        {
            return ALIGNMENT_TYPE_WHITE;
            break;
        }

        case 5:
        case 6:
        case 7:
        case 8:
        {
            return ALIGNMENT_TYPE_DARK;
            break;
        }
    }

    return ALIGNMENT_TYPE_NORMAL;
}

al sen bunu ekle keyfine bak


ve yine aynı oldu 2 tane kodu ekledikten sonra üste bu şekilde


Kod:
Genişlet Daralt Kopyala
UINT CInstanceBase::GetAlignmentGrade()
{
    if (m_sAlignment >= 24000)
        return 0;
    else if (m_sAlignment >= 20000)
        return 1;
    else if (m_sAlignment >= 12000)
        return 2;
    else if (m_sAlignment >= 8000)
        return 3;
    else if (m_sAlignment >= 4000)
        return 4;
    else if (m_sAlignment >= 1000)
        return 5;
    else if (m_sAlignment >= 0)
        return 6;
    else if (m_sAlignment > -4000)
        return 7;
    else if (m_sAlignment > -8000)
        return 8;
    else if (m_sAlignment > -12000)
        return 9;

    return 8;
}

int CInstanceBase::GetAlignmentType()
{
    switch (GetAlignmentGrade())
    {
        case 0:
        case 1:
        case 2:
        case 3:
        {
            return ALIGNMENT_TYPE_WHITE;
            break;
        }

        case 5:
        case 6:
        case 7:
        case 8:
        {
            return ALIGNMENT_TYPE_DARK;
            break;
        }
    }

    return ALIGNMENT_TYPE_NORMAL;
}
 
Son düzenleme:
@muhammet53

InstanceBaseEffect.cpp aç

Arat:


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

Altına Ekle:


C++:
Genişlet Daralt Kopyala
if (IsNPC())
    return;

Veya

InstanceBase.h aç
Arat:

C++:
Genişlet Daralt Kopyala
TITLE_NONE                = 4,

Değiştir:

C++:
Genişlet Daralt Kopyala
TITLE_NONE                = 6,
 
hocam 65 250 servere gitmez

@muhammet53

InstanceBaseEffect.cpp aç

Arat:


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

Altına Ekle:


C++:
Genişlet Daralt Kopyala
if (IsNPC())
    return;

Veya

InstanceBase.h aç
Arat:

C++:
Genişlet Daralt Kopyala
TITLE_NONE                = 4,

Değiştir:

C++:
Genişlet Daralt Kopyala
TITLE_NONE                = 6,
evet oldu hocam npc deki isimler beyaz gozukuyor onları nasıl eski haline ceviririm ?
 
evet oldu hocam npc deki isimler beyaz gozukuyor onları nasıl eski haline ceviririm ?

Az önce ekleme yaptığımızyeri bul.
InstanceBaseEffect.cpp

Ara:

C++:
Genişlet Daralt Kopyala
void CInstanceBase::RefreshTextTail()
{
    if (IsNPC())
        return;

Şu şekilde değiştir:


C++:
Genişlet Daralt Kopyala
void CInstanceBase::RefreshTextTail()
{
CPythonTextTail::Instance().SetCharacterTextTailColor(GetVirtualID(), GetNameColor());
    if (IsNPC())
        return;

Çözüldü olarak işaretlemeyi unutma kolay gelsin.
 
Geri
Üst