Added DamageType translation to API
git-svn-id: http://mc-server.googlecode.com/svn/trunk@1639 0a769ca7-a7f5-676a-18bf-c427514a06d6
This commit is contained in:
parent
2e9cf0ae28
commit
37f6c78404
@ -438,7 +438,7 @@ function OnTakeDamage(Receiver, TDI)
|
|||||||
-- Receiver is cPawn
|
-- Receiver is cPawn
|
||||||
-- TDI is TakeDamageInfo
|
-- TDI is TakeDamageInfo
|
||||||
|
|
||||||
LOG(Receiver:GetClass() .. " was dealt RawDamage " .. TDI.RawDamage .. ", FinalDamage " .. TDI.FinalDamage .. " (that is, " .. (TDI.RawDamage - TDI.FinalDamage) .. " HPs covered by armor)");
|
LOG(Receiver:GetClass() .. " was dealt " .. DamageTypeToString(TDI.DamageType) .. " damage: Raw " .. TDI.RawDamage .. ", Final " .. TDI.FinalDamage .. " (" .. (TDI.RawDamage - TDI.FinalDamage) .. " covered by armor)");
|
||||||
return false;
|
return false;
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*
|
/*
|
||||||
** Lua binding: AllToLua
|
** Lua binding: AllToLua
|
||||||
** Generated automatically by tolua++-1.0.92 on 07/01/13 09:49:28.
|
** Generated automatically by tolua++-1.0.92 on 07/01/13 20:42:05.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef __cplusplus
|
#ifndef __cplusplus
|
||||||
@ -2590,6 +2590,65 @@ static int tolua_AllToLua_StringToDimension00(lua_State* tolua_S)
|
|||||||
}
|
}
|
||||||
#endif //#ifndef TOLUA_DISABLE
|
#endif //#ifndef TOLUA_DISABLE
|
||||||
|
|
||||||
|
/* function: DamageTypeToString */
|
||||||
|
#ifndef TOLUA_DISABLE_tolua_AllToLua_DamageTypeToString00
|
||||||
|
static int tolua_AllToLua_DamageTypeToString00(lua_State* tolua_S)
|
||||||
|
{
|
||||||
|
#ifndef TOLUA_RELEASE
|
||||||
|
tolua_Error tolua_err;
|
||||||
|
if (
|
||||||
|
!tolua_isnumber(tolua_S,1,0,&tolua_err) ||
|
||||||
|
!tolua_isnoobj(tolua_S,2,&tolua_err)
|
||||||
|
)
|
||||||
|
goto tolua_lerror;
|
||||||
|
else
|
||||||
|
#endif
|
||||||
|
{
|
||||||
|
eDamageType a_DamageType = ((eDamageType) (int) tolua_tonumber(tolua_S,1,0));
|
||||||
|
{
|
||||||
|
AString tolua_ret = (AString) DamageTypeToString(a_DamageType);
|
||||||
|
tolua_pushcppstring(tolua_S,(const char*)tolua_ret);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 1;
|
||||||
|
#ifndef TOLUA_RELEASE
|
||||||
|
tolua_lerror:
|
||||||
|
tolua_error(tolua_S,"#ferror in function 'DamageTypeToString'.",&tolua_err);
|
||||||
|
return 0;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
#endif //#ifndef TOLUA_DISABLE
|
||||||
|
|
||||||
|
/* function: StringToDamageType */
|
||||||
|
#ifndef TOLUA_DISABLE_tolua_AllToLua_StringToDamageType00
|
||||||
|
static int tolua_AllToLua_StringToDamageType00(lua_State* tolua_S)
|
||||||
|
{
|
||||||
|
#ifndef TOLUA_RELEASE
|
||||||
|
tolua_Error tolua_err;
|
||||||
|
if (
|
||||||
|
!tolua_iscppstring(tolua_S,1,0,&tolua_err) ||
|
||||||
|
!tolua_isnoobj(tolua_S,2,&tolua_err)
|
||||||
|
)
|
||||||
|
goto tolua_lerror;
|
||||||
|
else
|
||||||
|
#endif
|
||||||
|
{
|
||||||
|
const AString a_DamageString = ((const AString) tolua_tocppstring(tolua_S,1,0));
|
||||||
|
{
|
||||||
|
eDamageType tolua_ret = (eDamageType) StringToDamageType(a_DamageString);
|
||||||
|
tolua_pushnumber(tolua_S,(lua_Number)tolua_ret);
|
||||||
|
tolua_pushcppstring(tolua_S,(const char*)a_DamageString);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 2;
|
||||||
|
#ifndef TOLUA_RELEASE
|
||||||
|
tolua_lerror:
|
||||||
|
tolua_error(tolua_S,"#ferror in function 'StringToDamageType'.",&tolua_err);
|
||||||
|
return 0;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
#endif //#ifndef TOLUA_DISABLE
|
||||||
|
|
||||||
/* get function: g_BlockLightValue */
|
/* get function: g_BlockLightValue */
|
||||||
#ifndef TOLUA_DISABLE_tolua_get_AllToLua_g_BlockLightValue
|
#ifndef TOLUA_DISABLE_tolua_get_AllToLua_g_BlockLightValue
|
||||||
static int tolua_get_AllToLua_g_BlockLightValue(lua_State* tolua_S)
|
static int tolua_get_AllToLua_g_BlockLightValue(lua_State* tolua_S)
|
||||||
@ -27784,6 +27843,37 @@ TOLUA_API int tolua_AllToLua_open (lua_State* tolua_S)
|
|||||||
tolua_constant(tolua_S,"dimNether",dimNether);
|
tolua_constant(tolua_S,"dimNether",dimNether);
|
||||||
tolua_constant(tolua_S,"dimOverworld",dimOverworld);
|
tolua_constant(tolua_S,"dimOverworld",dimOverworld);
|
||||||
tolua_constant(tolua_S,"dimEnd",dimEnd);
|
tolua_constant(tolua_S,"dimEnd",dimEnd);
|
||||||
|
tolua_constant(tolua_S,"dtAttack",dtAttack);
|
||||||
|
tolua_constant(tolua_S,"dtLightning",dtLightning);
|
||||||
|
tolua_constant(tolua_S,"dtFalling",dtFalling);
|
||||||
|
tolua_constant(tolua_S,"dtDrowning",dtDrowning);
|
||||||
|
tolua_constant(tolua_S,"dtSuffocating",dtSuffocating);
|
||||||
|
tolua_constant(tolua_S,"dtStarving",dtStarving);
|
||||||
|
tolua_constant(tolua_S,"dtCactusContact",dtCactusContact);
|
||||||
|
tolua_constant(tolua_S,"dtLavaContact",dtLavaContact);
|
||||||
|
tolua_constant(tolua_S,"dtPoisoning",dtPoisoning);
|
||||||
|
tolua_constant(tolua_S,"dtOnFire",dtOnFire);
|
||||||
|
tolua_constant(tolua_S,"dtFireContact",dtFireContact);
|
||||||
|
tolua_constant(tolua_S,"dtInVoid",dtInVoid);
|
||||||
|
tolua_constant(tolua_S,"dtPotionOfHarming",dtPotionOfHarming);
|
||||||
|
tolua_constant(tolua_S,"dtAdmin",dtAdmin);
|
||||||
|
tolua_constant(tolua_S,"dtPawnAttack",dtPawnAttack);
|
||||||
|
tolua_constant(tolua_S,"dtEntityAttack",dtEntityAttack);
|
||||||
|
tolua_constant(tolua_S,"dtMob",dtMob);
|
||||||
|
tolua_constant(tolua_S,"dtMobAttack",dtMobAttack);
|
||||||
|
tolua_constant(tolua_S,"dtFall",dtFall);
|
||||||
|
tolua_constant(tolua_S,"dtDrown",dtDrown);
|
||||||
|
tolua_constant(tolua_S,"dtSuffocation",dtSuffocation);
|
||||||
|
tolua_constant(tolua_S,"dtStarvation",dtStarvation);
|
||||||
|
tolua_constant(tolua_S,"dtHunger",dtHunger);
|
||||||
|
tolua_constant(tolua_S,"dtCactus",dtCactus);
|
||||||
|
tolua_constant(tolua_S,"dtCactuses",dtCactuses);
|
||||||
|
tolua_constant(tolua_S,"dtCacti",dtCacti);
|
||||||
|
tolua_constant(tolua_S,"dtLava",dtLava);
|
||||||
|
tolua_constant(tolua_S,"dtPoison",dtPoison);
|
||||||
|
tolua_constant(tolua_S,"dtBurning",dtBurning);
|
||||||
|
tolua_constant(tolua_S,"dtInFire",dtInFire);
|
||||||
|
tolua_constant(tolua_S,"dtPlugin",dtPlugin);
|
||||||
tolua_function(tolua_S,"BlockStringToType",tolua_AllToLua_BlockStringToType00);
|
tolua_function(tolua_S,"BlockStringToType",tolua_AllToLua_BlockStringToType00);
|
||||||
tolua_function(tolua_S,"StringToItem",tolua_AllToLua_StringToItem00);
|
tolua_function(tolua_S,"StringToItem",tolua_AllToLua_StringToItem00);
|
||||||
tolua_function(tolua_S,"ItemToString",tolua_AllToLua_ItemToString00);
|
tolua_function(tolua_S,"ItemToString",tolua_AllToLua_ItemToString00);
|
||||||
@ -27791,6 +27881,8 @@ TOLUA_API int tolua_AllToLua_open (lua_State* tolua_S)
|
|||||||
tolua_function(tolua_S,"ItemToFullString",tolua_AllToLua_ItemToFullString00);
|
tolua_function(tolua_S,"ItemToFullString",tolua_AllToLua_ItemToFullString00);
|
||||||
tolua_function(tolua_S,"StringToBiome",tolua_AllToLua_StringToBiome00);
|
tolua_function(tolua_S,"StringToBiome",tolua_AllToLua_StringToBiome00);
|
||||||
tolua_function(tolua_S,"StringToDimension",tolua_AllToLua_StringToDimension00);
|
tolua_function(tolua_S,"StringToDimension",tolua_AllToLua_StringToDimension00);
|
||||||
|
tolua_function(tolua_S,"DamageTypeToString",tolua_AllToLua_DamageTypeToString00);
|
||||||
|
tolua_function(tolua_S,"StringToDamageType",tolua_AllToLua_StringToDamageType00);
|
||||||
tolua_array(tolua_S,"g_BlockLightValue",tolua_get_AllToLua_g_BlockLightValue,tolua_set_AllToLua_g_BlockLightValue);
|
tolua_array(tolua_S,"g_BlockLightValue",tolua_get_AllToLua_g_BlockLightValue,tolua_set_AllToLua_g_BlockLightValue);
|
||||||
tolua_array(tolua_S,"g_BlockSpreadLightFalloff",tolua_get_AllToLua_g_BlockSpreadLightFalloff,tolua_set_AllToLua_g_BlockSpreadLightFalloff);
|
tolua_array(tolua_S,"g_BlockSpreadLightFalloff",tolua_get_AllToLua_g_BlockSpreadLightFalloff,tolua_set_AllToLua_g_BlockSpreadLightFalloff);
|
||||||
tolua_array(tolua_S,"g_BlockTransparent",tolua_get_AllToLua_g_BlockTransparent,tolua_set_AllToLua_g_BlockTransparent);
|
tolua_array(tolua_S,"g_BlockTransparent",tolua_get_AllToLua_g_BlockTransparent,tolua_set_AllToLua_g_BlockTransparent);
|
||||||
@ -27916,37 +28008,6 @@ TOLUA_API int tolua_AllToLua_open (lua_State* tolua_S)
|
|||||||
tolua_function(tolua_S,"GetViewDistance",tolua_AllToLua_cClientHandle_GetViewDistance00);
|
tolua_function(tolua_S,"GetViewDistance",tolua_AllToLua_cClientHandle_GetViewDistance00);
|
||||||
tolua_function(tolua_S,"GetUniqueID",tolua_AllToLua_cClientHandle_GetUniqueID00);
|
tolua_function(tolua_S,"GetUniqueID",tolua_AllToLua_cClientHandle_GetUniqueID00);
|
||||||
tolua_endmodule(tolua_S);
|
tolua_endmodule(tolua_S);
|
||||||
tolua_constant(tolua_S,"dtAttack",dtAttack);
|
|
||||||
tolua_constant(tolua_S,"dtLightning",dtLightning);
|
|
||||||
tolua_constant(tolua_S,"dtFalling",dtFalling);
|
|
||||||
tolua_constant(tolua_S,"dtDrowning",dtDrowning);
|
|
||||||
tolua_constant(tolua_S,"dtSuffocating",dtSuffocating);
|
|
||||||
tolua_constant(tolua_S,"dtStarving",dtStarving);
|
|
||||||
tolua_constant(tolua_S,"dtCactusContact",dtCactusContact);
|
|
||||||
tolua_constant(tolua_S,"dtLavaContact",dtLavaContact);
|
|
||||||
tolua_constant(tolua_S,"dtPoisoning",dtPoisoning);
|
|
||||||
tolua_constant(tolua_S,"dtOnFire",dtOnFire);
|
|
||||||
tolua_constant(tolua_S,"dtFireContact",dtFireContact);
|
|
||||||
tolua_constant(tolua_S,"dtInVoid",dtInVoid);
|
|
||||||
tolua_constant(tolua_S,"dtPotionOfHarming",dtPotionOfHarming);
|
|
||||||
tolua_constant(tolua_S,"dtAdmin",dtAdmin);
|
|
||||||
tolua_constant(tolua_S,"dtPawnAttack",dtPawnAttack);
|
|
||||||
tolua_constant(tolua_S,"dtEntityAttack",dtEntityAttack);
|
|
||||||
tolua_constant(tolua_S,"dtMob",dtMob);
|
|
||||||
tolua_constant(tolua_S,"dtMobAttack",dtMobAttack);
|
|
||||||
tolua_constant(tolua_S,"dtFall",dtFall);
|
|
||||||
tolua_constant(tolua_S,"dtDrown",dtDrown);
|
|
||||||
tolua_constant(tolua_S,"dtSuffocation",dtSuffocation);
|
|
||||||
tolua_constant(tolua_S,"dtStarvation",dtStarvation);
|
|
||||||
tolua_constant(tolua_S,"dtHunger",dtHunger);
|
|
||||||
tolua_constant(tolua_S,"dtCactus",dtCactus);
|
|
||||||
tolua_constant(tolua_S,"dtCactuses",dtCactuses);
|
|
||||||
tolua_constant(tolua_S,"dtCacti",dtCacti);
|
|
||||||
tolua_constant(tolua_S,"dtLava",dtLava);
|
|
||||||
tolua_constant(tolua_S,"dtPoison",dtPoison);
|
|
||||||
tolua_constant(tolua_S,"dtBurning",dtBurning);
|
|
||||||
tolua_constant(tolua_S,"dtInFire",dtInFire);
|
|
||||||
tolua_constant(tolua_S,"dtPlugin",dtPlugin);
|
|
||||||
tolua_cclass(tolua_S,"TakeDamageInfo","TakeDamageInfo","",NULL);
|
tolua_cclass(tolua_S,"TakeDamageInfo","TakeDamageInfo","",NULL);
|
||||||
tolua_beginmodule(tolua_S,"TakeDamageInfo");
|
tolua_beginmodule(tolua_S,"TakeDamageInfo");
|
||||||
tolua_variable(tolua_S,"DamageType",tolua_get_TakeDamageInfo_DamageType,tolua_set_TakeDamageInfo_DamageType);
|
tolua_variable(tolua_S,"DamageType",tolua_get_TakeDamageInfo_DamageType,tolua_set_TakeDamageInfo_DamageType);
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*
|
/*
|
||||||
** Lua binding: AllToLua
|
** Lua binding: AllToLua
|
||||||
** Generated automatically by tolua++-1.0.92 on 07/01/13 09:49:29.
|
** Generated automatically by tolua++-1.0.92 on 07/01/13 20:42:05.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* Exported function */
|
/* Exported function */
|
||||||
|
@ -323,6 +323,7 @@ EMCSBiome StringToBiome(const AString & a_BiomeString)
|
|||||||
|
|
||||||
eDimension StringToDimension(const AString & a_DimensionString)
|
eDimension StringToDimension(const AString & a_DimensionString)
|
||||||
{
|
{
|
||||||
|
// First try decoding as a number
|
||||||
int res = atoi(a_DimensionString.c_str());
|
int res = atoi(a_DimensionString.c_str());
|
||||||
if ((res != 0) || (a_DimensionString == "0"))
|
if ((res != 0) || (a_DimensionString == "0"))
|
||||||
{
|
{
|
||||||
@ -330,7 +331,7 @@ eDimension StringToDimension(const AString & a_DimensionString)
|
|||||||
return (eDimension)res;
|
return (eDimension)res;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Convert using a built-in map:
|
// Decode using a built-in map:
|
||||||
static struct
|
static struct
|
||||||
{
|
{
|
||||||
eDimension m_Dimension;
|
eDimension m_Dimension;
|
||||||
@ -361,6 +362,105 @@ eDimension StringToDimension(const AString & a_DimensionString)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/// Translates damage type constant to a string representation (built-in).
|
||||||
|
AString DamageTypeToString(eDamageType a_DamageType)
|
||||||
|
{
|
||||||
|
switch (a_DamageType)
|
||||||
|
{
|
||||||
|
case dtAttack: return "dtAttack";
|
||||||
|
case dtLightning: return "dtLightning";
|
||||||
|
case dtFalling: return "dtFalling";
|
||||||
|
case dtDrowning: return "dtDrowning";
|
||||||
|
case dtSuffocating: return "dtSuffocation";
|
||||||
|
case dtStarving: return "dtStarving";
|
||||||
|
case dtCactusContact: return "dtCactusContact";
|
||||||
|
case dtLavaContact: return "dtLavaContact";
|
||||||
|
case dtPoisoning: return "dtPoisoning";
|
||||||
|
case dtOnFire: return "dtOnFire";
|
||||||
|
case dtFireContact: return "dtFireContact";
|
||||||
|
case dtInVoid: return "dtInVoid";
|
||||||
|
case dtPotionOfHarming: return "dtPotionOfHarming";
|
||||||
|
case dtAdmin: return "dtAdmin";
|
||||||
|
}
|
||||||
|
|
||||||
|
// Unknown damage type:
|
||||||
|
ASSERT(!"Unknown DamageType");
|
||||||
|
return Printf("dtUnknown_%d", (int)a_DamageType);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/// Translates a damage type string to damage type. Takes either a number or a damage type alias (built-in). Returns -1 on failure
|
||||||
|
eDamageType StringToDamageType(const AString & a_DamageTypeString)
|
||||||
|
{
|
||||||
|
// First try decoding as a number:
|
||||||
|
int res = atoi(a_DamageTypeString.c_str());
|
||||||
|
if ((res != 0) || (a_DamageTypeString == "0"))
|
||||||
|
{
|
||||||
|
// It was a valid number
|
||||||
|
return (eDamageType)res;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Decode using a built-in map:
|
||||||
|
static struct
|
||||||
|
{
|
||||||
|
eDamageType m_DamageType;
|
||||||
|
const char * m_String;
|
||||||
|
} DamageTypeMap [] =
|
||||||
|
{
|
||||||
|
// Cannonical names:
|
||||||
|
{ dtAttack, "dtAttack"},
|
||||||
|
{ dtLightning, "dtLightning"},
|
||||||
|
{ dtFalling, "dtFalling"},
|
||||||
|
{ dtDrowning, "dtDrowning"},
|
||||||
|
{ dtSuffocating, "dtSuffocation"},
|
||||||
|
{ dtStarving, "dtStarving"},
|
||||||
|
{ dtCactusContact, "dtCactusContact"},
|
||||||
|
{ dtLavaContact, "dtLavaContact"},
|
||||||
|
{ dtPoisoning, "dtPoisoning"},
|
||||||
|
{ dtOnFire, "dtOnFire"},
|
||||||
|
{ dtFireContact, "dtFireContact"},
|
||||||
|
{ dtInVoid, "dtInVoid"},
|
||||||
|
{ dtPotionOfHarming, "dtPotionOfHarming"},
|
||||||
|
{ dtAdmin, "dtAdmin"},
|
||||||
|
|
||||||
|
// Common synonyms:
|
||||||
|
{ dtPawnAttack, "dtAttack"},
|
||||||
|
{ dtEntityAttack, "dtAttack"},
|
||||||
|
{ dtMob, "dtAttack"},
|
||||||
|
{ dtMobAttack, "dtAttack"},
|
||||||
|
{ dtFall, "dtFalling"},
|
||||||
|
{ dtDrown, "dtDrowning"},
|
||||||
|
{ dtSuffocation, "dtSuffocating"},
|
||||||
|
{ dtStarvation, "dtStarving"},
|
||||||
|
{ dtHunger, "dtStarving"},
|
||||||
|
{ dtCactus, "dtCactusContact"},
|
||||||
|
{ dtCactuses, "dtCactusContact"},
|
||||||
|
{ dtCacti, "dtCactusContact"},
|
||||||
|
{ dtLava, "dtLavaContact"},
|
||||||
|
{ dtPoison, "dtPoisoning"},
|
||||||
|
{ dtBurning, "dtOnFire"},
|
||||||
|
{ dtInFire, "dtFireContact"},
|
||||||
|
{ dtPlugin, "dtAdmin"},
|
||||||
|
} ;
|
||||||
|
for (int i = 0; i < ARRAYCOUNT(DamageTypeMap); i++)
|
||||||
|
{
|
||||||
|
if (NoCaseCompare(DamageTypeMap[i].m_String, a_DamageTypeString) == 0)
|
||||||
|
{
|
||||||
|
return DamageTypeMap[i].m_DamageType;
|
||||||
|
}
|
||||||
|
} // for i - DamageTypeMap[]
|
||||||
|
|
||||||
|
// Not found:
|
||||||
|
return (eDamageType)-1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// This is actually just some code that needs to run at program startup, so it is wrapped into a global var's constructor:
|
// This is actually just some code that needs to run at program startup, so it is wrapped into a global var's constructor:
|
||||||
class cBlockPropertiesInitializer
|
class cBlockPropertiesInitializer
|
||||||
{
|
{
|
||||||
|
@ -614,6 +614,48 @@ enum eDimension
|
|||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/// Damage type, used in the TakeDamageInfo structure and related functions
|
||||||
|
enum eDamageType
|
||||||
|
{
|
||||||
|
// Canonical names for the types (as documented in the plugin wiki):
|
||||||
|
dtAttack, // Being attacked by a mob
|
||||||
|
dtLightning, // Hit by a lightning strike
|
||||||
|
dtFalling, // Falling down; dealt when hitting the ground
|
||||||
|
dtDrowning, // Drowning in water / lava
|
||||||
|
dtSuffocating, // Suffocating inside a block
|
||||||
|
dtStarving, // Hunger
|
||||||
|
dtCactusContact, // Contact with a cactus block
|
||||||
|
dtLavaContact, // Contact with a lava block
|
||||||
|
dtPoisoning, // Having the poison effect
|
||||||
|
dtOnFire, // Being on fire
|
||||||
|
dtFireContact, // Standing inside a fire block
|
||||||
|
dtInVoid, // Falling into the Void (Y < 0)
|
||||||
|
dtPotionOfHarming,
|
||||||
|
dtAdmin, // Damage applied by an admin command
|
||||||
|
|
||||||
|
// Some common synonyms:
|
||||||
|
dtPawnAttack = dtAttack,
|
||||||
|
dtEntityAttack = dtAttack,
|
||||||
|
dtMob = dtAttack,
|
||||||
|
dtMobAttack = dtAttack,
|
||||||
|
dtFall = dtFalling,
|
||||||
|
dtDrown = dtDrowning,
|
||||||
|
dtSuffocation = dtSuffocating,
|
||||||
|
dtStarvation = dtStarving,
|
||||||
|
dtHunger = dtStarving,
|
||||||
|
dtCactus = dtCactusContact,
|
||||||
|
dtCactuses = dtCactusContact,
|
||||||
|
dtCacti = dtCactusContact,
|
||||||
|
dtLava = dtLavaContact,
|
||||||
|
dtPoison = dtPoisoning,
|
||||||
|
dtBurning = dtOnFire,
|
||||||
|
dtInFire = dtFireContact,
|
||||||
|
dtPlugin = dtAdmin,
|
||||||
|
} ;
|
||||||
|
|
||||||
// tolua_end
|
// tolua_end
|
||||||
|
|
||||||
|
|
||||||
@ -649,6 +691,12 @@ extern EMCSBiome StringToBiome(const AString & a_BiomeString);
|
|||||||
/// Translates a dimension string to dimension enum. Takes either a number or a dimension alias (built-in). Returns -1000 on failure
|
/// Translates a dimension string to dimension enum. Takes either a number or a dimension alias (built-in). Returns -1000 on failure
|
||||||
extern eDimension StringToDimension(const AString & a_DimensionString);
|
extern eDimension StringToDimension(const AString & a_DimensionString);
|
||||||
|
|
||||||
|
/// Translates damage type constant to a string representation (built-in).
|
||||||
|
extern AString DamageTypeToString(eDamageType a_DamageType);
|
||||||
|
|
||||||
|
/// Translates a damage type string to damage type. Takes either a number or a damage type alias (built-in). Returns -1 on failure
|
||||||
|
extern eDamageType StringToDamageType(const AString & a_DamageString);
|
||||||
|
|
||||||
// tolua_end
|
// tolua_end
|
||||||
|
|
||||||
|
|
||||||
|
@ -43,48 +43,6 @@ class cChunk;
|
|||||||
|
|
||||||
|
|
||||||
// tolua_begin
|
// tolua_begin
|
||||||
enum eDamageType
|
|
||||||
{
|
|
||||||
// Canonical names for the types (as documented in the plugin wiki):
|
|
||||||
dtAttack, // Being attacked by a mob
|
|
||||||
dtLightning, // Hit by a lightning strike
|
|
||||||
dtFalling, // Falling down; dealt when hitting the ground
|
|
||||||
dtDrowning, // Drowning in water / lava
|
|
||||||
dtSuffocating, // Suffocating inside a block
|
|
||||||
dtStarving, // Hunger
|
|
||||||
dtCactusContact, // Contact with a cactus block
|
|
||||||
dtLavaContact, // Contact with a lava block
|
|
||||||
dtPoisoning, // Having the poison effect
|
|
||||||
dtOnFire, // Being on fire
|
|
||||||
dtFireContact, // Standing inside a fire block
|
|
||||||
dtInVoid, // Falling into the Void (Y < 0)
|
|
||||||
dtPotionOfHarming,
|
|
||||||
dtAdmin, // Damage applied by an admin command
|
|
||||||
|
|
||||||
// Some common synonyms:
|
|
||||||
dtPawnAttack = dtAttack,
|
|
||||||
dtEntityAttack = dtAttack,
|
|
||||||
dtMob = dtAttack,
|
|
||||||
dtMobAttack = dtAttack,
|
|
||||||
dtFall = dtFalling,
|
|
||||||
dtDrown = dtDrowning,
|
|
||||||
dtSuffocation = dtSuffocating,
|
|
||||||
dtStarvation = dtStarving,
|
|
||||||
dtHunger = dtStarving,
|
|
||||||
dtCactus = dtCactusContact,
|
|
||||||
dtCactuses = dtCactusContact,
|
|
||||||
dtCacti = dtCactusContact,
|
|
||||||
dtLava = dtLavaContact,
|
|
||||||
dtPoison = dtPoisoning,
|
|
||||||
dtBurning = dtOnFire,
|
|
||||||
dtInFire = dtFireContact,
|
|
||||||
dtPlugin = dtAdmin,
|
|
||||||
} ;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
struct TakeDamageInfo
|
struct TakeDamageInfo
|
||||||
{
|
{
|
||||||
eDamageType DamageType; // Where does the damage come from? Being hit / on fire / contact with cactus / ...
|
eDamageType DamageType; // Where does the damage come from? Being hit / on fire / contact with cactus / ...
|
||||||
|
Loading…
Reference in New Issue
Block a user