[duvida]Velocidade
#1

Como fasso para que quando o player pass certa velocidade mande uma mensagem?
Reply
#2

O drakon lancou recentemente uma release +/- o quevc quer... o que ele fazia era por a velocidade a 0, vc modifica pa mandar mensagem..


Search pode ser maravilhoso nййґґehhh??
Reply
#3

isso nгo dб porque e quero meter de outra forma no meu gamemode
Reply
#4

afff... so pegar a base

Muda para OnPlayerUpdate ou similar...

em vez se SetPlayerVelocity bota SendClientMessage, etc... tem la a base.. n seja preguisoso
Reply
#5

como se manda um mensagem para um player num rao de por exemplo 100m
Reply
#6

n sei bem... mas ja algures que, por exemplo:

a Float:Raio, se for dividida por 4 = 1 metro..


Exemplo:

IsPlayerInRangeOfPoint(playerid,12.0,CordX, CordY, CordZ)

basicamente:

12/4 = 3

Ou seja, isto verifica se estб a 4 metros de distвncia...



Sem certeza... eu li isto algures, nгo sei se й ou nгo verdade
Reply
#7

pqp Vey , Usa Search, poderia usar aquele meu como Base porr@

Em OnPlayerUpdate:
pawn Код:
if(GetSpeedKM(playerid) >100)
{
SendClientMessage(playerid,CORPORRA,"Vocк Esta Acima de 100 Noob");
}
Final GM(By DarK Team PT):
pawn Код:
stock
    GetSpeedKM(playerid)
{
    new
        Float:PosX,
        Float:PosY,
        Float:PosZ,
        Float:PlayerSpeedDistance;
       
    GetVehicleVelocity(GetPlayerVehicleID(playerid), PosX, PosY, PosZ);
    PlayerSpeedDistance = floatmul(floatsqroot(floatadd(floatadd(floatpower(PosX, 2), floatpower(PosY, 2)), floatpower(PosZ, 2))), 170.0);
    new
        spe = floatround(PlayerSpeedDistance * 1);
    return spe;
}
Andmeida o Calculo й Assim:
Ele Transforma em Numero Decimais PosX e PosY e PosZ, entгo ele faz o calculo do tempo que o player esta a velocidade 170.0, Assim obtendo o resultado em KPH
@OFF: Andmeida esse negocio que mandar usar Search jб tб chato
Reply
#8

Quote:
Originally Posted by andmeida10
n sei bem... mas ja algures que, por exemplo:

a Float:Raio, se for dividida por 4 = 1 metro..


Exemplo:

IsPlayerInRangeOfPoint(playerid,12.0,CordX, CordY, CordZ)

basicamente:

12/4 = 3

Ou seja, isto verifica se estб a 4 metros de distвncia...



Sem certeza... eu li isto algures, nгo sei se й ou nгo verdade
mas isso й para o proprio player.
eu queria saber й quando um player passa-se por um policia, manda-se uma mensagem ao policia que o player ultrapassou os 90km
Reply
#9

pqp Vey na Real, Tu jб deveria saber fazer isso..

Em OnPlayerUpdate:
pawn Код:
if(GetSpeedKM(playerid) >100){
for(new i = 0; i < MAX_PLAYERS; i++)
 {
if(PoliciaLevel(i) >=1){//VARIAVEL DA POLICIA
new name[MAX_PLAYER_NAME], string[44];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "%s esta acima de 100 por Hora, Corre Corre Pegar Ele.",name);
SendClientMessage(i,0xFFFF00AA, string);
}
}
}
Final GM(By DarK Team PT):
pawn Код:
stock
    GetSpeedKM(playerid)
{
    new
        Float:PosX,
        Float:PosY,
        Float:PosZ,
        Float:PlayerSpeedDistance;
       
    GetVehicleVelocity(GetPlayerVehicleID(playerid), PosX, PosY, PosZ);
    PlayerSpeedDistance = floatmul(floatsqroot(floatadd(floatadd(floatpower(PosX, 2), floatpower(PosY, 2)), floatpower(PosZ, 2))), 170.0);
    new
        spe = floatround(PlayerSpeedDistance * 1);
    return spe;
}
Reply
#10

Quote:

manda-se uma mensagem para os policias perto dele num raio de 20 por exemplo

isso nгo mandarб,
eu sei mandar a mensagem, so nгo sei num raio de 20
Reply
#11

Assim?


Em OnPlayerUpdate:
pawn Код:
if(GetSpeedKM(playerid) >100){
for(new i = 0; i < MAX_PLAYERS; i++)
{
new Float:X,Float:Y,Float:Z;
GetPlayerPos(playerid,X,Y,Z);
if(IsPlayerInRangeOfPoint(i,25.0,X,Y,Z)){
if(PoliciaLevel(i) >=1){//VARIAVEL DA POLICIA
new name[MAX_PLAYER_NAME], string[44];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "%s esta acima de 100 por Hora, Corre Corre Pegar Ele.",name);
SendClientMessage(i,0xFFFF00AA, string);
}
}
}
}
Final GM(By DarK Team PT):
pawn Код:
stock
    GetSpeedKM(playerid)
{
    new
        Float:PosX,
        Float:PosY,
        Float:PosZ,
        Float:PlayerSpeedDistance;
       
    GetVehicleVelocity(GetPlayerVehicleID(playerid), PosX, PosY, PosZ);
    PlayerSpeedDistance = floatmul(floatsqroot(floatadd(floatadd(floatpower(PosX, 2), floatpower(PosY, 2)), floatpower(PosZ, 2))), 170.0);
    new
        spe = floatround(PlayerSpeedDistance * 1);
    return spe;
}

Vocк Esta tentando o que eu estou dizendo?
Reply
#12

pawn Код:
if(IsPlayerInRangeOfPoint(i,25.0,X,Y,Z)){
nгo й para o proprio player??
Reply
#13

DraKoN tu continuas trocando as coisas xD.

Olha aparece no msn pa!

tshadow vai ao ****** procurar para que serve um loop.
Reply
#14

pa que? --"
Reply
#15

Para entenderes aquilo que perguntaste sobre o IsPlayerInRangeOfPoint.
Reply
#16

foi a ъnica coisa que encontrei https://sampwiki.blast.hk/wiki/Loop
Reply
#17

Quote:
Originally Posted by tshadow
foi a ъnica coisa que encontrei https://sampwiki.blast.hk/wiki/Loop
Quote daн:

"Loops are usually used to loop through all vehicles or players, and do something to them"

E lк lб isso da wiki de cima a baixo sobre o loop.
Reply
#18

nгo percebi
Reply
#19

Em bom portuguкs:

Um loop й uma acзгo continua/repetida que acontece (duh).

Neste caso os loops aqui no sa-mp que estamos acostumados a utilizar sгo para percorrer por exemplo todos os jogadores conectados ao servidor e fazer-lhes alguma coisa, como por exemplo dar dinheiro a todos os jogadores.

Ex:

pawn Код:
for(new i = 0; i < GetMaxPlayers(); i++) // Comeзamos um loop que percorra todos os slots do servidor (GetMaxPlayers й para indicar que o loop sу percorrerб os slots que o servidor tem).
{
    if(!IsPlayerConnected(i)) continue; // Aqui diz basicamente se o jogador nгo estб conectado para continuar.
    GivePlayerMoney(i, 5000); // Se o jogador estiver conectado receberб 5000$ (todos os jogadores). (Agora aqui o "i" tomou valor de todos os jogadores conectados).
}

Reply
#20

e isso ajuda no um policia tiver num raio de 5m ao pй do jogador, manda uma mensagem??
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)