Bueno, en un video, hace un tiempo, me encontré con un scripts de un "fantasma" de un Eevee (No pude volver a dar con el susodicho video) el cual era transparente, tal cual una Textbox.
Ahora bien, usando el BLDMOD, COLEV, COLEY y WININ (resumiendo, el I/O) uno puede lograr minis transparentes, pero en realidad toda la data de la parte de "OBJ" es puesta en éste modo:
Como ví que de ésta manera me sería imposible hacer que solo el OBJ que yo quiera sea transparente, fuí a GBATEK, para ver si habría algo que me ayudase...
Iniciado por GBATEK
Atributos de los OBJ
Existen 128 entradas en el OAM para cada OBJ, del OBJ0 al OBJ127. Cada entrada consiste de 6Bytes (3 atributos de 16bits). Los atributos del OBJ0 se encuentran en 07000000, para OBJ1, al 07000008, OBJ2 a 07000010 y así.
Como puedes ver, hay espacios en blanco en 07000006, 0700000E, 07000016, etc. - Estos valores de 16bit son usados para Rotar/Escalar los OBJ (Como se describe en el proximo capitulo) - Ellos no están directamente realacionados con los separados OBJ
Bit Expl.
0-7 Coordenada-Y (0-255)
8 Flag de Rotacion/Scaling (0=Off, 1=On)
Cuando se usa la Rotacion/Scaling (Attribute 0, bit 8 set):
9 Double-Size Flag (0=Normal, 1=Double)
When Rotation/Scaling not used (Attribute 0, bit 8 cleared):
9 OBJ Disable (0=Normal, 1=Not displayed)
10-11 OBJ Mode (0=Normal, 1=Semi-Transparente, 2=OBJ Window, 3=Prohibited)
12 OBJ Mosaic (0=Off, 1=On)
13 Colors/Palettes (0=16/16, 1=256/1)
14-15 OBJ Shape (0=Square,1=Horizontal,2=Vertical,3=Prohibited)
Atención: Un OBJ demasiado grande (de 128px verticales, por ejemplo, un obj de 64px de Doble tamañlo de area) ubicado en Y>128 será tratado como Y>-128, el OBJ entonces es mostrado en partes fuera de la pantalla en el TOP del display, y no se muestra en la parte más baja
OBJ Attribute 1 (R/W)
Bit Expl.
0-8 X-Coordinate (0-511)
When Rotation/Scaling used (Attribute 0, bit 8 set):
9-13 Rotation/Scaling Parameter Selection (0-31)
(Selects one of the 32 Rotation/Scaling Parameters that
can be defined in OAM, for details read next chapter.)
When Rotation/Scaling not used (Attribute 0, bit 8 cleared):
9-11 Not used
12 Horizontal Flip (0=Normal, 1=Mirrored)
13 Vertical Flip (0=Normal, 1=Mirrored)
14-15 OBJ Size (0..3, depends on OBJ Shape, see Attr 0)
Size Square Horizontal Vertical
0 8x8 16x8 8x16
1 16x16 32x8 8x32
2 32x32 32x16 16x32
3 64x64 64x32 32x64
OBJ Attribute 2 (R/W)
Bit Expl.
0-9 Character Name (0-1023=Tile Number)
10-11 Priority relative to BG (0-3; 0=Highest)
12-15 Palette Number (0-15) (Not used in 256 color/1 palette mode)
Luego voy a estar tranduciendo ésto.
Bueno, entonces, ahí dice que con a primer parte de 16bits, en el bit 10-11 puedo cambiar el modo de los OBJ a semitransparente... Intenté hacerlo con un WBTO, pero la data en la Ram se carga una y otra vez, y no me permite hacer nada...
Los datos de los OBJ como dice GBATEK empiezan en 0x07000000
Iniciado por Cheve_X
Intenté hacerlo con un WBTO, pero la data en la Ram se carga una y otra vez, y no me permite hacer nada...
¿Con eso te refieres a que si pones el WBTO no pasa nada porque se refresa de inmediato o se refresca después que el mini hace un cambio de frame?
Interesante tema, por cierto.
Bit Expl.
0-7 Coordenada-Y (0-255)
8 Flag de Rotacion/Scaling (0=Off, 1=On)
Cuando se usa la Rotacion/Scaling (Attribute 0, bit 8 set):
9 Double-Size Flag (0=Normal, 1=Double)
When Rotation/Scaling not used (Attribute 0, bit 8 cleared):
9 OBJ Disable (0=Normal, 1=Not displayed)
10-11 OBJ Mode (0=Normal, 1=Semi-Transparente, 2=OBJ Window, 3=Prohibited)
12 OBJ Mosaic (0=Off, 1=On)
13 Colors/Palettes (0=16/16, 1=256/1)
14-15 OBJ Shape (0=Square,1=Horizontal,2=Vertical,3=Prohibited)
Entonces lo que hago es poner un 1 en A (A=10) con lo que pongo valor 1 en el bit 10-11, quedando el numero así:
1 0 0 0 0 1 0 0 0 0 1 1 1 0 0 0
F E D C B A 9 8 7 6 5 4 3 2 1 0
1000010000111000 (BIN)
8438 (HEX)
entonces lo que yo intento es hacer un WBTO al 0x07000000 con el valor 0x84, cuando el script lo carga, vuelve a su valor original (0x80)
Eso es a lo que me refiero [MENTION=28239]NoMore Rancor[/MENTION]