hedgewars/uScript.pas
changeset 12932 e0da398805b6
parent 12931 c27dd59a3ffe
child 12939 0112ef349ddc
equal deleted inserted replaced
12931:c27dd59a3ffe 12932:e0da398805b6
   767         else lua_pushnil(L);
   767         else lua_pushnil(L);
   768        end
   768        end
   769     else
   769     else
   770         lua_pushnil(L);
   770         lua_pushnil(L);
   771     lc_spawnutilitycrate := 1;
   771     lc_spawnutilitycrate := 1;
       
   772 end;
       
   773 
       
   774 function lc_spawnsupplycrate(L: PLua_State): LongInt; Cdecl;
       
   775 var gear: PGear;
       
   776     n, at:LongInt;
       
   777     t:    TCrateType;
       
   778 begin
       
   779     if CheckAndFetchParamCount(L, 3, 4, 'SpawnSupplyCrate', 'x, y, content [, amount]', n) then
       
   780         begin
       
   781         // Get crate type (ammo or utility)
       
   782         at:= Trunc(lua_tonumber(L, 3));
       
   783         if (Ammoz[TAmmoType(at)].Ammo.Propz and ammoprop_Utility) <> 0 then
       
   784             t:= UtilityCrate
       
   785         else
       
   786             t:= AmmoCrate;
       
   787         if n = 3 then
       
   788              gear := SpawnCustomCrateAt(Trunc(lua_tonumber(L, 1)), Trunc(lua_tonumber(L, 2)), t, at, 0)
       
   789         else gear := SpawnCustomCrateAt(Trunc(lua_tonumber(L, 1)), Trunc(lua_tonumber(L, 2)), t, at, Trunc(lua_tonumber(L, 4)));
       
   790         if gear <> nil then
       
   791              lua_pushnumber(L, gear^.uid)
       
   792         else lua_pushnil(L);
       
   793         end
       
   794     else
       
   795         lua_pushnil(L);
       
   796     lc_spawnsupplycrate := 1;
   772 end;
   797 end;
   773 
   798 
   774 function lc_addgear(L : Plua_State) : LongInt; Cdecl;
   799 function lc_addgear(L : Plua_State) : LongInt; Cdecl;
   775 var gear : PGear;
   800 var gear : PGear;
   776     x, y, s, t: LongInt;
   801     x, y, s, t: LongInt;
  3620 lua_register(luaState, _P'GetGearValues', @lc_getgearvalues);
  3645 lua_register(luaState, _P'GetGearValues', @lc_getgearvalues);
  3621 lua_register(luaState, _P'SetGearValues', @lc_setgearvalues);
  3646 lua_register(luaState, _P'SetGearValues', @lc_setgearvalues);
  3622 lua_register(luaState, _P'SpawnHealthCrate', @lc_spawnhealthcrate);
  3647 lua_register(luaState, _P'SpawnHealthCrate', @lc_spawnhealthcrate);
  3623 lua_register(luaState, _P'SpawnAmmoCrate', @lc_spawnammocrate);
  3648 lua_register(luaState, _P'SpawnAmmoCrate', @lc_spawnammocrate);
  3624 lua_register(luaState, _P'SpawnUtilityCrate', @lc_spawnutilitycrate);
  3649 lua_register(luaState, _P'SpawnUtilityCrate', @lc_spawnutilitycrate);
       
  3650 lua_register(luaState, _P'SpawnSupplyCrate', @lc_spawnsupplycrate);
  3625 lua_register(luaState, _P'SpawnFakeHealthCrate', @lc_spawnfakehealthcrate);
  3651 lua_register(luaState, _P'SpawnFakeHealthCrate', @lc_spawnfakehealthcrate);
  3626 lua_register(luaState, _P'SpawnFakeAmmoCrate', @lc_spawnfakeammocrate);
  3652 lua_register(luaState, _P'SpawnFakeAmmoCrate', @lc_spawnfakeammocrate);
  3627 lua_register(luaState, _P'SpawnFakeUtilityCrate', @lc_spawnfakeutilitycrate);
  3653 lua_register(luaState, _P'SpawnFakeUtilityCrate', @lc_spawnfakeutilitycrate);
  3628 lua_register(luaState, _P'WriteLnToConsole', @lc_writelntoconsole);
  3654 lua_register(luaState, _P'WriteLnToConsole', @lc_writelntoconsole);
  3629 lua_register(luaState, _P'WriteLnToChat', @lc_writelntochat);
  3655 lua_register(luaState, _P'WriteLnToChat', @lc_writelntochat);