Portal SAMP
[Pedido] Contador embaixo na tela. - 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] Contador embaixo na tela. (/showthread.php?tid=1817)

Páginas: 1 2


RE: Contador embaixo na tela. - White_Blue - 07/10/2022

(07/10/2022 14:27)MaxN Escreveu:
(15/07/2022 14:40)White_Blue Escreveu: É um tópico antigo, mas vou deixar minha mensagem se por a caso alguém precisar algum dia.



Como posso deixar em 10 minutos para ganhar, pode me ajudar?

Código PHP:
#define PAYDAY 40 // Defina o tempo do seu PayDay, defini para 40 minutos.

// Variáveis Globais
new Text:PaydayText[2];
new 
PlayerText:PaydayPlayerText[MAX_PLAYERS][1];
new 
PaydayTimer[MAX_PLAYERS];
new 
Timer[MAX_PLAYERS];

public 
OnGameModeInit() {
 
// TextDraws
 
PaydayText[0] = TextDrawCreate(432.058837384.249938"ld_grav:timer");
TextDrawTextSize(PaydayText[0], 24.00000028.000000);
TextDrawAlignment(PaydayText[0], 1);
TextDrawColor(PaydayText[0], -1);
TextDrawSetShadow(PaydayText[0], 0);
TextDrawBackgroundColor(PaydayText[0], 255);
TextDrawFont(PaydayText[0], 4);
TextDrawSetProportional(PaydayText[0], 0);

PaydayText[1] = TextDrawCreate(457.999847394.749969"box");
TextDrawLetterSize(PaydayText[1], 0.000000, -0.070588);
TextDrawTextSize(PaydayText[1], 618.0000000.000000);
TextDrawAlignment(PaydayText[1], 1);
TextDrawColor(PaydayText[1], -1);
TextDrawUseBox(PaydayText[1], 1);
TextDrawBoxColor(PaydayText[1], 255);
TextDrawSetShadow(PaydayText[1], 0);
TextDrawBackgroundColor(PaydayText[1], 255);
TextDrawFont(PaydayText[1], 1);
TextDrawSetProportional(PaydayText[1], 1);
 return 
1;
}

public 
OnPlayerConnect(playerid) {
 
// TextDraws
 
PaydayPlayerText[playerid][0] = CreatePlayerTextDraw(playerid624.588378396.500091"~w~Payday em ~g~40~w~ minutos!");
PlayerTextDrawLetterSize(playeridPaydayPlayerText[playerid][0], 0.4000001.600000);
PlayerTextDrawAlignment(playeridPaydayPlayerText[playerid][0], 3);
PlayerTextDrawColor(playeridPaydayPlayerText[playerid][0], 41215);
PlayerTextDrawSetShadow(playeridPaydayPlayerText[playerid][0], 0);
PlayerTextDrawSetOutline(playeridPaydayPlayerText[playerid][0], 1);
PlayerTextDrawBackgroundColor(playeridPaydayPlayerText[playerid][0], 255);
PlayerTextDrawFont(playeridPaydayPlayerText[playerid][0], 3);
PlayerTextDrawSetProportional(playeridPaydayPlayerText[playerid][0], 1);

MostrarText(playerid);

Timer[playerid] = PAYDAY 60 1;
// Timer
PaydayTimer[playerid] = SetTimerEx("PayDay"1000true"i"playerid);
 return 
1;
}

forward PayDay(i);
public 
PayDay(i)
{
new 
string[128];
Timer[i]--;
format(stringsizeof(string), "~w~Payday em ~g~%s~w~ minutos!"Convert(Timer[i]));
PlayerTextDrawSetString(iPaydayPlayerText[i][0], string);
if(
Timer[i] == 0) {
SetPlayerScore(iGetPlayerScore(i) + 1);
GivePlayerMoney(i2500);
SendClientMessage(i, -1"=========================\nPayday!\n=========================");
PlayerPlaySound(i11370.00.00.0);
Timer[i] = PAYDAY 60 1;
}
return 
1;
}

stock Convert(number) {
new 
hoursminssecsstring[100];
hours floatround(number 3600);
mins floatround((number 60) - (hours 60));
secs floatround(number - ((hours 3600) + (mins 60)));
if(
hours >= 24hours hours 24;

if(
hours 0format(string100"%02d:%02d:%02d"hoursminssecs);
else 
format(string100"%02d:%02d"minssecs);
return 
string;
}

stock MostrarText(playerid) {
for(new 
02i++) TextDrawShowForPlayer(playeridPaydayText[i]);
for(new 
01j++) PlayerTextDrawShow(playeridPaydayPlayerText[playerid][j]);
return 
1;
}

stock EsconderText(playerid) {
for(new 
02i++) TextDrawHideForPlayer(playeridPaydayText[i]);
for(new 
01j++) PlayerTextDrawHide(playeridPaydayPlayerText[playerid][j]);
return 
1;

Está comentado no código que eu deixei, o tempo do Payday está no início do código estava para 40 minutos nesse macro #define PAYDAY 40 basta trocar "40" para "10" .
Código:
#define PAYDAY 10 // 10 minutos