[Ajuda]Relogio de up -
DrTHE - 09.11.2011
meu relogio de up fica igualado a todos os players
pawn Код:
//topo do gm
//Relуgio UP
new Text:UPRelogio;
new segUP = 0, minUP = 10;
forward RelogioUP();
//ongamemodint
SetTimer("RelogioUP",1000, 1);
UPRelogio = TextDrawCreate(501.000000, 227.000000, " ");
TextDrawBackgroundColor(UPRelogio, 255);
TextDrawFont(UPRelogio, 3);
TextDrawLetterSize(UPRelogio, 0.609999, 1.799999);
TextDrawColor(UPRelogio, -1);
TextDrawSetOutline(UPRelogio, 1);
TextDrawSetProportional(UPRelogio, 1);
//onplayerspawn
TextDrawShowForPlayer(playerid,UPRelogio);
public RelogioUP()
{
new string[256];
if(segUP == 0 && minUP == 0)
{
dini_IntSet(file, "EXP", dini_Int(file, "EXP")+1);
//LevelUP();
}
if(segUP==0){
if(minUP == 0)
minUP = 10;
segUP=59;
minUP--;
}
if(segUP <= 9){ format(string,60,"~p~UP~b~: ~w~%d~b~:~w~0%d",minUP,segUP);
} else {
format(string,60,"~p~UP~b~: ~w~%d~b~:~w~%d",minUP,segUP);
}
TextDrawSetString(UPRelogio,string);
segUP --;
return 1;
}
se possivel se alguem me encinar como eu adiciono um sistema de quando o player logar o relogio continuar de onde parou
Re: [Ajuda]Relogio de up -
Kmatsu - 09.11.2011
Nao testei, mas acho que deve funcionar
pawn Код:
//topo do gm
//Relуgio UP
new Text:UPRelogio[MAX_PLAYERS];
new segUP = 0, minUP = 10;
forward RelogioUP();
//OnPlayerConect
SetTimer("RelogioUP",1000, 1);
UPRelogio[playerid] = TextDrawCreate(501.000000, 227.000000, " ");
TextDrawBackgroundColor(UPRelogio[playerid], 255);
TextDrawFont(UPRelogio[playerid], 3);
TextDrawLetterSize(UPRelogio[playerid], 0.609999, 1.799999);
TextDrawColor(UPRelogio[playerid], -1);
TextDrawSetOutline(UPRelogio[playerid], 1);
TextDrawSetProportional(UPRelogio[playerid], 1);
//onplayerspawn
TextDrawShowForPlayer(playerid,UPRelogio[playerid]);
public RelogioUP()
{
new string[256];
if(segUP == 0 && minUP == 0)
{
dini_IntSet(file, "EXP", dini_Int(file, "EXP")+1);
//LevelUP();
}
if(segUP==0){
if(minUP == 0)
minUP = 10;
segUP=59;
minUP--;
}
if(segUP <= 9){ format(string,60,"~p~UP~b~: ~w~%d~b~:~w~0%d",minUP,segUP);
} else {
format(string,60,"~p~UP~b~: ~w~%d~b~:~w~%d",minUP,segUP);
}
for(new i = 0; i <= MAX_PLAYERS; i++) TextDrawSetString(UPRelogio[i], string);
segUP --;
return 1;
}
Oque й fiz foi mudar a variavel UPRelogio (a variavel que cria o textdraw) para UPRelogio[MAX_PLAYERS], assim criando 1 relogio para kd slot do seu servidor.
Se nao funcionar post ae os erros
Re: [Ajuda]Relogio de up -
DrTHE - 09.11.2011
nem deu to desistindo ja disso
Re: [Ajuda]Relogio de up -
Arthur_BiT - 14.01.2012
Ei Axo melhor se voce fizesse tipo um comando assim:
no GameModeExit:
dai aqui se colocava aquelas funзгo do dini pra salvar o tempo ou o q vc quizer
dai no OnPlayerConnect:
voce colocava a funзгo do dini pra carregar o tempo quando o player tinha saido do jogo
Respuesta: [Ajuda]Relogio de up -
renanmsd - 13.02.2012
Estou usando esse sistema de Relogio UP que й igual a esse do criador do topico!
pawn Код:
//topo do gm
//Relуgio UP
new Text:UPRelogio[MAX_PLAYERS];
new segUP = 0, minUP = 10;
forward RelogioUP();
//OnPlayerConect
SetTimer("RelogioUP",1000, 1);
UPRelogio[playerid] = TextDrawCreate(501.000000, 227.000000, " ");
TextDrawBackgroundColor(UPRelogio[playerid], 255);
TextDrawFont(UPRelogio[playerid], 3);
TextDrawLetterSize(UPRelogio[playerid], 0.609999, 1.799999);
TextDrawColor(UPRelogio[playerid], -1);
TextDrawSetOutline(UPRelogio[playerid], 1);
TextDrawSetProportional(UPRelogio[playerid], 1);
//onplayerspawn
TextDrawShowForPlayer(playerid,UPRelogio[playerid]);
public RelogioUP()
{
new string[256];
if(segUP == 0 && minUP == 0)
{
dini_IntSet(file, "EXP", dini_Int(file, "EXP")+1);
//LevelUP();
}
if(segUP==0){
if(minUP == 0)
minUP = 10;
segUP=59;
minUP--;
}
if(segUP <= 9){ format(string,60,"~p~UP~b~: ~w~%d~b~:~w~0%d",minUP,segUP);
} else {
format(string,60,"~p~UP~b~: ~w~%d~b~:~w~%d",minUP,segUP);
}
for(new i = 0; i <= MAX_PLAYERS; i++) TextDrawSetString(UPRelogio[i], string);
segUP --;
return 1;
}
O meu problema й que depois de um tempo ele n executa a funзгo, ou seja quando o relogio chega a 0 ele n dб a exp para os players. mais isso sу depois do server estб a um tempo online!
alguem ajuda?
Re: [Ajuda]Relogio de up -
Cotoco Topic - 13.02.2012
Topo do gm:
pawn Код:
new segUP[MAX_PLAYERS];// Variavel de Segundos
new minUP[MAX_PLAYERS];// Variavel de Minutos
new Text:UPRelogio[MAX_PLAYERS];//draw do relogio
OnPlayerConnect:
pawn Код:
minUP[playerid] = 9;
segUP[playerid] = 59;
OnGameModeInt:
pawn Код:
for(new i = 0; i < MAX_PLAYERS; i++)
{
SetTimerEx("RelogioUP", 1000, true, "i", i);
UPRelogio[i] = TextDrawCreate(509.000000, 222.000000, " ");
TextDrawBackgroundColor(UPRelogio[i], 255);
TextDrawFont(UPRelogio[i], 3);
TextDrawLetterSize(UPRelogio[i], 0.469998, 1.500000);
TextDrawColor(UPRelogio[i], -1);
TextDrawSetOutline(UPRelogio[i], 1);
TextDrawSetProportional(UPRelogio[i], 1);
}
OnplayerSpawn
pawn Код:
TextDrawShowForPlayer(playerid, UPRelogio[playerid]);
No final do Gm:
pawn Код:
forward RelogioUP(playerid);
public RelogioUP(playerid)
{
new string[256];
if(segUP[playerid] == 0 && minUP[playerid] == 0)
{
new aname[MAX_PLAYER_NAME];
GetPlayerName(playerid, aname, MAX_PLAYER_NAME);
format(file, sizeof(file), PASTA_CONTAS, aname);
if(PlayerInfo[playerid][Logged] == 1)
{
if(AFK[playerid] == 0)
{
dini_IntSet(file, "Tempo", dini_Int(file, "Tempo")+1);
//====== [EXP] ======
if(dini_Int(file, "Tempo") >=1)
{
dini_IntSet(file, "EXP", dini_Int(file, "EXP")+1);
format(string, sizeof(string), "| UP | Vocк ganhou +1 de experiкncia! [ %d / 5 ]",dini_Int(file, "EXP"));
PlayerPlaySound(playerid, 1133, 0, 0, 0);
SendClientMessage(playerid, 0x33AAFFFF, string);
dini_IntSet(file, "Tempo",0);
}
if(dini_Int(file, "EXP") >=5)
{
dini_IntSet(file, "Level", dini_Int(file, "Level")+1);
format(string, sizeof(string), "(INFO) Vocк juntou 5 de respeito, e ganhou +1 level. (%d) ",dini_Int(file, "Level"));
SendClientMessage(playerid, 0x75EA00AA, string);
PlayerPlaySound(playerid, 1057, 0, 0, 0);
dini_IntSet(file, "EXP",0);
}
}
}
}
if(segUP[playerid] == 0)
{
if(minUP[playerid] == 0)
minUP[playerid] = 10;
segUP[playerid] = 59;
minUP[playerid] --;
}
format(string, sizeof(string), "UP: %02d:%02d", minUP[playerid], segUP[playerid]);
TextDrawSetString(UPRelogio[playerid], string);
segUP[playerid] --;
return 1;
}
PS: eu sou o cara do topico... mas como pode ver to banido uii '-'
Respuesta: [Ajuda]Relogio de up -
renanmsd - 13.02.2012
Obrigado agora deu certo!
agora vou tentar por para salvar o tempo que o player sai pra quando voltar comeзar de onde parou!
me fala seu nome para eu por nos creditos.
Valew
Re: [Ajuda]Relogio de up -
[NC]BlackSky - 13.02.2012
Acho q o nick dele e THE_FALLEN mano