
SetTimer(1000, false, YourTimerName, (void *) playerid);
// Somewhere else.
void SAMPGDK_CALL YourTimerName(int timerid, void *data) {
int playerid = (int) data;
// Do something with playerid.
}
void SAMPGDK_CALL SkipClassSelection(int timer_id, void *data) {
int player_id = (int) data;
TogglePlayerSpectating(player_id, false);
SpawnPlayer(player_id);
SetPlayerVirtualWorld(player_id, 0);
SetPlayerInterior(player_id, 0);
SetPlayerPos(player_id, 1957.7498f, 1343.0189f, 15.3746f);
SetPlayerFacingAngle(player_id, 270.7008f);
SetCameraBehindPlayer(player_id);
return;
}
PLUGIN_EXPORT bool PLUGIN_CALL OnPlayerRequestClass(int player_id, int class_id) {
TogglePlayerSpectating(player_id, true); // Do not show the player class selection controls.
SetTimer(500, false, SkipClassSelection, (void *) player_id);
return true;
}
|
Код:
SetTimer(1000, false, YourTimerName, (void *) playerid);
// Somewhere else.
void SAMPGDK_CALL YourTimerName(int timerid, void *data) {
int playerid = (int) data;
// Do something with playerid.
}
Код:
void SAMPGDK_CALL SkipClassSelection(int timer_id, void *data) {
int player_id = (int) data;
TogglePlayerSpectating(player_id, false);
SpawnPlayer(player_id);
SetPlayerVirtualWorld(player_id, 0);
SetPlayerInterior(player_id, 0);
SetPlayerPos(player_id, 1957.7498f, 1343.0189f, 15.3746f);
SetPlayerFacingAngle(player_id, 270.7008f);
SetCameraBehindPlayer(player_id);
return;
}
PLUGIN_EXPORT bool PLUGIN_CALL OnPlayerRequestClass(int player_id, int class_id) {
TogglePlayerSpectating(player_id, true); // Do not show the player class selection controls.
SetTimer(500, false, SkipClassSelection, (void *) player_id);
return true;
}
|
struct SCS_Data {
int id;
float spawn_x;
float spawn_y;
float spawn_z;
};
void SAMPGDK_CALL SkipClassSelection(int timer_id, void *data) {
SCS_Data player = (SCS_Data) data;
TogglePlayerSpectating(player.id, false);
SpawnPlayer(player.id);
SetPlayerVirtualWorld(player.id, 0);
SetPlayerInterior(player.id, 0);
SetPlayerPos(player.id, player.spawn_x, player.spawn_y, player.spawn_z);
SetPlayerFacingAngle(player.id, 270.7008f);
SetCameraBehindPlayer(player.id);
return;
}
PLUGIN_EXPORT bool PLUGIN_CALL OnPlayerRequestClass(int player_id, int class_id) {
SCS_Data data;
data.id = player_id;
data.spawn_x = 1957.7498f;
data.spawn_y = 1343.0189f;
data.spawn_z = 15.3746f;
TogglePlayerSpectating(player_id, true); // Do not show the player class selection controls.
SetTimer(500, false, SkipClassSelection, (void *) data);
return true;
}