msx dummie
|
|
« Respuesta #30 : 15 de Octubre de 2007, 12:28:08 pm » |
|
claro, no te preocupes, me dio rabia porque tengo ganas de que me expliques muchas cosas... pero en otra ocasión sera...
ayer estuve mirando todo lo que habeis comentado sobre la velocidad y los angulos, estuve pasando la lista de variables y condiciones al cuaderno para empezar otra vez el programa asi. también me gustaria que dependiendo del lugar de la pala que toque la bola, también varie el sentido de "y" creo que podria hacerlo programando el resto de condiciones para calcular en cual de los sprites esta rebotando y alterar en base a eso.
y despues ya solo me faltaria la rutina de puntuación y todo eso, ante esto tengo una duda, bueno, no es sobre esto sino sobre como puedo utilizar textos en screen 2 para que sean distintos de los standart, en el listado de JLturstan del Maze Chase, observe que con "open" hacia que se escribiesen textos en pantalla, pero no eran los textos normales, tenian un formato mas chulo, por eso me estaba preguntando:
¿de que manera se hace esto?
¿hay que definir primero los sprites de los textos y asignarlos a cada letra o algo así?
gracias otra vez!
|
|
|
En línea
|
|
|
|
SapphiRe_MSX
Visitante
|
|
« Respuesta #31 : 15 de Octubre de 2007, 01:39:36 pm » |
|
también me gustaria que dependiendo del lugar de la pala que toque la bola, también varie el sentido de "y" creo que podria hacerlo programando el resto de condiciones para calcular en cual de los sprites esta rebotando y alterar en base a eso. En lugar de calcular con qué sprite rebota mejor calcula la distancia de la bola al centro de la paleta, tienes las coordenadas Y de cada elemento, así que no tendrías ningún problema. Saludos -- Sph.
|
|
|
En línea
|
|
|
|
jltursan
|
|
« Respuesta #32 : 15 de Octubre de 2007, 02:08:04 pm » |
|
como puedo utilizar textos en screen 2 para que sean distintos de los standart, en el listado de JLturstan del Maze Chase, observe que con "open" hacia que se escribiesen textos en pantalla, pero no eran los textos normales, tenian un formato mas chulo, por eso me estaba preguntando Nope, te debes estar confundiendo de listado . En el caso del chase empleé screen 1; así que la salida se hace con simples PRINT. Para conseguir carácteres diferentes a los de la BIOS sólo tienes que redefinirlos, ya sabes, más caña a esas famosas direcciones de memoria VRAM. En este caso el mapa de la memoria es diferente al de screen 2: SCREEN 1 ---------------------- 0000-07FF Definición de carácteres 1800-1AFF Mapa de carácteres 1B00-1B7F Atributos de sprites 2000-201F Colores de los caracteres 3800-3FFF Definición de sprites
Tienes todos los modos de video desglosados aquíPara definir un carácter sólo tienes que "vpokear" su nuevo aspecto en las direcciones correspondientes de la tabla de definición de carácteres. En el modo screen 1 ocupa las direcciones 0000-07FF; así que con un poco de matemática simple podrás ver que esos 2048 bytes salen de multiplicar 256 carácteres posibles por 8 bytes por carácter. Si queremos cambiar la letra A mayúscula, por ejemplo, lo haremos así: Código ASCII de la "A": 65 * 8 = &H208 (aquí comienzan los 8 bytes que determinan la forma de la A) VPOKE &H208,255 VPOKE &H209,129 VPOKE &H20A,129 VPOKE &H20B,129 VPOKE &H20C,255 VPOKE &H20D,129 VPOKE &H20E,129 VPOKE &H20F,129 Teclea alguna A mayúscula y verás el cambio. ¿Lo has pillado? Y antes de que te lances ya te contesto yo. No, en screen 2 no se puede hacer lo mismo (sin utilizar trucos sucios o muy sucios ). Si quieres imprimir un caracter en SC2 tienes que usar ese "open" que decias y usar "print#" para obtener los carácteres estandar. Si estás muy interesado en continuar usando SC2 ya te explicamos como seguir por la via sucia o incluso por la muy sucia
|
|
« Última modificación: 15 de Octubre de 2007, 02:11:31 pm por jltursan »
|
En línea
|
Doom dee doom dee doom
|
|
|
msx dummie
|
|
« Respuesta #33 : 15 de Octubre de 2007, 05:31:43 pm » |
|
ok. ok. estoy con ello, pensaba que screen 1 limitaba el tema del espacio del campo... y que no se podia dibujar con "line, draw, etc..." gracias JL!
|
|
|
En línea
|
|
|
|
SapphiRe_MSX
Visitante
|
|
« Respuesta #34 : 15 de Octubre de 2007, 05:55:13 pm » |
|
estoy con ello, pensaba que screen 1 limitaba el tema del espacio del campo... y que no se podia dibujar con "line, draw, etc..." Es que no se puede dibujar en SC1... al menos no con esas instrucciones. Sólo redefiniendo caracteres, nada más.
|
|
|
En línea
|
|
|
|
jltursan
|
|
« Respuesta #35 : 15 de Octubre de 2007, 08:37:35 pm » |
|
... y que no se podia dibujar con "line, draw, etc... Y como dice Sapphire no se puede; además, ¡que no me entere yo que usas lines, circles y psets (el draw te lo perdono)!, que eso es sólo para hacer casitas La clave está en redefinir los caracteres y usar bien los sprites, con eso ya te puedes montar unos jueguecillos muy chulos. ¿Por qué no te vas planteando ya una meta?, el pong está bien para hacer los primeros experimentos; pero igual empiezas a ver ya un poco más allá...
|
|
|
En línea
|
Doom dee doom dee doom
|
|
|
nerlaska
|
|
« Respuesta #36 : 15 de Octubre de 2007, 09:42:58 pm » |
|
Yo creo que igual tendrias que hacer el "Penguin Adventure 2" que tiene pinta de ser facilongo en BASIC
|
|
|
En línea
|
|
|
|
cybernoid
|
|
« Respuesta #37 : 16 de Octubre de 2007, 10:01:17 am » |
|
Yo creo que igual tendrias que hacer el "Penguin Adventure 2" que tiene pinta de ser facilongo en BASIC he oido metal gear solid BASIC operations ?
|
|
« Última modificación: 16 de Octubre de 2007, 10:06:38 am por gobblin »
|
En línea
|
|
|
|
SapphiRe_MSX
Visitante
|
|
« Respuesta #38 : 16 de Octubre de 2007, 10:50:54 am » |
|
Yo quiero un Nemesis BASIC al que poder meterle mano (o sea, código abierto)
|
|
|
En línea
|
|
|
|
msx dummie
|
|
« Respuesta #39 : 16 de Octubre de 2007, 11:50:05 am » |
|
JAJAJAJJ oye no me vacileis... lo del nemesis esta hecho! jajajj lo tengo casi terminado, pero tengo un problemilla cuando se abren las bocas de las cabezas de Pascua, me va un pelin lento con tanto sprite... no, en serio, lo del pong me ha venido muy, muy bien, con vuestra ayuda he comprendido muchas cosas basicas, pero la verdad es que me veo muy pez todavia, he construido pequeños juegos y chapucillas varias, pero no sabria que hacer en basic, todavia me faltan por comprender muchisimas cosas,m quiza me podais decir que hariais vosotros en mi lugar, no se... proponedme un reto!! pero no os paseis un abrazo chicos, gracias, de corazon.
|
|
|
En línea
|
|
|
|
SapphiRe_MSX
Visitante
|
|
« Respuesta #40 : 16 de Octubre de 2007, 12:05:33 pm » |
|
proponedme un reto!! pero no os paseis Aprovecha el engine del PONG para hacer un arkanoid o un krakout...
|
|
|
En línea
|
|
|
|
cybernoid
|
|
« Respuesta #41 : 16 de Octubre de 2007, 12:24:50 pm » |
|
yo creo que debes centrarte en terminar el pong, TERMINALOOOO antes de que tu carpeta de proyectos noterminados supere a la de los terminados.... o te pasara como a mi,he tenido tantos proyectos inacabados que me volvia loco (de esto ya hace mucho tiempo, aun vendian juegos de msx en las tiendas xD)
|
|
|
En línea
|
|
|
|
msx dummie
|
|
« Respuesta #42 : 16 de Octubre de 2007, 01:12:41 pm » |
|
voy a terminarlo, seguro, lo que estoy pensando es en añadirle cositas segun este terminado, algun ladrillo tipo arkanoid que aparezca por el medio y alguna otra tonteria mas que tengo pensada, pero lo voy a terminar, y cuando esté terminado ya me lanzo a por el salamander2007 (integramente en basic) jejejej no, de verdad, cuando lo termine pasare a otra cosa, pero quiero acabarlo...
|
|
|
En línea
|
|
|
|
SapphiRe_MSX
Visitante
|
|
« Respuesta #43 : 16 de Octubre de 2007, 01:46:05 pm » |
|
antes de que tu carpeta de proyectos noterminados supere a la de los terminados.... Es cierto. Pongamos, por ejemplo, mi caso: Proyectos terminados: 3 Proyectos no terminados pero de los que algo hay : 10 Proyectos que terminaré para el año que viene: 1 ó 2 Ideas: nan (not a number )
|
|
|
En línea
|
|
|
|
msx dummie
|
|
« Respuesta #44 : 16 de Octubre de 2007, 03:17:44 pm » |
|
bueno, vamos ya con la chapa del dia, os cuento por donde voy:
tengo la pelota rebotendo en un recinto cerrado, con mi pala a la derecha, la pelota rebota con las paredes a traves del mandato point, tal y como SapphiRe me enseño, y los rebotes con la pala los he calculado asi: (teniendo en x e y las coordenadas de la bola y en px y py las de el sprite central de la pala)(la pala esta formada por 3 sprites:
IF X=PX-5 AND Y<=PY+16 AND Y>=PY-16 THEN VX=-VX
Asi la pelota rebota, pero siempre de la misma manera, quiero decir si viene de arriba rebota hacia abajo y viceversa, pero a mi me gustaria que dependiendo de la zona de la pala donde rebote, pues el rebote sea de una manera u otra... me esta costando, estoy haciendo pruebas yno doy con ello...
¿como lo hariais? porque el problema que me encuentro no es dividir la pala, sino comprobar que valor tiene "y" cuando llega a la pala, positivo o negativo, y no se como se hace...
ademas segun Jlturstan, no se suelen usar el comando line y todo esto, y mi campo esta hecho asi, ademas también la programación de los rebotes del campo, que esta ejecutada con point... asi que,,,
¿como se programaria entonces, si hago las paredes con sprites en vez de con line?
|
|
|
En línea
|
|
|
|
|