Kit MSX 2 da MPO

COLOR SPRITE$

  • Formato: COLOR SPRITE$(<X>)=<X$>
  • Finalidade: Alterar a cor de uma linha do "Sprite".
  • Categoria: Instrução.
  • Observações: Esta instrução só é válida nos modos gráficos 3, 4, 5, 6 e 7. <X> é o número do "Sprite" tal como está registrado na variável SPRITE$(X). <X$> é uma expressão em "String" de 1 a 16 caracteres. Cada caracter corresponde a cada linha do "Sprite".

Quando o código de caracteres de <X$> estiver entre 0 e 15, estes algarismos significam os números da paleta de cores.

Se somar 32 ao número da paleta de cores de <X$>, obterá o número da paleta de cores com a seguinte função:

"Ignore coincidence of Sprite". (despreze coincidência de "Sprite").

Isto significa que com a coincidência deste "Sprite" com outro "Sprite", o programa não saltará para a sub-rotina dada pela instrução ON SPRITE GOSUB.

Se adicionar 64 ao número da paelta de cores de <X$>, significa o número da paleta de cores com a seguinte função:

"Ignore priority and coincidence of sprite and use a logical OR operation of sprite colours". (desprese a prioridade e a coincidência do "sprite" e utilize uma operação lógica OR das cores dos "sprites").

Isso significa que, com coincidência da linha deste "Sprite" com outro "Sprite", o programa não saltará para a sub-rotina dada pela instrução ON SPRITE GOSUB mas, nesse caso, as cores deste "Sprite" serão a consequência de uma operação lógica OR.

Se acrescentar 128 ao número da paleta de cores de X$, isso significará que a linha deste "Sprite" se deslocará 32 pontos para a esquerda.

As cores dos "Sprites" podem ajustar-se por meio das instruções COLOR SPRITE, COLOR SPRITE$ ou PUT SPRITE. É válida o número da paleta de cores da última instrução executada.

Se desejar ajustar a cor do "Sprite" por meio das instruções COLOR SPRITE ou COLOR SPRITE$, queira omitir o número da paleta de cores da instrução PUT SPRITE.

Exemplo

10 SCREEN 5,0

20 B$=""

30 FOR I=1 TO 8:READ A:B$=B$+CHR$(A):NEXT

40 SPRITE$(0)=B$

50 PUT SPRITE 0,(100,100),,0

60 FOR I=0 TO 2000:NEXT

70 COLOR SPRITE$(0)=CHR$(12)+CHR$(1)+CHR$(130)

80 FOR I=0 TO 2000:NEXT

90 DATA 24,60,126,255,36,36,66,129

100 END

file clrsp2.bas:

kitmpo2 0017 kitmpo2 0018