No puedo conseguir una variable del struct para cargar un proceso. Por ejemplo:
level.pellet_obj[i] = pellet();
level.pellet_obj[i].x = x;
level.pellet_obj[i].y = y;
Trabaja mientras que en juego. Pero cargamento que no.
esto funciona bien... prueba cambiando esto en el codigo..
for(i=0; i<254; i++)
level.pellet_obj[i] = pellet();
level.pellet_obj[i].x = x+i*10;
level.pellet_obj[i].y = y;
say(level.pellet_obj[i]);
end
por otro lado, si te refieres a hacer save y load de esas estructura, es logico que no puedas cargarlo, ni guardarlo, porque guardas el identificador del proceso, y cuando lo guardas almacenas el id del proceso, pero no sus variables, y cuando lo cargas, cargas un id de un proceso que no existe en memoria.
no puedes almacernarlo asi.
¿Yo es muy confuso, puede usted apenas cambiar el código?
en realidad para almacenar el proceso y sus coordenadas en lugar de pellet_obj[254]; deberias agregar a tu estructura los siguientes datos
pellet_obj_process_type[254];
pellet_obj_x[254];
pellet_obj_y[254];
o hacer una estructura
type _pellet_obj
int proc_type;
int x;
int y;
end
y en tu estructura hacer
_pellet_obj pellet_obj[254];
y llenarlo
pellet_obj[n].proc_type = my_proc_type; // seria un entero que represente para vos el tipo de proceso u objeto
pellet_obj[n].x = ...;
pellet_obj[n].y = ...;
se entiende?
Confuso inmóvil. ¿Puede usted cambiar el código sí mismo? ¿Y entonces cargúelo? Gracias
no es solo cambiar esas lineas, tienes que hacer mas cosas, esas lineas te muestran la idea correcta de como deberia ser el metodo...
no puedo escribirte el codigo.
Apesadumbrado, sino yo no puede avanzar para fomentar. E Ive perdió 6 meses de mi plazo que intentaba imaginar esto. ¿Puede alguien apenas introducirlo allí?
entiende...
no es tan simple como escribir esas lineas... tienes que desarrollar el codigo y ademas entender tu codigo...
lo que tienes que hacer es entender que los procesos son cosas de runtime, no se pueden almacenar.
los procesos no son estructuras.
al hacer proceso.x o proceso.y o proceso (id), no estas llenando una estructura, estas tocando propiedades de un objeto dinamico/temporal que solo existe en tu instancia de ejecucion actual, este objeto es el proceso.
un proceso no se puede almacenar.
para almacenar un proceso, deberias almacenar en una variable el tipo de proceso, que seria un valor que tu quieras darle, por ejemplo:
1 - enemigo
2 - bloque
3 - arbol
4 - pared
etc
y guardar sus coordenadas en variables tambien
tu guardas/salvas estas variables, y cuando la cargas/load lo que haces es interpretar...
si tipo de proceso es
1 - entonces lanzo un proceso enemigo en las coordenadas almacenadas previamente
si es
2 - entonces lanzo un proceso bloque en las coordenadas almacenadas previamente.
se entiende?
NOTA: Por favor, alguien puede explicarle estas cosas en ingles a DoctorN?
Soy así que perdido. Usted de toda la gente debe saber ahora, yo aprende estudiando qué existe ya. Y no puedo encontrar cualquier cosa que estoy buscando. Tenía un plazo (diciembre del año pasado), pero el ive lo retrasó a julio. Si usted podría, por favor, para mí. Structs es muy duro para mí. Podía aprender bastantes estudiando esto (Tiles): http://fenixonfire.gp32x.de/html/sources.html (http://fenixonfire.gp32x.de/html/sources.html). Pero no hay no más que puedo aprender de esto. Apenas necesito esta una cosa estudiar de, y después la sabré y entenderé. Gracias
no prometo nada, vamos a ver si te puedo ayudar.
Ok. Gracias
aca te paso un ejemplo.
usa tu fpg y tu png para verlo.
¿Gracias? Todavía no puedo conseguirlo para trabajar en mi juego. Sería agradable si había comentarios también.
lo siento, es muy simple el codigo, los comentarios ya te los he explicado posts atras...
mira el codigo, modificalo, pone SAYs por todos lados, y mira que hace.
es demasiado simple.
explica que parte en concreto no entiendes.
alguien que me de una mano explicandoselo a DoctorN?
por favor, intenta entender el codigo, he perdido al menos 1 hora de mi tiempo para hacerte los ejemplos y probarlos.
incluso intentando que sean lo mas cercano a lo que necesitas, no he optimizado ni nada, lo he hecho bien a prueba de tontos.
Autorización, pero porqué can' t usted apenas hecha una ojeada mi código sí mismo. Introduzco nuevo código, pero todavía no trabajo a la derecha.
disculpa, tu quieres que te haga el trabajo...
lo siento... me niego a ayudarte, he visto tu codigo, no te has detenido siquiera a analizar mi codigo, sigues insistiendo en asignar el id de tu proceso a la estructura y luego cuando lo cargas pisas todos los valores de la estructura sin importar que tiene dentro.
lo siento, ya no puedo ayudarte mas.
Soy apenas tan confuso, nada de esto tiene sentido. Si no pongo en el código que tengo, consigo desplome del error. "Process (id) not active".
for( level.pellet_tot = 0; level.pellet_tot < 256; level.pellet_tot++ )
pellet(level.pellet_obj[level.pellet_tot].x,level.pellet_obj[level.pellet_tot].y);
level.pellet_obj[level.pellet_tot].x = x;
level.pellet_obj[level.pellet_tot].y = y;
end
Hice lo que usted hizo, él no trabajo con mi juego. ¿Por qué? No tengo ninguna idea. Seguí el ejemplo.
Quote from: DoctorN on February 28, 2012, 01:01:58 AM
Soy apenas tan confuso, nada de esto tiene sentido. Si no pongo en el código que tengo, consigo desplome del error. "Process (id) not active".
for( level.pellet_tot = 0; level.pellet_tot < 256; level.pellet_tot++ )
pellet(level.pellet_obj[level.pellet_tot].x,level.pellet_obj[level.pellet_tot].y);
level.pellet_obj[level.pellet_tot].x = x;
level.pellet_obj[level.pellet_tot].y = y;
end
Hice lo que usted hizo, él no trabajo con mi juego. ¿Por qué? No tengo ninguna idea. Seguí el ejemplo.
donde en el ejemplo que yo hice ves que pongo
level.pellet_obj[level.pellet_tot].x = x;
level.pellet_obj[level.pellet_tot].y = y;
en el load???
por otro lado, esta mal lo que estas haciendo, sigues pensando que los procesos son estructuras.
..........
¡Gracias tanto! ¡Karma! Hice que el mismo código anterior con todo él no trabajaron. Con todo el suyo sin embargo, hizo. Oh bien. Apesadumbrado para conseguir enojado ;D .
lo unico que entendi fue "karma" y que funciono.
Eso es impar. Mi amigo de la Argentina traduce inglés-español para mí.
You must take a real spanish friend to translate a perfect spanish for you
Babelfish es mucho mejor que él ocasionalmente.
me ha costado entenderte, la mayoria de lo que escribiste te lo entendi porque imagine las palabras que usaste en ingles, la traduccion esta vez fue muy mala, en ocasiones anteriores se leian mejor.
Please, speak in english, because this "spanish" not be understood.
I recomend you look "type struct" for you code. To do this you only need 3 steps:
1- declare a type name for this struct:
type scrol;
sx;
sy;
cam;
end
2- declare a variable type of the struct, it can be global, private or local:
GLOBAL
scrol myScrol;
scrol myScrol2;
END
3- You can access to these structs by nameVar.structVar:
myScrol.sx = 15;
myScrol2.sx = 34;
I think that's what SplinterGU tried to tell.
On the other hand, when you write any declaration of type "int" variables, please write "int" before these, is more beautifull, and close the sections "global" and "private" with "end". It is not necesary but is more clear to read after.
Regards!
Well i have to go find me a new translator now. The spanish I know is mexican spanish and that is far different than other spanishes.
DoctorN, your spanish wasn't mexican... in this thread you have generic language errors, because you use a literal translator.
¿Usted piensa que esto es mejor? ¿Cómo usted hace el "ruede el dice" code?
How do you do "roll the dice" code?
"roll the dice" es "tirar los dados"
no se que queres decir con eso.