Portal SAMP
[Ajuda] Sou novo e quero resolver este problema - 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] Sou novo e quero resolver este problema (/showthread.php?tid=4140)



Sou novo e quero resolver este problema - nikaqw - 30/10/2023

[font=Consolas, "Courier New", monospace]public UpdateStatusBars(playerid)
{
    // Atualize os indicadores para o jogador
    SendClientMessage(playerid, 0xFFFF00, "{FFFFFF}=== Seu status ===");
    SendClientMessage(playerid, 0xFFFF00, "{FFFFFF}Fome: \n", = (format(playerid, "%0.2f", Fome)));
    SendClientMessage(playerid, 0xFFFF00, "{FFFFFF}Sede: \n", = (format(playerid, "%0.2f", Sede)));
    SendClientMessage(playerid, 0xFFFF00, "{FFFFFF}Sono: \n", = (format(playerid, "%0.2f", Sono)));
    return 1;
}[/font]



ERRO:

C:\Users\yTzkaii\Desktop\Brasil_Flexe_Roleplay\gamemodes\bfrp.pwn(121) : warning 235: public function lacks forward declaration (symbol "UpdateStatusBars")
C:\Users\yTzkaii\Desktop\Brasil_Flexe_Roleplay\gamemodes\bfrp.pwn(125) : error 029: invalid expression, assumed zero
C:\Users\yTzkaii\Desktop\Brasil_Flexe_Roleplay\gamemodes\bfrp.pwn(125) : error 035: argument type mismatch (argument 1)
C:\Users\yTzkaii\Desktop\Brasil_Flexe_Roleplay\gamemodes\bfrp.pwn(125) : error 029: invalid expression, assumed zero
C:\Users\yTzkaii\Desktop\Brasil_Flexe_Roleplay\gamemodes\bfrp.pwn(125) : fatal error 107: too many error messages on one line

Compilation aborted.

Pawn compiler 3.2.3664                  Copyright © 1997-2016, ITB CompuPhase


RE: Sou novo e quero resolver este problema - pushline - 30/10/2023

Você não pode fazer format ou colocar argumentos dentro de SendClientMessage(s) (no samp-server). E o 235 é so dar forward na public.

Código PHP:
// warning 235: public function lacks forward declaration (symbol "UpdateStatusBars")
forward UpdateStatusBars(playerid);
public 
UpdateStatusBars(playerid)
{
    
// Atualize os indicadores para o jogador
    
new stringSCM[20];
    
SendClientMessage(playerid0xFFFF00"{FFFFFF}=== Seu status ===");
    
    
// n era pra ser Fome[playerid] ? essa variável fome parece ser global e não ser pra cada player diferente,
    // e não funciona \n em SendClientMessage tbm (se eu n me engano)
    
format(stringSCMsizeof(stringSCM), "{FFFFFF}Fome: %0.2f"Fome);
    
SendClientMessage(playerid0xFFFF00stringSCM);

    
format(stringSCMsizeof(stringSCM), "{FFFFFF}Sede: %0.2f"Sede);
    
SendClientMessage(playerid0xFFFF00stringSCM, = (format(playerid"%0.2f"Sede)));

    
format(stringSCMsizeof(stringSCM), "{FFFFFF}Sono: %0.2f"Sono);
    
SendClientMessage(playerid0xFFFF00stringSCM, = (format(playerid"%0.2f"Sono)));
    return 
1;




RE: Sou novo e quero resolver este problema - leonardos08bt - 30/10/2023

Como o pushline disse, não é possível colocar argumentos no SendClientMessage;
nem mesmo usar o format do jeito que você usou ("format(playerid, "%0.2f", Sede").


RE: Sou novo e quero resolver este problema - nikaqw - 30/10/2023

C:\Users\yTzkaii\Desktop\Brasil_Flexe_Roleplay\gamemodes\bfrp.pwn(132) : error 029: invalid expression, assumed zero
C:\Users\yTzkaii\Desktop\Brasil_Flexe_Roleplay\gamemodes\bfrp.pwn(132) : error 035: argument type mismatch (argument 1)
C:\Users\yTzkaii\Desktop\Brasil_Flexe_Roleplay\gamemodes\bfrp.pwn(132) : error 029: invalid expression, assumed zero
C:\Users\yTzkaii\Desktop\Brasil_Flexe_Roleplay\gamemodes\bfrp.pwn(132) : fatal error 107: too many error messages on one line

Compilation aborted.

Pawn compiler 3.2.3664                  Copyright © 1997-2016, ITB CompuPhase

(30/10/2023 08:18)pushline Escreveu: Você não pode fazer format ou colocar argumentos dentro de SendClientMessage(s) (no samp-server). E o 235 é so dar forward na public.

Código PHP:
// warning 235: public function lacks forward declaration (symbol "UpdateStatusBars")
forward UpdateStatusBars(playerid);
public 
UpdateStatusBars(playerid)
{
    // Atualize os indicadores para o jogador
    new stringSCM[20];
    SendClientMessage(playerid0xFFFF00"{FFFFFF}=== Seu status ===");
    
    
// n era pra ser Fome[playerid] ? essa variável fome parece ser global e não ser pra cada player diferente,
    // e não funciona \n em SendClientMessage tbm (se eu n me engano)
    format(stringSCMsizeof(stringSCM), "{FFFFFF}Fome: %0.2f"Fome);
    SendClientMessage(playerid0xFFFF00stringSCM);

    format(stringSCMsizeof(stringSCM), "{FFFFFF}Sede: %0.2f"Sede);
    SendClientMessage(playerid0xFFFF00stringSCM, = (format(playerid"%0.2f"Sede)));

    format(stringSCMsizeof(stringSCM), "{FFFFFF}Sono: %0.2f"Sono);
    SendClientMessage(playerid0xFFFF00stringSCM, = (format(playerid"%0.2f"Sono)));
    return 1;


o erro com este cod é:

C:\Users\yTzkaii\Desktop\Brasil_Flexe_Roleplay\gamemodes\bfrp.pwn(132) : error 029: invalid expression, assumed zero
C:\Users\yTzkaii\Desktop\Brasil_Flexe_Roleplay\gamemodes\bfrp.pwn(132) : error 035: argument type mismatch (argument 1)
C:\Users\yTzkaii\Desktop\Brasil_Flexe_Roleplay\gamemodes\bfrp.pwn(132) : error 029: invalid expression, assumed zero
C:\Users\yTzkaii\Desktop\Brasil_Flexe_Roleplay\gamemodes\bfrp.pwn(132) : fatal error 107: too many error messages on one line

Compilation aborted.

Pawn compiler 3.2.3664                  Copyright © 1997-2016, ITB CompuPhase


4 Errors.


RE: Sou novo e quero resolver este problema - k2bi_YT - 30/10/2023

Você tem que ver se as variavel Fome Sede Sono estão corretas o modo de uso e se estão declaradas em Float, basicamente esta sendo uma variavel para geral e não para unico jogador

Código PHP:
forward UpdateStatusBars(playerid);
public 
UpdateStatusBars(playerid)
{
    new 
stringSCM[128];
    
SendClientMessage(playerid0xFFFF00"{FFFFFF}=== Seu status ===");
    
    
//Veja se a variavel (Fome, Sede, Sono) estão declarada publicamente, mas mesmo assim, nesse caso deve usar por exemplo: Fome[playerid]
    
format(stringSCMsizeof(stringSCM), "{FFFFFF}Fome: %0.2f"Fome);
    
SendClientMessage(playerid0xFFFF00stringSCM);

    
format(stringSCMsizeof(stringSCM), "{FFFFFF}Sede: %0.2f"Sede);
    
SendClientMessage(playerid0xFFFF00stringSCM);

    
format(stringSCMsizeof(stringSCM), "{FFFFFF}Sono: %0.2f"Sono);
    
SendClientMessage(playerid0xFFFF00stringSCM);
    return 
1;




RE: Sou novo e quero resolver este problema - nikaqw - 30/10/2023

(30/10/2023 16:24)k2bi_YT Escreveu: Você tem que ver se as variavel Fome Sede Sono estão corretas o modo de uso e se estão declaradas em Float, basicamente esta sendo uma variavel para geral e não para unico jogador

Código PHP:
forward UpdateStatusBars(playerid);
public 
UpdateStatusBars(playerid)
{
    new stringSCM[128];
    SendClientMessage(playerid0xFFFF00"{FFFFFF}=== Seu status ===");
    
    
//Veja se a variavel (Fome, Sede, Sono) estão declarada publicamente, mas mesmo assim, nesse caso deve usar por exemplo: Fome[playerid]
    format(stringSCMsizeof(stringSCM), "{FFFFFF}Fome: %0.2f"Fome);
    SendClientMessage(playerid0xFFFF00stringSCM);

    format(stringSCMsizeof(stringSCM), "{FFFFFF}Sede: %0.2f"Sede);
    SendClientMessage(playerid0xFFFF00stringSCM);

    format(stringSCMsizeof(stringSCM), "{FFFFFF}Sono: %0.2f"Sono);
    SendClientMessage(playerid0xFFFF00stringSCM);
    return 1;


[font=Consolas, "Courier New", monospace]new Float: Fome[MAX_PLAYERS];
new Float: Sede[MAX_PLAYERS];
new Float: Sono[MAX_PLAYERS];[/font]



[font=Consolas, "Courier New", monospace]elas estão assim[/font]


RE: Sou novo e quero resolver este problema - pushline - 30/10/2023

Lol, esqueci de arrumar o format nos dois SendClientMessages(s).
agora nos format é so fazer assim:

Código PHP:
format(stringSCMsizeof(stringSCM), "{FFFFFF}Fome: %0.2f"Fome[playerid]);
SendClientMessage(playerid0xFFFF00stringSCM); 



RE: Sou novo e quero resolver este problema - nikaqw - 30/10/2023

(30/10/2023 16:50)pushline Escreveu: Lol, esqueci de arrumar o format nos dois SendClientMessages(s).
agora nos format é so fazer assim:

Código PHP:
format(stringSCMsizeof(stringSCM), "{FFFFFF}Fome: %0.2f"Fome[playerid]);
SendClientMessage(playerid0xFFFF00stringSCM); 

nika: Aqui está, o erro pesiste agora mostrei todos os componentes usado no codigo!

C:\Users\yTzkaii\Desktop\Brasil_Flexe_Roleplay\gamemodes\bfrp.pwn(132) : error 029: invalid expression, assumed zero
C:\Users\yTzkaii\Desktop\Brasil_Flexe_Roleplay\gamemodes\bfrp.pwn(132) : error 035: argument type mismatch (argument 1)
C:\Users\yTzkaii\Desktop\Brasil_Flexe_Roleplay\gamemodes\bfrp.pwn(132) : error 029: invalid expression, assumed zero
C:\Users\yTzkaii\Desktop\Brasil_Flexe_Roleplay\gamemodes\bfrp.pwn(132) : fatal error 107: too many error messages on one line

Compilation aborted.

Pawn compiler 3.2.3664                  Copyright © 1997-2016, ITB CompuPhase


4 Errors.

=============================================

[font=Consolas, "Courier New", monospace]forward UpdateStatusBars(playerid);
public UpdateStatusBars(playerid)
{
    // Atualize os indicadores para o jogador
    new stringSCM[128];
    SendClientMessage(playerid, 0xFFFF00, "{FFFFFF}=== Seu status ===");

    format(stringSCM, sizeof(stringSCM), "{FFFFFF}Fome: %0.2f", Fome[playerid]);
    SendClientMessage(playerid, 0xFFFF00, stringSCM);

    format(stringSCM, sizeof(stringSCM), "{FFFFFF}Sede: %0.2f", Sede[playerid]);
    SendClientMessage(playerid, 0xFFFF00, stringSCM, = (format(playerid, "%0.2f", Sede)));

    format(stringSCM, sizeof(stringSCM), "{FFFFFF}Sono: %0.2f", Sono[playerid]);
    SendClientMessage(playerid, 0xFFFF00, stringSCM, = (format(playerid, "%0.2f", Sono)));
    return 1;
}[/font]


==================================================

[font=Consolas, "Courier New", monospace]public OnPlayerConnect(playerid)
{
    // Defina os niveis iniciais de fome, sede e sono
    playerFome[playerid] = 100.0;
    playerSede[playerid] = 100.0;
    playerSono[playerid] = 0.0;

    // Atualize os indicadores de fome, sede e sono para o jogador
    UpdateStatusBars(playerid);
    return 1;
}[/font]


=====================================================

[font=Consolas, "Courier New", monospace]new Float: playerFome[MAX_PLAYERS];
new Float: playerSede[MAX_PLAYERS];
new Float: playerSono[MAX_PLAYERS];
new Float: Fome[MAX_PLAYERS];
new Float: Sede[MAX_PLAYERS];
new Float: Sono[MAX_PLAYERS];[/font]



RE: Sou novo e quero resolver este problema - leonardos08bt - 30/10/2023

Código:
forward UpdateStatusBars(playerid);
public UpdateStatusBars(playerid)
{
    // Atualize os indicadores para o jogador
    new stringSCM[128];
    SendClientMessage(playerid, -1, "=== Seu status ===");

    format(stringSCM, sizeof(stringSCM), "Fome: %0.2f", Fome[playerid]);
    SendClientMessage(playerid, -1, stringSCM);

    format(stringSCM, sizeof(stringSCM), "Sede: %0.2f", Sede[playerid]);
    SendClientMessage(playerid, -1, stringSCM);

    format(stringSCM, sizeof(stringSCM), "Sono: %0.2f", Sono[playerid]);
    SendClientMessage(playerid, -1, stringSCM);
    return 1;
}



RE: Sou novo e quero resolver este problema - PT_Player - 01/11/2023

o Formato da cor nao esta correcto tem de ser 0xRRGGBBAA Hex format