- Mesaj
- 179
- Çözümler
- 8
- Beğeni
- 199
- Puan
- 759
- Ticaret Puanı
- 0
Char.cpp Aç ve Ekle:
En Alta Ekle:
Include İsminde Dosya Oluşturun ve İçine Ekleyin:
Input_Login.cpp Açın ve Arat:
Altına Ekle:
Char.h Aç ve Arat:
Üstüne Ekle:
Common/length.h Aç ve Ekle:
CommonDefines.h veya Service.h Ekle:
Kanıt:
C++:
#if defined(__ENABLE_CHECK_MOUNT__)
# include "unmount_map.h"
#endif
En Alta Ekle:
C++:
#if defined(__ENABLE_CHECK_MOUNT__)
void CHARACTER::UnMount(LPCHARACTER ch)
{
if (!ch)
return;
const uint32_t mapIndex = ch->GetMapIndex();
if (IsUnMountMap(mapIndex))
{
if (ch->IsHorseRiding())
{
ch->StopRiding();
ch->HorseSummon(false);
}
ch->RemoveAffect(AFFECT_MOUNT);
ch->RemoveAffect(AFFECT_MOUNT_BONUS);
if (ch->IsRiding())
{
ch->StopRiding();
}
#ifdef ENABLE_MOUNT_COSTUME_SYSTEM
auto* cMount = ch->GetWear(WEAR_COSTUME_MOUNT);
if (cMount && cMount->IsEquipped())
{
ch->UnequipItem(cMount);
}
#endif
}
}
#endif
Include İsminde Dosya Oluşturun ve İçine Ekleyin:
C++:
#pragma once
#include "../../common/CommonDefines.h"
#if defined(__ENABLE_CHECK_MOUNT__)
#include "../../common/length.h"
bool IsUnMountMap(uint32_t mapIndex)
{
switch (mapIndex)
{
case MapTypes::MAP_OX_EVENT:
case MapTypes::MAP_PVP_ARENA:
return true;
default:
return false;
}
}
#endif
Input_Login.cpp Açın ve Arat:
C++:
ch->Show(ch->GetMapIndex(), pos.x, pos.y, pos.z);
Altına Ekle:
C++:
#if defined(__ENABLE_CHECK_MOUNT__)
ch->UnMount(ch);
#endif
Char.h Aç ve Arat:
C++:
};
ESex GET_SEX(LPCHARACTER ch);
#endif
Üstüne Ekle:
C++:
#if defined(__ENABLE_CHECK_MOUNT__)
public:
void UnMount(LPCHARACTER ch);
#endif
Common/length.h Aç ve Ekle:
C++:
enum MapTypes
{
MAP_A1 = 1, // metin2_map_a1
MAP_A3 = 3, // metin2_map_a3
MAP_B1 = 21, // metin2_map_b1
MAP_B3 = 23, // metin2_map_b3
MAP_C1 = 41, // metin2_map_c1
MAP_C3 = 43, // metin2_map_c3
MAP_OX_EVENT = 113, // map_ox_event
MAP_PVP_ARENA = 90, // metin2_map_pvp_arena
};
CommonDefines.h veya Service.h Ekle:
C++:
#define __ENABLE_CHECK_MOUNT__
Kanıt: