elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Duda en código.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda en código.  (Leído 1,590 veces)
onetake

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Duda en código.
« en: 22 Enero 2017, 18:52 pm »

Hola que tal, me paso por acá para hacerles una pregunta ya que me estoy introduciendo en este mundo de la programación y tengo una pequeña duda...

Resulta que estoy trabajando con un juego para ir mejorando en esto.. y pues resulta que tengo una duda sobre un código el cual es este:

Código
  1. {
  2.                                            attacker.AddFlag4((ulong)MsgUpdate.Flags4.FreezingPelter);
  3.                                            attacker.RemoveFlag4((ulong)MsgUpdate.Flags4.HealingSnow);
  4.                                            attacker.RemoveFlag4((ulong)MsgUpdate.Flags4.ChillingSnow);
  5. attacker.MinAttack += 1000;
  6. attacker.MaxAttack += 3000;
  7.  
  8.                                        }



Quiero que el

Código
  1. attacker.MinAttack += 1000;
  2. attacker.MaxAttack += 3000;

Se repita cada 5 segundos, hay alguna manera de que pueda hacerlo, ya que no tengo idea se los agradezco de antemano si pueden ayudarme, sin más nada que decir Saludos..


En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: Duda en código.
« Respuesta #1 en: 22 Enero 2017, 23:09 pm »

Es difícil responder a esto.

Dices que es un juego, así que intuyo que tendrás algún tipo de bucle principal. Podría ser ahí donde lo hagas (llamar a una función que lo actualice si han pasado 5 segundos, por ejemplo)


En línea

MAFUS


Desconectado Desconectado

Mensajes: 1.603



Ver Perfil
Re: Duda en código.
« Respuesta #2 en: 23 Enero 2017, 21:25 pm »

Te voy a dejar una solución de con un ejemplo. Aviso que es un temporizador el cual solo puede existir uno al mismo tiempo. Hay que mirar todo el rato si ha terminado (polling) pero siendo el juego un bucle que se repite no tendrás problema.

Código
  1. #include <stdio.h>
  2. #include <time.h>
  3.  
  4. enum {
  5.    TIMEOUT_RUNNING,
  6.    TIMEOUT_DONE,
  7.    TIMEOUT_ERROR = -1
  8. };
  9.  
  10. int timeout(unsigned segundos) {
  11.    static time_t t;
  12.    static unsigned s;
  13.  
  14.    if(segundos) {
  15.        time(&t);
  16.        s = segundos;
  17.    }
  18.  
  19.    if(!s)
  20.        return TIMEOUT_ERROR;
  21.  
  22.    if(difftime(time(NULL), t) >= s) {
  23.        s = 0;
  24.        return TIMEOUT_DONE;
  25.    }
  26.  
  27.    return TIMEOUT_RUNNING;
  28. }
  29.  
  30. int main() {
  31.    int i = 0;
  32.  
  33.    if(timeout(1) == TIMEOUT_ERROR)
  34.        return 1;
  35.  
  36.    while(i < 5) {
  37.        printf("%i seg\r", i);
  38.        fflush(stdout);
  39.  
  40.        if(timeout(0) == TIMEOUT_DONE) {
  41.            timeout(1);
  42.            ++i;
  43.        }
  44.    }
  45. }

Funciona pasándole, en una primera llamada un valor en segundos que quieres que la rutina espere hasta que indique que ha pasado el tiempo. Sólo comprueba, así que no clava el programa para esperar a que pase el tiempo, tu juego puede seguir ejecutándose.

Una vez que termine el conteo se debe iniciar pasándole de nuevo un valor, sino devolverá un error de que no hay tiempo que temporizar, el TIMEOUT_ERROR.
« Última modificación: 23 Enero 2017, 22:08 pm por MAFUS » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
duda en el codigo vb
Programación Visual Basic
josemer 0 1,295 Último mensaje 23 Enero 2006, 20:32 pm
por josemer
duda en un codigo vb
Programación Visual Basic
ugruhell 6 2,386 Último mensaje 26 Agosto 2006, 00:20 am
por Ironhorse
Duda con codigo de vb6 y el MSN « 1 2 »
Programación Visual Basic
Anteros 10 3,339 Último mensaje 6 Abril 2007, 01:54 am
por Sancho.Mazorka
Duda codigo PHP
PHP
knox18 1 1,674 Último mensaje 9 Septiembre 2007, 17:24 pm
por P[i]
Duda codigo PHP « 1 2 »
PHP
knox18 14 5,335 Último mensaje 14 Septiembre 2007, 15:15 pm
por Alex_bro
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines