Anuncios Google

Números aleatorios en NFlib

Hola, como muchos otros me he pasado a las NFlib de PAlib, y me ha surgido una duda de una función que usaba con PAlib pero que no sé como será con NFlib. La función en cuestión es: PA_RandMinMax (o algo por el estilo :P), y sirve para sacar un número al azar entre dos números. Mi pregunta es la siguiente: ¿cómo es esta función en NFlib? o ¿cómo hago para usar una función como esta en NFlib?

Espero que me podais ayudar.

Salu2.


Gracias por la firma The Dark Master Guiño


Anuncios Google

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de The Dark Master

Por si te sirve de ayuda.

Toma esto, es del codigo de Palib:

extern inline u32 PA_Rand(void) {
   u32 lo, hi;
   lo = 16807 * (RandomValue & 0xFFFF);
   hi = 16807 * (RandomValue >> 16);
   lo += (hi & 0x7FFF) << 16;
   lo += hi >> 15;
   if (lo > 0x7FFFFFFF)
      lo -= 0x7FFFFFFF;
   RandomValue = lo;
   return(RandomValue);
}

extern inline u32 PA_RandMinMax(u32 min,u32 max){
    return ((PA_Rand()%((max + 1)-min)) + min);
}

No sé si eso funciona, si esta completo, si es compatible con las nuevas combinaciones, como yo me apaño con la funcion en si.

salu2


Imagen de kNightFox

 // Variables generales y

 // Variables generales y inicializacion del random
 u8 n = 0;
 srand(time(NULL));

 // Crea las bolas en la pantalla superior
 s16 bola_x[32];
 s16 bola_y[32];
 s8 bola_spx[32];
 s8 bola_spy[32];
 for (n = 0; n < 32; n ++) {
  bola_x[n] = (rand() % 223);
  bola_y[n] = (rand() % 159);
  bola_spx[n] = (rand() % 3) + 1;
  bola_spy[n] = (rand() % 3) + 1;
  NF_CreateSprite(0, n, 0, 0, bola_x[n], bola_y[n]);
 }

Recuerda en incluir el time.h
 
El 90% de cosas que querais hacer seguramente no tienen que ver con funciones de mi libreria, como numeros aleatorios, saber si un sprite se ha tocado, etc, Son casi simempre funciones del C de toda la vida, por eso siempre aconsejo aprender a programar lo basico en C y luego adentrarse en librerias mas especificas. Mucha gente se cree que con mi libreria se hace todo, mentira. Lo que programais, ya sea con libnds, palib o nflib es C. Las librerias solo facilitan el hacer tareas mas complicadas y repetitivas, como mostrar fondos, cargarlos etc, pero no dejan de ser instrucciones basicas de C agrupadas en funciones. Siempre que querais hacer algo, mirar primero si es posible hacerlo con C, vuestro programa quedara mas optimizado y elegante.


Nuestra web oficial:
http://www.nightfoxandco.com/
 
Siguenos en facebook:
http://www.facebook.com/pages/NightFox-Co/284338634917917
 
Por favor, no useis los MP para preguntas, usar el FORO:
http://www.nightfoxandco.com/forum/
Asi nos ahorramos de contestar lo mismo 20 veces.

 

Imagen de sergiog12

Ok, gracias a los dos.

Ya veré como lo meto en mi proyecto, gracias a los dos por ayudarme.

Salu2

Y también stdlib.h, para el

Y también stdlib.h, para el rand() y srand().

Imagen de sergiog12

OK, ahora mismo lo pruebo

Gracias a los dos por ayudarme, ahora mismo lo probaré a ver si funciona, muchísmas gracias.

PD: ¿Cómo es que no tienes bandera de coder Almamu? Porque con tus hb, tus tutoriales y lo que ayudas por aquí, no sé como no la tienes :P

Salu2


Gracias por la firma The Dark Master Guiño

Imagen de sergiog12

Cierto

Ok, siento mucho el desvío, lo que pasa es que no lo había leído :P, lo siento.

Gracias a todos los que me ayudasteis otra vez.

Salu2.

EDIT: Ya lo probé, y al incluir lo que me dijisteis (almamu y antoniond) [puse un include de cada cosa] me dió error o warning. Sólo lo incluí, no llegué a usar el rand. ¿Cuál puede ser el fallo? Espero que me podais ayudar :P (otra vez...). Siento ser tan pesado.

Salu2


Gracias por la firma The Dark Master Guiño

Imagen de exterminator

Si es un warning

probablemente sea porque incluyes librerías que no usas.

Salu2

PD: Repito, sólo si es un warning. Si es un error ponlo para ayudarte.


Para recibir ayuda por parte de otros usuarios más rápidamente, recomendamos que pongas títulos descriptivos y no utilices abreviaturas (estilo MSN) en tus post de los foros. Recuerda que accediendo al Manual del perfecto forero y las Normas de la Comunidad aprenderás trucos para resolver tus dudas antes.

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.