Problema contagem de segundos![AJUDA] -
TatuTM - 09.01.2016
Eu tenho um problema q й assim :
Tipo tem um sistema de duelo no meu gm, e nesse sistema a a contagem de segundos q durou este duelo porem acontece um bug chato assim vou explicar:
quando comeзa o duelo tem esse codigo :
e quando acaba ;
Код:
new TempoDoDuelo = gettime() - Tempo;
porem tipo da para criar varios duelos pelos players ao mesmo tempo intao se alguem comeзar outro duel enquanto um duelo ja esta ocorrendo os segundos sao resetados, tipo tem vezes q a pessoa comeзa um duelo bem na hora q o outro duelo acaba, dae da o mensagem do fim do duelo :
Код:
O "joagador1" Venceu "Jogador2" em 1 segundos.
tem como vcs me ajudarem ?
Respuesta: Problema contagem de segundos![AJUDA] -
Parka - 09.01.2016
vocк tem que usar matrizes.
Re: Problema contagem de segundos![AJUDA] -
JonathanFeitosa - 09.01.2016
Vocк que bloquear os players a usarem o comando enquanto jб estiver tendo ou quer que vбrios players utilizem ao mesmo tempo?
Re: Problema contagem de segundos![AJUDA] -
TatuTM - 09.01.2016
varios player usem ao mesmo tempo porem nao de esse bug chato kk
Respuesta: Problema contagem de segundos![AJUDA] -
TatuTM - 28.01.2016
alguem ?
Re: Problema contagem de segundos![AJUDA] -
[BOPE]Seu._.Madruga - 29.01.2016
PHP код:
CMD:duelar(playerid, params[])
{
new idplayer, string[124], aname[MAX_PLAYER_NAME];
if(sscanf(params, "u", idplayer)) return SendClientMessage(playerid, -1, "[ ERRO ] use: /duelar [id/nick do player]");
if(PlayerDuelo[playerid][playerid][EmDuelo] == 1) return SendClientMessage(playerid, -1, "[ ERRO ] Vocк jб estб em um duelo !");
if(PlayerDuelo[idplayer][idplayer][EmDuelo] == 1) return SendClientMessage(playerid, -1, "[ ERRO ] O player que vocк convidou jб estб em duelo!");
PlayerDuelo[idplayer][idplayer][ConviteDuelo] = playerid;
PlayerDuelo[idplayer][idplayer][Convidado] = 1;
GetPlayerName(playerid, aname, sizeof(aname));
format(string, sizeof(string), "[>] O(A) jogador(a) %s estб te convidando para duelar! use: /duelo aceitar ou /duelo recusar", aname);
SendClientMessage(idplayer, -1, string);
return 1;
}
CMD:duelo(playerid, params[])
{
new funcao[50], string[124], conversao, aname[MAX_PLAYER_NAME], pname[MAX_PLAYER_NAME];
if(sscanf(params, "s[50]", funcao)) return SendClientMessage(playerid, -1, "[ ERRO ] use: /duelo [aceitar - recusar]");
if(strfind(funcao, "aceitar", true) != -1)
{
if(PlayerDuelo[playerid][playerid][EmDuelo] == 1) return SendClientMessage(playerid, -1, "[ ERRO ] Vocк jб estб em um duelo !");
conversao = PlayerDuelo[playerid][playerid][ConviteDuelo];
if(PlayerDuelo[playerid][playerid][Convidado] == 0) return SendClientMessage(playerid, -1, "[ ERRO ] Vocк nгo foi convidado para nenhum duelo!");
if(PlayerDuelo[conversao][conversao][EmDuelo] == 1) return SendClientMessage(playerid, -1, "[ ERRO ] O player que tinha te convidado jб estб duelando com outra pessoa!");
SetPlayerPos(playerid, 0000.0000, 0000.0000, 0000.0000);
SetPlayerPos(PlayerDuelo[playerid][playerid][ConviteDuelo], 0000.0000, 0000.0000, 0000.0000);
GetPlayerName(playerid, aname, sizeof(aname));
GetPlayerName(playerid, pname, sizeof(pname));
format(string, sizeof(string), "[>] O(A) jogador(a) %s aceitou o convite de duelo !", aname);
SendClientMessage(PlayerDuelo[playerid][playerid][ConviteDuelo], -1, string);
format(string, sizeof(string), "[>] O(A) jogador(a) %s e o(a) jogador(a) %s iniciaram um duelo !", aname, pname);
SendClientMessageToAll(-1, string);
SendClientMessage(playerid, -1, "[>] Vocк aceitou o duelo, boa sorte !");
PlayerDuelo[playerid][playerid][Tempo] = gettime();
PlayerDuelo[conversao][conversao][Tempo] = gettime();
return 1;
}
if(strfind(funcao, "recusar", true) != -1)
{
if(PlayerDuelo[playerid][playerid][Convidado] == 0) return SendClientMessage(playerid, -1, "[ ERRO ] Vocк nгo foi convidado para nenhum duelo!");
GetPlayerName(playerid, aname, sizeof(aname));
format(string, sizeof(string), "[>] O(A) jogador(a) %s recusou o convite de duelo !", aname);
SendClientMessage(PlayerDuelo[playerid][playerid][ConviteDuelo], -1, string);
SendClientMessage(playerid, -1, "[>] Vocк recusou o convite de duelo!");
return 1;
}
return 1;
}
//Final do duelo
PlayerDuelo[playerid][playerid][TempoDoDuelo] = (gettime() - PlayerDuelo[playerid][playerid][Tempo]);
Respuesta: Problema contagem de segundos![AJUDA] -
TatuTM - 03.02.2016
eu nao quero um novo sistema de duelos '-'
Re: Respuesta: Problema contagem de segundos![AJUDA] -
Ever_SH - 03.02.2016
Quote:
Originally Posted by TatuTM
eu nao quero um novo sistema de duelos '-'
|
Mas usa o dele como base para arrumar o seu.
Re: Respuesta: Problema contagem de segundos![AJUDA] -
[BOPE]Seu._.Madruga - 03.02.2016
Quote:
Originally Posted by Ever_SH
Mas usa o dele como base para arrumar o seu.
|
HSUAHSAUH foda que alйm de eu fazer o cara ainda fala que nгo quer um novo sistema.
Entгo continua com o seu todo bugado ai! tnc u.u
Re: Problema contagem de segundos![AJUDA] -
fdsda - 03.02.2016
lanзa uma variavel, mais facil..
Ex:
PHP код:
new usandoduelo; //criando a variavel.
public OnPlayerDisconnect // ao desconectar o variavel retornarб a 0 = false.
{
usandoduelo = 0;
}
public OnPlayerSpawn // quando acabar o duelo e o player spawnar no local onde voce colocou, o duelo vai liberar.
{
usandoduelo = 0;
}
if(!strcmp(cmd, "/duelar", true)) // quando o player usar o comando
{
if(IsPlayerConnected(playerid)) // define que ele so pode usar conectado (se quiser, pode tirar.)
{
if(usandoduelo > 0) // se a variavel for maior que 0 ou seja = 1 ele irб fazer com que nao deixe ngm mais usar
{
SendClientMessage(playerid,COLOR_GRAD3,"Ja esta tendo um duelo, espere terminar!"); // mensagem pra quem quiser usar
return 1;
// resto da sua funзao do duelo
}
}
}
agora em cima desse codigo de quando inicia o duelo.
usandoduelo = 1;
Tempo = gettime();
//resto da funзao
espero que ajude, caso falte algo, me lembre..