Portal SAMP
[Pedido] Gm segunda vida online sem erro - 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: [Pedido] Gm segunda vida online sem erro (/showthread.php?tid=3987)



Gm segunda vida online sem erro - Nenem - 20/09/2023

Boa tarde/boa dia ,estou a procura da gm segunda vida online .sem erros,pois o erro ao baixat na net e este e nao sei resolver.


RE: Gm segunda vida online sem erro - xbruno1000x - 20/09/2023

(20/09/2023 19:40)Nenem Escreveu: Boa tarde/boa dia ,estou a procura da gm segunda vida online .sem erros,pois o erro ao baixat na net e este e nao sei resolver.

O seu Pawno não está lendo as includes. Qualquer um GM não vai ser compilado se as includes não estiverem sendo lidas. Dá uma procurada sobre como resolver esse erro no ExaGear, pois nunca usei ele e não faço ideia de como resolver.


RE: Gm segunda vida online sem erro - Nenem - 21/09/2023

(20/09/2023 21:00)xbruno1000x Escreveu:
(20/09/2023 19:40)Nenem Escreveu: Boa tarde/boa dia ,estou a procura da gm segunda vida online .sem erros,pois o erro ao baixat na net e este e nao sei resolver.

O seu Pawno não está lendo as includes. Qualquer um GM não vai ser compilado se as includes não estiverem sendo lidas. Dá uma procurada sobre como resolver esse erro no ExaGear, pois nunca usei ele e não faço ideia de como resolver.

A messagem esta programada no include  numa include .bar


RE: Gm segunda vida online sem erro - White_Blue - 21/09/2023

(21/09/2023 17:12)Nenem Escreveu:
(20/09/2023 21:00)xbruno1000x Escreveu:
(20/09/2023 19:40)Nenem Escreveu: Boa tarde/boa dia ,estou a procura da gm segunda vida online .sem erros,pois o erro ao baixat na net e este e nao sei resolver.

O seu Pawno não está lendo as includes. Qualquer um GM não vai ser compilado se as includes não estiverem sendo lidas. Dá uma procurada sobre como resolver esse erro no ExaGear, pois nunca usei ele e não faço ideia de como resolver.

A messagem esta programada no include  numa include .bar

Isso é um problema no seu ambiente, pois não está conseguindo localizar a include a_samp(API do SA-MP).

O que você pode fazer para resolver:
1. Verifique se a include está corretamente localizada no diretório "pawno/include".
2. Caso a include esteja localizada no diretório "pawno/include", abra a include que está mostrando o erro e procure pela diretiva #tryinclude <a_samp> ou #include <a_samp> e remova essa linha.
3. Caso a include "a_samp" não esteja localizada no diretório "pawno/include" baixe o servidor do site oficial do SA-MP(https://www.sa-mp.com/download.php) e extraia a include "a_samp" do servidor que você baixou para a pasta "pawno/include" da sua gamemode.


RE: Gm segunda vida online sem erro - Nenem - 21/09/2023

O problema e um sistema que esta dentro de uma include chamada progressbar.inc,que esta escrito na gm ao compilar

(21/09/2023 17:22)White_Blue Escreveu:
(21/09/2023 17:12)Nenem Escreveu:
(20/09/2023 21:00)xbruno1000x Escreveu:
(20/09/2023 19:40)Nenem Escreveu: Boa tarde/boa dia ,estou a procura da gm segunda vida online .sem erros,pois o erro ao baixat na net e este e nao sei resolver.

O seu Pawno não está lendo as includes. Qualquer um GM não vai ser compilado se as includes não estiverem sendo lidas. Dá uma procurada sobre como resolver esse erro no ExaGear, pois nunca usei ele e não faço ideia de como resolver.

A messagem esta programada no include  numa include .bar

Isso é um problema no seu ambiente, pois não está conseguindo localizar a include a_samp(API do SA-MP).

O que você pode fazer para resolver:
1. Verifique se a include está corretamente localizada no diretório "pawno/include".
2. Caso a include esteja localizada no diretório "pawno/include", abra a include que está mostrando o erro e procure pela diretiva #tryinclude <a_samp> ou #include <a_samp> e remova essa linha.
3. Caso a include "a_samp" não esteja localizada no diretório "pawno/include" baixe o servidor do site oficial do SA-MP(https://www.sa-mp.com/download.php) e extraia a include "a_samp" do servidor que você baixou para a pasta "pawno/include" da sua gamemode.
Não deu, é isto que esta no progressbar.inc. Esta certo?

Código:
/**
*  Progress Bar 1.3.1.0
*  Copyright 2007-2010 Infernus' Group,
*  Flávio Toribio ([email protected])
*/

#if defined _progress_included
#endinput
#endif

#if !defined _samp_included
#tryinclude <a_samp>
#if !defined _samp_included
#error could not locate a_samp.inc file, please check your server includes
#endif
#endif

#tryinclude <foreach>

#define _progress_included
#define _progress_version 0x1310

#define MAX_BARS (MAX_TEXT_DRAWS / 3)
#define INVALID_BAR_VALUE (Float:0xFFFFFFFF)
#define INVALID_BAR_ID (Bar:-1)
#define pb_percent(%1,%2,%3,%4) ((%1 - 6.0) + ((((%1 + 6.0 + %2 - 2.0) - %1) / %3) * %4))
//pb_percent(x, width, max, value)

/* Pawno/Infernus Pawn Editor function list
native Bar:CreateProgressBar(Float:x, Float:y, Float:width=55.5, Float:height=3.2, color, Float:max=100.0);
native DestroyProgressBar(Bar:barid);
native ShowProgressBarForPlayer(playerid, Bar:barid);
native HideProgressBarForPlayer(playerid, Bar:barid);
native ShowProgressBarForAll(Bar:barid);
native HideProgressBarForAll(Bar:barid);
native SetProgressBarValue(Bar:barid, Float:value);
native Float:GetProgressBarValue(Bar:barid);
native SetProgressBarMaxValue(Bar:barid, Float:max);
native SetProgressBarColor(Bar:barid, color);
native UpdateProgressBar(Bar:barid, playerid=INVALID_PLAYER_ID);
*/

forward Bar:CreateProgressBar(Float:x, Float:y, Float:width=55.5, Float:height=3.2, color, Float:max=100.0);
forward Float:GetProgressBarValue(Bar:barid);

enum e_bar
{
Float:pb_x,
Float:pb_y,
Float:pb_w,
Float:pb_h,
Float:pb_m,
Float:pb_v,
Text:pb_t1,
Text:pb_t2,
Text:pb_t3,
pb_color,
bool:pb_created
}

static Bars[MAX_BARS][e_bar];

stock Bar:CreateProgressBar(Float:x, Float:y, Float:width=55.5, Float:height=3.2, color, Float:max=100.0)
{
new
barid;

for(barid = 0; barid < sizeof Bars; ++barid)
if(!Bars[barid][pb_created]) break;

if(Bars[barid][pb_created] || barid == sizeof Bars)
return INVALID_BAR_ID;

new Text:in_t = Bars[barid][pb_t1] = TextDrawCreate(x, y, "_");
TextDrawUseBox (in_t, 1);
TextDrawTextSize (in_t, x + width, 0.0);
TextDrawLetterSize (in_t, 1.0, height / 10);
TextDrawBoxColor (in_t, 0x00000000 | (color & 0x000000FF));

in_t = Bars[barid][pb_t2] = TextDrawCreate(x + 1.2, y + 2.15, "_");
TextDrawUseBox (in_t, 1);
TextDrawTextSize (in_t, x + width - 2.0, 0.0);
TextDrawLetterSize (in_t, 1.0, height / 10 - 0.35);
TextDrawBoxColor (in_t, (color & 0xFFFFFF00) | (0x66 & ((color & 0x000000FF) / 2)));

in_t = Bars[barid][pb_t3] = TextDrawCreate(x + 1.2, y + 2.15, "_");
TextDrawTextSize (in_t, pb_percent(x, width, max, 1.0), 0.0);
TextDrawLetterSize (in_t, 1.0, height / 10 - 0.35);
TextDrawBoxColor (in_t, color);

Bars[barid][pb_x] = x;
Bars[barid][pb_y] = y;
Bars[barid][pb_w] = width;
Bars[barid][pb_h] = height;
Bars[barid][pb_m] = max;
Bars[barid][pb_color] = color;
Bars[barid][pb_created] = true;
return Bar:barid;
}

stock DestroyProgressBar(Bar:barid)
{
if(barid != INVALID_BAR_ID && Bar:-1 < barid < Bar:MAX_BARS)
{
if(!Bars[_:barid][pb_created])
return 0;

TextDrawDestroy(Bars[_:barid][pb_t1]);
TextDrawDestroy(Bars[_:barid][pb_t2]);
TextDrawDestroy(Bars[_:barid][pb_t3]);

Bars[_:barid][pb_t1] = Text:0;     
Bars[_:barid][pb_t2] = Text:0;     
Bars[_:barid][pb_t3] = Text:0;
Bars[_:barid][pb_x] = 0.0;
Bars[_:barid][pb_y] = 0.0;
Bars[_:barid][pb_w] = 0.0;
Bars[_:barid][pb_h] = 0.0;
Bars[_:barid][pb_m] = 0.0;
Bars[_:barid][pb_v] = 0.0;
Bars[_:barid][pb_color] = 0;
Bars[_:barid][pb_created] = false;
return 1;
}
return 0;
}

stock ShowProgressBarForPlayer(playerid, Bar:barid)
{
if(IsPlayerConnected(playerid) && barid != INVALID_BAR_ID && Bar:-1 < barid < Bar:MAX_BARS)
{
if(!Bars[_:barid][pb_created])
return 0;

TextDrawShowForPlayer(playerid, Bars[_:barid][pb_t1]);
TextDrawShowForPlayer(playerid, Bars[_:barid][pb_t2]);
TextDrawShowForPlayer(playerid, Bars[_:barid][pb_t3]);
return 1;
}
return 0;
}

stock HideProgressBarForPlayer(playerid, Bar:barid)
{
if(IsPlayerConnected(playerid) && barid != INVALID_BAR_ID && Bar:-1 < barid < Bar:MAX_BARS)
{
if(!Bars[_:barid][pb_created])
return 0;

TextDrawHideForPlayer(playerid, Bars[_:barid][pb_t1]);
TextDrawHideForPlayer(playerid, Bars[_:barid][pb_t2]);
TextDrawHideForPlayer(playerid, Bars[_:barid][pb_t3]);
return 1;
}
return 0;
}

stock SetProgressBarValue(Bar:barid, Float:value)
{
if(barid == INVALID_BAR_ID || Bar:MAX_BARS < barid < Bar:-1)
return 0;

if(Bars[_:barid][pb_created])
{
value =
(value < 0.0) ? (0.0) : (value > Bars[_:barid][pb_m]) ? (Bars[_:barid][pb_m]) : (value);

TextDrawUseBox(Bars[_:barid][pb_t3], value > 0.0);

        Bars[_:barid][pb_v] = value;

TextDrawTextSize(Bars[_:barid][pb_t3],
pb_percent(Bars[_:barid][pb_x], Bars[_:barid][pb_w], Bars[_:barid][pb_m], value), 0.0);

return 1;
}
return 0;
}

stock Float:GetProgressBarValue(Bar:barid)
{
if(barid == INVALID_BAR_ID || Bar:MAX_BARS < barid < Bar:-1)
return INVALID_BAR_VALUE;

if(Bars[_:barid][pb_created])
return Bars[_:barid][pb_v];

return INVALID_BAR_VALUE;
}

stock SetProgressBarMaxValue(Bar:barid, Float:max)
{
if(barid == INVALID_BAR_ID || Bar:MAX_BARS < barid < Bar:-1)
return 0;

if(Bars[_:barid][pb_created])
{
Bars[_:barid][pb_m] = max;
SetProgressBarValue(barid, Bars[_:barid][pb_v]);
return 1;
}
return 0;
}

stock SetProgressBarColor(Bar:barid, color)
{
if(barid == INVALID_BAR_ID || Bar:MAX_BARS < barid < Bar:-1)
return 0;

if(Bars[_:barid][pb_created])
{
Bars[_:barid][pb_color] = color;
TextDrawBoxColor(Bars[_:barid][pb_t1], 0x00000000 | (color & 0x000000FF));

TextDrawBoxColor(Bars[_:barid][pb_t2],
(color & 0xFFFFFF00) | (0x66 & ((color & 0x000000FF) / 2)));

TextDrawBoxColor(Bars[_:barid][pb_t3], color);
return 1;
}
return 0;
}

stock ShowProgressBarForAll(Bar:barid)
{
#if defined _foreach_included
foreach(Player, i)
#else
for(new i = 0; i < MAX_PLAYERS; ++i)
if(IsPlayerConnected(i))
#endif
#if defined IsPlayerNPC
if(!IsPlayerNPC(i))
#endif
{
ShowProgressBarForPlayer(i, barid);
}
return 1;
}

stock HideProgressBarForAll(Bar:barid)
{
#if defined _foreach_included
foreach(Player, i)
#else
for(new i = 0; i < MAX_PLAYERS; ++i)
if(IsPlayerConnected(i))
#endif
#if defined IsPlayerNPC
if(!IsPlayerNPC(i))
#endif
{
HideProgressBarForPlayer(i, barid);
}
return 1;
}

stock UpdateProgressBar(Bar:barid, playerid=INVALID_PLAYER_ID)
{
if(playerid == INVALID_PLAYER_ID)
{
return ShowProgressBarForAll(barid);
} else {
return ShowProgressBarForPlayer(playerid, barid);
}
}