HispaMSX

RE: Cómo programar un juego conversacional

2004-12-02 23:04:10


Muchas gracias por responder y perdona el retraso de mi contestación
pero mi curro no me deja tranquilo ultimamente.

Nunca he hecho un programa entero en BASIC , sólo unas cuantas
tonterías y aunque entiendo tu explicación, no me vendría mal una
pequeña subrutina de ejemplo ;).

salu2.



--- En hispamsx(_en_)yahoogroups(_punto_)com, msx_forever <msx_forever@y...> 
escribió:
x> Deseo programar mi primer juego para MSX y he pensado en hacer uno
x> conversacional con una foto por pantalla y bajo ella texto
explicativo y  
x> tambien alguna pregunta para avanzar a la siguiente pantalla.

x> En basic sería algo así?:
x> 10 cls: key off: print "primera pantalla"
x> 20 load "pantalla1.sc2"
x> 30 a$=inkey$
x> 40 if a$= "N" then 100
x> 50 if a$= "S" then 110

x> ...
x> ...

x> 100 ' carga de la nueva pantalla según S.
x> 110 ' carga de la nueva pantalla según N.


x> El problema es que no consigo intercalar una imagen (escaneada o
hecha
x> con algun programa de dibujo) con texto , osea todo en la misma
pantalla.

x> Cómo sería la resolución del mismo programa pero en assembler?

Hola

Lo mejor seria que usaras mas o menos los dos primeros tercios de
pantalla como grafico, con el escenario que 
dibujes de un modo u otro y el ultimo tercio, para texto, definiendo
los patrones de esta ultima zona como un tipo de 
fuente, o varios. Tendras dos zonas con dibujo (aunq en realidad
seguiran siendo patrones) y una tercera zona con 
texto (q tambien son patrones) y simplemente tendras q vpokear el
texto. 

-->Vpoke NAMTBL3+columna+32*fila,asc(<caracter>)

Aunque si usas Screen 1 con el VDP al modo screen 2, puedes escribir
con un simple PRINT normal y corriente.

Las dos zonas de grafico se pueden cargar con Bload ,S aunque
entonces tendras q grabar solo 4k con los 
patrones y 4ks con los colores de los patrones ya que si cargas una
pantalla "entera" , macharas las definiciones de 
la 3ª zona que contiene las fuentes y el texto, y q no nos conviene
modificar una vez cargada (durante el juego al 
menos)
El procedimiento en Basic o ASM es practicamente lo mismo. Es mu fasi! 

Saludos

Juan Luis, MsxKun




<Anterior en la conversación] Conversación actual [Siguiente en la conversación>