Találtam itt egy scriptett:
http://sampforum.hu/index.php?topic=4144.msg46809#msg46809Ami szerintem jó kiindulás alap lehet az én rendõrõs munkámhoz.
Az a gond, hogy munka közben, halál után nem a rendõrállomáson spawnol újra hanem a gamemodomban lévõ helyekre.
Ezt hogy lehetne kijavítani?
Munka chat-et, hogyan lehet belerakni?
És azt hogyan lehet megoldani, hogy amikor kilép a munkából, akkor ne a rendõrõs skin legyen rajta, hanem az ami a munkába lépés elõtt volt?
Bocsánat a sok kérdésért.
//______________________________________________________________________________
// Taxi Script Készítõje: ALIEN
// Dátum:2010. Március. 30.
// Mindenjog fenntartva
//______________________________________________________________________________
#include <a_samp>
#define COLOR_GREY 0xAFAFAFAA
#define COLOR_GREEN 0x33AA33AA
#define COLOR_RED 0xAA3333AA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_WHITE 0xFFFFFFAA
#define FILTERSCRIPT
#if defined FILTERSCRIPT
#define TEAM_CIVIL 1
#define TEAM_RENDOR 2
forward Money();
forward SavePos(playerid);
new gTeam[MAX_PLAYERS];
new name[MAX_PLAYER_NAME];
new money;
new iPlayerSkin[ MAX_PLAYERS ];
new Float: fPos[ MAX_PLAYERS ][ 4 ];
public Money()
{
for(new i=0; i<MAX_PLAYERS; i++)
{
if(gTeam == TEAM_RENDOR)
{
GivePlayerMoney(i, 50000);
SendClientMessage(i, COLOR_WHITE, \"[FIZETÉS]: Meg kaptad a fizetésed. 50000$-t!\");
}
}
}
public OnFilterScriptInit()
{
print(\" Munka script Készítette: ALIEN\");
money = SetTimer(\"Money\", 700000, true);// Az értéket átírhatod kedvedre
return 1;
}
public OnFilterScriptExit()
{
KillTimer(money);
return 1;
}
#endif
public OnPlayerConnect(playerid)
{
SendClientMessage(playerid, COLOR_GREEN, \"Taxi Script betõltés kész. by ALIEN\");
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
new tmp[256];
new cmd[256];
new string[256];
new idx;
cmd = strtok(cmdtext, idx);
tmp = strtok(cmdtext, idx);
// MUNKA
if(strcmp(cmd, \"/rendor\", true) == 0)
{
if(gTeam[playerid] == TEAM_CIVIL)
{
GetPlayerName(playerid, name, sizeof (name));
format(string, sizeof(string), \"Rendõr, %s szolgálatba állt!\", name);
SendClientMessageToAll(COLOR_GREEN, string);
gTeam[playerid] = TEAM_RENDOR;
SetPlayerPos(playerid, 2318.6741,2450.1377,10.8203);
SetPlayerSkin(playerid, 280);
GivePlayerWeapon(playerid, 26, 500);
iPlayerSkin[ playerid ] = GetPlayerSkin( playerid );
GetPlayerPos( playerid, fPos[ playerid ][ 0 ], fPos[ playerid ][ 1 ], fPos[ playerid ][ 2 ] );
GetPlayerFacingAngle( playerid, fPos[ playerid ][ 3 ] );
} else {
SendClientMessage(playerid, COLOR_RED, \"Már rendõr vagy!\");
}
return 1;
}
if(strcmp(cmd, \"/rendorkilep\", true) == 0)
{
DisablePlayerCheckpoint(playerid);
SendClientMessage(playerid, COLOR_RED, \"Kiléptél!\");
SetPlayerSkin( playerid, iPlayerSkin[ playerid ] );
SetPlayerPos( playerid, fPos[ playerid ][ 0 ], fPos[ playerid ][ 1 ], fPos[ playerid ][ 2 ] );
SetPlayerFacingAngle( playerid, fPos[ playerid ][ 3 ] );
if(gTeam[playerid] == TEAM_RENDOR)
{
gTeam[playerid] = TEAM_CIVIL;
} else {
SendClientMessage(playerid, COLOR_RED, \"Most nincs munkád!\");
}
return 1;
}
return 0;
}
public OnPlayerRequestClass(playerid, classid)
{
if(classid == 0 || classid == 1)
{
gTeam[playerid] = TEAM_CIVIL;
}
}
public OnPlayerDeath(playerid)
{
gTeam[playerid] = TEAM_RENDOR;
SetPlayerPos(playerid, 2318.6741,2450.1377,10.8203);
GivePlayerWeapon(playerid, 26, 500);
return 1;
}
public OnPlayerSpawn(playerid)
{
gTeam[playerid] = TEAM_RENDOR;
GivePlayerWeapon(playerid, 26, 500);
SetPlayerPos(playerid, 2318.6741,2450.1377,10.8203);
return 1;
}
strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= \' \'))
{
index++;
}
new offset = index;
new result[20];
while ((index < length) && (string[index] > \' \') && ((index - offset) < (sizeof(result) - 1)))
{
result[index - offset] = string[index];
index++;
}
result[index - offset] = EOS;
return result;
}