Portal SAMP
[Ajuda] Exception in floatstr - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] Exception in floatstr (/showthread.php?tid=4229)



Exception in floatstr - L10motos - 21/11/2023

Migrei pro open mp mais as vezes aparece essa mensagem no omp-server:


Citar:[2023-11-22T00:31:45-0200] [Info] [PAWN-LOG] ERROR: Exception in floatstr: "invalid stof argument"


O que é isso?


RE: Exception in floatstr - pushline - 22/11/2023

Algum floatstr que você está usando que tem caracteres na string, ao invés de só numero. Estilo -> floatstr("hi") invés de floatstr("6.0").


RE: Exception in floatstr - L10motos - 22/11/2023

(22/11/2023 08:07)pushline Escreveu: Algum floatstr que você está usando que tem caracteres na string, ao invés de só numero. Estilo -> floatstr("hi") invés de floatstr("6.0").

O que esta errado?

Código PHP:
forward LoadGarages();
public 
LoadGarages()
{
    new 
arrCoords[5][64]; new string[128];
    new 
Filefile fopen("general/garages.cfg",io_read);
    if(
file)
    {
        for(new 
idx 0idx sizeof(GarageInfo); idx++)
        {
            
fread(filestring);
            
split(stringarrCoords',');
            
GarageInfo[idx][gActivated] = strval(arrCoords[0]);
            
GarageInfo[idx][gEntrancex] = floatstr(arrCoords[1]);
            
GarageInfo[idx][gEntrancey] = floatstr(arrCoords[2]);
            
GarageInfo[idx][gEntrancez] = floatstr(arrCoords[3]);
            
GarageInfo[idx][gAngle] = floatstr(arrCoords[4]);
        }
        
fclose(file);
    }
    return 
1;
}

        format(stringsizeof(string), "%s"DOF2_GetString(file"entrance"));  split(stringp',');
        SBizzInfo[sb][sbEntranceX] = floatstr(p[0]); SBizzInfo[sb][sbEntranceY] = floatstr(p[1]); SBizzInfo[sb][sbEntranceZ] = floatstr(p[2]);
        format(stringsizeof(string), "%s"DOF2_GetString(file"exit"));  split(stringp',');
        SBizzInfo[sb][sbExitX] = floatstr(p[0]); SBizzInfo[sb][sbExitY] = floatstr(p[1]); SBizzInfo[sb][sbExitZ] = floatstr(p[2]);
        format(stringsizeof(string), "%s"DOF2_GetString(file"action1"));  split(stringp',');

        SBizzInfo[sb][sbAction1X] = floatstr(p[0]); SBizzInfo[sb][sbAction1Y] = floatstr(p[1]); SBizzInfo[sb][sbAction1Z] = floatstr(p[2]); SBizzInfo[sb][sbAction1W] = strval(p[3]);
        format(stringsizeof(string), "%s"DOF2_GetString(file"action2"));  split(stringp',');
        SBizzInfo[sb][sbAction2X] = floatstr(p[0]); SBizzInfo[sb][sbAction2Y] = floatstr(p[1]); SBizzInfo[sb][sbAction2Z] = floatstr(p[2]); SBizzInfo[sb][sbAction2W] = strval(p[3]);
        format(stringsizeof(string), "%s"DOF2_GetString(file"warehouse"));  split(stringp',');
        SBizzInfo[sb][sbWarehouseX] = floatstr(p[0]); SBizzInfo[sb][sbWarehouseY] = floatstr(p[1]); SBizzInfo[sb][sbWarehouseZ] = floatstr(p[2]); 



RE: Exception in floatstr - pushline - 22/11/2023

veja os valores com printf da variavel "p" que vêm da string dentro do "split" e verá a razão pela qual está a receber o argumento invalid stof
a parte ruim é encontrar ONDE está o principal causador do invalid stof


RE: Exception in floatstr - L10motos - 22/11/2023

(22/11/2023 11:41)pushline Escreveu: veja os valores com printf da variavel "p" que vêm da string dentro do "split" e verá a razão pela qual está a receber o argumento invalid stof
a parte ruim é encontrar ONDE está o principal causador do invalid stof

Na print que fiz aparece isso:

Citar:[2023-11-22T12:51:19-0200] [Info] 4X|

codigo:
Código PHP:
        format(stringsizeof(string), "%s"DOF2_GetString(file"entrance"));  split(stringp',');
        SBizzInfo[sb][sbEntranceX] = floatstr(p[0]);
        SBizzInfo[sb][sbEntranceY] = floatstr(p[1]);
        SBizzInfo[sb][sbEntranceZ] = floatstr(p[2]);
        printf("%s"p);
        format(stringsizeof(string), "%s"DOF2_GetString(file"exit"));  split(stringp',');
        SBizzInfo[sb][sbExitX] = floatstr(p[0]);
        SBizzInfo[sb][sbExitY] = floatstr(p[1]);
        SBizzInfo[sb][sbExitZ] = floatstr(p[2]);
        printf("%s"p);
        format(stringsizeof(string), "%s"DOF2_GetString(file"action1"));  split(stringp',');
        SBizzInfo[sb][sbAction1X] = floatstr(p[0]);
        SBizzInfo[sb][sbAction1Y] = floatstr(p[1]);
        SBizzInfo[sb][sbAction1Z] = floatstr(p[2]);
        SBizzInfo[sb][sbAction1W] = strval(p[3]);
        printf("%s"p);
        format(stringsizeof(string), "%s"DOF2_GetString(file"action2"));  split(stringp',');
        SBizzInfo[sb][sbAction2X] = floatstr(p[0]);
        SBizzInfo[sb][sbAction2Y] = floatstr(p[1]);
        SBizzInfo[sb][sbAction2Z] = floatstr(p[2]);
        SBizzInfo[sb][sbAction2W] = strval(p[3]);
        printf("%s"p);
        format(stringsizeof(string), "%s"DOF2_GetString(file"warehouse"));  split(stringp',');
        SBizzInfo[sb][sbWarehouseX] = floatstr(p[0]);
        SBizzInfo[sb][sbWarehouseY] = floatstr(p[1]);
        SBizzInfo[sb][sbWarehouseZ] = floatstr(p[2]);
        printf("%s"p); 

Alguém teria uma função diferente dessa foatstr para eu trocar, essa função tah dando muito erros.


RE: Exception in floatstr - pushline - 22/11/2023

Não é erro da função Wink, é algo da desse split estranhão ai que tá cagando tudo.