[Ajuda] bug estranho.
#1

Bom, vamos lб, essa й a stock de verificaзгo pra verificar se o jogador estб perto de um barco de pescador...

PHP код:
stock EstaPertoBarcoPescador(playerid)
{
    new 
Float:XpFloat:YpFloat:ZpValor 0;
    
    
GetVehiclePos(72XpYpZp), GetVehiclePos(73XpYpZp), GetVehiclePos(74XpYpZp),
    
GetVehiclePos(75XpYpZp), GetVehiclePos(76XpYpZp), GetVehiclePos(77XpYpZp);
    if(
IsPlayerInRangeOfPoint(playerid30.0XpYpZp))
    {
        
Valor 1// True
    
}
    else
    {
        
Valor 0// Falso
    
}
    return 
Valor;

Tentei passar um Loop entre os valores 72 e 77, e sempre sу retorna o ъltimo barco, ou seja 77.

Como estou usando a verificaзгo:

PHP код:
CMD:pescar(playeridparams[])
{
    new 
porte[15];
    if(
sscanf(params"s[15]"porte)) return SCM(playeridCOLOR_ERRO"| ERRO | Digite: /Pescar [Porte], Portes Existentes: Baixo, Medio, Alto.");
    if(
PlayerInfo[playerid][Prof] != PROF_PESCADOR) return SCM(playeridCOLOR_ERRO"| ERRO | Vocк nгo й um(a) Pescador(a).");
    
//Baixo
    
if(!strcmp(porte"baixo"true))
    {
        if(
IsPlayerInPlace(playerid, -789.3403,441.1166, -694.0235,540.2366))
        {
            if(
GetPlayerCash(playerid) > 100)
            {
                if(
Pescando[playerid] == false)
                {
                    if(
EstaPertoBarcoPescador(playerid))
                    {
                           new 
jstring[400];
                        
Pescando[playerid] = true;
                        
format(jstringsizeof(jstring), "{808040}Pescador: {FFFFFF}Agora vocк estб pescando na Gang Zone que irб te dar esses tipos de peixes:");
                        
format(jstringsizeof(jstring), "%s\n\n{808040}Peixes: {FFFFFF}Preзos Mйdios - Sardinha %d R$ | Traнra %d R$ | Tilбpia %d R$."jstringVALOR_KG_SARDINHAVALOR_KG_TRAIRAVALOR_KG_TILAPIA);
                        
format(jstringsizeof(jstring), "%s\n\n{FFFF00}Aviso: {FFFFFF}Esses preзos podem variar, mas й o valor do Kilo, se vocк for vender."jstring);
                        
format(jstringsizeof(jstring), "%s\n\n{808040}Pesca: {FFFFFF}Espere 1 Minuto e 30 Segundos para terminar a pesca... e nгo saia da бrea de pesca."jstring);
                        
ShowPlayerDialog(playeridAVISO_PESCADIALOG_STYLE_MSGBOX"{FFFF00}Pescando.. Informaзхes"jstring"Fechar""");
                        
SetTimerEx("TerminoPesca"SEGUNDOS 5false"i"playerid);
                        
sGivePlayerCash(playerid, - 100);
                    }
                    else return 
SCM(playeridCOLOR_ERRO"| ERRO | Vocк nгo estб perto de um barco.");
                }
                else return 
SCM(playeridCOLOR_ERRO"| ERRO | Vocк jб estб pescando...");
            }
            else return 
SCM(playeridCOLOR_ERRO"| ERRO | Vocк precisa ter 100 R$ para comprar uma vara, se nгo, vocк nгo pesca.");
        }
    } 
Como eu disse acima, sу da pra pescar com o barco id 77, eu vejo pelo id dos barcos pelo /dl, tб tudo certinho.
Reply
#2

Vocк estб pegando as posiзхes e colocando todas na mesma variбvel, entгo o valor dela serб o do ъltimo barco.
pawn Код:
stock EstaPertoBarcoPescador(playerid)
{
    new Float:Xp, Float:Yp, Float:Zp;
    for(new i = 72; i != 77; i++)
    {
      GetVehiclePos(i, Xp, Yp, Zp);
      if(IsPlayerInRangeOfPoint(playerid, 30.0, Xp, Yp, Zp))
      {
         return 1;
      }
    }

    return 0;
}
Reply
#3

Quote:
Originally Posted by Ermanhaut
Посмотреть сообщение
Vocк estб pegando as posiзхes e colocando todas na mesma variбvel, entгo o valor dela serб o do ъltimo barco.
pawn Код:
stock EstaPertoBarcoPescador(playerid)
{
    new Float:Xp, Float:Yp, Float:Zp;
    for(new i = 72; i != 77; i++)
    {
      GetVehiclePos(i, Xp, Yp, Zp);
      if(IsPlayerInRangeOfPoint(playerid, 30.0, Xp, Yp, Zp))
      {
         return 1;
      }
    }

    return 0;
}
Vlw amigo!!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)