Skip to content

Commit f4a959e

Browse files
committed
Implement SetGameModeText, RemoveBuildingForPlayer, on clientCall do a print if an event fails to execute. RemoveBuildingForPlayer won't work when called from MySQL threaded callbacks. triggerClientEvent will simply fail to execute.
1 parent 533ee35 commit f4a959e

File tree

3 files changed

+15
-8
lines changed

3 files changed

+15
-8
lines changed

amx/client/client.lua

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -263,6 +263,9 @@ end
263263

264264
-----------------------------
265265
-- Player objects
266+
function RemoveBuildingForPlayer(model, x, y, z, radius)
267+
removeWorldModel(model, radius, x, y, z)
268+
end
266269

267270
function AttachPlayerObjectToPlayer(amxName, objID, attachPlayer, offsetX, offsetY, offsetZ, rX, rY, rZ)
268271
local obj = g_AMXs[amxName] and g_AMXs[amxName].playerobjects[objID]

amx/server/syscalls.lua

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -841,9 +841,8 @@ function DeletePVar(amx, player, varname)
841841
return 1
842842
end
843843

844-
-- dummy todo
845-
function RemoveBuildingForPlayer(amx)
846-
return 1;
844+
function RemoveBuildingForPlayer(amx, player, model, x, y, z, radius)
845+
clientCall(player, 'RemoveBuildingForPlayer', model, x, y, z, radius)
847846
end
848847

849848
function EnableVehicleFriendlyFire(amx)
@@ -1162,7 +1161,7 @@ function SetEchoDestination(amx)
11621161
end
11631162

11641163
function SetGameModeText(amx, gamemodeName)
1165-
setMapName(gamemodeName)
1164+
setGameType(gamemodeName)
11661165
end
11671166

11681167
function SetGravity(amx, gravity)
@@ -3236,11 +3235,11 @@ g_SAMPSyscallPrototypes = {
32363235
format = {'r', 'i', 's'},
32373236

32383237
memcpy = {'r', 'r', 'i', 'i', 'i'},
3238+
RemoveBuildingForPlayer = {'p', 'i', 'f', 'f', 'f', 'f'},
3239+
ManualVehicleEngineAndLights = {},
32393240

32403241
-- more dummies (unimplemented)
3241-
EnableVehicleFriendlyFire = {},
3242-
RemoveBuildingForPlayer = {},
3243-
ManualVehicleEngineAndLights = {},
3242+
EnableVehicleFriendlyFire = {},
32443243
DisableRemoteVehicleCollisions = {'p', 'i'},
32453244
GetPlayerTargetPlayer = {'p'},
32463245
GetPlayerLastShotVectors = {'p', 'r', 'r', 'r', 'r', 'r', 'r'},

amx/server/util.lua

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,12 @@ fndebug(
4242
--]]
4343

4444
function clientCall(player, fnName, ...)
45-
triggerClientEvent(player, 'onClientCall', resourceRoot, fnName, ...)
45+
local called = triggerClientEvent(player, 'onClientCall', resourceRoot, fnName, ...)
46+
if called == nil or called == false then
47+
outputDebugString('Failed to call ' .. fnName)
48+
called = false --if it's null set it to false to prevent stuff like 'concatenating nil values'
49+
end
50+
return called
4651
end
4752

4853
g_Keys = {

0 commit comments

Comments
 (0)