Code: Alles auswählen
InitSprite()
InitKeyboard()
DataSection
Pic1: IncludeBinary "Pilz1.bmp"
Pic2: IncludeBinary "Pilz2.bmp"
EndDataSection
Global quit
; Bildschirmschoner werden unter Wndows wie weiter oben beschrieben mit Parametern gestartet.
Param$ = UCase(ProgramParameter())
If Len(Param$) > 2
Param1$ = RemoveString(Param$, Left(Param$,2),1)
Else
Param1$ = ProgramParameter()
EndIf
Param$ = RemoveString(Param$, Left(Param$,1),1)
Param$ = Left(Param$,1)
Procedure scrnsaver()
OpenScreen(1024,768,32,"Pilz")
CatchSprite(0, ?Pic1)
CatchSprite(1, ?Pic2)
TransparentSpriteColor(0,RGB(255, 0, 220))
TransparentSpriteColor(1,RGB(255, 0, 220))
Repeat
SetFrameRate(1)
If w = 2
w = 0
EndIf
ClearScreen($4C4C4C)
If w = 0
ClearScreen($4CFF4C)
;DisplayTransparentSprite(0,0,0)
ElseIf w = 1
ClearScreen($4C4CFF)
;DisplayTransparentSprite(1,0,0)
EndIf
StartDrawing(ScreenOutput())
DrawingMode(#PB_2DDrawing_Transparent)
DrawText(0,752,"To exit press 'ESC'!")
StopDrawing()
ExamineKeyboard()
FlipBuffers()
w + 1
Delay(1)
If KeyboardPushed(1)
quit = 1
EndIf
Until quit = 1
EndProcedure
Select Param$
Case "" ;wenn kein Parameter
scrnsaver()
Case "C" ;wenn Parameter gleich c ist( bedeutet, dass der Bildschirmschoner konfiguriert werden soll.(rechte Maustaste auf die Datei, konfigurieren))
;Einstellungen
MessageRequester("Optionen","Hier stehen Optionen")
Case "P" ;Vorschau Taste im Anzeige-Menü
;Vorschau
scrnsaver()
Case "A" ; Passwort setzen im Anzeige-Menü
;Passwort
MessageRequester("PAsswort","Hier könnte ihr Passwort verändert oder gesetzt werden.")
Case "S" ;S(art) Parameter, startet den Bildschirmschoner
;Hauptprogramm
scrnsaver()
EndSelect
den Anfang NIE in eine Schleife packen, da der Parameter nur einmal übergeben wird und nach dem zweitem durchlauf des Codestücks gelöscht wird.
Code: Alles auswählen
Param$ = RemoveString(Param$, Left(Param$,1),1); entfernt das erste Zeichen, also beim zweitem Durchlauf den gesamten Parameter