@@ -782,7 +782,7 @@ function GetPVarString(amx, player, varname, outbuf, length)
782
782
if not value or value [1 ] ~= PLAYER_VARTYPE_STRING then
783
783
return 0
784
784
end
785
-
785
+
786
786
if # value [2 ] < maxlength then
787
787
writeMemString (amx , outbuf , value )
788
788
else
@@ -811,11 +811,11 @@ end
811
811
812
812
-- dummy todo
813
813
function RemoveBuildingForPlayer (amx )
814
- return 1 ;
814
+ return 1 ;
815
815
end
816
816
817
817
function EnableVehicleFriendlyFire (amx )
818
- return 1 ;
818
+ return 1 ;
819
819
end
820
820
821
821
function GetPlayerWeaponData (amx , player , slot , refWeapon , refAmmo )
@@ -1469,6 +1469,55 @@ function TextDrawCreate(amx, x, y, text)
1469
1469
return id
1470
1470
end
1471
1471
1472
+ -- Mainly just wrappers to the other non-player functions
1473
+ function PlayerTextDrawDestroy (amx , playerid , textdrawID )
1474
+ TextDrawDestroy (amx , textdrawID )
1475
+ end
1476
+ function PlayerTextDrawShow (amx , playerid , textdrawID )
1477
+ TextDrawShowForPlayer (amx , playerid , textdrawID )
1478
+ end
1479
+ function PlayerTextDrawHide (amx , playerid , textdrawID )
1480
+ TextDrawHideForPlayer (amx , playerid , textdrawID )
1481
+ end
1482
+ function PlayerTextDrawBoxColor (amx , playerid , textdrawID , r , g , b , a )
1483
+ TextDrawBoxColor (amx , textdrawID , r , g , b , a )
1484
+ end
1485
+ function PlayerTextDrawUseBox (amx , playerid , textdrawID , usebox )
1486
+ TextDrawUseBox (amx , textdrawID , usebox )
1487
+ end
1488
+ function PlayerTextDrawTextSize (amx , playerid , textdrawID , x , y )
1489
+ TextDrawTextSize (amx , textdrawID , x , y )
1490
+ end
1491
+ function PlayerTextDrawLetterSize (amx , playerid , textdrawID , x , y )
1492
+ TextDrawLetterSize (amx , textdrawID , width , height )
1493
+ end
1494
+ function CreatePlayerTextDraw (amx , playerid , x , y , text )
1495
+ TextDrawCreate (amx , x , y , text )
1496
+ end
1497
+ function PlayerTextDrawAlignment (amx , playerid , textdrawID , align )
1498
+ TextDrawAlignment (amx , textdrawID , align )
1499
+ end
1500
+ function PlayerTextDrawBackgroundColor (amx , playerid , textdraw , r , g , b , a )
1501
+ TextDrawBackgroundColor (amx , textdraw , r , g , b , a )
1502
+ end
1503
+ function PlayerTextDrawFont (amx , playerid , textdraw , font )
1504
+ TextDrawFont (amx , textdraw , font )
1505
+ end
1506
+ function PlayerTextDrawColor (amx , playerid , textdraw , r , g , b , a )
1507
+ TextDrawColor (amx , textdraw , r , g , b , a )
1508
+ end
1509
+ function PlayerTextDrawSetOutline (amx , playerid , textdraw , size )
1510
+ TextDrawSetOutline (amx , textdraw , size )
1511
+ end
1512
+ function PlayerTextDrawSetProportional (amx , playerid , textdraw , proportional )
1513
+ TextDrawSetProportional (amx , textdraw , proportional )
1514
+ end
1515
+ function PlayerTextDrawSetShadow (amx , playerid , textdraw , size )
1516
+ TextDrawSetShadow (amx , textdraw , size )
1517
+ end
1518
+ function PlayerTextDrawSetString (amx , playerid , textdraw , str )
1519
+ TextDrawSetString (amx , textdraw , str )
1520
+ end
1472
1521
function TextDrawDestroy (amx , textdrawID )
1473
1522
if not amx .textdraws [textdrawID ] then
1474
1523
return
@@ -1593,7 +1642,7 @@ function DestroyActor(amx, actor)
1593
1642
for i ,playerdata in pairs (g_Players ) do
1594
1643
playerdata .streamedActors [getElemID (actor )] = nil
1595
1644
end
1596
-
1645
+
1597
1646
removeElem (amx , ' actors' , actor )
1598
1647
destroyElement (actor )
1599
1648
end
@@ -1645,7 +1694,7 @@ end
1645
1694
1646
1695
function GetPlayerTargetActor (amx , player )
1647
1696
local elem = getPedTarget (player )
1648
-
1697
+
1649
1698
if getElementType (elem ) == ' ped' and getElementData (elem , ' amx.actorped' ) then
1650
1699
return getElemID (elem )
1651
1700
end
@@ -1999,7 +2048,7 @@ SetBotPos = SetObjectPos
1999
2048
---- -------------------------------------------------
2000
2049
-- Native Markers
2001
2050
function CreateMarker (amx , x , y , z , typeid , size , r , g , b , a )
2002
- local marker = createMarker (x , y , z , typeid , size , r , g , b , a , getRootElement () )
2051
+ local marker = createMarker (x , y , z , typeid , size , r , g , b , a , root )
2003
2052
local markerID = addElem (amx , ' markers' , marker )
2004
2053
procCallOnAll (' OnMarkerCreate' , markerID )
2005
2054
return markerID
@@ -2675,14 +2724,14 @@ g_SAMPSyscallPrototypes = {
2675
2724
DisableMenuRow = {' i' , ' i' },
2676
2725
DisablePlayerCheckpoint = {' p' },
2677
2726
DisablePlayerRaceCheckpoint = {' p' },
2678
-
2727
+
2679
2728
EnableStuntBonusForAll = {' b' },
2680
2729
EnableStuntBonusForPlayer = {' p' , ' b' },
2681
2730
EnableTirePopping = {' b' },
2682
2731
EnableZoneNames = {' b' },
2683
-
2732
+
2684
2733
ForceClassSelection = {' i' },
2685
-
2734
+
2686
2735
GameModeExit = {},
2687
2736
GameTextForAll = {' s' , ' i' , ' i' },
2688
2737
GameTextForPlayer = {' p' , ' s' , ' i' , ' i' },
@@ -2880,6 +2929,28 @@ g_SAMPSyscallPrototypes = {
2880
2929
TextDrawShowForPlayer = {' p' , ' i' },
2881
2930
TextDrawTextSize = {' x' , ' f' , ' f' },
2882
2931
TextDrawUseBox = {' x' , ' b' },
2932
+ -- Player textdraws
2933
+ PlayerTextDrawDestroy = {' p' , ' s' },
2934
+ PlayerTextDrawShow = {' p' , ' x' },
2935
+ PlayerTextDrawHide = {' p' , ' x' },
2936
+ PlayerTextDrawBoxColor = {' p' , ' x' , ' c' },
2937
+ PlayerTextDrawUseBox = {' p' , ' x' , ' i' },
2938
+ PlayerTextDrawTextSize = {' p' , ' x' , ' f' , ' f' },
2939
+ PlayerTextDrawLetterSize = {' p' , ' x' , ' f' , ' f' },
2940
+ PlayerTextDrawAlignment = {' p' , ' x' , ' i' },
2941
+ PlayerTextDrawBackgroundColor = {' p' , ' x' , ' c' },
2942
+ PlayerTextDrawFont = {' p' , ' x' , ' i' },
2943
+ PlayerTextDrawColor = {' p' , ' x' , ' c' },
2944
+ PlayerTextDrawSetOutline = {' p' , ' x' , ' i' },
2945
+ PlayerTextDrawSetProportional = {' p' , ' x' , ' i' },
2946
+ PlayerTextDrawSetShadow = {' p' , ' x' , ' i' },
2947
+ PlayerTextDrawSetString = {' p' , ' x' , ' s' },
2948
+ PlayerTextDrawSetPreviewModel = {' p' , ' x' , ' i' },
2949
+ PlayerTextDrawSetPreviewVehCol = {' p' , ' x' , ' i' , ' i' },
2950
+ PlayerTextDrawSetSelectable = {' p' , ' x' , ' i' },
2951
+ PlayerTextDrawSetPreviewRot = {' p' , ' x' , ' f' , ' f' , ' f' , ' f' },
2952
+ CreatePlayerTextDraw = {' p' , ' f' , ' f' , ' s' },
2953
+
2883
2954
TogglePlayerClock = {' p' , ' b' , client = true },
2884
2955
TogglePlayerControllable = {' p' , ' b' },
2885
2956
TogglePlayerSpectating = {' p' , ' b' },
@@ -3110,9 +3181,42 @@ g_SAMPSyscallPrototypes = {
3110
3181
3111
3182
memcpy = {' r' , ' r' , ' i' , ' i' , ' i' },
3112
3183
3113
- -- more dummies
3184
+ -- more dummies (unimplemented)
3114
3185
EnableVehicleFriendlyFire = {},
3115
3186
RemoveBuildingForPlayer = {},
3187
+ ManualVehicleEngineAndLights = {},
3188
+ DisableRemoteVehicleCollisions = {' p' , ' i' },
3189
+ GetPlayerTargetPlayer = {' p' },
3190
+ GetPlayerLastShotVectors = {' p' , ' r' , ' r' , ' r' , ' r' , ' r' , ' r' },
3191
+ SelectObject = {' p' },
3192
+ CancelEdit = {' p' },
3193
+ EditAttachedObject = {' p' , ' i' },
3194
+ EditObject = {' p' , ' i' },
3195
+ IsPlayerAttachedObjectSlotUsed = {' p' , ' i' },
3196
+ GetPlayerVersion = {' p' , ' s' , ' i' },
3197
+ SetPlayerAttachedObject = {' p' , ' i' , ' i' , ' i' , ' f' , ' f' , ' f' , ' f' , ' f' , ' f' , ' f' , ' f' , ' f' , ' i' , ' i' },
3198
+ PlayAudioStreamForPlayer = {' p' , ' s' , ' f' , ' f' , ' f' , ' f' , ' i' },
3199
+ StopAudioStreamForPlayer = {' p' },
3200
+ GetPlayerNetworkStats = {' p' , ' r' , ' i' },
3201
+ GetNetworkStats = {' r' , ' i' },
3202
+ StartRecordingPlayerData = {' p' , ' i' , ' s' },
3203
+ StopRecordingPlayerData = {' p' },
3204
+ GetAnimationName = {' i' , ' s' , ' i' , ' s' , ' i' },
3205
+ GetPlayerAnimationIndex = {' p' },
3206
+ AttachCameraToObject = {' p' , ' i' },
3207
+ GetPlayerDrunkLevel = {' p' },
3208
+ SetPlayerDrunkLevel = {' p' , ' i' },
3209
+ SelectTextDraw = {' p' , ' x' },
3210
+ CancelSelectTextDraw = {' p' },
3211
+ GetActorPos = {' i' , ' r' , ' r' , ' r' }, -- r since the vals should be passed by ref
3212
+ GetPVarsUpperIndex = {' p' },
3213
+ GetPVarNameAtIndex = {' p' , ' i' , ' r' , ' i' },
3214
+ InterpolateCameraPos = {' p' , ' f' , ' f' , ' f' , ' f' , ' f' , ' f' , ' i' , ' i' },
3215
+ InterpolateCameraLookAt = {' p' , ' f' , ' f' , ' f' , ' f' , ' f' , ' f' , ' i' , ' i' },
3216
+ RemovePlayerAttachedObject = {' p' , ' i' },
3217
+ SetVehicleParamsCarWindows = {' v' , ' i' , ' i' , ' i' , ' i' },
3218
+ GetPlayerVersion = {' p' , ' s' , ' i' },
3219
+ -- End of unimplemented funcs
3116
3220
3117
3221
-- new imp
3118
3222
IsVehicleStreamedIn = {' v' , ' p' },
@@ -3147,5 +3251,5 @@ g_SAMPSyscallPrototypes = {
3147
3251
SetActorHealth = {' y' , ' f' },
3148
3252
SetActorInvulnerable = {},
3149
3253
SetActorPos = {' y' , ' f' , ' f' , ' f' },
3150
- SetActorVirtualWorld = {' y' , ' i' },
3254
+ SetActorVirtualWorld = {' y' , ' i' }
3151
3255
}
0 commit comments