07/01/2023 11:16
(Esta mensagem foi modificada pela última vez a: 07/01/2023 11:30 por MarcosBrazz.)
Essas corrigem seus problemas:
Bayside & El quebrados marcando SF (El quebrados não achei qual o "estado" oficial de la então coloquei para o "estado" mais próximo, SF e por estar bem próximo de bayside)
Montgomery completo marcando em LS
Veja essa mensagem citada para tentar entender como é feita essas funções:
Bayside & El quebrados marcando SF (El quebrados não achei qual o "estado" oficial de la então coloquei para o "estado" mais próximo, SF e por estar bem próximo de bayside)
Montgomery completo marcando em LS
Código PHP:
static stock IsPlayerInSF(playerid)
{
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid, x, y, z);
if(x >= -2954.502 && y >= -3012.892 && x <= -1072.0885 && y <= 3226.4199) return 1;
else if(x >= -1346.4348 && y >= 2365.0273 && x <= -2911.6282 && y <= 3081.9246) return 1;
else return 0;
}
static stock IsPlayerInLS(playerid)
{
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid, x, y, z);
if(x >= -922.5522 && y >= -2791.012 && x <= 2985.7551 && y <= 524.7400) return 1;
else return 0;
}
static stock IsPlayerInLV(playerid)
{
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid, x, y, z);
if(x >= -1307.922 && y >= 490.4708 && x <= 2977.858 && y <= 3153.026) return 1;
else return 0;
}
Citar:Malz por não te responder antes, fiquei um tempo sem entrar.Mensagem do: @Mathews
Então cara, essas cordenadas são pegas na transversal, você pega a primeira coordenada no ponto A e depois anda/corre em linha reta e pega a segunda coordenada no ponto B.
Observação: Só vai preicsar de X e Y.
Ex.:
Ponto A: X, Y
1683.59375, -2160.15625,-33.5000000
Ponto B: X, Y
1958.984375, -1960.9375,-20.5000000
Ponto A: X
X Mínimo: 1683.59375
Ponto B: X
X Máximo: 1958.984375
Ponto A: Y
Y Máximo: -1960.9375
Ponto B: Y
Y Mínimo: -2160.15625
Lembrete: Quando o numeral está negativo o que se aproximar mais de ZERO é maior, -1960.9375 > -2160.15625.
if(x >= X Mínimo: 1683.59375 && y >= Y Mínimo: -2160.15625 && x <= X Máximo: 1958.984375 && y <= -Y Máximo: -1960.9375) return 1;
if(x >= 1683.59375 && y >= -2160.15625 && x <= 1958.984375 && y <= -1960.9375) return 1;
if(x >= minx && y >= miny && x <= maxx && y <= -maxy) return 1;
OU
Você pode usar esse site para pegar as posições com mais facilidade,
https://dev.prineside.com/en/gtasa_gangzone_editor/