Karoshi MSX Community
05 de Julio de 2021, 08:21:20 pm *
Bienvenido(a), Visitante. Por favor, ingresa o regístrate.

Ingresar con nombre de usuario, contraseña y duración de la sesión
Noticias:
 
   Inicio   Ayuda Buscar Ingresar Registrarse  
Páginas: 1 2 [3] 4 5
  Imprimir  
Autor Tema: DESCUBRIENDO EL PONG  (Leído 23666 veces)
0 Usuarios y 1 Visitante están viendo este tema.
msx dummie
Karoshi Lover
***
Mensajes: 162



Email
« 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
Karoshi Forum's Guru
*******
Mensajes: 1516


¿Que es lo que has aprendido hoy?


WWW Email
« Respuesta #32 : 15 de Octubre de 2007, 02:08:04 pm »

Citar
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 Wink. 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:

Código:
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? Wink

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 Grin). 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 Wink
« Última modificación: 15 de Octubre de 2007, 02:11:31 pm por jltursan » En línea

Doom dee doom dee doom
msx dummie
Karoshi Lover
***
Mensajes: 162



Email
« 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
Karoshi Forum's Guru
*******
Mensajes: 1516


¿Que es lo que has aprendido hoy?


WWW Email
« Respuesta #35 : 15 de Octubre de 2007, 08:37:35 pm »

Citar
... 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 Cheesy

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á... Wink
En línea

Doom dee doom dee doom
nerlaska
Karoshi Excellent Member
******
Mensajes: 1102


Programador


WWW Email
« 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 Cheesy
En línea

MSX4EVER2GETHER
www.nerlaska.com
cybernoid
Karoshi Maniac
****
Mensajes: 368



WWW
« 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 Cheesy


he oido metal gear solid BASIC operations ?   Wink
« Ú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 Cheesy (o sea, código abierto)
En línea
msx dummie
Karoshi Lover
***
Mensajes: 162



Email
« Respuesta #39 : 16 de Octubre de 2007, 11:50:05 am »

JAJAJAJJ
oye no me vacileis... Cheesy

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... Wink

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 Grin

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 Grin

Aprovecha el engine del PONG para hacer un arkanoid o un krakout... Tongue
En línea
cybernoid
Karoshi Maniac
****
Mensajes: 368



WWW
« 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
Karoshi Lover
***
Mensajes: 162



Email
« 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 Grin Grin Grin )
En línea
msx dummie
Karoshi Lover
***
Mensajes: 162



Email
« 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
Páginas: 1 2 [3] 4 5
  Imprimir  
 
Ir a:  

Impulsado por MySQL Impulsado por PHP Powered by SMF 1.1.21 | SMF © 2013, Simple Machines XHTML 1.0 válido! CSS válido!