RSPRITE
RSPRITE | |
Syntax: | RSPRITE(<Sprite>,<n>) |
Parameter | |
<Sprite>: numerischer Ausdruck im Wertebereich von 1 bis 8 | |
<n>: numerischer Ausdruck im Wertebereich von 0 bis 5 | |
Einordnung | |
Typ: | numerische Funktion |
Kontext: | Sprites |
Aufgabe: | Attribute eines Sprites ermitteln |
Abkürzung: | rS |
Token: | $ce $06 (206 6) |
Verwandte Befehle | |
RSPCOLOR, RSPPOS, SPRITE |
Anmerkung: Dieser Artikel beschreibt die BASIC-Funktion RSPRITE ab Commodore BASIC V7.0 oder höher.
Die Funktion RSPRITE dient dazu, die einem Sprite zugeordneten Attribute abzufragen.
Die Funktion besitzt folgende Parameter:
- <Sprite>: Nummer, des Sprites, dessen Attribute abgefragt werden. Der Parameter muss im Wertebereich von 1 bis 8 liegen, sonst wird die Fehlermeldung ?ILLEGAL QUANTITY ERROR ausgegeben.
- <n>: Gibt das abzufragende Attribut an. Der Parameter darf folgende Werte annehmen:
- 0: ermittelt, ob das Sprite aktiv ist. Rückgabewerte 0 steht für ein inaktives, 1 für ein aktives Sprite
- 1: gibt die Farbe des Sprites zurück. Dem Rückgabewert entsprechen folgende Farben:
Farb- wert |
Farbname | Farbe | Farb- wert |
Farbname | Farbe | |
---|---|---|---|---|---|---|
1 | Schwarz | 9 | Orange | |||
2 | Weiß | 10 | Braun | |||
3 | Rot | 11 | Hellrot | |||
4 | Türkis | 12 | Grau 1 | |||
5 | Violett | 13 | Grau 2 | |||
6 | Grün | 14 | Hellgrün | |||
7 | Blau | 15 | Hellblau | |||
8 | Gelb | 16 | Grau 3 |
Der VIC-Farbcode (entsprechend der C64-Farbtabelle) ergibt sich aus dem Farbwert minus 1.
- 2: ermittelt die Sprite-Priorität. Bei Rückgabewert 0 überdeckt das Sprite den Bildschirmvordergrund, bei 1 wird es vom Vordergrund überdeckt.
- 3: ermittelt, ob das Sprite horizontal gedehnt ist. Bei Rückgabewert 0 wird das Sprite normal dargestellt, bei 1 horizontal gedehnt.
- 4: ermittelt, ob das Sprite vertikal gedehnt ist. Bei Rückgabewert 0 wird das Sprite normal dargestellt, bei 1 vertikal gedehnt.
- 5: ermittelt den Farbmodus. Bei Rückgabewert 0 ist das Sprite einfarbig, bei 1 dagegen mehrfarbig.
- Andere Werte für <n> verursachen die Fehlermeldung ?ILLEGAL QUANTITY ERROR.
Eine Zeichenkette als Parameter führt zu einem ?TYPE MISMATCH ERROR. Fehlen Parameter oder sind mehr als 2 angegeben, wird ein ?SYNTAX ERROR ausgegeben.
Gesetzt werden können die Attribute mit der Anweisung SPRITE.
Beispiele[Bearbeiten | Quelltext bearbeiten]
PRINT RSPRITE(1,0)
Gibt auf dem Bildschirm 1 aus, falls das erste Sprite eingeschaltet ist, ansonsten 0.
SPRITE 1,,(RSPRITE(1,1) AND 15) + 1
Setzt die Farbe des Sprites auf den nächsten Wert in der Farbtabelle.
APPEND | BANK | BEGIN | BEND | BLOAD | BOOT | BSAVE | BUMP | CATALOG | COLLISION | COLOR | CONCAT | DCLEAR | DCLOSE | DOPEN | DVERIFY | ENVELOPE | FAST | FETCH | FILTER | GO64 | MOVSPR | (OFF) | PEN | PLAY | POINTER | POT | (QUIT) | RECORD | RREG | RSPCOLOR | RSPPOS | RSPRITE | RWINDOW | SLEEP | SLOW | SOUND | SPRCOLOR | SPRDEF | SPRITE | SPRSAV | STASH | SWAP | TEMPO | WIDTH | WINDOW | XOR