Al ver el juego de cartas que esta programando FreeYourMind se me ocurrio hacer en un par de horas un sencillo juego de cartas para la Wiz, en concreto un Solitario. Subo un video al youtube para que veais de lo que trata el solitario.
Video: http://www.youtube.com/watch?v=qbClAlu-8DQ
Link del juego: http://www.bxinteractive.com/files/solitaire_for_wiz(1.2).rar
A ver si alguien puede hacerme el favor de probar el juego en la wiz, por que yo no dispongo de la consolita(de momento) y no se si configure los archivos .ini/.gpe correctamente para que funcione! ;)
Editado: Ultima version subida 26 Marzo - 21.00h
je, muchas gracias... ya estaba por hacerlo yo... esto es uno de mis vicios... ya me estare poniendo viejo...
Jo, es que sólo yo tengo el don de animar a los benuseros !!! ;D
Vamos a ver que tal esta, yo si te digo la verdad rara vez he probado solitarios, es que sólo se hacen solitarios, como pueden ser tan famosos! a mi me gustan más juegos de pueblo.
Ya lo he probado en la wiz, esta muy bien echo. Te animo a que hagas una version mas completa. Lo que quitaria es el cursor, que no se vea en la Wiz.
Ta chulo este solitario, no lo conocía.
He hecho 220 puntos, no se si son muchos, pero solo me quedó una sota en el tapíz, lástima que no me salió en la última carta ni un caballo ni un siete :(.
Oye, Ponle una tablilla de "hiscores" ;)
Yo recuerdo un solitario en el que barajabas todas las cartas y el objetivo era tener los cuatro palos ordenados de rey a uno, para ello. Ibas cogiendo dos a la vez como si fuera una, dabas la vueta y veías si era un rey, y así hasta que te encontrases un rey, luego ya seguías buscando más reyes o el caballo del palo del rey que tenías y así sucesivamente hasta agotar el mazo de cartas el cual volvías a coger y sin barajar volvías a repetir así hasta conseguir tener los cuatro palos ordenados o llegar a no tener solución. Dependiendo de cómo hubieras barajado las cartas podría tener solución o no :).
Anímate y ya que tienes este motor haces este solitario también :D.
agradeceria una version de este solitario
(http://imagenes.sftcdn.net/es/scrn/18000/18973/3_18973.jpg)
podrias explicar las reglas de tu solitario?
ya entendi como jugarlo, buenisimo...
3 cosas
1) tabla de records... importantisimo para inmortalizar nuestros logros...
2) llegue a 3 o 4 rondas con un puntaje que superaba los 7000 puntos, pero resulta que con la ultima carta que tenia abajo era un 1, y sobre la mesa me quedaba un 12... puse el 1, y me dejo poner el 12, y a pesar de haber completado la ronda partida me puso game over...
3) boton para salir
Gracias por probarlo :D y reGracias Free~ por probarlo en la Wiz.
Splinter lo de que te dio "Game Over" habiendo finalizado correctamente, lo tengo que mirar, nunca llegue a pasar la 2 ronda creo xD. Lo revisare luego. El boton salir, si existe cuando estas jugando ( parte derecha/abajo ) y luego creo que añadi que podias tambien salir en la Wiz pulsando el boton de menu, aunque esto no lo pude probar.
La tabla de records la pondre enseguida, es algo que tenia en cabeza. Intentare hacer el Solitario que dice DCelso, que tambien lo conocia desde hace mucho tiempo y ademas creo que es "facil" a simple vista. El otro Solitario, creo que no se podria hacer para Wiz, ya que son demasiadas cartas en pantalla... y el espacio es reducido a no ser que hagas unas cartitas enanas y te quedarias los ojos jugando.
Creo perfectamente que se puede y vas a tener buena visibilidad de las cartas, ya que creo que existen solitarios para todas las Gp's (por lo menos para la Gp2x se que existen, aunque la pantalla tambien es mayor, en tamaño no resolución), en la sección juegos de www.gp32spain.com hay solitarios para esta familia de consolas, echales un ojo.
Por cierto no se si frecuentas gp32spain, pero tu juego quedaria muy bien como noticia en esa web, para que lo jueguen, si quieres luego cuando llegue a casa pongo la noticia allí (ya que aqui en el curro no tengo acceso).
Un truquito que podrías añadir a todos los solitarios es que al ponerse el ratón encima de la carta se le hiziera un zoom con cambio correspondiente en "z", así que de chica se vería mal pero al acercarte el ratón se vería bien grande, luego al alejarte pues restableces "z" y "size".
Claro está que en wiz, no hay ratón, quizás podría ser al toque agrandar y al toque reducir, y doble toque accionarla.
O con la 'L' o 'R' presionada y tocando la carta, que es más comodo, lo que permitiria inspecionar una carta pero no jugarla.
Ok! Hare unas pruebas a ver como quedaria el asunto usando la "lupa" de las cartas y tal.
Free~, alguna vez entre en la pagina de gp32spain, pero tampoco le preste demasiada atencion, le echare un vistazo mas completo, con respecto a poner la noticia del juego, como quieras!, el enlace seguira siendo el mismo aunque haga modificaciones al proyecto, asi que no hay problemas en tener la descarga siempre actualizada.
yo ayer me pase como 7 u 8 rondas... es un vicio...
lo del solitario que te dije creo que se puede, la foto que puse no es la mejor... tiene demasiado espaciado...
la salida del juego en curso si me va, lo que no va es la salida al menu de la wiz... tengo que apagar la consola para reiniciar el juego...
otro bug... en algunos casos cuando empiezo una partida, no se pueden seleccionar cartas de ningun tipo ni darlas vueltas... si funciona el boton de exit... pero no soluciona nada... empezas una partida y ahi se nuevamente no va... hay que apagar y cargar de nuevo... pero solo pasa al iniciar, nunca paso durante el juego o por lo menos no durante una ronda... no recuerdo si cuando empece una ronda tambien paso... pero me paso como 3 veces.
Quote from: Phoenix on March 23, 2010, 03:48:20 PM
Ok! Hare unas pruebas a ver como quedaria el asunto usando la "lupa" de las cartas y tal.
Free~, alguna vez entre en la pagina de gp32spain, pero tampoco le preste demasiada atencion, le echare un vistazo mas completo, con respecto a poner la noticia del juego, como quieras!, el enlace seguira siendo el mismo aunque haga modificaciones al proyecto, asi que no hay problemas en tener la descarga siempre actualizada.
No va valer porque despues ellos lo ponen en su servidor.
No hay problemas lo anuncio como version 1.0 y despues cuando saques la nueva se actualizará.
Buenas, lo he anunciado en Gp32spain y lo he subido a la web más visitada de Wiz, he preparado el binário como version 1.0, ya se podrá actualizar despues y etiquetar a la nueva versión, cuando la saques.
El link es el siguiente:
http://dl.openhandhelds.org/cgi-bin/wiz.cgi?0,0,0,0,25,354 (http://dl.openhandhelds.org/cgi-bin/wiz.cgi?0,0,0,0,25,354)
Saludos.
otro bug... que creo tiene que ver con el que digo que perdes aunque tengas la ronda completa...
esta vez, habia completado unas 3 rondas al menos... y completo la ronda de todas las cartas sobre la mesa, y quedandome sobre el maso unas 6 cartas la ronda no termino... y retire todas las cartas del maso y perdi... pero perdi sin cartas sobre la mesa...
y una vez que pasa esto, ya no hay recuperacion... pasa en todas las partidas... todas las partidas terminan en "game over"... aunque las hayas terminado bien...
otra cosa, el font del puntaje se confunde el 1 con el 7... algun font mas claro seria interesante...
y cuando uno pierde, desaparece muy rapido el puntaje, y muchas veces no sabemos cuanto hicimos.
please fixes! estoy viciado con este juego.
jj0as que vicio xDDDD
Hoy estuve liao un rato con el Solitario de DCelso, casi lo tengo listo.
A ver, si mañana me pongo con los bugs de este, paciencia xD!
Gracias Free por subirlo a la pagina!
Oka! aqui va la nueva version con la tabla de records y algunos arreglos mas!.
<Link borrado>
Splinter, los bugs que comentaste todavia no los revise, a la tarde les echare un vistazo!
Luego actualizo la version en OpenHandhealds y Gp32spain. Saludos. :D
gracias por el update... espero esos fix... que se pone molesto apagar la consola cada tanto...
He subido la versión 1.1 a la web de proyectos de BennuGD.
Version actualizada. Mismo enlace que la 1.1.
Splinter, creo que ya solucioné el problema de los finales de partida extraños. También añadí en la pantalla principal un boton para poder salir del juego, aunque sigo sin entender por que no sale pulsando el boton de Menu, por que lo tengo controlado en el codigo...
Josebita, se puede actualizar luego la version que subiste en la web de los proyectos? lo digo por que, estoy terminando otro "modo" de juego solitario y seguramente lo añada también al mismo proyecto, quedandose un "2 en 1" xD.
Ok Free~! ;)
Sí, se puede actualizar sin problemas. en la página hay un botoncito con "This is an update" y con eso Pixel se las apaña :)
En cuanto aparezca en la lista de proyectos tu juego y subas la siguiente versión, la actualizo.
muchas gracias! te doy un karma por adelantado... en un rato lo pruebo...
Pixel ya ha aceptado el juego y ya está online:
http://projects.bennugd.org/?details=38
Guay! actualizaste a la ultima version que puse en el ultimo post? es exactamente la misma direccion pero cambie(sobre las 19.00h o asi) el archivo en el servidor. En esta ultima no añadí el codigo por que lo tengo hecho un lio, pero lo metere en las siguientes.
deseando estoy ver el otro solitario :D.
Juas, ¿yo hice 2100 puntos?¿Cuando? :D
Malas noticias de mi parte, se me ha jodddido el portatil, de nuevo otro disco duro que me dejá, este tan sólo en 4,5 meses y era de más de 600 gigas >:(
Malditos Vista & 7 me huele a porqueria de versiones, por lo menos los Xp y anteriores si no leian algun sector te lo decian casí al instante, este dale que dale vueltas, despues de un menu de recuperación que no aporta nada, tienes que esperar 2 horas para que te diga que el HD tiene problemas...
Estoy intentanto recuperar fuentes y demás cosillas de desarrollo, con Knoppix Live 4, sniffff, el maldito sólo me deja cambiar a escritura pens/discos hasta 4 gigas, igual tendré que esperar una semana para poder tener un portatil con windows y intentar copiar las cosas.
Si no fuera por mi vicio al backup donde estarian la mayoria de mis cosas....
Ahora a comprar otro y un mes de instalaciones ....
Siento dejaros por unos tiempos (por lo menos con la misma frequencia de visitas).
No he podido ir a gp32spain, luego a ver si voy a un locutorio y actualizo tu version en OpenHandhealds.
Hay un problema en tu nueva version, has actualizado el .dcb a la nueva version pero mantienes el prg de la versión antigua.
Y cuando lo vayan a jugar en la Wiz, como tienes el script del 'Solitaire.gpe' que hace que compile al jugar, la gente que vaya a jugar la nueva version en realidad va volver a jugar a la versión antigua ;D
Juas es verdad xD, se me olvido cambiar el .gpe o añadir el .prg para que funcionara correctamente xD.
Ahora cuando tenga un rato lo cambiare, gracias!!1!1!11! por el aviso ;)
Editado: Yasta arreglao, con el nuevo dcb y el gpe(mismo enlace), pruebalo en un momentito si me haces el favor :D , la opcion del prg queda bastante mejor, pero lo pondre cuando lo de por terminao(que no creo que le quede mucho)
Es más chula y rápida la opcion de cambio de .prg ;)
Juer, lo siento por ti, free, lo del portatil es un fastidio.
Pero como suelo recomendar siempre, si el disco funciona bien físicamente, lo mismo con un cable IDE->USB o SATA->USB puedes recuperar los datos de forma rápida y simple, y son baratos (a mi me costó 8€).
Ahora que estoy grabando discos a tope, a ver si me acuerdo y hago tambien una copia de respaldo.
Si lo tengo, de echo lo estaba intentando copiar como externo usando el Knoppix (el del portatil mas otro externo destino).
El problema es que falla al intentar poner con permisos Write al del destino, ya que sólo parece que funciona con pen's hasta 4 gigas, y el externo tiene 1,5 tb, así que usando ese SO no puedo hacer la copia.
El disco del portatil de momento funciona, reconoce las 2 unidades, aunque al copiar algunas cosas algunos fuicheros no los ha conseguido leer (por cierto ha sido tu juego uno de los ficheros imposibles de leer, lo digo de verdad :D).
Por experiencia propria con el anterior disco, se que tengo que apresurarme , porque mas algunos intentos y acaba por no reconocerme las unidades, por otra parte parece que Linux consigue acceder mejor a estes ficheros, el antiguo en Windows ya no reconocia las unidades y en Knoppix las detectaba!.
diablos 4.5 meses, no tienes garantia?
No porque he destripado uno HD que era portatil, o sea, USB, y lo meti en el Portatil, ya que son iguales, y con esta proeza me ahorré mitad de lo me que costaria suelto con esa cantidad de gigas, para el portatil, ya que es un super disco de más de 600 gigas :)
Por otro lado, para mi discos con garantia es lo mismo que discos sin ella, ya que nunca devolveria un disco despues de grabar cosas personales en el, a una tienda...
Habitos de gente profesional ;D
a ver...
sacaste un disco de un portatil y lo pusiste en otro? eso no invalida tu garantia... vuelves al poner el original y ya... por otro lado, si vas a devolver el equipo formateas el disco y listo, y si el disco no arranca no tienes de que preocuparte... adicionalmente a esto, si solo se te jodio el disco por que vas a cambiar de portatil?
evidentemente, hay algo que no te entendi.
No.
Saque un disco de un disco portatil usb (abri la caja mona que trae, y saque el hd sata, que luego meti en mi portatil)...
Por cierto si no tuviera que estropear la caja de plastico y copiará toda su información, podria devolverlo, pero suelen tener pegatinas que indican si lo abres o no....
Por cierto me acabo de pillar otro del mismo tamaño, de otra marca, y como ves ya esta rulando de nuevo :)
Mañana empezaré a intentar recuperar la información del disco, a ver si tengo suerte de recuperar por lo menos lo importante, depues lo formateo y lo vendo como nuevo ;D
ahhh... un disco portatil... pense que decias una "computadora" portatil... dios mio, uds (los españoles) llaman a todo portatil no entiendo como se entienden...
volviendo al juego... ahora va mejor el tema de las partidas que fallan terminan cuando no deberian... pero sigue pasando, todas las cartas de la mesa levantabas y pone "game over"... sigue el fallo que no deja descargar mas cartas aunque haya para descargar... pero esta vez se soluciono con "exit" al menu principal y vuelta a arrancar... lastima que iba como 2500 puntos... no veo la tabla de records (si es que entendi bien que deberia estar)... el font del score ahora esta claro... pero cuando perdemos y aparece el game over... no se ve el puntaje, yo le quitaria que se ponga el fondo negro... me desespera... el boton de exit en la pantalla principal, no aparece...
no se si subiste el codigo correcto o que paso... pero me parece que no estan todas las mejoras que supuestamente estaban...
otra cosa, una opcion para quitar sonido seria agradecida... o que funcionen las teclas de volumen...
Te has leido mi mensaje de que compilaba el prg en la wiz y que estaba el antiguo (aunque el nuevo dcb) ? De todos modos te paso el que he puesto en Gp32spain que llama directamente al dcb. Por cierto la tabla de records tampoco la veo en la nueva version...
si que está la tabla, tienes que jugar y perder para verla y por cierto estamos todos en la tabla, yo tengo 2100 puntos por eso lo de mi post anterior.
la version que subio aca el autor no es la ultima... no entiendo la redaccion de tu texto...
por que no esta el prg en esta version que subiste? si el autor los puso, no entiendo esa mania de quitar los fuentes...
las teclas no funcionan, porque cada vez que se hace let_me_alone, hay que llamar nuevamente al controlador de teclas.
que quilombo de versiones, por favor, pongan la version correcta...
Quote from: SplinterGU on March 26, 2010, 03:29:43 AM
la version que subio aca el autor no es la ultima... no entiendo la redaccion de tu texto...
por que no esta el prg en esta version que subiste? si el autor los puso, no entiendo esa mania de quitar los fuentes...
las teclas no funcionan, porque cada vez que se hace let_me_alone, hay que llamar nuevamente al controlador de teclas.
Splinter, es que no te lees las cosas ? La ultima version no tiene fuentes (son antiguas a diferencia del dcb, quieres que te lo repita de nuevo ?), hombre
creo que ya te ha dicho más de uno por aqui que antes de hablar te leas bien las cosas...
:D, killo que se nos cabrea y nos deja sin soporte a bennu, más paciente con el "CREATOR"
A ver que te lo explique la última versión del programa que ha colgado phoenix es el .dcb que se encuentra en este zip
http://forum.bennugd.org/index.php?action=dlattach;topic=1251.0;attach=1016
El problema es que el prg que viene no es el de la última versión sino el de la primera.
Es decir phoenix, compiló su prg en el que está programando y creó un dcb y este dcb lo insertó en el zip donde tenía la versión anterior sustituyendo única y exclusivamente el .dcb de la versión 1.0, así que el zip del enlace es la versión 1.1 del solitario pero solo el .dcb, el .prg es la versión 1.0. Por lo que si usas el script de "gpe" para wiz como hace un "bgdc" remplazaría el .dcb bueno 1.1 por el dcb generado con el .prg 1.0 quedándote así sin poder probar la última versión en wiz.
Es por eso que amablemente free ha cambiado el ".gpe" para que no use "bgdc" y ha borrado el .prg.
Espero que quede ahora más claro el motivo de tanto follón. :D
Hombre DCElso, no importa las veces que lo repitas o expliques, si no lo lee no sirve de nada ;D
j0as! Perdonad por el lio de las versiones, como bien dice DCelso, en las anteriores updates solo habia cambiado el dcb y los graficos, pero no habia cambiado nada del gpe y del prg, con lo que inmagino que se compilaba la version antigua del prg y se estaba jugando exactamente al a primera version que saque. Ahora mismo, solo actualizare el enlace al juego de la primera pagina, para que no haya lios de versiones. Esta ultima debe de funcionar perfectamente en la Wiz, ya que copie el gpe que creo Free para que solo ejecute el dcb. Como dije en un post anterior, no incluyo el prg en la ultima version por que esta hecho un lio... tengo entre medias codigo de este solitario y del otro que estoy haciendo, asi que dudo que si alguien se pusiera a mirarlo se enterara de nada con lo que no valdrian para nada los fuentes.
Splinter, la pantalla de records solo aparece cuando terminas una partida completa, con lo que necesitas que aparezca el Game Over, si has superado algun record anterior, podras introducir tu nombre y si no solo se mostrara durante un espacio de tiempo la tabla de record actual y volveras a la pantalla de inicio. Creo que los errores que tenias estan solucionados ya que no estabas jugando a la ultima version. Lo del volumen, vale... mirare a ver como hacerlo.
Yo ya me he echado unos vicios, engancha eh, creo que controlo el algoritmo para durar más y resolver el solitario, pero.
¿Sabeis si siempre tiene solución? O hay algunos "startups" irresolvibles, por ejemplo en una columna los cuatro reyes o cosas asi.
Por otro lado, ¿cuanto te queda para el otro solitario? :D
El otro solitario, que comentastes, lo estoy haciendo en los ratos libre, creia que me iba a ser bastante facil, pero me esta dando algunos problemillas... Si tuvieramos una dll que manejara colas,listas y demas, todos los juegos de cartas de solitario, serian bastante sencillotes.
En eso estaba pensando el otro día, pero mejor que una dll, seria poner por ejemplo una sección con los clasicos algoritmos de ordenación en prg, bubbleshort, quickshort, etc.
Que alguien con tiempo libre pase todos estos a prg :)
http://cg.scs.carleton.ca/~morin/misc/sortalg/ (http://cg.scs.carleton.ca/~morin/misc/sortalg/)
No se si te servirá pero en el bennupack hay una implementación de una pila en código prg.
program stack;
private
pressed=0;
selected_color;
graphic;
global
struct stack
int size=0;
int value[320*240*8]=0;
end;
begin
set_mode(320,240,16);
set_fps(0,0);
drawing_color(rgb(255,255,0));
graphic=draw_circle(x,y,2);
loop
move_draw(graphic,mouse.x,mouse.y);
if(key(_1))selected_color=rgb(255,0,0);end;
if(key(_2))selected_color=rgb(0,255,0);end;
if(key(_3))selected_color=rgb(0,0,255);end;
if(mouse.left)
for(x=mouse.x;x<mouse.x+5;x++)
for(y=mouse.y;y<mouse.y+5;y++)
put_pixel(x,y,selected_color);
end;
end;
end;
if(!mouse.right)pressed=false;end;
if(mouse.right and !pressed)
flood_fill(mouse.x,mouse.y,selected_color);
pressed=true;
end;
frame;
end;
end;
process flood_fill(x,y,color)
private
init_color;
color_check;
begin
init_color=get_pixel(x,y);
stack_push(x);
stack_push(y);
while(stack.size>0)
y=stack_pop();
x=stack_pop();
color_check=get_pixel(x,y);
if(color_check==init_color and color!=init_color)
put_pixel(x,y,color);
if(get_pixel(x,y+1)==init_color)stack_push(x);stack_push(y+1);end;
if(get_pixel(x,y-1)==init_color)stack_push(x);stack_push(y-1);end;
if(get_pixel(x+1,y)==init_color)stack_push(x+1);stack_push(y);end;
if(get_pixel(x-1,y)==init_color)stack_push(x-1);stack_push(y);end;
end;
end;
end;
process stack_pop()
private
temp;
begin
if(stack.size>0)
temp=stack.value[stack.size-1];
stack.value[stack.size-1]=0;
stack.size--;
return temp;
end;
end;
process stack_push(int value)
begin
stack.value[stack.size]=value;
stack.size++;
end;
Mirad lo que he encontrado:
http://www.infonegocio.com/hsoft/fenix/ (http://www.infonegocio.com/hsoft/fenix/) :D
Esta la fscl.zip que permite listas, si no esta en Bennu se podria portar, entre otras que falten del directório ...
PROGRAM fscl;
import "fscl"
//tipo definido
TYPE TCOLOR
byte r, g, b;
END
GLOBAL
pointer NULL; //para comparaciones
PRIVATE
pointer plIterador;
int pointer plnValor;
TCOLOR pointer plnColor;
BEGIN
set_mode (m640x480);
//Creamos estructuras/contenedores
fscl_create_hashes (1); //1 tabla
fscl_create_lists (2); //2 listas
//Inicializamos estructuras creadas
fscl_hash_new (0); //indice 0
fscl_list_new (0); //indice 0
fscl_list_new (1); //indice 1
delete_text (0);
//***
//Esta tabla HASH se utiliza para almacenar telefono de personas: par (clave, valor)
// Clave es nombre de la persona y valor es el numero de telefono
//
// Se añaden 2 telefonos
plnValor = alloc ( sizeof(int) ); //reservamos memoria y luego al agregarlo a la tabla Hash podemos acceder a esa direccion y borrarlo posteriormente
*plnValor = 4062287;
fscl_hash_insert ( 0, "Roberto", plnValor );
plnValor = alloc ( sizeof(int) ); //reservamos memoria y luego al agregarlo a la tabla Hash podemos acceder a esa direccion y borrarlo posteriormente
*plnValor = 4568971;
fscl_hash_insert ( 0, "Maria", plnValor );
write (0, 5, 10, 0, "Tabla HASH a la que se agregan 2 telefonos, se usan como claves sus nombres: Roberto y Maria" );
write (0, 15, 30, 0, "Numero elementos agregados a tabla HASH: "+ fscl_hash_count(0) );
write (0, 15, 50, 0, "Tamanyo tabla HASH (puede no coincidir con elementos): "+ fscl_hash_size(0) );
plnValor = fscl_hash_access (0, "Roberto"); //accedemos al telefono por la clave
write (0, 15, 70, 0, "Telefono de Roberto antes de cambiarlo por el nuevo: " + *plnValor);
*plnValor = 3214499; //nuevo telefono, usamos el puntero obtenido en access
plnValor = fscl_hash_access (0, "Roberto"); //esto no haría falta, pero para comprobar que sigue siendo el mismo puntero, pero el telefono cambio
write (0, 15, 90, 0, "Telefono de Roberto tras cambiarlo : " + *plnValor);
//Por ultimo, conocemos un numero de telefono pero no sabemos a quien pertenece (no sabemos la clave)
//Debemos usar iterador, que es un puntero a un elemento de la estructura (no es el propio valor aun)
//e ir recorriendo la tabla con el iterador para comparar con nuestro numero
plIterador = fscl_hash_begin (0); //posicion inicial de la tabla
while ( !fscl_iter_equals ( plIterador, fscl_hash_end(0) ) ) //usamos la funcion iter_equals para comparar iteradores (end es el final de la tabla)
//obtenemos valor del iterador
plnValor = fscl_hash_data_get ( plIterador );
if ( *plnValor == 4568971 ) //telefono que conocemos
break;
else
//avanzamos iterador si aun no hemos encontrado el telefono
plIterador = fscl_hash_next (plIterador);
end
end
//comprobamos que el iterador no sea NULL (variables),
//tambien deberia comprobarse que no sea (hash_end) aunque sabemos que no lo será, pero hay que asegurar
//mostramos clave del iterador
if ( !fscl_iter_equals ( plIterador, NULL ) )
write (0, 15, 110, 0, "De quien es el numero de telefono 4568971? " + fscl_hash_key_get (plIterador) );
end
//obtenemos y eliminamos el telefono de maria y mostramos numero de elementos
plnValor = fscl_hash_remove ( 0, "Maria" );
write (0, 15, 130, 0, "Numero elementos tras eliminar telefono Maria ("+ *plnValor+"): "+ fscl_hash_count(0) );
//liberamos memoria porque ya no estará (puntero) en la tabla
free (plnValor);
//***
//Añadimos colores a dos listas y unimos las dos listas en una
//
write (0, 5, 170, 0, "Listas enlazadas a la que se agregan varios colores, y a las que se fusionan finalmente" );
plnColor = alloc ( sizeof ( TCOLOR ) ); //blanco
plnColor.r = 255;
plnColor.g = 255;
plnColor.b = 255;
fscl_list_push_front ( 0, plnColor ); //agregamos al principio lista 0
plnColor = alloc ( sizeof ( TCOLOR ) ); //rojo
plnColor.r = 255;
plnColor.g = 0;
plnColor.b = 0;
fscl_list_push_front ( 0, plnColor ); //agregamos al principio lista 0
write (0, 15, 190, 0, "Numero de colores lista 1: " + fscl_list_count (0) );
plnColor = alloc ( sizeof ( TCOLOR ) ); //negro
plnColor.r = 0;
plnColor.g = 0;
plnColor.b = 0;
fscl_list_push_back ( 1, plnColor ); //agregamos al final
plnColor = alloc ( sizeof ( TCOLOR ) ); //verde
plnColor.r = 0;
plnColor.g = 255;
plnColor.b = 0;
fscl_list_push_back ( 1, plnColor ); //agregamos al final
plnColor = alloc ( sizeof ( TCOLOR ) ); //azul
plnColor.r = 0;
plnColor.g = 0;
plnColor.b = 255;
fscl_list_push_back ( 1, plnColor ); //agregamos al final
write (0, 15, 210, 0, "Numero de colores lista 2: " + fscl_list_count (1) );
//mostramos primer color de la lista 1
plnColor = fscl_list_front ( 0 ); //obtenemos primer color lista 1
write (0, 15, 230, 0, "Primer color lista 1 (RGB): " + plnColor.r + " "+ plnColor.g + " " + plnColor.b );
//unimos las dos listas y mostramos numero de elementos, al unir lista 2 ya no es valida
fscl_list_join ( 0, 1 );
write (0, 15, 250, 0, "Numero de colores lista 1 tras unirse con la 2: " + fscl_list_count (0) );
//eliminamos el ultimo color de la lista 1 y lo mostramos
plnColor = fscl_list_pop_back ( 0 );
write (0, 15, 270, 0, "Ultimo color eliminado (RGB) y numero de elementos lista 1 tras eliminarlo: "
+ plnColor.r + " "+ plnColor.g + " " + plnColor.b+" - " + fscl_list_count (0) );
free ( plnColor ); //eliminamos tras sacarlo de la lista
//mostramos nuevo ultimo color
plnColor = fscl_list_back ( 0 ); //obtenemos primer color lista 1
write (0, 15, 290, 0, "Ultimo color lista 1 (RGB): " + plnColor.r + " "+ plnColor.g + " " + plnColor.b );
//invertimos lista y mostramos ultimo color
fscl_list_reverse ( 0 );
//mostramos nuevo ultimo color tras invertir
plnColor = fscl_list_back ( 0 ); //obtenemos primer color lista 1
write (0, 15, 310, 0, "Ultimo color lista 1 al invertir lista (RGB): " + plnColor.r + " "+ plnColor.g + " " + plnColor.b );
repeat
frame;
until ( key(_esc) )
//Debemos eliminar la memoria reservada en los elementos que se encuentran en las estructuras, para ello usamos iteradores
//hash (valores enteros)
plIterador = fscl_hash_begin (0);
while ( !fscl_iter_equals ( plIterador, fscl_hash_end(0) ) )
//obtenemos valor del iterador
plnValor = fscl_hash_data_get ( plIterador );
free (plnValor);
plIterador = fscl_hash_next ( plIterador );
end
fscl_hash_erase (0);
//lista (valores colores)
plIterador = fscl_list_begin (0);
while ( !fscl_iter_equals ( plIterador, fscl_list_end(0) ) )
//obtenemos color del iterador
plnColor = fscl_list_data_get ( plIterador );
free (plnColor);
plIterador = fscl_list_next ( plIterador );
end
fscl_list_erase (0);
//Borramos estructuras creadas
fscl_hash_del (0);
fscl_list_del (0);
fscl_list_del (1);
//Eliminamos estructuras/contenedores
fscl_destroy_hashes();
fscl_destroy_lists();
END
oh, te me has adelantado, recordaba alguna lib para tratamiento de TDAs pero no sabía si era para Bennu o para Fenix, y haciendo búsquedas por el foro no la encontraba, gracias. Parece ser que para bennu no está.
Pero si se puede hacer en codigo bennu mejor que mejor porque no dependeríamos de portar la lib a otros sistemas como wiz o gp2x.
Creo que el codigo de la pila podria valer. Es algo parecido a lo que estoy usando, un array en el que tengo todos los ids de los procesos carta. Al "echar" una de las cartas y usarla para ir completando el solitario, tienes que "bloquearla", para que cuando pasemos todas las cartas del mazo, se vuelva a formar pero sin coger las cartas ya usadas...
Oye te felicito ya lo baje esta muy entretenido, como lo ejecuto en una Wiz?, un amigo tiene una, ya se lo pase pero no sabe como ejecutarlo.
Quote from: FreeYourMind on March 26, 2010, 06:18:34 AM
Quote from: SplinterGU on March 26, 2010, 03:29:43 AM
la version que subio aca el autor no es la ultima... no entiendo la redaccion de tu texto...
por que no esta el prg en esta version que subiste? si el autor los puso, no entiendo esa mania de quitar los fuentes...
las teclas no funcionan, porque cada vez que se hace let_me_alone, hay que llamar nuevamente al controlador de teclas.
Splinter, es que no te lees las cosas ? La ultima version no tiene fuentes (son antiguas a diferencia del dcb, quieres que te lo repita de nuevo ?), hombre creo que ya te ha dicho más de uno por aqui que antes de hablar te leas bien las cosas...
la verdad que ya cansan un poquito con eso de que no leo las cosas... la verdad es que ninguno se detiene a pensar que no soy español, y que Uds. tampoco redactan las cosas en neutro... o se comen signos de puntuacion... lo lei, como 3 veces... nunca dijiste claramente "no vienen los fuentes..." usaste una redaccion del texto que a mi punto de verlo no es correcta...
Bueno, lo que dices es incorrecto, porque yo baje la version de este post http://forum.bennugd.org/index.php?topic=1251.msg19768#msg19768 que el usuario dijo era la ultima actualizada, y venia con el source (dicho link ya no esta)... y para mi esa es la valida, la que da el autor, no la que empaquetamos nosotros... y como ya dije la valida no funciona...
yo creo que al que no leen es a mi...
ahora vuelvo a bajar la del primer post... que veo subio el autor ayer...
gracias a ambos...
Ahora si va la tabla de record, el boton de salir... muy bien... quedan las otras cositas, pero ya se ve mejor...
Quote from: folken on March 26, 2010, 04:08:08 PM
Oye te felicito ya lo baje esta muy entretenido, como lo ejecuto en una Wiz?, un amigo tiene una, ya se lo pase pero no sabe como ejecutarlo.
Gracias! No te puedo ayudar en como ejecutarlo en Wiz por que no la tengo xD. Pero seguro que los entendidos pueden echarte una manita!
Version nueva (1.2)
Añadido el volumen(teclas "o" y "p" para subir o bajar volumen en pc).
Arreglado el asuntillo de los botones, ejecutando el proceso que los controla despues de los let_me_alone... supongo que ahora deben de funcionar bien los botones de la Wiz, para poder salir y subir/bajar volumen.
Mañana me voy de viaje, asi que la otra version del solitario, me la llevare en el netbook y aver si puedo avanzarla algo!
gracias... a ver si hay mas karmas aca... por mi parte ya va el 2do karma...
ya te digo, los merece.
karma++;
Quote from: SplinterGU on March 26, 2010, 04:33:31 PM
Quote from: FreeYourMind on March 26, 2010, 06:18:34 AM
Quote from: SplinterGU on March 26, 2010, 03:29:43 AM
la version que subio aca el autor no es la ultima... no entiendo la redaccion de tu texto...
por que no esta el prg en esta version que subiste? si el autor los puso, no entiendo esa mania de quitar los fuentes...
las teclas no funcionan, porque cada vez que se hace let_me_alone, hay que llamar nuevamente al controlador de teclas.
Splinter, es que no te lees las cosas ? La ultima version no tiene fuentes (son antiguas a diferencia del dcb, quieres que te lo repita de nuevo ?), hombre creo que ya te ha dicho más de uno por aqui que antes de hablar te leas bien las cosas...
la verdad que ya cansan un poquito con eso de que no leo las cosas... la verdad es que ninguno se detiene a pensar que no soy español, y que Uds. tampoco redactan las cosas en neutro... o se comen signos de puntuacion... lo lei, como 3 veces... nunca dijiste claramente "no vienen los fuentes..." usaste una redaccion del texto que a mi punto de verlo no es correcta...
Bueno, lo que dices es incorrecto, porque yo baje la version de este post http://forum.bennugd.org/index.php?topic=1251.msg19768#msg19768 que el usuario dijo era la ultima actualizada, y venia con el source (dicho link ya no esta)... y para mi esa es la valida, la que da el autor, no la que empaquetamos nosotros... y como ya dije la valida no funciona...
yo creo que al que no leen es a mi...
Venia con el source si, pero el antiguo, impresionante, creo que he perdido las ganas de seguir posteando por aqui .... :-[
espero que estés de broma, perderíamos a un importante benusero activo. :(
Me gusta poco ver discusiones aquí:
A ver colegas, relajaros, cierto es que lo de los signos de puntuación y la ortografía es algo que muchos nos saltamos a la torera. Personalmente, cuando posteo, intento ser todo lo correcto posible, pero soy consciente de que en algunas ocasiones ni Splinter me entiende totalmente ni yo lo entiendo a él, pero eso es algo que es incluso divertido :D (Donde digo Splinter digo l1nk3rn3l o Prg).
Por ejemplo: Los que sean de España, fijaros que mi frase anterior en el castellano de España es perfectamente comprensible, pero en España se habla de una forma y en América del Sur de otra muy distinta... Aquí estamos españoles, argentinos, mexicanos, ingleses franceses... Muchas veces yo chapurreo inglés con mucho miedo de equivocarme, y seguro que lo hago... Pero la intención de todos los que aquí hablamos no es otra que intentar ayudar a los demás, dentro de nuestras capacidades, ¿O no?
La cultura no es tanto el perfeccionamiento de un determinado registro, sino la capacidad para cambiar de registro cuando es conveniente.
También debo añadir que en numerosas ocasiones, a deshoras, incluso agotados, algunos entramos al foro a intentar aportar algo productivo a nuestras discusiones, y hay veces que sólo leemos por encima los numerosos comentarios, a contrarreloj mientras desayunamos antes de irnos a trabajar por ejemplo... Podemos equivocarnos, es algo humano, hay veces que leo algunos de mis comentarios anteriores y lo veo reflejado perfectamente.
Entiendo a Splinter, he mantenido discusiones con él a deshoras y admiro su capacidad para estar tan involucrado en este proyecto, tanto en la hora de su país como en la hora del mío, casi todos en este foro somos personas que nos dedicamos a ésto con mucha pasión y siempre estamos dispuestos a aportar algo al proyecto, y es cierto que a veces no podemos estar al 100% de nuestras capacidades. No obstante yo os admiro a TODOS mucho y me siento orgulloso de todo lo que aquí se dice, incluso de mis errores que a veces me hacen sentir mal, incluso de los vuestros...
En definitiva: Mi querido FreeYourMind, no sientas ganas de dejar de postear aquí. Yo nunca he sido amigo de foros, y en los pocos que he estado no hay ni el 10% del buen rollo y de la disponibilidad para ayudar que tenemos aquí (p. ej Ogre3D o Bullet Physics).
Veo que te estás convirtiendo poco a poco en uno de los grandes de este foro, y estoy seguro de que todos queremos que aportes aquí tus ideas y tus discrepancias :D
Quote from: FreeYourMind on March 27, 2010, 01:46:51 AM
[...]
Venia con el source si, pero el antiguo, impresionante, creo que he perdido las ganas de seguir posteando por aqui .... :-[
Un poquito de calma. Los malentendidos son normales. No creo que merezca la pena enfadarse por ello. Hacedle caso a Wind, que sabe lo que dice.
Yo no me cabreo por un malentendido, faltaria más, quien me conoce de cerca sabe muy bien que a veces pueden tocarme las pelotas hasta la saciedad para que me enfade realmente, lo que me no me ha sentado muy bien, es eso que ha dicho de 'la mania de quitar los fuentes'.
Antes de hablar de malentendidos creo que la palabra 'mania' es universal y significa la costumbre de repetir algo inumeras veces, así que en este caso no creo que sea un caso de malentendidos....
Que yo sepa nunca le he quitado los fuentes a la distribución de alguien, o algo de alguien que haya puesto para descarga en otro sitio (seria la excepción este juego por el motivo comentado, para que se pudierá jugar el binário correcto), mucho menos que eso ya sea una mania ....
Es cierto que he compilado algunas dll's que ya estaban, pero no le he quitado los fuentes sencillamente porque estan ahí y son publicos ya el código es exactamente el mismo, si yo hicierá una nueva version de algo GPL de terceros, logicamente tendria que poner las fuentes, pero todavia no se ha dado el caso, y en esas cosas de licencias tengo la lección muy estudiada...
Si en mi compilación, importo dependencias de versionados distintos, si compilo con x, o y compilador, eso son configuraciones distintas, no código fuente distinto, o sea, si se refiere a eso como la supuesta mania, tampoco tendria lógica, si así fuera, entonces por ejemplo con el código fuente de Bennu o otro programa cualquiera GPL, tambien tendria que venir las configuraciones y todas sus dependencias externas para compilar en todas las plataformas del mismo programa en que ya se han compilado sus respectivos binários...
Así que, aparte de jorobarse mi ordenador y perder toda la información de proyectos y demás cosas que tenia, con eso de la mania, creo que de momento he perdido las ganas de llevar la actividad que llebaba, lo que es una pena, pues aqui me siento como en casa, donde hay magnifica gente para dar y vender.
espero que lo hayas dicho por no postear en este hilo...
vamos que a mi me pueden decir infinidad de veces que no leo cuando lo hago y yo me canso de repetir temas porque no buscan y yo no puedo decir nada a nadie porque se ofende... vamos...
lo de mania de no poner/quitar los fuentes, vamos que no es ninguna agresion... ya varias veces hemos pedido los fuentes... que ni tu ni DCelso los ponen... o les cuesta... tampoco eso es para enojarse... somos grandes y lo que mas admiro de este foro y este grupo de personas es que nos podemos decir de todo y ofendernos (muy temporalmente)... y seguir como si nada... todos somos de acero aca... y eso es lo que me gusta, esas son las personas que verdaderamente valen, a las que no tenes que irles con hipocrecias ni estupideces... que les decis las cosas cuando algo no te gusta, pero que luego seguis adelante y con alegria... vamos free que vos hasta ahora fuiste una de esas, no vas a abandonar ahora...
lo de los fuentes, es claro que fue un mal entendido debido a que el ultimo paquete que habia subido el autor y decia que era el ultimo tenia fuentes... luego tu subes uno que no tiene fuentes y que quieres que interprete? pero mas alla de eso, pense que ya el asunto quedo claro cuando dije que baje el nuevo paquete y ahi vi que no tenia fuentes... no pense que era necesario borrar lo dicho o pedir disculpas...
y sin hipocrecias... vamos no te me aflojes que aportas mucho y es agradable tenerte por aqui...
si te ofendi te pido disculpas...
Ok, no pasa nada, pero si hubieras explicado mejor el motivo de decir lo de la mania, no se habria empezado una tempestad donde no hay água.
Tienes que entender que a veces no es tan sencillo poner los fuentes, cuando es una beta y tienes todo el código echo basura (con muchas cosas comentadas que ni tienen nada que ver), no voy a poner mis guarradas aqui ;D
Ahora cuando la version esta completa o aún siendo una beta, no veo problema de ponerla, sobretodo cuando es para obtener vuestra esplendida ayuda, siempre desde que este minimamente organizado, o ya casi preparado para su distribucción, que es algo distinto a la primera situación...
Por cierto, sólo termine la primera version del mod_beep, y he puesto el proyecto completo con código fuente, y aún así apuesto que no tuvo más de 1/2 descargas...
Sobre las démas, como ya dije antes, estan en el mismo estado de las que ya estaban portadas sin saberlo, y sobre las que estaba portando, pues almenos que no las pueda recuperar en su totalidad, todo el trabajo ya echo se irá al garete...
Sobre lo démas, estoy de acuerdo contigo, ya somos todos mucho más que amigos, y podemos decir de todo sin animo de ofendernos, desde que no sea acusaciones de conducta que no se correspondan con la realidad, porque sobretodo yo respeto siempre el trabajo de los démas, y no soy de cambiarselo o aprovecharme de su trabajo sin su consentimiento, y cada uno es libre de hacer lo que quiera con sus proyectos, sean libres o de caracter cerrado/comercial, yo respeto esas decisiones que cada uno tiene con sus proyectos, así como tambien me gusta que respeten lo que hago con los mios.
si lo tomaste por el lado de no respetar los creditos o hacertelos propios, ni se me ocurrio eso... solo lo dije, por el hecho de no poner los codigos y que a veces luchamos con que algo no funcione o no poder echarme mano para corregir o aconsejar cierta cosa... pero ni se me ocurrio acusarte de robar creditos... ni lo pense...
mania, me referia a "comportamiento reiterado"... y eso fue por las anteriores veces que no ponias codigo en tus fuentes, y que varias veces los pedimos... ahora, en el caso en cuestion, el autor venia poniendo codigo en sus anteriores paquetes, y en su ultimo update tambien los puso, pero pertenecian a una version anterior... claramente fue un mal entendido... a lo cual, luego quedo claro que autor incluyo en la ultima version solo el dcb nuevo... y listo, no pense que era necesario dar mas explicaciones, ya quedaba claro...
lo siento por el mal entendido y el mal momento, espero que ya haya quedado todo claro.
Así me gusta, hablando se entiende la vasca (http://es.wikipedia.org/wiki/Hablando_se_entiende_la_basca).
En cuanto a mí respecta, pues yo no tengo ningún motivo oculto en no compartir el código fuente, y siempre que puedo lo hago por eso mismo que decís, que si hay fallos puedan aconsejarte o arreglarlos. Si no lo comparto es porque está en un estado muy verde que no quiero que vea la gente para que no me tachen de fullero al resolver algunos problemas :D.
Pero ahora mismo he compartido todos mis códigos fuentes de una manera u otra, o es que creeis que falta alguno.
Ya, fuera de este offtopic, estoy esperando a la versión 1.3 con el siguiente solitario a ver si me echo tantos vicios como a este :D.
ahora mismo que yo sepa estan todos.
volviendo al topico... mi record actual es 3145, nivel 6...
De momento no tuve tiempo para hacer nada,vine uns dias a la playa...Vi que ahi un error kn lo dl volumen y a veces suena aunque lo hayas bajado totalmente...tb lo mirare!