xranzei 1
xranzei
mavzermete 1
mavzermete
Fethi Polat 1
Fethi Polat
Hikaye Ekle

Change Sex or Change Skill Without Relog

  • Konuyu başlatan Konuyu başlatan muchomor1337
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 3
  • Görüntüleme Görüntüleme 291

HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!

İşte başlıkta belirtildiği gibi, oyunda yeniden giriş yapmadan yetenek değiştirme ve karakterin cinsiyetini gerçek zamanlı olarak değiştirme.
As stated in the title, changing skills without needing to relog in the game and changing the character’s gender in real-time.
Kod:
char.cpp
#ifdef ENABLE_CHANGESEX_CHANGESKILL_WITHOUT_RELOG
void CHARACTER::Fixeletationspo()
{
    UpdatePacket();
    SET_BIT (m_bAddChrState, ADD_CHARACTER_STATE_SPAWN);
    m_afAffectFlag.Set (AFF_SPAWN);
    ViewReencode();
    REMOVE_BIT (m_bAddChrState, ADD_CHARACTER_STATE_SPAWN);
    m_afAffectFlag.Reset (AFF_SPAWN);
}
#endif

bool CHARACTER::ChangeSex()
{
#ifdef ENABLE_FIX_GAME_CORE_BUG
    if (GetWear(WEAR_COSTUME_BODY) || GetWear(WEAR_COSTUME_HAIR))
    {
        return false;
    }
#endif

    int src_race = GetRaceNum();

    switch (src_race)
    {
        case MAIN_RACE_WARRIOR_M:
            m_points.job = MAIN_RACE_WARRIOR_W;
            break;

        case MAIN_RACE_WARRIOR_W:
            m_points.job = MAIN_RACE_WARRIOR_M;
            break;

        case MAIN_RACE_ASSASSIN_M:
            m_points.job = MAIN_RACE_ASSASSIN_W;
            break;

        case MAIN_RACE_ASSASSIN_W:
            m_points.job = MAIN_RACE_ASSASSIN_M;
            break;

        case MAIN_RACE_SURA_M:
            m_points.job = MAIN_RACE_SURA_W;
            break;

        case MAIN_RACE_SURA_W:
            m_points.job = MAIN_RACE_SURA_M;
            break;

        case MAIN_RACE_SHAMAN_M:
            m_points.job = MAIN_RACE_SHAMAN_W;
            break;

        case MAIN_RACE_SHAMAN_W:
            m_points.job = MAIN_RACE_SHAMAN_M;
            break;
        default:
            sys_err ("CHANGE_SEX: %s unknown race %d", GetName(), src_race);
            return false;
    }

    sys_log (0, "CHANGE_SEX: %s (%d -> %d)", GetName(), src_race, m_points.job);

    #ifdef ENABLE_CHANGESEX_CHANGESKILL_WITHOUT_RELOG
    Fixeletationspo();
    #endif

    return true;
}

char.h w public:
        #ifdef ENABLE_CHANGESEX_CHANGESKILL_WITHOUT_RELOG
        void            Fixeletationspo();
        #endif

Definicja:
#define ENABLE_CHANGESEX_CHANGESKILL_WITHOUT_RELOG
 

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

Geri
Üst