Combined list of bugs and suggestions for OSDM Script in a structured format that is easier to work with.
MMX - Set X Move (3D Vector, 3D Ball) (0-360) (ZINI (Radius)) (0-180)
MMY - Set Y Move (3D Vector, 3D Ball) (0-360) (ZINI (Radius)) (0-180)
MMZ - Set Z Move (3D Vector, 3D Ball) (0-360)
MSF - Set Start Frame (Sprite) - Note: Effect wie IDN = X auf die Frames bei einer Logo Animation. Es macht Sinn MSF zum auswaehlen des aktuellen Frames auch bei den Effekten LOGO und BOUNCE zu verwenden
MFD - Set Frame Delay (Logo) - Note: Effect wie MVS = X bei Sprite Animation. Es macht Sinn MFD zum setzen des Frame Delays auch bei dem Efffekten SPRITE und BOUNCE zu verwenden
IRX - Compare Value X Rotation (3D Vector, 3D Ball)
IRY - Compare Value Y Rotation (3D Vector, 3D Ball)
IRZ - Compare Value Z Rotation (3D Vector, 3D Ball)
IMX - Compare Value X Move (3D Vector, 3D Ball)
IMY - Compare Value Y Move (3D Vector, 3D Ball)
IMZ - Compare Value Z Move (3D Vector, 3D Ball)
IAX - Compare Value X Angle (3D Vectot, 3D Ball)
IAY - Compare Value Y Angle (3D Vector, 3D Ball)
IAZ - Compare Value Z Angle (3D Vector, 3D Ball)
IFF - Compare Frame Number (Sprite, Logo, Bounce)
IDF - Identifier Frame ID (Sprite, Logo, Bounce) - Sets the current frame to the specified frame number (like IDN does for the Logo Effect today)
AMX - Add X Move (3D Vector, 3D Ball) (-360 - 360)
AMY - Add Y Move (3D Vector, 3D Ball) (-360 - 360)
AMZ - Add Z Move (3D Vector, 3D Ball) (-360 - 360)
AMIGATEXT 2
PAGE 2
ZINI 2
REFLECTION
PLASMA
2 Implemented in latest OSDM Version, but buggy/not working properly.
ADA - Note: Den einzigen effekt den ADA hat, ist die 100% sichtbarmachung des logos (wie MVA = 255) wenn mit ADA = -X (negativ) der Alphawert von 0 unterschritten wird. Z.b. LEA = LOGO, MVA = 0, ADA = -11
SFX - Funktioniert nur, wenn irgend ein Logo Effect im OSDM interface spezifiziert wurde und nicht wenn Effect = NONE ausgewaehlt wurde.
1 Already added to non-public OSDM v2.10.160a (14.03.2010) ALPHA, which is currently being developed.
Added by Roy/SAC March, 2011
Cool waere es, wenn man noch was machen koennte, wenn der user ESC oder SPACE (je nach Introeinstellung) drueckt, um das intro zu beenden.
Um zum Beispiel ein eigenes „ausblende“ feature zu bauen oder noch nen „credits“ screen zeigen will und so etwas (mit getimeter musik ausblendung zum Beispiel).
Das ESC Kommando sollte dann immer noch wie eh und je die normale OSDM intro exit routine ausfuehren.
Ich dachte da zum Beispiel an den aufruf einen SYSTEM Labels oder SYSTEM Makros. z.B.:
...
Normaler Code
...
END
LAB=EXIT
STP=DISPLAY
NOP=1
CAL=SPRITE
LEA=SPRITE
IDN=8
MVA=255
CAL=DISPLAY
NOP=2
REP=100
ADA=-2
ADV=-1
LOP
REP=27
ADA=-2
LOP
ESC
RTS
... oder am anfang des scripts
@INTROEXIT
...
Custom Code
...
@END
Zur Sicherheit, damit keiner auf die Bloede Idee kommt damit Schindluder zu treiben und den User nicht aus dem intro rauslaesst, koennte man ja einbauen, dass er beim wiederholten ESC/SPACE druecken zwangsmaessig zum normalen Ende des intros kommt.
Die definition von user variablen wuerde viele sachen einfacher machen. Zum Beispiel zum Speichern, ob ein bestimmter Event eingetroffen ist oder nicht. Ein paar fixe user variablen (e.g. VAR1 - VAR10) wuerden es auch erst einmal tun. Hier ein paar Beispiele vie das aussehen koennte.
Beispiel 1
..
SET VAR1 = 0
..
VAR1 = 0 : JSR = 1
VAR1 = 1 : JSR = 2
...
Beispiel 2
...
REP = 100
...
SET VAR2 = VAR1 + 1
VAR2 > 10 : BRK
,,,
LOP
...
Wenn SET VARX = … ein Problem sein sollte wegen der bisherigen struktur von OSDM Script, dann wuerde es vielleicht eher sinn machen folgende Konstruktion zum setzten des wertes einer User Variable zu verweden:
SET = VAR1 : VAL = 0
oder
SET = VAR2 : VAL = VAR1 + 1
Done! Implemented in OSDM
List of script features that were implemented in newer OSDM versions. Records kept for historic purposes.
MRX - Set X Rotation (3D Vector, 3D Ball) (0-360)1
MRY - Set Y Rotation (3D Vector, 3D Ball) (0-360)1
MRZ - Set Z Rotation (3D Vector, 3D Ball) (0-360)1
MAX - Set X Angle (3D Vector, 3D Ball, Sinus Text) (0-360)1
MAY - Set Y Angle (3D Vector, 3D Ball, Sinus Text) (0-360)1
MAZ - Set Z Angle (3D Vector, 3D Ball, Sinus Text) (0-360)1
IFA Compare Alpha Value (LOGO, BOUNCE, SPRITE, MASK)1
IDL - Identifier Layer ID (Swaps order of Effects Layer Position)1
ARX - Add X Rotation (3D Vector, 3D Ball) (-360 - 360)1
ARY - Add Y Rotation (3D Vector, 3D Ball) (-360 - 360)1
ARZ - Add Z Rotation (3D Vector, 3D Ball) (-360 - 360)1
AAX - Add X Angle (3D Vector, 3D Ball, Sinus Text) (-360 - 360)1
AAY - Add Y Angle (3D Vector, 3D Ball, Sinus Text) (-360 - 360)1
AAZ - Add Z Angle (3D Vector, 3D Ball, Sinus Text) (-360 - 360)1
QUT ESC Quit Intro (like ^Q1 in Scroll Text)1
FRX FLH Mirror/Flip Object on X-Axis (Bounce Bob, Sprite)1
FRY FLV Mirror/Flip Object on Y-Axis (Bounce Bob, Sprite)1
1 Already added to non-public OSDM v2.10.160a (14.03.2010) ALPHA, which is currently being developed.
1 Already added to non-public OSDM v2.10.160a (14.03.2010) ALPHA, which is currently being developed.