rpgxef/code/game/lua_entity.c

4353 lines
102 KiB
C
Raw Normal View History

// entity lib for lua
#include "g_lua.h"
#include "g_spawn.h"
extern qboolean G_CallSpawn(gentity_t *ent);
#ifdef G_LUA
/***
2013-05-09 22:07:14 +00:00
Module to access entity functions and manage enities.
@module entiy
*/
2013-05-09 22:07:14 +00:00
/***
This is just a function called from lua it should be called before any other model work
this will loop trough all misc_model_breakables and checks their model-string against those listed here
if it finds a match it will apply the associated splashDamage, splashRadius and s.powerups (material of chunks) to the entity
this is the only failsafe way i can think of to do these kind of refit
@function MMBRefit
*/
static int Entity_MMBRefit(lua_State * L)
{
gentity_t *MMB;
char serverInfo[MAX_TOKEN_CHARS];
char *arg2;
trap_GetServerinfo( serverInfo, sizeof( serverInfo ) );
arg2 = Info_ValueForKey( serverInfo, "mapname" );
if( !Q_stricmp( arg2, "_brig" ) // I stole this directly from g_cmds.c, Cmd_CallVote_f
|| !Q_stricmp( arg2, "_holodeck_camelot" ) || !Q_stricmp( arg2, "_holodeck_firingrange" ) || !Q_stricmp( arg2, "_holodeck_garden" ) || !Q_stricmp( arg2, "_holodeck_highnoon" ) || !Q_stricmp( arg2, "_holodeck_minigame" ) || !Q_stricmp( arg2, "_holodeck_proton" ) || !Q_stricmp( arg2, "_holodeck_proton2" ) || !Q_stricmp( arg2, "_holodeck_temple" ) || !Q_stricmp( arg2, "_holodeck_warlord" )
|| !Q_stricmp( arg2, "borg1" ) || !Q_stricmp( arg2, "borg2" ) || !Q_stricmp( arg2, "borg3" ) || !Q_stricmp( arg2, "borg4" ) || !Q_stricmp( arg2, "borg5" ) || !Q_stricmp( arg2, "borg6" )
|| !Q_stricmp( arg2, "dn1" ) || !Q_stricmp( arg2, "dn2" ) || !Q_stricmp( arg2, "dn3" ) || !Q_stricmp( arg2, "dn4" ) || !Q_stricmp( arg2, "dn5" ) || !Q_stricmp( arg2, "dn6" ) || !Q_stricmp( arg2, "dn8" )
|| !Q_stricmp( arg2, "forge1" ) || !Q_stricmp( arg2, "forge2" ) || !Q_stricmp( arg2, "forge3" ) || !Q_stricmp( arg2, "forge4" ) || !Q_stricmp( arg2, "forge5" ) || !Q_stricmp( arg2, "forgeboss" )
|| !Q_stricmp( arg2, "holodeck" )
|| !Q_stricmp( arg2, "scav1" ) || !Q_stricmp( arg2, "scav2" ) || !Q_stricmp( arg2, "scav3" ) || !Q_stricmp( arg2, "scav3b" ) || !Q_stricmp( arg2, "scav4" ) || !Q_stricmp( arg2, "scav5" ) || !Q_stricmp( arg2, "scavboss" )
|| !Q_stricmp( arg2, "stasis1" ) || !Q_stricmp( arg2, "stasis2" ) || !Q_stricmp( arg2, "stasis3" )
|| !Q_stricmp( arg2, "tour/deck01" ) || !Q_stricmp( arg2, "tour/deck02" ) || !Q_stricmp( arg2, "tour/deck03" ) || !Q_stricmp( arg2, "tour/deck04" ) || !Q_stricmp( arg2, "tour/deck05" ) || !Q_stricmp( arg2, "tour/deck08" ) || !Q_stricmp( arg2, "tour/deck09" ) || !Q_stricmp( arg2, "tour/deck10" ) || !Q_stricmp( arg2, "tour/deck11" ) || !Q_stricmp( arg2, "tour/deck15" )
|| !Q_stricmp( arg2, "tutorial" )
2013-05-09 22:07:14 +00:00
|| !Q_stricmp( arg2, "voy1" ) || !Q_stricmp( arg2, "voy13" ) || !Q_stricmp( arg2, "voy14" ) || !Q_stricmp( arg2, "voy15" ) || !Q_stricmp( arg2, "voy16" ) || !Q_stricmp( arg2, "voy17" ) || !Q_stricmp( arg2, "voy2" ) || !Q_stricmp( arg2, "voy20" ) || !Q_stricmp( arg2, "voy3" ) || !Q_stricmp( arg2, "voy4" ) || !Q_stricmp( arg2, "voy5" ) || !Q_stricmp( arg2, "voy6" ) || !Q_stricmp( arg2, "voy7" ) || !Q_stricmp( arg2, "voy8" ) || !Q_stricmp( arg2, "voy9" ) ) {
MMB = NULL; //init MMB here to do sth pointless
} else {
return 0; //we are not on one of the supported maps
}
while((MMB = G_Find(MMB, FOFS(classname), "misc_model_breakable" )) != NULL ){//loop while you find these
//borg maps
if( !Q_stricmp( MMB->model, "models/mapobjects/borg/blite.md3" )){ //alcove light
MMB->splashDamage = 75;
MMB->splashRadius = 75;
MMB->s.powerups = 3;//glass and metal, may reduce this to glass only
MMB->spawnflags = 258;
G_CallSpawn(MMB);
}else if( !Q_stricmp( MMB->model, "models/mapobjects/borg/circuit_1.md3" )){ //those things that look like a handle
MMB->splashDamage = 75;
MMB->splashRadius = 75;
MMB->s.powerups = 1;//
MMB->spawnflags = 263;
G_CallSpawn(MMB);
}else if( !Q_stricmp( MMB->model, "models/mapobjects/borg/circuit_2.md3" )){ //the isosceles triangle looking box
MMB->splashDamage = 75;
MMB->splashRadius = 75;
MMB->s.powerups = 1;//
MMB->spawnflags = 263;
G_CallSpawn(MMB);
}else if( !Q_stricmp( MMB->model, "models/mapobjects/borg/circuit_3.md3" )){ //the other triangle looking box
MMB->splashDamage = 75;
MMB->splashRadius = 75;
MMB->s.powerups = 1;//metal
MMB->spawnflags = 263;
G_CallSpawn(MMB);
}else if( !Q_stricmp( MMB->model, "models/mapobjects/borg/vynclumn.md3" )){ //no description needed ^^
MMB->splashDamage = 9999;
MMB->splashRadius = 9999;
MMB->s.powerups = 1;//metal
MMB->spawnflags = 263;
G_CallSpawn(MMB);
}else continue;//we are not looking for this kind of MMB
}
2013-05-09 22:07:14 +00:00
return 0;
}
2013-05-09 22:07:14 +00:00
/***
Returns a target entity of ent.
@function GetTarget
@return Target of the entity.
*/
static int Entity_GetTarget(lua_State * L)
{
2013-04-12 23:34:37 +00:00
lent_t* lent = NULL;
gentity_t* t = NULL;
2013-04-13 00:31:45 +00:00
LUA_DEBUG("BEGIN - entity.GetTarget");
lent = Lua_GetEntity(L, 1);
2013-04-13 00:31:45 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetTarget - entity NULL");
lua_pushnil(L);
return 1;
}
t = G_PickTarget(lent->e->target);
2013-04-13 00:31:45 +00:00
if(t == NULL) {
LUA_DEBUG("ERROR - entity.GetTarget - target NULL");
lua_pushnil(L);
return 1;
}
2013-04-13 00:31:45 +00:00
Lua_PushEntity(L, t);
2013-04-13 00:31:45 +00:00
LUA_DEBUG("END - entity.GetTarget");
return 1;
}
2013-05-09 22:07:14 +00:00
/***
Returns the entity with the brush model bmodelnumber.
This is the only failsafe way to find brush entities as the
entity number is different when you load a map local or join a server.
@function FindBModel
@param number Number of the brush model.
*/
static int Entity_FindBModel(lua_State *L) {
2013-04-13 00:31:45 +00:00
gentity_t* ent = NULL;
int bmodel;
2013-04-13 00:31:45 +00:00
char tmp[MAX_QPATH];
LUA_DEBUG("BEGIN - entity.FindBModel");
bmodel = luaL_checkint(L, 1);
2013-04-13 00:31:45 +00:00
sprintf(tmp, "*%d", bmodel);
ent = G_Find(NULL, FOFS(model), tmp);
if(ent == NULL) {
LUA_DEBUG("ERROR - entity.FindBModel - entity NULL");
lua_pushnil(L);
2013-04-13 00:31:45 +00:00
} else {
Lua_PushEntity(L, ent);
2013-04-13 00:31:45 +00:00
}
2013-04-13 00:31:45 +00:00
LUA_DEBUG("END - entity.FindBModel");
return 1;
}
2013-05-09 22:07:14 +00:00
/***
Returns the entity with the entity number entnum.
@function FindNumber
@param number Entity number.
@return Entity for the given entity number.
*/
static int Entity_FindNumber(lua_State * L)
{
2013-04-13 00:31:45 +00:00
int entnum;
gentity_t* ent = NULL;
LUA_DEBUG("BEGIN - entity.FindNumber");
entnum = luaL_checknumber(L, 1);
ent = &g_entities[entnum];
2013-04-13 00:31:45 +00:00
if(ent == NULL || ent->inuse == qfalse) {
LUA_DEBUG("ERROR - entity.FindNumber - entity NULL");
lua_pushnil(L);
2013-04-13 00:31:45 +00:00
} else {
Lua_PushEntity(L, ent);
2013-04-13 00:31:45 +00:00
}
2013-04-13 00:31:45 +00:00
LUA_DEBUG("END - entity.FindNumber");
return 1;
}
2013-05-09 22:07:14 +00:00
/***
Returns the first entity found that has a targetname of targetname.
@function Find
@param targetname
@return First entity found that has the given targetname.
*/
static int Entity_Find(lua_State * L)
{
2013-04-13 00:31:45 +00:00
gentity_t* t = NULL;
LUA_DEBUG("BEGIN - entity.Find");
t = G_Find(t, FOFS(targetname), (char *)luaL_checkstring(L, 1));
2013-04-13 00:31:45 +00:00
if(t == NULL) {
LUA_DEBUG("ERROR - entity.Find - target NULL");
lua_pushnil(L);
2013-04-13 00:31:45 +00:00
} else {
Lua_PushEntity(L, t);
2013-04-13 00:31:45 +00:00
}
2013-04-13 00:31:45 +00:00
LUA_DEBUG("END - entity.Find");
return 1;
}
2013-05-09 22:07:14 +00:00
/***
Returns the misc_model_breakable entity that has a matching MMB->s.origin.
Requires vector as input.
You can get the s.origin ingame as an admin/developer by pointing at the MMB ingame and using the /getorigin-command.
@function FindMMB
@param vector Origin of misc_model_breakable.
@return Matching entity.
*/
static int Entity_FindMMB(lua_State * L)
{
gentity_t *t = NULL, *MMB = NULL;
2013-04-13 00:31:45 +00:00
vec_t *vec = NULL, *origin = NULL;
vec = Lua_GetVector(L, 2);
2013-05-09 22:07:14 +00:00
if(vec == NULL) {
lua_pushnil(L);
return 1;
}
while((MMB = G_Find(MMB, FOFS(classname), "misc_model_breakable")) != NULL){
origin = MMB->s.origin;
if(vec[0] == origin[0] && vec[1] == origin[1] && vec[2] == origin[2]){
t = MMB;
break;
2013-04-13 00:31:45 +00:00
} else {
continue;
}
}
2013-04-13 00:31:45 +00:00
if(t == NULL) {
lua_pushnil(L);
2013-04-13 00:31:45 +00:00
} else {
Lua_PushEntity(L, t);
2013-04-13 00:31:45 +00:00
}
return 1;
}
2013-05-09 22:07:14 +00:00
/***
Uses the given entity.
@function Use
@param ent Entity to use.
@return Success or failure.
*/
static int Entity_Use(lua_State * L)
{
2013-04-13 00:31:45 +00:00
lent_t* lent = NULL;
LUA_DEBUG("BEGIN - entity.Use");
lent = Lua_GetEntity(L, 1);
2013-04-13 00:31:45 +00:00
if(lent == NULL || lent->e == NULL || lent->e->use == NULL) {
LUA_DEBUG("ERROR - entity.Use - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
}
2013-04-13 00:31:45 +00:00
if(lent->e->luaUse != NULL) {
LUA_DEBUG("INFO - entity.Use - calling entity->luaUse");
LuaHook_G_EntityUse(lent->e->luaUse, lent->e-g_entities, lent->e-g_entities, lent->e-g_entities);
2013-04-13 00:31:45 +00:00
}
lent->e->use(lent->e, NULL, lent->e);
2013-04-13 00:31:45 +00:00
lua_pushboolean(L, qtrue);
LUA_DEBUG("END - entity.Use");
return 1;
}
// entity.Teleport(entity client, entity target)
// Teleports client to target's position
2013-04-13 00:31:45 +00:00
// returns success or fail
static int Entity_Teleport(lua_State * L)
{
2013-04-13 00:31:45 +00:00
lent_t* lent = NULL;;
lent_t* target = NULL;
2013-04-13 00:31:45 +00:00
LUA_DEBUG("BEGIN - entity.Teleport");
lent = Lua_GetEntity(L, 1);
target = Lua_GetEntity(L, 2);
2013-04-13 00:31:45 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.Teleport - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 00:31:45 +00:00
}
if(target == NULL || target->e == NULL) {
LUA_DEBUG("ERROR - entity.Teleport - target NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 00:31:45 +00:00
}
2013-04-13 00:31:45 +00:00
if(lent->e->client != NULL) {
LUA_DEBUG("INFO - entity.Teleport - calling TeleportPlayer");
TeleportPlayer(lent->e, target->e->s.origin, target->e->s.angles, TP_NORMAL);
2013-04-13 00:31:45 +00:00
lua_pushboolean(L, qtrue);
} else {
lua_pushboolean(L, qfalse);
}
LUA_DEBUG("END - entity.Teleport");
return 1;
}
// entity.IsRocket(entity ent)
// Checks if an entity is a rocket.
static int Entity_IsRocket(lua_State * L)
{
2013-04-13 00:31:45 +00:00
lent_t* lent = NULL;
qboolean rocket = qfalse;
lent = Lua_GetEntity(L, 1);
2013-04-13 00:31:45 +00:00
if(lent == NULL || lent->e == NULL) {
lua_pushboolean(L, qfalse);
return 1;
}
2013-04-13 00:31:45 +00:00
if(!Q_stricmp(lent->e->classname, "rocket")) {
rocket = qtrue;
}
lua_pushboolean(L, rocket);
return 1;
}
// entity.IsGrenade(entity ent)
// Checks if an entity is a grenade.
static int Entity_IsGrenade(lua_State * L)
{
2013-04-13 00:31:45 +00:00
lent_t* lent = NULL;
qboolean grenade = qfalse;
lent = Lua_GetEntity(L, 1);
2013-04-13 00:31:45 +00:00
if(lent == NULL || lent->e == NULL) {
lua_pushboolean(L, qfalse);
return 1;
}
if(!Q_stricmp(lent->e->classname, "grenade")) {
grenade = qtrue;
2013-04-13 00:31:45 +00:00
}
lua_pushboolean(L, grenade);
return 1;
}
// entity.Spawn()
// Tries to spawn a new entity and returns it.
// If no new entity can be spawned nil is returned.
static int Entity_Spawn(lua_State * L)
{
2013-04-13 00:31:45 +00:00
gentity_t* ent = NULL;
ent = G_Spawn();
2013-04-13 00:31:45 +00:00
if(ent == NULL) {
lua_pushnil(L);
return 1;
}
Lua_PushEntity(L, ent);
return 1;
}
// entity.GetNumber(entity ent)
// returns the entities index number
static int Entity_GetNumber(lua_State * L)
{
2013-04-13 00:31:45 +00:00
lent_t* lent = NULL;
lent = Lua_GetEntity(L, 1);
2013-04-13 00:31:45 +00:00
if(lent == NULL || lent->e == NULL) {
lua_pushinteger(L, -1);
2013-04-13 00:31:45 +00:00
} else {
lua_pushinteger(L, lent->e - g_entities);
2013-04-13 00:31:45 +00:00
}
return 1;
}
// entity.IsClient(entity ent)
// Checks if an entity is a client
static int Entity_IsClient(lua_State * L)
{
2013-04-13 00:31:45 +00:00
lent_t* lent = NULL;
lent = Lua_GetEntity(L, 1);
2013-04-13 00:31:45 +00:00
if(lent == NULL || lent->e == NULL) {
lua_pushboolean(L, 0);
return 1;
}
lua_pushboolean(L, lent->e->client != NULL);
return 1;
}
// entity.GetClientName(entity ent)
// Returns the display name of a client
static int Entity_GetClientName(lua_State * L)
{
2013-04-13 00:31:45 +00:00
lent_t* lent = NULL;
lent = Lua_GetEntity(L, 1);
2013-04-13 00:31:45 +00:00
if(lent == NULL || lent->e == NULL || lent->e->classname == NULL) {
lua_pushnil(L);
return 1;
}
lua_pushstring(L, lent->e->client->pers.netname);
return 1;
}
static int Entity_Print(lua_State * L)
{
2013-04-13 00:31:45 +00:00
lent_t* lent = NULL;
int i;
char buf[MAX_STRING_CHARS];
int n = lua_gettop(L);
2013-04-13 16:48:32 +00:00
LUA_DEBUG("BEGIN - entity.Print");
lent = Lua_GetEntity(L, 1);
2013-04-13 00:31:45 +00:00
if(lent == NULL || lent->e == NULL) {
2013-04-13 16:48:32 +00:00
LUA_DEBUG("ERROR - entity.Print - entity NULL");
return 1;
2013-04-13 00:31:45 +00:00
}
2013-04-13 00:31:45 +00:00
if(lent->e->client == NULL) {
2013-04-13 16:48:32 +00:00
LUA_DEBUG("ERROR - entity.Print - entity is not a client");
return 1;
2013-04-13 00:31:45 +00:00
}
memset(buf, 0, sizeof(buf));
lua_getglobal(L, "tostring");
for(i = 2; i <= n; i++)
{
const char *s;
lua_pushvalue(L, -1);
lua_pushvalue(L, i);
lua_call(L, 1, 1);
s = lua_tostring(L, -1);
2013-04-13 00:31:45 +00:00
if(s == NULL) {
2013-04-13 16:48:32 +00:00
LUA_DEBUG("ERROR - entity.Print - string NULL");
return 1;
2013-04-13 00:31:45 +00:00
}
Q_strcat(buf, sizeof(buf), s);
lua_pop(L, 1);
}
trap_SendServerCommand(lent->e - g_entities, va("print \"%s\n\"", buf));
2013-04-13 16:48:32 +00:00
LUA_DEBUG("END - entity.Print");
return 1;
}
static int Entity_CenterPrint(lua_State * L)
{
2013-04-13 00:31:45 +00:00
lent_t *lent = NULL;
int i;
char buf[MAX_STRING_CHARS];
int n = lua_gettop(L);
2013-04-13 16:48:32 +00:00
LUA_DEBUG("BEGIN - entity.CenterPrint");
lent = Lua_GetEntity(L, 1);
2013-04-13 00:31:45 +00:00
if(lent == NULL || lent->e == NULL) {
2013-04-13 16:48:32 +00:00
LUA_DEBUG("ERROR - entity.CenterPrint - entity NULL");
return 1;
2013-04-13 00:31:45 +00:00
}
2013-04-13 00:31:45 +00:00
if(lent->e->client == NULL) {
2013-04-13 16:48:32 +00:00
LUA_DEBUG("ERROR - entity.CenterPrint - entity is not a client");
return 1;
2013-04-13 00:31:45 +00:00
}
memset(buf, 0, sizeof(buf));
lua_getglobal(L, "tostring");
for(i = 2; i <= n; i++)
{
const char *s;
lua_pushvalue(L, -1);
lua_pushvalue(L, i);
lua_call(L, 1, 1);
s = lua_tostring(L, -1);
2013-04-13 16:48:32 +00:00
if(s == NULL) {
LUA_DEBUG("ERROR - entity.CenterPrint - string NULL");
return 1;
}
Q_strcat(buf, sizeof(buf), s);
lua_pop(L, 1);
}
trap_SendServerCommand(lent->e - g_entities, va("cp \"" S_COLOR_WHITE "%s\n\"", buf));
2013-04-13 16:48:32 +00:00
LUA_DEBUG("END - entity.CenterPrint");
return 1;
}
extern qboolean G_ParseField(const char *key, const char *value, gentity_t *ent);
// entity.SetKeyValue(entity ent, string key, string value)
// Sets a key of an entity to a value
static int Entity_SetKeyValue(lua_State * L) {
2013-04-13 00:31:45 +00:00
lent_t* lent = NULL;
char* key = NULL;
char* value = NULL;
2013-04-13 16:48:32 +00:00
LUA_DEBUG("BEGIN - entity.SetKeyValue");
lent = Lua_GetEntity(L, 1);
key = (char *)luaL_checkstring(L, 2);
value = (char *)luaL_checkstring(L, 3);
2013-04-13 16:48:32 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetKeyValue - entity NULL");
return 1;
}
if(key == NULL) {
LUA_DEBUG("ERROR - entity.SetKeyValue - key NULL");
lua_pushboolean(L, qfalse);
return 1;
}
if(value == NULL) {
LUA_DEBUG("ERROR - entity.SetKeyValue - key NULL");
lua_pushboolean(L, qfalse);
return 1;
}
lua_pushboolean(L, G_ParseField(key, value, lent->e));
2013-04-13 16:48:32 +00:00
LUA_DEBUG("END - entity.SetKeyValue");
return 1;
}
// entity.GetClassname(entity ent)
// Returns the classname of an entity
static int Entity_GetClassName(lua_State * L)
{
2013-04-13 00:31:45 +00:00
lent_t* lent = NULL;
2013-04-13 16:48:32 +00:00
LUA_DEBUG("BEGIN - entity.GetClassname");
lent = Lua_GetEntity(L, 1);
2013-04-13 16:48:32 +00:00
2013-04-13 00:31:45 +00:00
if(lent == NULL || lent->e == NULL) {
2013-04-13 16:48:32 +00:00
LUA_DEBUG("ERROR - entity.SetKeyValue - entity NULL");
lua_pushnil(L);
2013-04-13 00:31:45 +00:00
} else {
lua_pushstring(L, lent->e->classname);
2013-04-13 00:31:45 +00:00
}
2013-04-13 16:48:32 +00:00
LUA_DEBUG("END - entity.SetKeyValue");
return 1;
}
// entity.SetClassname(entity ent, string name)
// Sets the Classname of an entity to name
2013-04-13 00:31:45 +00:00
// Returns success or fail
static int Entity_SetClassName(lua_State * L)
{
2013-04-13 00:31:45 +00:00
lent_t* lent = NULL;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.SetClassname");
lent = Lua_GetEntity(L, 1);
2013-04-13 00:31:45 +00:00
if(lent == NULL || lent->e == NULL) {
2013-04-13 18:33:23 +00:00
LUA_DEBUG("ERROR - entity.SetClassname - entity NULL");
2013-04-13 00:31:45 +00:00
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 00:31:45 +00:00
}
lent->e->classname = (char *)luaL_checkstring(L, 2);
2013-04-13 00:31:45 +00:00
lua_pushboolean(L, qtrue);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.SetClassname");
return 1;
}
// entity.GetTargetname(entity ent)
// Returns the targetname of an entity
static int Entity_GetTargetName(lua_State * L)
{
2013-04-13 00:31:45 +00:00
lent_t* lent = NULL;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.GetTargetname");
lent = Lua_GetEntity(L, 1);
2013-04-13 00:31:45 +00:00
if(lent == NULL || lent->e == NULL) {
2013-04-13 18:33:23 +00:00
LUA_DEBUG("ERROR - entity.GetTargetname - entity NULL");
lua_pushnil(L);
2013-04-13 00:31:45 +00:00
} else {
lua_pushstring(L, lent->e->targetname);
2013-04-13 00:31:45 +00:00
}
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.GetTargetname");
return 1;
}
// entity.Rotate(entity ent, vector dir)
// Rotates an entity in the specified directions
2013-04-13 00:31:45 +00:00
// Returns success or fail
static int Entity_Rotate(lua_State * L)
{
2013-04-13 00:31:45 +00:00
lent_t* lent = NULL;
vec_t* vec = NULL;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.Rotate");
lent = Lua_GetEntity(L, 1);
vec = Lua_GetVector(L, 2);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.Rotate - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
}
if(vec == NULL) {
LUA_DEBUG("ERROR - entity.Rotate - vector NULL");
2013-04-13 00:31:45 +00:00
lua_pushboolean(L, qfalse);
return 1;
}
lent->e->s.apos.trType = TR_LINEAR;
lent->e->s.apos.trDelta[0] = vec[0];
lent->e->s.apos.trDelta[1] = vec[1];
lent->e->s.apos.trDelta[2] = vec[2];
2013-04-13 00:31:45 +00:00
lua_pushboolean(L, qtrue);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.Rotate");
return 1;
}
static int Entity_GC(lua_State * L)
{
return 0;
}
// entity.ToString(entity)
// Prints an entity as string
static int Entity_ToString(lua_State * L)
{
2013-04-13 00:31:45 +00:00
lent_t* lent = NULL;
gentity_t* gent = NULL;
char buf[MAX_STRING_CHARS];
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.ToString");
lent = Lua_GetEntity(L, 1);
2013-04-13 00:31:45 +00:00
if(lent == NULL || lent->e == NULL) {
2013-04-13 18:33:23 +00:00
LUA_DEBUG("ERROR - entity.ToString - entity NULL");
2013-04-13 00:31:45 +00:00
lua_pushnil(L);
return 1;
}
gent = lent->e;
2013-04-13 00:31:45 +00:00
Com_sprintf(buf, sizeof(buf), "entity: class=%s name=%s id=%i pointer=%p\n", gent->classname, gent->targetname, gent-g_entities, gent);
lua_pushstring(L, buf);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.ToString");
return 1;
}
static void ent_delay(gentity_t *ent) {
ent->think = 0;
ent->nextthink = -1;
G_CallSpawn(ent);
}
// entity.DelayedCallSpawn(entity ent, integer delay)
// Calls the game logic spawn function for the class of ent after a delay of delay milliseconds.
static int Entity_DelayedCallSpawn(lua_State *L) {
2013-04-13 00:31:45 +00:00
lent_t* lent = NULL;
int delay;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.DelayedCallSpawn");
lent = Lua_GetEntity(L, 1);
2013-04-13 00:31:45 +00:00
if(lent == NULL || lent->e == NULL) {
2013-04-13 18:33:23 +00:00
LUA_DEBUG("ERROR - entity.DelayedCallSpawn - entity NULL");
2013-04-13 00:31:45 +00:00
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 00:31:45 +00:00
}
2013-04-13 00:31:45 +00:00
if(!Q_stricmp(lent->e->classname, "target_selfdestruct")) {
2013-04-13 18:33:23 +00:00
LUA_DEBUG("ERROR - entity.DelayedCallSpawn - entity is target_selfdestruct");
2013-04-13 00:31:45 +00:00
lua_pushboolean(L, qfalse);
return 1; //we will not selfdestruct this way
2013-04-13 00:31:45 +00:00
}
delay = luaL_checkint(L, 2);
2013-04-13 00:31:45 +00:00
if(!delay) {
delay = FRAMETIME;
2013-04-13 00:31:45 +00:00
}
lent->e->nextthink = delay;
lent->e->think = ent_delay;
2013-04-13 00:31:45 +00:00
lua_pushboolean(L, qtrue);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.DelayedCallSpawn");
return 1;
}
// entity.CallSpawn(entity ent)
// Calls the game logic spawn function for the class of ent.
static int Entity_CallSpawn(lua_State *L) {
2013-04-13 00:31:45 +00:00
lent_t* lent = NULL;
qboolean r = qfalse;
2013-04-13 00:31:45 +00:00
gentity_t* e = NULL;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.CallSpawn");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.CallSpawn - entity NULL");
2013-04-12 23:34:37 +00:00
lua_pushboolean(L, qfalse);
return 1;
}
2013-04-13 18:33:23 +00:00
e = lent->e;
2013-04-13 00:31:45 +00:00
if(!Q_stricmp(lent->e->classname, "target_selfdestruct")) {
2013-04-13 18:33:23 +00:00
LUA_DEBUG("ERROR - entity.CallSpawn - entity is target_selfdestruct");
2013-04-13 00:31:45 +00:00
lua_pushboolean(L, qfalse);
return 1; //we will not selfdestruct this way
2013-04-13 00:31:45 +00:00
}
2013-04-13 18:33:23 +00:00
LUA_DEBUG("INFO - entity.CallSpawn - G_CallSpawn");
trap_UnlinkEntity(e);
r = G_CallSpawn(e);
lua_pushboolean(L, r);
LUA_DEBUG("END - entity.CallSpawn");
return 1;
}
// entity.RemoveUnnamedSpawns()
// Removes all spawn points from the map, that don't have a targetname.
extern field_t fields[];
static int Entity_RemoveUnnamedSpawns(lua_State *L) {
gentity_t *ent;
int cnt = 0, i;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.RemoveUnnamedSpawns");
for(i = 0; i < MAX_GENTITIES; i++) {
if(!&g_entities[i]) continue;
ent = &g_entities[i];
if(!ent->classname) continue;
if(!Q_stricmp(ent->classname, "info_player_deathmatch"))
if(!ent->targetname) {
G_FreeEntity(ent);
cnt++;
}
}
lua_pushnumber(L, cnt);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.RemoveUnnamedSpawns");
return 1;
}
// entity.RemoveSpawns()
// Removes all spawn points from the map.
static int Entity_RemoveSpawns(lua_State *L) {
gentity_t *ent;
int cnt = 0, i;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.RemoveSpawns");
for(i = 0; i < MAX_GENTITIES; i++) {
if(!&g_entities[i]) continue;
ent = &g_entities[i];
if(!ent->classname) continue;
if(!Q_stricmp(ent->classname, "info_player_deathmatch")) {
G_FreeEntity(ent);
cnt++;
}
}
lua_pushnumber(L, cnt);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.RemoveSpawns");
return 1;
}
// entity.RemoveType(string classname)
// Removes all entities of type classname from the map.
static int Entity_RemoveType(lua_State *L) {
int i, cnt = 0;
char *classname;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.RemoveType");
classname = (char *)luaL_checkstring(L , 1);
2013-04-13 18:33:23 +00:00
if(classname == NULL) {
LUA_DEBUG("ERROR - entity.RemoveType - classname NULL");
lua_pushinteger(L, -1);
return 1;
}
for(i = 0; i < MAX_GENTITIES; i++) {
if(!strcmp(g_entities[i].classname, classname)) {
G_FreeEntity(&g_entities[i]);
cnt++;
}
}
lua_pushinteger(L, cnt);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.RemoveType");
return 1;
}
// entity.Remove(entity ent)
// Removes an entity if it is not protected
static int Entity_Remove(lua_State *L) {
lent_t *lent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.Remove");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.Remove - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
}
2013-04-13 18:33:23 +00:00
if(lent->e->neverFree) {
LUA_DEBUG("INFO - entity.Remove - entity->neverFree");
LUA_DEBUG("END - entity.Remove");
lua_pushboolean(L, qfalse);
return 1;
}
2013-04-13 18:33:23 +00:00
if(lent->e->client != NULL) {
LUA_DEBUG("INFO - entity.Remove - entity is client");
LUA_DEBUG("END - entity.Remove");
lua_pushboolean(L, qfalse);
return 1;
}
2013-04-13 18:33:23 +00:00
G_FreeEntity(lent->e);
lua_pushboolean(L, qtrue);
LUA_DEBUG("END - entity.Remove");
return 1;
}
// entity.SetupTrigger(entity ent, float x, float y, float z) or
// entity.SetupTrigger(entity ent, vector size)
// Does some setup for entities spawned by script that are to be used as trigger.
// * ent the entity
// * x length along the X-Axis
// * y length along the Y-Axis
// * z length along the Z-axis
// * Can also be stowed in a vector size
2013-04-13 18:33:23 +00:00
// Returns succcess or fail
static int Entity_SetupTrigger(lua_State *L) {
lent_t *lent;
gentity_t *e;
vec_t *vptr;
vec3_t size;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.SetupTrigger");
2013-04-13 18:33:23 +00:00
lent = Lua_GetEntity(L, 1);
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetupTrigger - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
}
e = lent->e;
if(Lua_IsVector(L, 2)) {
vptr = Lua_GetVector(L, 2);
VectorCopy(vptr, size);
} else {
size[0] = luaL_checkint(L, 2);
size[1] = luaL_checkint(L, 3);
size[2] = luaL_checkint(L, 4);
}
VectorCopy(size, e->r.mins);
VectorCopy(size, e->r.maxs);
VectorScale(e->r.mins, -.5, e->r.mins);
VectorScale(e->r.maxs, .5, e->r.maxs);
VectorCopy(e->r.mins, e->r.absmin);
VectorCopy(e->r.maxs, e->r.absmax);
e->tmpEntity = qtrue;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.SetupTrigger");
return 1;
}
// entity.GetOrigin(entity ent)
// Returns the origin of an entity as vector
static int Entity_GetOrigin(lua_State *L) {
lent_t *lent;
vec3_t origin;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.GetOrigin");
2013-04-13 18:33:23 +00:00
lent = Lua_GetEntity(L, 1);
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetOrigin - entity NULL");
lua_pushnil(L);
return 1;
}
2013-04-13 18:33:23 +00:00
if(lent->e->r.svFlags & SVF_USE_CURRENT_ORIGIN) {
VectorCopy(lent->e->r.currentOrigin, origin);
2013-04-13 18:33:23 +00:00
} else {
VectorCopy(lent->e->s.origin, origin);
2013-04-13 18:33:23 +00:00
}
Lua_PushVector(L, origin);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.GetOrigin");
return 1;
}
// ent.Lock(entity ent)
// Looks the entity ent. Works with anything that can be locked (doors, turbolifts, usables, ...).
2013-04-13 18:33:23 +00:00
// Returns success or fail
static int Entity_Lock(lua_State *L) {
lent_t *lent;
gentity_t *ent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.Lock");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(!lent || !lent->e) {
LUA_DEBUG("ERROR - entity.Lock - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
}
ent = lent->e;
if(!strncmp(ent->classname, "func_door", 9) ||
!strncmp(ent->classname, "func_door_rotating", 18) ||
!strncmp(ent->classname, "target_teleporter", 17) ||
!strncmp(ent->classname, "target_turbolift", 16) ||
!strncmp(ent->classname, "func_usable", 11) ||
!strncmp(ent->classname, "target_serverchange", 19) ||
!strncmp(ent->classname, "trigger_teleport", 16) ||
!strncmp(ent->classname, "ui_transporter", 14) ||
!strncmp(ent->classname, "ui_holodeck", 11)
) {
2013-04-13 18:33:23 +00:00
if(ent->flags & FL_LOCKED) {
LUA_DEBUG("INFO - entity.Lock - already locked");
LUA_DEBUG("END - entity.Lock");
lua_pushboolean(L, qtrue);
return 1;
}
ent->flags ^= FL_LOCKED;
2013-04-13 18:33:23 +00:00
} else {
LUA_DEBUG("INFO - entity.Lock - entity not valid");
LUA_DEBUG("END - entity.Lock");
lua_pushboolean(L, qfalse);
return 1;
}
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.Lock");
lua_pushboolean(L, qtrue);
return 1;
}
// ent.Unlock(entity ent)
// Unlooks the entity ent. Works with anything that can be locked (doors, turbolifts, usables, ...).
2013-04-13 18:33:23 +00:00
// Returns success or fail
static int Entity_Unlock(lua_State *L) {
lent_t *lent;
gentity_t *ent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.Unlock");
2013-04-13 18:33:23 +00:00
lent = Lua_GetEntity(L, 1);
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.Unlock - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
}
ent = lent->e;
if(!strncmp(ent->classname, "func_door", 9) ||
!strncmp(ent->classname, "func_door_rotating", 18) ||
!strncmp(ent->classname, "target_teleporter", 17) ||
!strncmp(ent->classname, "target_turbolift", 16) ||
!strncmp(ent->classname, "func_usable", 11) ||
!strncmp(ent->classname, "target_serverchange", 19) ||
!strncmp(ent->classname, "trigger_teleport", 16) ||
!strncmp(ent->classname, "ui_transporter", 14) ||
!strncmp(ent->classname, "ui_holodeck", 11)
) {
2013-04-13 18:33:23 +00:00
if(ent->flags & FL_LOCKED) {
ent->flags ^= FL_LOCKED;
2013-04-13 18:33:23 +00:00
}
} else {
LUA_DEBUG("INFO - entity.Unlock - entity is not valid");
LUA_DEBUG("END - entity.Unlock");
lua_pushboolean(L, qfalse);
return 1;
}
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.Unlock");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_IsLocked(lua_State *L) {
lent_t *lent;
gentity_t *ent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.IsLocked");
2013-04-13 18:33:23 +00:00
lent = Lua_GetEntity(L, 1);
2013-04-12 23:34:37 +00:00
if(lent == NULL || lent->e == NULL) {
2013-04-13 18:33:23 +00:00
LUA_DEBUG("ERROR - entity.IsLocked - entity NULL");
lua_pushboolean(L, qfalse);
2013-04-12 23:34:37 +00:00
return 1;
}
ent = lent->e;
lua_pushboolean(L, (int)(ent->flags & FL_LOCKED));
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.IsLocked");
return 1;
}
static int Entity_GetParm(lua_State *L) {
lent_t *lent;
gentity_t *ent;
int parm;
char *res = NULL;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.GetParm");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL|| lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetParm");
lua_pushnil(L);
return 1;
}
ent = lent->e;
parm = luaL_checkint(L, 2);
2013-04-13 18:33:23 +00:00
if(parm < 1 || parm > 4) {
LUA_DEBUG("ERROR - entity.GetParm - parm out of range");
lua_pushnil(L);
return 1;
}
switch(parm) {
case 1:
res = ent->luaParm1;
break;
case 2:
res = ent->luaParm2;
break;
case 3:
res = ent->luaParm3;
break;
case 4:
res = ent->luaParm4;
break;
2013-04-13 18:33:23 +00:00
default:
res = NULL;
break;
}
2013-04-13 18:33:23 +00:00
if(res == NULL) {
LUA_DEBUG("ERROR - entity.GetParm - res NULL");
lua_pushnil(L);
} else {
lua_pushstring(L, res);
}
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.GetParm");
return 1;
}
static int Entity_SetParm(lua_State *L) {
lent_t *lent;
gentity_t *ent;
int parm;
char *parms;
char *s = NULL;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.SetParm");
2013-04-13 18:33:23 +00:00
lent = Lua_GetEntity(L, 1);
if(lent == NULL|| lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetParm - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
}
ent = lent->e;
parm = luaL_checkint(L, 2);
2013-04-13 18:33:23 +00:00
if(parm < 1 || parm > 4) {
LUA_DEBUG("ERROR - entity.SetParm - parm out of range");
lua_pushboolean(L, qfalse);
return 1;
}
parms = (char *)luaL_checkstring(L, 3);
2013-04-13 18:33:23 +00:00
if(!parms) {
LUA_DEBUG("ERROR - entity.SetParm - parms NULL");
lua_pushboolean(L, qfalse);
return 1;
}
switch(parm) {
case 1:
s = ent->luaParm1;
break;
case 2:
s = ent->luaParm2;
break;
case 3:
s = ent->luaParm3;
break;
case 4:
s = ent->luaParm4;
break;
}
if(s) {
// check if the new string fits into the existing one
if(strlen(s) > (strlen(parms) + 1)) {
// it fits so copy it
strncpy(s, parms, sizeof(s));
} else {
// it does not fit in so alloc a new string
s = G_NewString(parms);
}
2013-04-13 18:33:23 +00:00
} else {
s = G_NewString(parms);
2013-04-13 18:33:23 +00:00
}
LUA_DEBUG("END - entity.SetParm");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetActivator(lua_State *L) {
lent_t *lent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.GetActivator");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL|| lent->e == NULL) {
lua_pushnil(L);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("ERROR - entity.GetActivator - entity NULL");
return 1;
}
2013-04-13 18:33:23 +00:00
Lua_PushEntity(L, lent->e->activator);
LUA_DEBUG("END - entity.GetActivator");
return 1;
}
static int Entity_SetActivator(lua_State *L) {
lent_t *lent;
lent_t *activator;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.SetActivator");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetActivator - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 18:33:23 +00:00
}
activator = Lua_GetEntity(L, 2);
2013-04-13 18:33:23 +00:00
if(!activator || activator->e) {
lent->e->activator = NULL;
2013-04-13 18:33:23 +00:00
} else {
lent->e->activator = activator->e;
2013-04-13 18:33:23 +00:00
}
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.SetActivator");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetAngle(lua_State *L) {
lent_t *lent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.GetAngle");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetAngle - entity NUL");
lua_pushnumber(L, 0);
return 1;
}
2013-04-13 18:33:23 +00:00
lua_pushnumber(L, lent->e->angle);
LUA_DEBUG("END - entity.GetAngle");
return 1;
}
static int Entity_SetAngle(lua_State *L) {
lent_t *lent;
float angle;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.SetAngle");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetAngle - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 18:33:23 +00:00
}
angle = (float)luaL_checknumber(L, 2);
lent->e->angle = angle;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.SetAngle");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetApos1(lua_State *L) {
lent_t *lent;
vec3_t null = { 0, 0, 0 };
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.GetApos1");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetApos1 - entity NULL");
Lua_PushVector(L, null);
return 1;
}
Lua_PushVector(L, lent->e->apos1);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.GetApos1");
return 1;
}
static int Entity_GetApos2(lua_State *L) {
lent_t *lent;
vec3_t null = { 0, 0, 0 };
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.GetApos2");
lent = Lua_GetEntity(L, 1);
if(!lent || !lent->e) {
2013-04-13 18:33:23 +00:00
LUA_DEBUG("ERROR - entity.GetApos2 - entity NULL");
Lua_PushVector(L, null);
return 1;
}
Lua_PushVector(L, lent->e->apos2);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.GetApos2");
return 1;
}
static int Entity_SetApos1(lua_State *L) {
lent_t *lent;
vec_t *vec;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.SetApos1");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetApos1 - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 18:33:23 +00:00
}
vec = Lua_GetVector(L, 2);
VectorCopy(vec, lent->e->apos1);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.SetApos1");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_SetApos2(lua_State *L) {
lent_t *lent;
vec_t *vec;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.SetApos2");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetApos2 - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 18:33:23 +00:00
}
vec = Lua_GetVector(L, 2);
VectorCopy(vec, lent->e->apos2);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.SetApos2");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetBluename(lua_State *L) {
lent_t *lent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.GetBluename");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL|| lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetBluename - entity NULL");
lua_pushnil(L);
2013-04-13 18:33:23 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->bluename);
2013-04-13 18:33:23 +00:00
}
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.GetBluename");
return 1;
}
static int Entity_SetBluename(lua_State *L) {
lent_t *lent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.SetBluename");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetBluename - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 18:33:23 +00:00
}
lent->e->bluename = (char *)luaL_checkstring(L, 2);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.SetBluename");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetBluesound(lua_State *L) {
lent_t *lent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.GetBluesound");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetBluesound - entity NULL");
lua_pushnil(L);
2013-04-13 18:33:23 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->bluesound);
2013-04-13 18:33:23 +00:00
}
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.GetBluesound");
return 1;
}
static int Entity_SetBluesound(lua_State *L) {
lent_t *lent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.SetBluesound");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetBluesound - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 18:33:23 +00:00
}
lent->e->bluesound = (char *)luaL_checkstring(L, 2);;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.SetBluesound");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetBooleanstate(lua_State *L) {
lent_t *lent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.GetBooleanstate");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetBooleanstate - entity NULL");
lua_pushboolean(L, 0);
return 1;
}
lua_pushboolean(L, (int)lent->e->booleanstate);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.GetBooleanstate");
return 1;
}
static int Entity_SetBooleanstate(lua_State *L) {
lent_t *lent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.SetBooleanstate");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetBooleanstate - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 18:33:23 +00:00
}
lent->e->booleanstate = (qboolean)lua_toboolean(L, 2);
2013-04-13 18:33:23 +00:00
lua_pushboolean(L, qtrue);
LUA_DEBUG("END - entity.SetBooleanstate");
return 1;
}
static int Entity_GetClipmask(lua_State *L) {
lent_t *lent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.GetClipmask");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetClipmask - entity NULL");
lua_pushinteger(L, 0);
return 1;
}
lua_pushinteger(L, lent->e->clipmask);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.GetClipmask");
return 1;
}
static int Entity_SetClipmask(lua_State *L) {
lent_t *lent;
int mask;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.SetClipmask");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetClipmask - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 18:33:23 +00:00
}
mask = (int)luaL_checknumber(L, 2);
lent->e->clipmask = mask;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.SetClipmask");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetCount(lua_State *L) {
lent_t *lent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.SetClipmask");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetClipmask - entity NULL");
lua_pushinteger(L, 0);
return 1;
}
lua_pushinteger(L, lent->e->count);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.SetClipmask");
return 1;
}
static int Entity_SetCount(lua_State *L) {
lent_t *lent;
int count;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.SetCount");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetCount - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 18:33:23 +00:00
}
count = (int)luaL_checknumber(L, 2);
lent->e->count = count;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.SetCount");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetDamage(lua_State *L) {
lent_t *lent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.GetDamage");
lent = Lua_GetEntity(L, 1);
if(!lent || !lent->e) {
2013-04-13 18:33:23 +00:00
LUA_DEBUG("ERROR - entity.GetDamage - entity NULL");
lua_pushinteger(L, 0);
return 1;
}
lua_pushinteger(L, lent->e->damage);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.GetDamage");
return 1;
}
static int Entity_SetDamage(lua_State *L) {
lent_t *lent;
int damage;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.SetDamage");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetDamage - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 18:33:23 +00:00
}
damage = (int)luaL_checknumber(L, 2);
lent->e->damage = damage;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.SetDamage");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetDistance(lua_State *L) {
lent_t *lent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.GetDistance");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetDistance - entity NULL");
lua_pushnumber(L, 0);
return 1;
}
lua_pushnumber(L, lent->e->distance);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.GetDistance");
return 1;
}
static int Entity_SetDistance(lua_State *L) {
lent_t *lent;
float distance;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.SetDistance");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetDistance - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 18:33:23 +00:00
}
distance = (float)luaL_checknumber(L, 2);
lent->e->distance = distance;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.SetDistance");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetEnemy(lua_State *L) {
lent_t *lent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.GetEnemy");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetEnemy - entity NULL");
lua_pushnil(L);
return 1;
}
Lua_PushEntity(L, lent->e->enemy);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.GetEnemy");
return 1;
}
static int Entity_SetEnemy(lua_State *L) {
lent_t *lent;
lent_t *enemy;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.SetEnemy");
lent = Lua_GetEntity(L, 1);
2013-04-12 23:34:37 +00:00
if(lent == NULL || lent->e == NULL) {
2013-04-13 18:33:23 +00:00
LUA_DEBUG("ERROR - entity.SetEnemy - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-12 23:34:37 +00:00
}
2013-04-13 18:33:23 +00:00
if(lua_isnil(L, 2)) {
lent->e->enemy = NULL;
} else {
enemy = Lua_GetEntity(L, 2);
2013-04-13 18:33:23 +00:00
if(enemy == NULL || enemy->e == NULL) {
lent->e->enemy = NULL;
} else {
lent->e->enemy = enemy->e;
}
}
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.SetEnemy");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetEventTime(lua_State *L) {
lent_t *lent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.GetEventTime");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetEventTime - entity NULL");
lua_pushinteger(L, 0);
return 1;
}
lua_pushinteger(L, lent->e->eventTime);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.GetEventTime");
return 1;
}
static int Entity_SetEventTime(lua_State *L) {
lent_t *lent;
int eTime;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.SetEventTime");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetEventTime - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 18:33:23 +00:00
}
eTime = (int)luaL_checknumber(L, 2);
lent->e->eventTime = eTime;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.SetEventTime");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetFalsename(lua_State *L) {
lent_t *lent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.GetFalsename");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
lua_pushnil(L);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("ERROR - entity.GetFalsename - entity NULL");
return 1;
} else {
lua_pushstring(L, lent->e->falsename);
2013-04-13 18:33:23 +00:00
}
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.GetFalsename");
return 1;
}
static int Entity_SetFalsename(lua_State *L) {
lent_t *lent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.SetFalsename");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetFalsename - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 18:33:23 +00:00
}
lent->e->falsename = (char *)luaL_checkstring(L, 2);
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.SetFalsename");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetTruename(lua_State *L) {
lent_t *lent;
2013-04-13 18:33:23 +00:00
LUA_DEBUG("BEGIN - entity.GetTruename");
lent = Lua_GetEntity(L, 1);
2013-04-13 18:33:23 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetTruename - entity NULL");
lua_pushnil(L);
2013-04-13 18:33:23 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->truename);
2013-04-13 18:33:23 +00:00
}
2013-04-13 18:33:23 +00:00
LUA_DEBUG("END - entity.GetTruename");
return 1;
}
static int Entity_SetTruename(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetTruename");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetTruename - entiy NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->truename = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetTruename");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_SetTargetName(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetTargetName");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetTargetName - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->targetname = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetTargetName");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetFalsetarget(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetFalsetarget");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetFalsetarget - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->falsetarget);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetFalsetarget");
return 1;
}
static int Entity_SetFalsetarget(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetFalsetarget");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetFalsetarget - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->falsetarget = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetFalsetarget");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetTruetarget(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetTruetarget");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetTruetarget - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->truetarget);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetTruetarget");
return 1;
}
static int Entity_SetTruetarget(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetTruetarget");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetTruetarget - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->truetarget = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetTruetarget");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetFlags(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetFlags");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetFlags - entity NULL");
lua_pushinteger(L, 0);
return 1;
}
lua_pushinteger(L, lent->e->flags);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetFlags");
return 1;
}
static int Entity_SetFlags(lua_State *L) {
lent_t *lent;
int flags;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetFlags");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetFlags - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
flags = (int)luaL_checknumber(L, 2);
lent->e->flags = flags;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetFlags");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetFreeAfterEvent(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetFreeAfterEvent");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetFreeAfterEvent - entity NULL");
lua_pushboolean(L, 0);
return 1;
}
lua_pushboolean(L, (int)lent->e->freeAfterEvent);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetFreeAfterEvent");
return 1;
}
static int Entity_SetFreeAfterEvent(lua_State *L) {
lent_t *lent;
qboolean b;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetFreeAfterEvent");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetFreeAfterEvent - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
b = (qboolean)lua_toboolean(L, 2);
lent->e->freeAfterEvent = b;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetFreeAfterEvent");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetFreetime(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetFreetime");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetFreetime - entity NULL");
lua_pushinteger(L, 0);
return 1;
}
lua_pushinteger(L, lent->e->freetime);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetFreetime");
return 1;
}
static int Entity_GetGreensound(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetGreensound");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetGreensound - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->greensound);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetGreensound");
return 1;
}
static int Entity_SetGreensound(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetGreensound");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetGreensound - entity NLL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->greensound = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetGreensound");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetHealth(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetHealth");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetHealth - entity NULL");
lua_pushinteger(L, 0);
return 1;
}
lua_pushinteger(L, lent->e->health);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetHealth");
return 1;
}
static int Entity_SetHealth(lua_State *L) {
lent_t *lent;
int health;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetHealth");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetHealth - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
health = (int)luaL_checknumber(L, 2);
lent->e->health = health;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetHealth");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetInUse(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetInUse");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetInUse - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
}
lua_pushboolean(L, (int)lent->e->inuse);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetInUse");
return 1;
}
static int Entity_GetLastEnemy(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetLastEnemy");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetLastEnemy - entity NULL");
lua_pushnil(L);
return 1;
}
2013-04-13 20:09:41 +00:00
if(!lent->e->lastEnemy) {
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
} else {
Lua_PushEntity(L, lent->e->lastEnemy);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetLastEnemy");
return 1;
}
static int Entity_SetLastEnemy(lua_State *L) {
lent_t *lent;
lent_t *lastEnemy;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetLastEnemy");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetLastEnemy - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lastEnemy = Lua_GetEntity(L, 2);
2013-04-13 20:09:41 +00:00
if(lastEnemy == NULL || lastEnemy->e == NULL) {
lent->e->lastEnemy = NULL;
} else {
lent->e->lastEnemy = lastEnemy->e;
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetLastEnemy");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetLuaDie(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetLuaDie");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetLuaDie - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->luaDie);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetLuaDie");
return 1;
}
static int Entity_SetLuaDie(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetLuaDie");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetLuaDie - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->luaDie = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetLuaDie");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetLuaEntity(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetLuaEntity");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetLuaEntity - entity NULL");
lua_pushboolean(L, 0);
return 1;
}
lua_pushboolean(L, (int)lent->e->luaEntity);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetLuaEntity");
return 1;
}
static int Entity_GetLuaFree(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetLuaFree");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetLuaFree - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->luaFree);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetLuaFree");
return 1;
}
static int Entity_SetLuaFree(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetLuaFree");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetLuaFree - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->luaFree = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetLuaFree");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetLuaHurt(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetLuaHurt");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetLuaHurt - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->luaHurt);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetLuaHurt");
return 1;
}
static int Entity_SetLuaHurt(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetLuaHurt");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetLuaHurt - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->luaHurt = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetLuaHurt");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetLuaReached(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetLuaReached");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetLuaReached - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->luaReached);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetLuaReached");
return 1;
}
static int Entity_SetLuaReached(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetLuaReached");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetLuaReached - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->luaReached = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetLuaReached");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetLuaReachedAngular(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetLuaReachedAngular");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetLuaReachedAngular - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->luaReachedAngular);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetLuaReachedAngular");
return 1;
}
static int Entity_SetLuaReachedAngular(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetLuaReachedAngular");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetLuaReachedAngular - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->luaReachedAngular = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetLuaReachedAngular");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetLuaSpawn(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetLuaSpawn");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetLuaSpawn - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->luaSpawn);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetLuaSpawn");
return 1;
}
static int Entity_SetLuaSpawn(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetLuaSpawn");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetLuaSpawn - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->luaSpawn = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetLuaSpawn");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetLuaThink(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetLuaThink");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetLuaThink - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->luaThink);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetLuaThink");
return 1;
}
static int Entity_SetLuaThink(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetLuaThink");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetLuaThink - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->luaThink = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetLuaThink");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetLuaTouch(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetLuaTouch");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetLuaTouch - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->luaTouch);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetLuaTouch");
return 1;
}
static int Entity_SetLuaTouch(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetLuaTouch");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetLuaTouch - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->luaTouch = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetLuaTouch");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetLuaTrigger(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetLuaTrigger");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetLuaTrigger - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->luaTrigger);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetLuaTrigger");
return 1;
}
static int Entity_SetLuaTrigger(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetLuaTrigger");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetLuaTrigger - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->luaTrigger = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetLuaTrigger");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetLuaUse(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetLuaUse");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetLuaUse - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->luaUse);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetLuaUse");
return 1;
}
static int Entity_SetLuaUse(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetLuaUse");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetLuaUse - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->luaUse = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetLuaUse");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetMessage(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetMessage");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetMessage - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->message);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetMessage");
return 1;
}
static int Entity_SetMessage(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetMessage");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetMessage - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->message = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetMessage");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetMethodOfDeath(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetMethodOfDeath");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetMethodOfDeath - entity NULL");
lua_pushinteger(L, 0);
return 1;
}
lua_pushinteger(L, lent->e->methodOfDeath);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetMethodOfDeath");
return 1;
}
static int Entity_SetMethodOfDeath(lua_State *L) {
lent_t *lent;
int mod;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetMethodOfDeath");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetMethodOfDeath - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
mod = (int)luaL_checknumber(L, 2);
lent->e->methodOfDeath = mod;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetMethodOfDeath");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetModel(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetModel");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetModel - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->model);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetModel");
return 1;
}
static int Entity_SetModel(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetMode");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetMode - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->model = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetMode");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetModel2(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetModel2");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetModel2 - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->model2);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetModel2");
return 1;
}
static int Entity_SetModel2(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetModel2");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetModel2 - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->model2 = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetModel2");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetMovedir(lua_State *L) {
lent_t *lent;
vec3_t null = { 0, 0, 0 };
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetMovedir");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetMovedir - entity NULL");
Lua_PushVector(L, null);
return 1;
}
Lua_PushVector(L, lent->e->movedir);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetMovedir");
return 1;
}
static int Entity_SetMovedir(lua_State *L) {
lent_t *lent;
vec_t *dir;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetMovedir");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetMovedir - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
dir = Lua_GetVector(L, 2);
VectorCopy(dir, lent->e->movedir);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetMovedir");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetMoverstate(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetMoverstate");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetMoverstate - entity NULL");
lua_pushinteger(L, -1);
return 1;
}
lua_pushinteger(L, (int)lent->e->moverState);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetMoverstate");
return 1;
}
static int Entity_SetMoverstate(lua_State *L) {
lent_t *lent;
moverState_t m;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetMoverstate");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetMoverstate - entiy NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
m = (moverState_t)luaL_checknumber(L, 2);
lent->e->moverState = m;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetMoverstate");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetN00bCount(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetN00bCount");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetN00bCount - entity NULL");
lua_pushinteger(L, 0);
return 1;
}
lua_pushinteger(L, lent->e->n00bCount);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetN00bCount");
return 1;
}
static int Entity_SetN00bCount(lua_State *L) {
lent_t *lent;
int cnt;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetN00bCount");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetN00bCount - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
cnt = (int)luaL_checknumber(L, 2);
lent->e->n00bCount = cnt;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetN00bCount");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetWait(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetWait");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetWait - entity NULL");
lua_pushinteger(L, 0);
return 1;
}
lua_pushinteger(L, lent->e->wait);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetWait");
return 1;
}
static int Entity_SetWait(lua_State *L) {
lent_t *lent;
int wait;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetWait");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetWait - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
wait = (int)luaL_checknumber(L, 2);
lent->e->wait = wait;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetWait");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetNeverFree(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetNeverFree");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetNeverFree - entity NULL");
lua_pushboolean(L, 0);
return 1;
}
lua_pushboolean(L, (int)lent->e->neverFree);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetNeverFree");
return 1;
}
static int Entity_SetNeverFree(lua_State *L) {
lent_t *lent;
qboolean b;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetNeverFree");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetNeverFree - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
b = (qboolean)lua_toboolean(L, 2);
lent->e->neverFree = b;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetNeverFree");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetNexthink(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetNexthink");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetNexthink - entity NULL");
lua_pushinteger(L, -1);
return 1;
}
lua_pushinteger(L, lent->e->nextthink);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetNexthink");
return 1;
}
static int Entity_SetNexthink(lua_State *L) {
lent_t *lent;
int next;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetNexthink");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetNexthink - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
next = (int)luaL_checknumber(L, 2);
lent->e->nextthink = next;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetNexthink");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetNextTrain(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetNextTrain");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetNextTrain - entity NULL");
lua_pushnil(L);
return 1;
}
2013-04-13 20:09:41 +00:00
if(lent->e->nextTrain == NULL) {
lua_pushnil(L);
} else {
Lua_PushEntity(L, lent->e->nextTrain);
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetNextTrain");
return 1;
}
static int Entity_SetNextTrain(lua_State *L) {
lent_t *lent;
lent_t *next;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetNextTrain");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetNextTrain - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
next = Lua_GetEntity(L, 2);
2013-04-13 20:09:41 +00:00
if(next == NULL || next->e == NULL) {
lent->e->nextTrain = NULL;
2013-04-13 20:09:41 +00:00
} else {
lent->e->nextTrain = next->e;
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetNextTrain");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetNoiseIndex(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetNoiseIndex");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetNoiseIndex - entity NULL");
lua_pushinteger(L, -1);
return 1;
}
lua_pushinteger(L, lent->e->noise_index);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetNoiseIndex");
return 1;
}
static int Entity_SetNoiseIndex(lua_State *L) {
lent_t *lent;
int idx;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetNoiseIndex");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetNoiseIndex - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
idx = (int)luaL_checknumber(L, 2);
lent->e->noise_index = idx;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetNoiseIndex");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetOldHealth(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetOldHealth");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetOldHealth - entity NULL");
lua_pushinteger(L, 0);
return 1;
}
lua_pushinteger(L, lent->e->old_health);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetOldHealth");
return 1;
}
static int Entity_SetOldHealth(lua_State *L) {
lent_t *lent;
int old_health;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetOldHealth");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetOldHealth - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
old_health = (int)luaL_checknumber(L, 2);
lent->e->old_health = old_health;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetOldHealth");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetPaintarget(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetPaintarget");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetPaintarget - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->paintarget);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetPaintarget");
return 1;
}
static int Entity_SetPaintarget(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetPaintarget");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetPaintarget - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->paintarget = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetPaintarget");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetPainDebounceTime(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetPainDebounceTime");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetPainDebounceTime - entity NULL");
lua_pushinteger(L, 0);
return 1;
}
lua_pushinteger(L, lent->e->pain_debounce_time);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetPainDebounceTime");
return 1;
}
static int Entity_SetPainDebounceTime(lua_State *L) {
lent_t *lent;
int pdb;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetPainDebounceTime");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetPainDebounceTime - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
pdb = (int)luaL_checknumber(L, 2);
lent->e->pain_debounce_time = pdb;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetPainDebounceTime");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetParent(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetParent");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetParent - entity NULL");
lua_pushnil(L);
return 1;
}
2013-04-13 20:09:41 +00:00
if(lent->e->parent == NULL) {
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
} else {
Lua_PushEntity(L, lent->e->parent);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetParent");
return 1;
}
static int Entity_SetParent(lua_State *L) {
lent_t *lent;
lent_t *parent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetParent");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetParent - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
parent = Lua_GetEntity(L, 2);
2013-04-13 20:09:41 +00:00
if(parent == NULL || parent->e == NULL) {
lent->e->parent = NULL;
2013-04-13 20:09:41 +00:00
} else {
lent->e->parent = parent->e;
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetParent");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetPhysicsBounce(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetPhysicsBounce");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetPhysicsBounce - entity NULL");
lua_pushnumber(L, 0);
return 1;
}
lua_pushnumber(L, lent->e->physicsBounce);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetPhysicsBounce");
return 1;
}
static int Entity_SetPhysicsBounce(lua_State *L) {
lent_t *lent;
float pb;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetPhysicsBounce");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetPhysicsBounce - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
pb = (float)luaL_checknumber(L, 2);
lent->e->physicsBounce = pb;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetPhysicsBounce");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetPhysicsObject(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetPhysicsObject");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetPhysicsObject - entity NULL");
lua_pushboolean(L, 0);
return 1;
}
lua_pushboolean(L, (int)lent->e->physicsObject);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetPhysicsObject");
return 1;
}
static int Entity_SetPhysicsObject(lua_State *L) {
lent_t *lent;
qboolean b;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetPhysicsObject");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetPhysicsObject - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
b = (qboolean)lua_toboolean(L, 2);
lent->e->physicsObject = b;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetPhysicsObject");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetPos1(lua_State *L) {
lent_t *lent;
vec3_t null = { 0, 0, 0 };
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetPos1");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetPos1 - entity NULL");
Lua_PushVector(L, null);
return 1;
}
Lua_PushVector(L, lent->e->pos1);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetPos1");
return 1;
}
static int Entity_SetPos1(lua_State *L) {
lent_t *lent;
vec_t *vec;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetPos1");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetPos1 - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
vec = Lua_GetVector(L, 2);
VectorCopy(vec, lent->e->pos1);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetPos1");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetPos2(lua_State *L) {
lent_t *lent;
vec3_t null = { 0, 0, 0 };
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetPos2");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetPos2 - entity NULL");
Lua_PushVector(L, null);
return 1;
}
Lua_PushVector(L, lent->e->pos2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetPos2");
return 1;
}
static int Entity_SetPos2(lua_State *L) {
lent_t *lent;
vec_t *vec;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetPos2");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetPos2 - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
vec = Lua_GetVector(L, 2);
VectorCopy(vec, lent->e->pos2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetPos2");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetPrevTrain(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetPrevTrain");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetPrevTrain - entity NULL");
lua_pushnil(L);
return 1;
}
2013-04-13 20:09:41 +00:00
if(lent->e->prevTrain == NULL) {
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
} else {
Lua_PushEntity(L, lent->e->prevTrain);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetPrevTrain");
return 1;
}
static int Entity_SetPrevTrain(lua_State *L) {
lent_t *lent;
lent_t *prev;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetPrevTrain");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetPrevTrain - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
prev = Lua_GetEntity(L, 2);
2013-04-13 20:09:41 +00:00
if(prev == NULL || prev->e == NULL) {
lent->e->prevTrain = NULL;
2013-04-13 20:09:41 +00:00
} else {
lent->e->prevTrain = prev->e;
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetPrevTrain");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetRandom(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetRandom");
lent = Lua_GetEntity(L,1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetRandom - entity NULL");
lua_pushnumber(L, 0);
return 1;
}
lua_pushnumber(L, lent->e->random);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetRandom");
return 1;
}
static int Entity_SetRandom(lua_State *L) {
lent_t *lent;
float rand;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetRandom");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetRandom - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
rand = (float)luaL_checknumber(L, 2);
lent->e->random = rand;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetRandom");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetRedsound(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetRedsound");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetRedsound - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->redsound);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetRedsound");
return 1;
}
static int Entity_SetRedsound(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetRedsound");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetRedsound - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->redsound = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetRedsound");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetSound1To2(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetSound1To2");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetSound1To2 - entity NULL");
lua_pushinteger(L, -1);
return 1;
}
lua_pushinteger(L, lent->e->sound1to2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetSound1To2");
return 1;
}
static int Entity_SetSound1To2(lua_State *L) {
lent_t *lent;
int s1to2;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetSound1To2");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetSound1To2 - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
s1to2 = (int)luaL_checknumber(L, 2);
lent->e->sound1to2 = s1to2;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetSound1To2");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetSound2To1(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetSound2To1");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetSound2To1 - entity NULL");
lua_pushinteger(L, -1);
return 1;
}
lua_pushinteger(L, lent->e->sound2to1);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetSound2To1");
return 1;
}
static int Entity_SetSound2To1(lua_State *L) {
lent_t *lent;
int s2to1;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetSound2To1");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetSound2To1 - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
s2to1 = (int)luaL_checknumber(L, 2);
lent->e->sound2to1 = s2to1;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetSound2To1");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetSoundLoop(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetSoundLoop");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetSoundLoop - entity NULL");
lua_pushinteger(L, -1);
return 1;
}
lua_pushinteger(L, lent->e->soundLoop);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetSoundLoop");
return 1;
}
static int Entity_SetSoundLoop(lua_State *L) {
lent_t *lent;
int sl;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetSoundLoop");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetSoundLoop - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
sl = (int)luaL_checknumber(L, 2);
lent->e->soundLoop = sl;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetSoundLoop");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetSoundPos1(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetSoundPos1");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetSoundPos1 - entity NULL");
lua_pushinteger(L, -1);
return 1;
}
lua_pushinteger(L, lent->e->soundPos1);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetSoundPos1");
return 1;
}
static int Entity_SetSoundPos1(lua_State *L) {
lent_t *lent;
int sp1;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetSoundPos1");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetSoundPos1 - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
sp1 = (int)luaL_checknumber(L, 2);
lent->e->soundPos1 = sp1;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetSoundPos1");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetSoundPos2(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetSoundPos2");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetSoundPos2 - entity NULL");
lua_pushinteger(L, -1);
return 1;
}
lua_pushinteger(L, lent->e->soundPos2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetSoundPos2");
return 1;
}
static int Entity_SetSoundPos2(lua_State *L) {
lent_t *lent;
int sp2;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetSoundPos2");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetSoundPos2 - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
sp2 = (int)luaL_checknumber(L, 2);
lent->e->soundPos2 = sp2;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetSoundPos2");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetSpawnflags(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetSpawnflags");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetSpawnflags - entity NULL");
lua_pushinteger(L, 0);
return 1;
}
lua_pushinteger(L, lent->e->spawnflags);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetSpawnflags");
return 1;
}
static int Entity_SetSpawnflags(lua_State *L) {
lent_t *lent;
int sp;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetSpawnflags");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetSpawnflags - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
sp = (int)luaL_checknumber(L, 2);
lent->e->spawnflags = sp;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetSpawnflags");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetSpeed(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetSpeed");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetSpeed - entity NULL");
lua_pushnumber(L, 0);
return 1;
}
lua_pushnumber(L, lent->e->speed);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetSpeed");
return 1;
}
static int Entity_SetSpeed(lua_State *L) {
lent_t *lent;
float speed;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetSpeed");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetSpeed - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
speed = (float)luaL_checknumber(L, 2);
lent->e->speed = speed;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetSpeed");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetSplashDamage(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetSplashDamage");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetSplashDamage - entity NULL");
lua_pushinteger(L, 0);
return 1;
}
lua_pushinteger(L, lent->e->splashDamage);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetSplashDamage");
return 1;
}
static int Entity_SetSplashDamage(lua_State *L) {
lent_t *lent;
int dmg;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetSplashDamage");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetSplashDamage - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
dmg = (int)luaL_checknumber(L, 2);
lent->e->splashDamage = dmg;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetSplashDamage");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetSplashMethodOfDeath(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetSplashMethodOfDeath");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetSplashMethodOfDeath - entity NULL");
lua_pushinteger(L, 0);
return 1;
}
lua_pushinteger(L, lent->e->splashMethodOfDeath);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetSplashMethodOfDeath");
return 1;
}
static int Entity_SetSplashMethodOfDeath(lua_State *L) {
lent_t *lent;
int mod;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetSplashMethodOfDeath");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetSplashMethodOfDeath - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
mod = (int)luaL_checknumber(L, 2);
lent->e->splashMethodOfDeath = mod;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetSplashMethodOfDeath");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetSplashRadius(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetSplashRadius");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetSplashRadius - entity NULL");
lua_pushinteger(L, 0);
return 1;
}
lua_pushinteger(L, lent->e->splashRadius);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetSplashRadius");
return 1;
}
static int Entity_SetSplashRadius(lua_State *L) {
lent_t *lent;
int radius;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetSplashRadius");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetSplashRadius - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
radius = (int)luaL_checknumber(L, 2);
lent->e->splashRadius = radius;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetSplashRadius");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetSwapname(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetSwapname");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetSwapname - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->swapname);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetSwapname");
return 1;
}
static int Entity_SetSwapname(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetSwapname");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetSwapname - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->swapname = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetSwapname");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetTakedamage(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetTakedamage");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetTakedamage - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
}
lua_pushboolean(L, (int)lent->e->takedamage);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetTakedamage");
return 1;
}
static int Entity_SetTakedamage(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetTakedamage");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetTakedamage - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->takedamage = (qboolean)lua_toboolean(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetTakedamage");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_SetTarget(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetTarget");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetTarget - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->target = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetTarget");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetTargetname2(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetTarget");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("BEGIN - entity.SetTarget");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->targetname2);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetTarget");
return 1;
}
static int Entity_SetTargetname2(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetTargetname2");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetTargetname2 - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->targetname2 = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetTargetname2");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetTargetShaderName(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetTargetShaderName");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetTargetShaderName - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->targetShaderName);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetTargetShaderName");
return 1;
}
static int Entity_SetTargetShaderName(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetTargetShaderName");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetTargetShaderName - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->targetShaderName = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetTargetShaderName");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetTargetShaderNewName(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetTargetShaderNewName");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetTargetShaderNewName - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->targetShaderNewName);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetTargetShaderNewName");
return 1;
}
static int Entity_SetTargetShaderNewName(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetTargetShaderNewName");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetTargetShaderNewName - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->targetShaderNewName = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetTargetShaderNewName");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetTargetEnt(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetTargetEnt");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetTargetEnt - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
Lua_PushEntity(L, lent->e->target_ent);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetTargetEnt");
return 1;
}
static int Entity_SetTargetEnt(lua_State *L) {
lent_t *lent;
lent_t *targ;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetTargetEnt");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetTargetEnt - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
targ = Lua_GetEntity(L, 2);
2013-04-13 20:09:41 +00:00
if(targ == NULL || targ->e == NULL) {
lent->e->target_ent = NULL;
} else {
lent->e->target_ent = targ->e;
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetTargetEnt");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetTeam(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetTeam");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetTeam - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
lua_pushstring(L, lent->e->team);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetTeam");
return 1;
}
static int Entity_SetTeam(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetTeam");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetTeam - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
lent->e->team = (char *)luaL_checkstring(L, 2);
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetTeam");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetTeamchain(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetTeamchain");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetTeamchain - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
Lua_PushEntity(L, lent->e->teamchain);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetTeamchain");
return 1;
}
static int Entity_SetTeamchain(lua_State *L) {
lent_t *lent;
lent_t *team;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetTeamchain");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetTeamchain - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
team = Lua_GetEntity(L, 2);
2013-04-13 20:09:41 +00:00
if(team == NULL || team->e == NULL) {
lent->e->teamchain = NULL;
} else {
lent->e->teamchain = team->e;
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetTeamchain");
lua_pushboolean(L, qtrue);
return 1;
}
static int Entity_GetTeammaster(lua_State *L) {
lent_t *lent;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.GetTeammaster");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.GetTeammaster - entity NULL");
lua_pushnil(L);
2013-04-13 20:09:41 +00:00
return 1;
} else {
Lua_PushEntity(L, lent->e->teammaster);
2013-04-13 20:09:41 +00:00
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.GetTeammaster");
return 1;
}
static int Entity_SetTeammaster(lua_State *L) {
lent_t *lent;
lent_t *team;
2013-04-13 20:09:41 +00:00
LUA_DEBUG("BEGIN - entity.SetTeammaster");
lent = Lua_GetEntity(L, 1);
2013-04-13 20:09:41 +00:00
if(lent == NULL || lent->e == NULL) {
LUA_DEBUG("ERROR - entity.SetTeammaster - entity NULL");
lua_pushboolean(L, qfalse);
return 1;
2013-04-13 20:09:41 +00:00
}
team = Lua_GetEntity(L, 2);
2013-04-13 20:09:41 +00:00
if(team == NULL || team->e == NULL) {
lent->e->teammaster = NULL;
} else {
lent->e->teammaster = team->e;
}
2013-04-13 20:09:41 +00:00
LUA_DEBUG("END - entity.SetTeammaster");
lua_pushboolean(L, qtrue);
return 1;
}
static const luaL_Reg Entity_ctor[] = {
2013-05-08 23:59:07 +00:00
{ "Spawn", Entity_Spawn },
{ "Find", Entity_Find },
{ "FindMMB", Entity_FindMMB },
{ "FindNumber", Entity_FindNumber },
{ "FindBModel", Entity_FindBModel },
{ "GetTarget", Entity_GetTarget },
{ "MMBRefit", Entity_MMBRefit },
{ "CallSpawn", Entity_CallSpawn },
{ "DelayedCallSpawn", Entity_DelayedCallSpawn },
{ "Remove", Entity_Remove },
{ "RemoveUnnamedSpawns", Entity_RemoveUnnamedSpawns },
{ "RemoveSpawns", Entity_RemoveSpawns },
{ "RemoveType", Entity_RemoveType },
{ "Use", Entity_Use },
{ NULL, NULL }
};
static const luaL_Reg Entity_meta[] = {
2013-05-08 23:59:07 +00:00
{ "__gc", Entity_GC },
{ "__tostring", Entity_ToString },
{ "GetNumber", Entity_GetNumber },
{ "IsClient", Entity_IsClient },
{ "GetClientname", Entity_GetClientName },
{ "Print", Entity_Print },
{ "CenterPrint", Entity_CenterPrint },
2013-05-08 23:59:07 +00:00
{ "GetClassname", Entity_GetClassName }, // args: none; return: string
{ "SetClassname", Entity_SetClassName }, // args: string; return: nothing
{ "GetTargetname", Entity_GetTargetName }, // args: none; return: string
{ "SetTargetname", Entity_SetTargetName }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "Rotate", Entity_Rotate },
2013-05-08 23:59:07 +00:00
{ "IsRocket", Entity_IsRocket },
{ "IsGrenade", Entity_IsGrenade },
{ "Teleport", Entity_Teleport },
{ "SetKeyValue", Entity_SetKeyValue },
{ "GetOrigin", Entity_GetOrigin },
{ "SetupTrigger", Entity_SetupTrigger },
2013-05-08 23:59:07 +00:00
{ "Lock", Entity_Lock },
{ "Unlock", Entity_Unlock },
{ "IsLocked", Entity_IsLocked },
2013-05-08 23:59:07 +00:00
{ "GetParm", Entity_GetParm },
{ "SetParm", Entity_SetParm },
2013-05-08 23:59:07 +00:00
{ "GetActivator", Entity_GetActivator }, // args: none; return: ent
{ "SetActivator", Entity_SetActivator }, // args: ent; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetAngle", Entity_GetAngle }, // args: none; return: float
{ "SetAngle", Entity_SetAngle }, // args: float; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetApos1", Entity_GetApos1 }, // args: none; return: vec
{ "GetApos2", Entity_GetApos2 }, // args: none; return: vec
2013-05-08 23:59:07 +00:00
{ "SetApos1", Entity_SetApos1 }, // args: vec; return: nothing
{ "SetApos2", Entity_SetApos2 }, // args: vec; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetBluename", Entity_GetBluename }, // args: none; return: string
{ "SetBluename", Entity_SetBluename }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetBluesound", Entity_GetBluesound }, // args: none; return: string
{ "SetBluesound", Entity_SetBluesound }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetBooleanstate", Entity_GetBooleanstate }, // args: none; return: bool
{ "SetBooleanstate", Entity_SetBooleanstate }, // args: bool; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetClipmask", Entity_GetClipmask }, // args: none; return: int
{ "SetClipmask", Entity_SetClipmask }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetCount", Entity_GetCount }, // args: none; return: int
{ "SetCount", Entity_SetCount }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetDamage", Entity_GetDamage }, // args: none; return: int
{ "SetDamage", Entity_SetDamage }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetDistance", Entity_GetDistance }, // args: none; return: float
{ "SetDistance", Entity_SetDistance }, // args: float; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetEnemy", Entity_GetEnemy }, // args: none; return: ent
{ "SetEnemy", Entity_SetEnemy }, // args: ent; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetEventTime", Entity_GetEventTime }, // args: none; return: int
{ "SetEventTime", Entity_SetEventTime }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetFalsename", Entity_GetFalsename }, // args: none; return: string
{ "SetFalsename", Entity_SetFalsename }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetTruename", Entity_GetTruename }, // args: none; return: string
{ "SetTruename", Entity_SetTruename }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetFalsetarget", Entity_GetFalsetarget }, // args: none; return: string
{ "SetFalsetarget", Entity_SetFalsetarget }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetTruetarget", Entity_GetTruetarget }, // args: none; return: string
{ "SetTruetarget", Entity_SetTruetarget }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetFlags", Entity_GetFlags }, // args: none; return: int
{ "SetFlags", Entity_SetFlags }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetFreeAfterEvent", Entity_GetFreeAfterEvent }, // args: none; return: bool
{ "SetFreeAfterEvent", Entity_SetFreeAfterEvent }, // args: bool; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetFreetime", Entity_GetFreetime }, // args: none; return: int
2013-05-08 23:59:07 +00:00
{ "GetGreensound", Entity_GetGreensound }, // args: none; return: string
{ "SetGreensound", Entity_SetGreensound }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetHealth", Entity_GetHealth }, // args: none; return: int
{ "SetHealth", Entity_SetHealth }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetInUse", Entity_GetInUse }, // args: none; return: bool
2013-05-08 23:59:07 +00:00
{ "GetLastEnemy", Entity_GetLastEnemy }, // args: none; return: ent
{ "SetLastEnemy", Entity_SetLastEnemy }, // args: ent; return: nothing
{ "GetLuaDie", Entity_GetLuaDie }, // args: none; return: string
{ "SetLuaDie", Entity_SetLuaDie }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetLuaEntity", Entity_GetLuaEntity }, // args: none; return: bool
{ "GetLuaFree", Entity_GetLuaFree }, // args: none; return: string
{ "SetLuaFree", Entity_SetLuaFree }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetLuaHurt", Entity_GetLuaHurt }, // args: none; return: string
{ "SetLuaHurt", Entity_SetLuaHurt }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetLuaReached", Entity_GetLuaReached }, // args: none; return: string
{ "SetLuaReached", Entity_SetLuaReached }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetLuaReachedAngular", Entity_GetLuaReachedAngular }, // args: none; return: string
{ "SetLuaReachedAngular", Entity_SetLuaReachedAngular }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetLuaSpawn", Entity_GetLuaSpawn }, // args: none; return: string
{ "SetLuaSpawn", Entity_SetLuaSpawn }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetLuaThink", Entity_GetLuaThink }, // args: none; return: string
{ "SetLuaThink", Entity_SetLuaThink }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetLuaTouch", Entity_GetLuaTouch }, // args: none; return: string
{ "SetLuaTouch", Entity_SetLuaTouch }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetLuaTrigger", Entity_GetLuaTrigger }, // args: none; return: string
{ "SetLuaTrigger", Entity_SetLuaTrigger }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetLuaUse", Entity_GetLuaUse }, // args: none; return: string
{ "SetLuaUse", Entity_SetLuaUse }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetMessage", Entity_GetMessage }, // args: none; return: string
{ "SetMessage", Entity_SetMessage }, // args: string; return: nothing
{ "GetMethodOfDeath", Entity_GetMethodOfDeath }, // args: none; return: int
{ "SetMethodOfDeath", Entity_SetMethodOfDeath }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetModel", Entity_GetModel }, // args: none; return: string
{ "SetModel", Entity_SetModel }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetModel2", Entity_GetModel2 }, // args: none; return: string
{ "SetModel2", Entity_SetModel2 }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetMovedir", Entity_GetMovedir }, // args: none; return: vec
{ "SetMovedir", Entity_SetMovedir }, // args: vec; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetMoverstate", Entity_GetMoverstate }, // args: none; return: int
{ "SetMoverstate", Entity_SetMoverstate }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetN00bCount", Entity_GetN00bCount }, // args: none; return: int
{ "SetN00bCount", Entity_SetN00bCount }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetWait", Entity_GetWait }, // args: none; return: int
{ "SetWait", Entity_SetWait }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetNeverFree", Entity_GetNeverFree }, // args: none; return: bool
{ "SetNeverFree", Entity_SetNeverFree }, // args: bool; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetNextthink", Entity_GetNexthink }, // args: none; return: int
{ "SetNextthink", Entity_SetNexthink }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetNextTrain", Entity_GetNextTrain }, // args: none; return: ent
{ "SetNextTrain", Entity_SetNextTrain }, // args: ent; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetNoiseIndex", Entity_GetNoiseIndex }, // args: none; return: int
{ "SetNoiseIndex", Entity_SetNoiseIndex }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetOldHealth", Entity_GetOldHealth }, // args: none; return: int
{ "SetOldHealth", Entity_SetOldHealth }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetPaintarget", Entity_GetPaintarget }, // args: none; return: string
{ "SetPaintarget", Entity_SetPaintarget }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetPainDebounceTime", Entity_GetPainDebounceTime }, // args: none; return: int
{ "SetPainDebounceTime", Entity_SetPainDebounceTime }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetParent", Entity_GetParent }, // args: none; return: ent
{ "SetParent", Entity_SetParent }, // args: ent; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetPhysicsBounce", Entity_GetPhysicsBounce }, // args: none; return: float
{ "SetPhysicsBounce", Entity_SetPhysicsBounce }, // args: float; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetPhysicsObject", Entity_GetPhysicsObject }, // args: none; return: bool
{ "SetPhysicsObject", Entity_SetPhysicsObject }, // args: bool; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetPos1", Entity_GetPos1 }, // args: none; return: vec
{ "SetPos1", Entity_SetPos1 }, // args: vec; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetPos2", Entity_GetPos2 }, // args: none; return: vec
{ "SetPos2", Entity_SetPos2 }, // args: vec; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetPrevTrain", Entity_GetPrevTrain }, // args: none; return: ent
{ "SetPrevTrain", Entity_SetPrevTrain }, // args: ent; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetRandom", Entity_GetRandom }, // args: none; return: float
{ "SetRandom", Entity_SetRandom }, // args: float; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetRedsound", Entity_GetRedsound }, // args: none; return: string
{ "SetRedsound", Entity_SetRedsound }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetSound1To2", Entity_GetSound1To2 }, // args: none; return: int
{ "SetSound1To2", Entity_SetSound1To2 }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetSound2To1", Entity_GetSound2To1 }, // args: none; return: int
{ "SetSound2To1", Entity_SetSound2To1 }, // args: int return: nothing
2013-05-08 23:59:07 +00:00
{ "GetSoundLoop", Entity_GetSoundLoop }, // args: none; return: int
{ "SetSoundLoop", Entity_SetSoundLoop }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetSoundPos1", Entity_GetSoundPos1 }, // args: none; return: int
{ "SetSoundPos1", Entity_SetSoundPos1 }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetSoundPos2", Entity_GetSoundPos2 }, // args: none; return: int
{ "SetSoundPos2", Entity_SetSoundPos2 }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetSpawnflags", Entity_GetSpawnflags }, // args: none; return: int
{ "SetSpawnflags", Entity_SetSpawnflags }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetSpeed", Entity_GetSpeed }, // args: none; return: float
{ "SetSpeed", Entity_SetSpeed }, // args: float; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetSplashDamage", Entity_GetSplashDamage }, // args: none; return: int
{ "SetSplashDamage", Entity_SetSplashDamage }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetSplashMethodOfDeath", Entity_GetSplashMethodOfDeath }, // args: none; return: int
{ "SetSplashMethodOfDeath", Entity_SetSplashMethodOfDeath }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetSplashRadius", Entity_GetSplashRadius }, // args: none; return: int
{ "SetSplashRadius", Entity_SetSplashRadius }, // args: int; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetSwapname", Entity_GetSwapname }, // args: none; return: string
{ "SetSwapname", Entity_SetSwapname }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetTakedamage", Entity_GetTakedamage }, // args: none; return: bool
{ "SetTakedamage", Entity_SetTakedamage }, // args: bool; return: nothing
2013-05-08 23:59:07 +00:00
{ "SetTarget", Entity_SetTarget }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetTargetname2", Entity_GetTargetname2 }, // args: none; return: string
{ "SetTargetname2", Entity_SetTargetname2 }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetTargetShaderName", Entity_GetTargetShaderName }, // args: none; return: string
{ "SetTargetShaderName", Entity_SetTargetShaderName }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetTargetShaderNewName", Entity_GetTargetShaderNewName }, // args: none; return: string
{ "SetTargetShaderNewName", Entity_SetTargetShaderNewName }, // args: string; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetTargetEnt", Entity_GetTargetEnt }, // args: none; return: ent
{ "SetTargetEnt", Entity_SetTargetEnt }, // args: ent; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetTeam", Entity_GetTeam }, // args: none; return: string
{ "SetTeam", Entity_SetTeam }, // args: string; return nothing
2013-05-08 23:59:07 +00:00
{ "GetTeamchain", Entity_GetTeamchain }, // args: none; return: ent
{ "SetTeamchain", Entity_SetTeamchain }, // args: ent; return: nothing
2013-05-08 23:59:07 +00:00
{ "GetTeammaster", Entity_GetTeammaster },
{ "SetTeammaster", Entity_SetTeammaster },
2013-05-08 23:59:07 +00:00
{ NULL, NULL }
};
/*void dummy(gentity_t *ent) {
ent->timestamp;
}*/
int Luaopen_Entity(lua_State * L)
{
luaL_newmetatable(L, "game.entity");
lua_pushstring(L, "__index");
lua_pushvalue(L, -2);
lua_settable(L, -3);
luaL_register(L, NULL, Entity_meta);
luaL_register(L, "entity", Entity_ctor);
return 1;
}
void Lua_PushEntity(lua_State * L, gentity_t * ent)
{
lent_t *lent;
if(!ent || !ent->inuse)
lua_pushnil(L);
else {
lent = (lent_t *)lua_newuserdata(L, sizeof(lent_t));
luaL_getmetatable(L, "game.entity");
lua_setmetatable(L, -2);
lent->e = ent;
}
}
lent_t *Lua_GetEntity(lua_State * L, int argNum)
{
void *ud;
ud = luaL_checkudata(L, argNum, "game.entity");
luaL_argcheck(L, ud != NULL, argNum, "\'entity\' expected");
return (lent_t *) ud;
}
#endif