diff --git a/src/ai.c b/src/ai.c index 910d3fd..16d4e42 100644 --- a/src/ai.c +++ b/src/ai.c @@ -111,6 +111,8 @@ static int ai_isstopped(lua_State* L); /* Boolean isstopped() */ static int ai_isenemy(lua_State* L); /* boolean isenemy(number). */ static int ai_isally(lua_State* L); /* boolean isally(number). */ static int ai_incombat(lua_State* L); /* boolean incombat([number]) */ +static int ai_haslockon(lua_State* L); /* boolean haslockon() */ + /* Movement. */ static int ai_accel(lua_State* L); /* accel(number); nuimber <= 1. */ static int ai_turn(lua_State* L); /* turn(number); abs(number) <= 1. */ @@ -153,6 +155,7 @@ static const luaL_Reg ai_methods[] = { { "isally", ai_isally }, /* Get's. */ { "incombat", ai_incombat }, + { "haslockon", ai_haslockon }, { "target", ai_gettarget }, { "targetid", ai_gettargetid }, { "rndpilot", ai_getrndpilot }, @@ -652,6 +655,11 @@ static int ai_incombat(lua_State* L) { return 1; } +static int ai_haslockon(lua_State* L) { + lua_pushboolean(L, cur_pilot->lockons > 0); + return 1; +} + /* Accelerate the pilot based on a param. */ static int ai_accel(lua_State* L) { double n;