# HG changeset patch # User Henek # Date 1299326822 -3600 # Node ID 304d149bb3ddcbddc9f1b59c607194931ebb5b51 # Parent 20da3c5c7dee9de25b29b32b5d360f5ff9bf67bd added PlaceGirder to lua diff -r 20da3c5c7dee -r 304d149bb3dd hedgewars/uScript.pas --- a/hedgewars/uScript.pas Sat Mar 05 09:34:21 2011 +0300 +++ b/hedgewars/uScript.pas Sat Mar 05 13:07:02 2011 +0100 @@ -61,6 +61,7 @@ uCollisions, uRenderUtils, uTextures, + uLandGraphics, SDLh; var luaState : Plua_State; @@ -1272,6 +1273,18 @@ end; lc_sethoghat:= 0; end; + +function lc_placegirder(L : Plua_State) : LongInt; Cdecl; +begin + if lua_gettop(L) <> 3 then + LuaError('Lua: Wrong number of parameters passed to PlaceGirder!') + else + TryPlaceOnLand( + lua_tointeger(L, 1) - SpritesData[sprAmGirder].Width div 2, + lua_tointeger(L, 2) - SpritesData[sprAmGirder].Height div 2, + sprAmGirder, lua_tointeger(L, 3), true, false); + lc_placegirder:= 0 +end; /////////////////// procedure ScriptPrintStack; @@ -1691,6 +1704,7 @@ lua_register(luaState, 'MapHasBorder', @lc_maphasborder); lua_register(luaState, 'GetHogHat', @lc_gethoghat); lua_register(luaState, 'SetHogHat', @lc_sethoghat); +lua_register(luaState, 'PlaceGirder', @lc_placegirder); ScriptClearStack; // just to be sure stack is empty