13.03.2012, 22:08
Coloque isso no topo da GM:
Isso no comeзo da Public OnGameModeInit:
Isso aki dentro da Public OnPlayerCommandText:
No final da GM:
Caso dee algum erro poste qual й o erro й a parte em que o mesmo esta!
pawn Код:
new UpdateSeconds = 2; // Nгo Mecher
new maxobject = 4;
//----------------------------------------
forward Multa(playerid);
new Multas[MAX_PLAYERS];
forward UpdateSpeed(playerid);
enum SavePlayerPosEnum
{
Float:LastX,
Float:LastY,
Float:LastZ
}
#define COLOR_YELLOW 0xFFFF00AA
#define VERDEFRACO 0x80cf80AA
#define SLOTS 500
new objectcreated;
new SavePlayerPos[SLOTS][SavePlayerPosEnum];
new distance1[MAX_PLAYERS];
pawn Код:
SetTimer("UpdateSpeed", UpdateSeconds*1000, 1);
pawn Код:
if (strcmp("/radar", cmdtext, true, 10) == 0)
{
SendClientMessage(playerid,0xFF0000AA,"******* SISTEMA DE RADAR ************");
SendClientMessage(playerid,0x33CCFFAA,"Existem Radar na Prefeitura, No Hospital, DP de Los Santos, Banco, Loja de Armas e Posto Idlewood");
SendClientMessage(playerid,0x33CCFFAA,"O Limite de velocidade й entre 70 KM/H");
SendClientMessage(playerid,0x33CCFFAA,"Se voce exceder o Limite de velocidade Nesses Locais , Levara Multa de 800 $ ");
SendClientMessage(playerid,0xFF0000AA,"Atenciosamente , A administraзгo.");
return 1;
}
if(!strcmp(cmdtext, "/pagarmulta", true))
{
if(Multas[playerid] == 0) return SendClientMessage(playerid, 0xFFFFFFAA, "Nгo hб multas a serem pagas !");
new STR[50];
format(STR, 50, "Total de Multas: %d. Valor a pagar: %d", Multas[playerid], (Multas[playerid] * 800));
SendClientMessage(playerid, 0xFFFF00AA, STR);
SendClientMessage(playerid, 0xFFFFFFAA, "Vocк pagou suas multas !");
GivePlayerMoney(playerid, -1 * (Multas[playerid] * 800));
Multas[playerid] = 0;
return 1;
}
pawn Код:
IsPlayerInCircle(playerid,Float:x,Float:y,radius)
{
if(GetPlayerDistanceToPoint(playerid,Float:x,Float:y) < radius)
{
return 1;
}
return 0;
}
GetPlayerDistanceToPoint(playerid,Float:x,Float:y)
{
new Float:x1,Float:y1,Float:z1; GetPlayerPos(playerid,x1,y1,z1);
new Float:tmpdis = floatsqroot(floatpower(floatabs(floatsub(x,x1)),2)+
floatpower(floatabs(floatsub(y,y1)),2));
return floatround(tmpdis);
}
stock AddFlitsPaal(playerid, modelid, Float:xx, Float:yy, Float:zz, radius, speed)
{
new fine[MAX_PLAYERS];
new str[256];
if(objectcreated!=maxobject)
{
CreateObject(modelid, xx, yy, zz, 0.0, 0.0, 10);
objectcreated++;
}
new Velocimetro = distance1[playerid] + 33;
if((Velocimetro)>speed)
{
if(IsPlayerInCircle(playerid, xx, yy, radius) && GetPlayerState(playerid)== PLAYER_STATE_DRIVER)
{
fine[playerid]=((distance1[playerid]*17/10)-speed);
Multas[playerid] += 1;
format(str,sizeof(str), "{FFFF00}[INFO-RADAR] {FF0000}O Limite de velocidade й {FFFF00}%d KM/H {FF0000}Voce Passou a {FFFF00}%d KM/H {FF0000}e foi {FFFF00}MULTADO !",speed, Velocimetro);
// Caso queira mudar o nome do radar , й so mudar o xXx pelo nome que quiser. e o -2000 й o valor da multa.
SendClientMessage(playerid, VERDEFRACO, str);
SendClientMessage(playerid, 0xFFFFFFAA, "Vocк tem 5 minutos para pagar suas multas, caso contrario sera preso !");
SendClientMessage(playerid, 0x33CCFFAA, "Digite /pagarmulta para pagar suas multas !");
PlayerPlaySound(playerid, 1132, 0.0, 0.0, 0.0);
SetTimerEx("Multa", 300000, false, "d", playerid);
}
}
return true;
}
public Multa(playerid)
{
if(Multas[playerid] += 1)
{
ResetPlayerWeapons(playerid);
SetPlayerInterior(playerid, 6);
SetPlayerPos(playerid,264.6288,77.5742,1001.0391);
PlayerInfo[playerid][pJailTime] = time * 120;
PlayerInfo[playerid][pJailed] = 5;
Multas[playerid] = 0;
SendClientMessage(playerid, 0xFFFFFFAA, "Vocк foi preso por 120 segundos nгo pagar as suas Multas.");
return 1;
}
return 1;
}