Если тебе нужно взять пикап с расстояния, то делается это с помощью опкода:
0BD1: samp send_picked_up_pickup 0@
Но на некоторых серверах стоит защита, и взять пикап можно только с близкого расстояния, для этого можно отправить синхру, что игрок находится у пикапа, а уже после его взять, можно сделать через scm функцию:
Вызов функции:
0AB1: call_scm_func @SendOnfootFakePosition 3 1@ 2@ 3@
Сама функция:
Код
:SendOnFootFakePosition
3@ = SAMP.GetSAMPPlayerIDByActorHandle($PLAYER_ACTOR)
3@ = SAMP.GetPlayerStruct(3@)
3@ += 109
0AC8: 4@ = allocate_memory_size 68
0C10: memcpy destination 4@ source 3@ size 68
0C0D: struct 4@ offset 6 size 4 = 0@
0C0D: struct 4@ offset 10 size 4 = 1@
0C0D: struct 4@ offset 14 size 4 = 2@
0B3D: raknet 5@ = new_bit_stream
0B40: raknet bit_stream 5@ write PACKET_PLAYER_SYNC type BS_TYPE_BYTE size 1
0B40: raknet bit_stream 5@ write 4@ type 5 size 68
0B42: raknet send bit_stream 5@ priority HIGH_PRIORITY reliability UNRELIABLE_SEQUENCED ordering_channel 0
0B3E: raknet delete_bit_stream 5@
0AC9: free_allocated_memory 4@
0ab2: 0