446 lines
16 KiB
C++
446 lines
16 KiB
C++
#include "StdAfx.h"
|
|
#include "PythonNonPlayer.h"
|
|
|
|
#include "InstanceBase.h"
|
|
#include "PythonCharacterManager.h"
|
|
|
|
PyObject * nonplayerGetEventType(PyObject * poSelf, PyObject * poArgs)
|
|
{
|
|
int iVirtualNumber;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualNumber))
|
|
return Py_BuildException();
|
|
|
|
BYTE iType = CPythonNonPlayer::Instance().GetEventType(iVirtualNumber);
|
|
|
|
return Py_BuildValue("i", iType);
|
|
}
|
|
|
|
PyObject * nonplayerGetEventTypeByVID(PyObject * poSelf, PyObject * poArgs)
|
|
{
|
|
int iVirtualID;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualID))
|
|
return Py_BuildException();
|
|
|
|
BYTE iType = CPythonNonPlayer::Instance().GetEventTypeByVID(iVirtualID);
|
|
|
|
return Py_BuildValue("i", iType);
|
|
}
|
|
|
|
PyObject * nonplayerGetLevelByVID(PyObject * poSelf, PyObject * poArgs)
|
|
{
|
|
int iVirtualID;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualID))
|
|
return Py_BuildException();
|
|
|
|
CInstanceBase * pInstance = CPythonCharacterManager::Instance().GetInstancePtr(iVirtualID);
|
|
|
|
if (!pInstance)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
const CPythonNonPlayer::TMobTable * pMobTable = CPythonNonPlayer::Instance().GetTable(pInstance->GetVirtualNumber());
|
|
|
|
if (!pMobTable)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
float fAverageLevel = pMobTable->bLevel;//(float(pMobTable->abLevelRange[0]) + float(pMobTable->abLevelRange[1])) / 2.0f;
|
|
fAverageLevel = floor(fAverageLevel + 0.5f);
|
|
return Py_BuildValue("i", int(fAverageLevel));
|
|
}
|
|
|
|
PyObject * nonplayerGetGradeByVID(PyObject * poSelf, PyObject * poArgs)
|
|
{
|
|
int iVirtualID;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualID))
|
|
return Py_BuildException();
|
|
|
|
CInstanceBase * pInstance = CPythonCharacterManager::Instance().GetInstancePtr(iVirtualID);
|
|
|
|
if (!pInstance)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
const CPythonNonPlayer::TMobTable * pMobTable = CPythonNonPlayer::Instance().GetTable(pInstance->GetVirtualNumber());
|
|
|
|
if (!pMobTable)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
return Py_BuildValue("i", pMobTable->bRank);
|
|
}
|
|
|
|
PyObject * nonplayerGetMonsterName(PyObject * poSelf, PyObject * poArgs)
|
|
{
|
|
int iVNum;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVNum))
|
|
return Py_BuildException();
|
|
|
|
CPythonNonPlayer& rkNonPlayer=CPythonNonPlayer::Instance();
|
|
return Py_BuildValue("s", rkNonPlayer.GetMonsterName(iVNum));
|
|
}
|
|
|
|
PyObject * nonplayerLoadNonPlayerData(PyObject * poSelf, PyObject * poArgs)
|
|
{
|
|
char * szFileName;
|
|
if(!PyTuple_GetString(poArgs, 0, &szFileName))
|
|
return Py_BuildException();
|
|
|
|
CPythonNonPlayer::Instance().LoadNonPlayerData(szFileName);
|
|
return Py_BuildNone();
|
|
}
|
|
|
|
#if defined(WJ_SHOW_MOB_INFO_EX) || defined(ENABLE_ELEMENTAL_TARGET)
|
|
PyObject * nonplayerGetVnumByVID(PyObject * poSelf, PyObject * poArgs)
|
|
{
|
|
int iVirtualID;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualID))
|
|
return Py_BuildException();
|
|
|
|
CInstanceBase * pInstance = CPythonCharacterManager::Instance().GetInstancePtr(iVirtualID);
|
|
if (!pInstance)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
return Py_BuildValue("i", pInstance->GetVirtualNumber());
|
|
}
|
|
|
|
PyObject* nonplayerGetMonsterRaceFlag(PyObject* poSelf, PyObject* poArgs)
|
|
{
|
|
int iVNum;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVNum))
|
|
return Py_BuildException();
|
|
|
|
CPythonNonPlayer& rkNonPlayer = CPythonNonPlayer::Instance();
|
|
const CPythonNonPlayer::TMobTable* pkTab = rkNonPlayer.GetTable(iVNum);
|
|
|
|
return Py_BuildValue("i", pkTab->dwRaceFlag);
|
|
}
|
|
|
|
PyObject* nonplayerGetGoldMinByVID(PyObject* poSelf, PyObject* poArgs)
|
|
{
|
|
int iVirtualID;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualID))
|
|
return Py_BuildException();
|
|
|
|
CInstanceBase* pInstance = CPythonCharacterManager::Instance().GetInstancePtr(iVirtualID);
|
|
if (!pInstance)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
const CPythonNonPlayer::TMobTable* pMobTable = CPythonNonPlayer::Instance().GetTable(pInstance->GetVirtualNumber());
|
|
if (!pMobTable)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
return Py_BuildValue("i", pMobTable->dwGoldMin);
|
|
}
|
|
|
|
PyObject* nonplayerGetGoldMaxByVID(PyObject* poSelf, PyObject* poArgs)
|
|
{
|
|
int iVirtualID;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualID))
|
|
return Py_BuildException();
|
|
|
|
CInstanceBase* pInstance = CPythonCharacterManager::Instance().GetInstancePtr(iVirtualID);
|
|
if (!pInstance)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
const CPythonNonPlayer::TMobTable* pMobTable = CPythonNonPlayer::Instance().GetTable(pInstance->GetVirtualNumber());
|
|
if (!pMobTable)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
return Py_BuildValue("i", pMobTable->dwGoldMax);
|
|
}
|
|
|
|
PyObject* nonplayerGetExpByVID(PyObject* poSelf, PyObject* poArgs)
|
|
{
|
|
int iVirtualID;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualID))
|
|
return Py_BuildException();
|
|
|
|
CInstanceBase* pInstance = CPythonCharacterManager::Instance().GetInstancePtr(iVirtualID);
|
|
if (!pInstance)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
const CPythonNonPlayer::TMobTable* pMobTable = CPythonNonPlayer::Instance().GetTable(pInstance->GetVirtualNumber());
|
|
if (!pMobTable)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
return Py_BuildValue("i", pMobTable->dwExp);
|
|
}
|
|
|
|
PyObject* nonplayerGetMaxHPByVID(PyObject* poSelf, PyObject* poArgs)
|
|
{
|
|
int iVirtualID;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualID))
|
|
return Py_BuildException();
|
|
|
|
CInstanceBase* pInstance = CPythonCharacterManager::Instance().GetInstancePtr(iVirtualID);
|
|
if (!pInstance)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
const CPythonNonPlayer::TMobTable* pMobTable = CPythonNonPlayer::Instance().GetTable(pInstance->GetVirtualNumber());
|
|
if (!pMobTable)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
return Py_BuildValue("i", pMobTable->dwMaxHP);
|
|
}
|
|
|
|
PyObject* nonplayerGetDefByVID(PyObject* poSelf, PyObject* poArgs)
|
|
{
|
|
int iVirtualID;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualID))
|
|
return Py_BuildException();
|
|
|
|
CInstanceBase* pInstance = CPythonCharacterManager::Instance().GetInstancePtr(iVirtualID);
|
|
if (!pInstance)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
const CPythonNonPlayer::TMobTable* pMobTable = CPythonNonPlayer::Instance().GetTable(pInstance->GetVirtualNumber());
|
|
if (!pMobTable)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
return Py_BuildValue("i", pMobTable->wDef);
|
|
}
|
|
|
|
PyObject* nonplayerGetAIFlagByVID(PyObject* poSelf, PyObject* poArgs)
|
|
{
|
|
int iVirtualID;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualID))
|
|
return Py_BuildException();
|
|
|
|
CInstanceBase* pInstance = CPythonCharacterManager::Instance().GetInstancePtr(iVirtualID);
|
|
if (!pInstance)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
const CPythonNonPlayer::TMobTable* pMobTable = CPythonNonPlayer::Instance().GetTable(pInstance->GetVirtualNumber());
|
|
if (!pMobTable)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
return Py_BuildValue("i", pMobTable->dwAIFlag);
|
|
}
|
|
|
|
PyObject* nonplayerGetRaceFlagByVID(PyObject* poSelf, PyObject* poArgs)
|
|
{
|
|
int iVirtualID;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualID))
|
|
return Py_BuildException();
|
|
|
|
CInstanceBase* pInstance = CPythonCharacterManager::Instance().GetInstancePtr(iVirtualID);
|
|
if (!pInstance)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
const CPythonNonPlayer::TMobTable* pMobTable = CPythonNonPlayer::Instance().GetTable(pInstance->GetVirtualNumber());
|
|
if (!pMobTable)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
return Py_BuildValue("i", pMobTable->dwRaceFlag);
|
|
}
|
|
|
|
PyObject* nonplayerGetImmuneFlagByVID(PyObject* poSelf, PyObject* poArgs)
|
|
{
|
|
int iVirtualID;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualID))
|
|
return Py_BuildException();
|
|
|
|
CInstanceBase* pInstance = CPythonCharacterManager::Instance().GetInstancePtr(iVirtualID);
|
|
if (!pInstance)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
const CPythonNonPlayer::TMobTable* pMobTable = CPythonNonPlayer::Instance().GetTable(pInstance->GetVirtualNumber());
|
|
if (!pMobTable)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
return Py_BuildValue("i", pMobTable->dwImmuneFlag);
|
|
}
|
|
|
|
PyObject* nonplayerGetStrByVID(PyObject* poSelf, PyObject* poArgs)
|
|
{
|
|
int iVirtualID;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualID))
|
|
return Py_BuildException();
|
|
|
|
CInstanceBase* pInstance = CPythonCharacterManager::Instance().GetInstancePtr(iVirtualID);
|
|
if (!pInstance)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
const CPythonNonPlayer::TMobTable* pMobTable = CPythonNonPlayer::Instance().GetTable(pInstance->GetVirtualNumber());
|
|
if (!pMobTable)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
return Py_BuildValue("i", pMobTable->bStr);
|
|
}
|
|
|
|
PyObject* nonplayerGetDexByVID(PyObject* poSelf, PyObject* poArgs)
|
|
{
|
|
int iVirtualID;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualID))
|
|
return Py_BuildException();
|
|
|
|
CInstanceBase* pInstance = CPythonCharacterManager::Instance().GetInstancePtr(iVirtualID);
|
|
if (!pInstance)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
const CPythonNonPlayer::TMobTable* pMobTable = CPythonNonPlayer::Instance().GetTable(pInstance->GetVirtualNumber());
|
|
if (!pMobTable)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
return Py_BuildValue("i", pMobTable->bDex);
|
|
}
|
|
|
|
PyObject* nonplayerGetConByVID(PyObject* poSelf, PyObject* poArgs)
|
|
{
|
|
int iVirtualID;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualID))
|
|
return Py_BuildException();
|
|
|
|
CInstanceBase* pInstance = CPythonCharacterManager::Instance().GetInstancePtr(iVirtualID);
|
|
if (!pInstance)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
const CPythonNonPlayer::TMobTable* pMobTable = CPythonNonPlayer::Instance().GetTable(pInstance->GetVirtualNumber());
|
|
if (!pMobTable)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
return Py_BuildValue("i", pMobTable->bCon);
|
|
}
|
|
|
|
PyObject* nonplayerGetIntByVID(PyObject* poSelf, PyObject* poArgs)
|
|
{
|
|
int iVirtualID;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualID))
|
|
return Py_BuildException();
|
|
|
|
CInstanceBase* pInstance = CPythonCharacterManager::Instance().GetInstancePtr(iVirtualID);
|
|
if (!pInstance)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
const CPythonNonPlayer::TMobTable* pMobTable = CPythonNonPlayer::Instance().GetTable(pInstance->GetVirtualNumber());
|
|
if (!pMobTable)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
return Py_BuildValue("i", pMobTable->bInt);
|
|
}
|
|
|
|
PyObject* nonplayerGetDamageRangeMinByVID(PyObject* poSelf, PyObject* poArgs)
|
|
{
|
|
int iVirtualID;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualID))
|
|
return Py_BuildException();
|
|
|
|
CInstanceBase* pInstance = CPythonCharacterManager::Instance().GetInstancePtr(iVirtualID);
|
|
if (!pInstance)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
const CPythonNonPlayer::TMobTable* pMobTable = CPythonNonPlayer::Instance().GetTable(pInstance->GetVirtualNumber());
|
|
if (!pMobTable)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
return Py_BuildValue("i", pMobTable->dwDamageRange[0]);
|
|
}
|
|
|
|
PyObject* nonplayerGetDamageRangeMaxByVID(PyObject* poSelf, PyObject* poArgs)
|
|
{
|
|
int iVirtualID;
|
|
if (!PyTuple_GetInteger(poArgs, 0, &iVirtualID))
|
|
return Py_BuildException();
|
|
|
|
CInstanceBase* pInstance = CPythonCharacterManager::Instance().GetInstancePtr(iVirtualID);
|
|
if (!pInstance)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
const CPythonNonPlayer::TMobTable* pMobTable = CPythonNonPlayer::Instance().GetTable(pInstance->GetVirtualNumber());
|
|
if (!pMobTable)
|
|
return Py_BuildValue("i", -1);
|
|
|
|
return Py_BuildValue("i", pMobTable->dwDamageRange[1]);
|
|
}
|
|
#endif
|
|
|
|
void initNonPlayer()
|
|
{
|
|
static PyMethodDef s_methods[] =
|
|
{
|
|
{ "GetEventType", nonplayerGetEventType, METH_VARARGS },
|
|
{ "GetEventTypeByVID", nonplayerGetEventTypeByVID, METH_VARARGS },
|
|
{ "GetLevelByVID", nonplayerGetLevelByVID, METH_VARARGS },
|
|
{ "GetGradeByVID", nonplayerGetGradeByVID, METH_VARARGS },
|
|
{ "GetMonsterName", nonplayerGetMonsterName, METH_VARARGS },
|
|
|
|
{ "LoadNonPlayerData", nonplayerLoadNonPlayerData, METH_VARARGS },
|
|
|
|
#if defined(WJ_SHOW_MOB_INFO_EX) || defined(ENABLE_ELEMENTAL_TARGET)
|
|
{ "GetVnumByVID", nonplayerGetVnumByVID, METH_VARARGS },
|
|
{ "GetMonsterRaceFlag", nonplayerGetMonsterRaceFlag, METH_VARARGS },
|
|
|
|
{ "GetGoldMinByVID", nonplayerGetGoldMinByVID, METH_VARARGS },
|
|
{ "GetGoldMaxByVID", nonplayerGetGoldMaxByVID, METH_VARARGS },
|
|
{ "GetExpByVID", nonplayerGetExpByVID, METH_VARARGS },
|
|
{ "GetMaxHPByVID", nonplayerGetMaxHPByVID, METH_VARARGS },
|
|
{ "GetDefByVID", nonplayerGetDefByVID, METH_VARARGS },
|
|
{ "GetAIFlagByVID", nonplayerGetAIFlagByVID, METH_VARARGS },
|
|
{ "GetRaceFlagByVID", nonplayerGetRaceFlagByVID, METH_VARARGS },
|
|
{ "GetImmuneFlagByVID", nonplayerGetImmuneFlagByVID, METH_VARARGS },
|
|
{ "GetStrByVID", nonplayerGetStrByVID, METH_VARARGS },
|
|
{ "GetDexByVID", nonplayerGetDexByVID, METH_VARARGS },
|
|
{ "GetConByVID", nonplayerGetConByVID, METH_VARARGS },
|
|
{ "GetIntByVID", nonplayerGetIntByVID, METH_VARARGS },
|
|
{ "GetDamageRangeMinByVID", nonplayerGetDamageRangeMinByVID, METH_VARARGS },
|
|
{ "GetDamageRangeMaxByVID", nonplayerGetDamageRangeMaxByVID, METH_VARARGS },
|
|
#endif
|
|
|
|
{ NULL, NULL, NULL },
|
|
};
|
|
|
|
PyObject * poModule = Py_InitModule("nonplayer", s_methods);
|
|
|
|
PyModule_AddIntConstant(poModule, "ON_CLICK_EVENT_NONE", CPythonNonPlayer::ON_CLICK_EVENT_NONE);
|
|
PyModule_AddIntConstant(poModule, "ON_CLICK_EVENT_BATTLE", CPythonNonPlayer::ON_CLICK_EVENT_BATTLE);
|
|
PyModule_AddIntConstant(poModule, "ON_CLICK_EVENT_SHOP", CPythonNonPlayer::ON_CLICK_EVENT_SHOP);
|
|
PyModule_AddIntConstant(poModule, "ON_CLICK_EVENT_TALK", CPythonNonPlayer::ON_CLICK_EVENT_TALK);
|
|
PyModule_AddIntConstant(poModule, "ON_CLICK_EVENT_VEHICLE", CPythonNonPlayer::ON_CLICK_EVENT_VEHICLE);
|
|
|
|
PyModule_AddIntConstant(poModule, "PAWN", 0);
|
|
PyModule_AddIntConstant(poModule, "S_PAWN", 1);
|
|
PyModule_AddIntConstant(poModule, "KNIGHT", 2);
|
|
PyModule_AddIntConstant(poModule, "S_KNIGHT", 3);
|
|
PyModule_AddIntConstant(poModule, "BOSS", 4);
|
|
PyModule_AddIntConstant(poModule, "KING", 5);
|
|
|
|
#if defined(WJ_SHOW_MOB_INFO_EX) || defined(ENABLE_ELEMENTAL_TARGET)
|
|
PyModule_AddIntConstant(poModule, "AIFLAG_AGGRESSIVE", CPythonNonPlayer::AIFLAG_AGGRESSIVE);
|
|
PyModule_AddIntConstant(poModule, "AIFLAG_NOMOVE", CPythonNonPlayer::AIFLAG_NOMOVE);
|
|
PyModule_AddIntConstant(poModule, "AIFLAG_COWARD", CPythonNonPlayer::AIFLAG_COWARD);
|
|
PyModule_AddIntConstant(poModule, "AIFLAG_NOATTACKSHINSU", CPythonNonPlayer::AIFLAG_NOATTACKSHINSU);
|
|
PyModule_AddIntConstant(poModule, "AIFLAG_NOATTACKJINNO", CPythonNonPlayer::AIFLAG_NOATTACKJINNO);
|
|
PyModule_AddIntConstant(poModule, "AIFLAG_NOATTACKCHUNJO", CPythonNonPlayer::AIFLAG_NOATTACKCHUNJO);
|
|
PyModule_AddIntConstant(poModule, "AIFLAG_ATTACKMOB", CPythonNonPlayer::AIFLAG_ATTACKMOB);
|
|
PyModule_AddIntConstant(poModule, "AIFLAG_BERSERK", CPythonNonPlayer::AIFLAG_BERSERK);
|
|
PyModule_AddIntConstant(poModule, "AIFLAG_STONESKIN", CPythonNonPlayer::AIFLAG_STONESKIN);
|
|
PyModule_AddIntConstant(poModule, "AIFLAG_GODSPEED", CPythonNonPlayer::AIFLAG_GODSPEED);
|
|
PyModule_AddIntConstant(poModule, "AIFLAG_DEATHBLOW", CPythonNonPlayer::AIFLAG_DEATHBLOW);
|
|
PyModule_AddIntConstant(poModule, "AIFLAG_REVIVE", CPythonNonPlayer::AIFLAG_REVIVE);
|
|
|
|
PyModule_AddIntConstant(poModule, "IMMUNE_STUN", CPythonNonPlayer::IMMUNE_STUN);
|
|
PyModule_AddIntConstant(poModule, "IMMUNE_SLOW", CPythonNonPlayer::IMMUNE_SLOW);
|
|
PyModule_AddIntConstant(poModule, "IMMUNE_FALL", CPythonNonPlayer::IMMUNE_FALL);
|
|
PyModule_AddIntConstant(poModule, "IMMUNE_CURSE", CPythonNonPlayer::IMMUNE_CURSE);
|
|
PyModule_AddIntConstant(poModule, "IMMUNE_POISON", CPythonNonPlayer::IMMUNE_POISON);
|
|
PyModule_AddIntConstant(poModule, "IMMUNE_TERROR", CPythonNonPlayer::IMMUNE_TERROR);
|
|
PyModule_AddIntConstant(poModule, "IMMUNE_REFLECT", CPythonNonPlayer::IMMUNE_REFLECT);
|
|
|
|
PyModule_AddIntConstant(poModule, "RACE_FLAG_ANIMAL", CPythonNonPlayer::RACE_FLAG_ANIMAL);
|
|
PyModule_AddIntConstant(poModule, "RACE_FLAG_UNDEAD", CPythonNonPlayer::RACE_FLAG_UNDEAD);
|
|
PyModule_AddIntConstant(poModule, "RACE_FLAG_DEVIL", CPythonNonPlayer::RACE_FLAG_DEVIL);
|
|
PyModule_AddIntConstant(poModule, "RACE_FLAG_HUMAN", CPythonNonPlayer::RACE_FLAG_HUMAN);
|
|
PyModule_AddIntConstant(poModule, "RACE_FLAG_ORC", CPythonNonPlayer::RACE_FLAG_ORC);
|
|
PyModule_AddIntConstant(poModule, "RACE_FLAG_MILGYO", CPythonNonPlayer::RACE_FLAG_MILGYO);
|
|
PyModule_AddIntConstant(poModule, "RACE_FLAG_INSECT", CPythonNonPlayer::RACE_FLAG_INSECT);
|
|
PyModule_AddIntConstant(poModule, "RACE_FLAG_FIRE", CPythonNonPlayer::RACE_FLAG_FIRE);
|
|
PyModule_AddIntConstant(poModule, "RACE_FLAG_ICE", CPythonNonPlayer::RACE_FLAG_ICE);
|
|
PyModule_AddIntConstant(poModule, "RACE_FLAG_DESERT", CPythonNonPlayer::RACE_FLAG_DESERT);
|
|
PyModule_AddIntConstant(poModule, "RACE_FLAG_TREE", CPythonNonPlayer::RACE_FLAG_TREE);
|
|
PyModule_AddIntConstant(poModule, "RACE_FLAG_ATT_ELEC", CPythonNonPlayer::RACE_FLAG_ATT_ELEC);
|
|
PyModule_AddIntConstant(poModule, "RACE_FLAG_ATT_FIRE", CPythonNonPlayer::RACE_FLAG_ATT_FIRE);
|
|
PyModule_AddIntConstant(poModule, "RACE_FLAG_ATT_ICE", CPythonNonPlayer::RACE_FLAG_ATT_ICE);
|
|
PyModule_AddIntConstant(poModule, "RACE_FLAG_ATT_WIND", CPythonNonPlayer::RACE_FLAG_ATT_WIND);
|
|
PyModule_AddIntConstant(poModule, "RACE_FLAG_ATT_EARTH", CPythonNonPlayer::RACE_FLAG_ATT_EARTH);
|
|
PyModule_AddIntConstant(poModule, "RACE_FLAG_ATT_DARK", CPythonNonPlayer::RACE_FLAG_ATT_DARK);
|
|
#endif
|
|
}
|
|
//martysama0134's 2e58d0b8baeb072acdf3afc4a5d1999f
|