[Ajuda] Ajuda radar!
#1

Preciso de ajuda num radar tipo Funciona de boa cara mais tipo quando o player passa a mais de 50 KM/H desconta -420$ reais dele mais so que volta os -420$ de novo Alguйm pode me ajudar?

PHP код:
#include <a_samp>
// SISTEMA FEITO POR: DESCONHECIDO
// SISTEMA DE EDITADO E TRADUZIDO POR Pedro_Felipe - Pedro_Tilambucu
//----------------------------------------
new UpdateSeconds 2// Nгo Mecher
new maxobject 4;
//----------------------------------------
public OnFilterScriptInit() {
print(
"\n----------------------------------");
print(
"[FS] Radar Automatico Carregado");
print(
"----------------------------------\n");
SetTimer("UpdateSpeed"UpdateSeconds*10001);
}
public 
OnFilterScriptExit() {
print(
"\n----------------------------------");
print(
"[FS] Radar Automatico Desativado");
print(
"----------------------------------\n");
}
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];
public 
UpdateSpeed(playerid)
{
        new 
Float:x,Float:y,Float:z;
        new 
Float:distance,value;
        for(new 
i=0i<SLOTSi++)
        {
                if(
IsPlayerConnected(i))
                {
                        
GetPlayerPos(ixyz);
                        
distance floatsqroot(floatpower(floatabs(floatsub(x,SavePlayerPos[i][LastX])),2)+floatpower(floatabs(floatsub(y,SavePlayerPos[i][LastY])),2)+floatpower(floatabs(floatsub(z,SavePlayerPos[i][LastZ])),2));
                        
value floatround(distance 3600);
                        if(
UpdateSeconds 1)
                        {
                                
value floatround(value UpdateSeconds);
                        }
                        
distance1[i] = floatround(value/1600);
                        
SavePlayerPos[i][LastX] = x;
                        
SavePlayerPos[i][LastY] = y;
                        
SavePlayerPos[i][LastZ] = z;
            
/* Para colocar Coordenada no lugar que voce quer , basta colocar a Coordenada X,Y,Z no lugar dos 00000 ,
            o 40 й o raio que o radar pega, e o 50 , й a velocidade maxima*/
                
AddFlitsPaal(i12781336.4625,-1271.4056,13.54694050); // Ammu
              //  AddFlitsPaal(i, 1278, 1336.4625,-1271.4056,13.5469, 40, 50); // Prefeitura
              //  AddFlitsPaal(i, 1278, 2048.7131,1353.5975,10.6719, 40, 50); // BANCO
            //    AddFlitsPaal(i, 1278, 1200.9847,-1337.9875,13.3984, 40, 45); // HOSPITAL
           //     AddFlitsPaal(i, 1278, 0000.0000,0000.0000,0000.0000, 50, 70); // VAGO
           //     AddFlitsPaal(i, 1278, 0000.0000,0000.0000,0000.0000, 20, 50); // VAGO
           //     AddFlitsPaal(i, 1278, 0000.0000,0000.0000,0000.0000, 20, 50); // VAGO
          //      AddFlitsPaal(i, 1278, 0000.0000,0000.0000,0000.0000, 20, 50); // VAGO
          //      AddFlitsPaal(i, 1278, 0000.0000,0000.0000,0000.0000, 20, 50); // VAGO
         //       AddFlitsPaal(i, 1278, 0000.0000,0000.0000,0000.0000, 20, 50); // VAGO
               
               
                
}
        }
        return 
1;
}
public 
OnPlayerEnterVehicle(playeridvehicleidispassenger)
{
    return 
1;
}
public 
OnPlayerExitVehicle(playeridvehicleid)
{
   return 
1;
}
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:z1GetPlayerPos(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(playeridmodelidFloat:xxFloat:yyFloat:zzradiusspeed)
{
        new 
fine[MAX_PLAYERS];
        new 
str[256];
        if(
objectcreated!=maxobject)
        {
        
CreateObject(188801350.13647, -1271.1401412.61007,   0.000000.000000.00000);
        
objectcreated++;
        }
        if((
distance1[playerid])>speed)
        {
                if(
IsPlayerInCircle(playeridxxyyradius)  && GetPlayerState(playerid)== PLAYER_STATE_DRIVER)
                {
                        
fine[playerid]=((distance1[playerid]*17/10)-speed);
                        
GivePlayerMoney(playerid, -420);
                        
format(str,sizeof(str), "[RADAR] O Limite de velocidade й %d KM/H Voce Passou a %d KM/H e foi multado no valor de: R$420!",speeddistance1[playerid] ,fine[playerid]);
                        
// Caso queira mudar o nome do radar , й so mudar o xXx pelo nome que quiser. e o -2000 й o valor da multa.
                        
SendClientMessage(playeridCOLOR_YELLOWstr);
                        
PlayerPlaySound(playerid11320.00.00.0);
                }
        }
        return 
0;
}
public 
OnPlayerCommandText(playeridcmdtext[])
      if (
strcmp("/sradar"cmdtexttrue10) == 0)
  {
        
SendClientMessage(playerid,0x33CCFFAA,"******* SISTEMA DE RADAR ************");
        
SendClientMessage(playerid,0x33CCFFAA,"Existem Radar na Prefeitura, No Hospital e no DP's de Los Santos e Banco");
    
SendClientMessage(playerid,0x33CCFFAA,"O Limite de velocidade й entre 50 KM/H");
        
SendClientMessage(playerid,0x33CCFFAA,"Se vocк exceder o Limite de velocidade Nesses Locais , Levara Multa de 420 $ ");
    
SendClientMessage(playerid,0xAA3333AA,"Atenciosamente , A administraзгo.");
    return 
1;
           } 
Reply
#2

PHP код:
GivePlayerMoney(playerid, -420); 
Isso tem que ser alterado pela variavel de dinheiro do seu GameMode.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)