- Joined
- Nov 1, 2004
- Messages
- 27,876
- Points
- 460
- Lieblings C&C
Gibt es eine Möglichkeit (Programm oder so) ein bestimmtes (nicht zu langes) Video abspielen zu lassen sobald die Oberfläche von Windoof da ist?
#NAME_MOVIE = "movie.avi"
#SPR_BCKGRND = 1
If InitSprite() And InitMovie() And InitKeyboard()
If LoadMovie(#SPR_BCKGRND,#NAME_MOVIE)
width = MovieWidth()
height = MovieHeight()
If OpenScreen(width,height,32,"playmovie")=0
If OpenScreen(width,height,24,"playmovie")=0
If OpenScreen(width,height,16,"playmovie")=0
MessageRequester("ERROR","Cant open screen !",#MB_ICONERROR):End
EndIf:EndIf:EndIf
back_sprite = CreateSprite(1,width,height) ; #SCREEN_W,#SCREEN_H fr fullscreen
If back_sprite = 0
; Fehler, nicht mal Sprite kann erstellt werden
CloseScreen()
MessageRequester("ERROR","Cant create sprite !",#MB_ICONERROR):End
EndIf
MovieLength = MovieLength()*MovieInfo(0)/1000 ; milliseconds
Else
MessageRequester("ERROR","Cant open Movie !",#MB_ICONERROR):End
EndIf
; start movie
PlayMovie(#SPR_BCKGRND,#PB_Movie_Rendered)
StartTime = timeGetTime_()
Repeat
ExamineKeyboard()
If IsScreenActive()
ClearScreen(0,0,0)
If frames*10 > MovieLength
; ; wenn movie fertig, restarten
; ;MovieSeek(1)
; PlayMovie(#SPR_BCKGRND,#PB_Movie_Rendered)
; StartTime = timeGetTime_()
End
EndIf
; wenn movie, dann frame auf sprite rendern
RenderMovieFrame(back_sprite)
DisplaySprite(#SPR_BCKGRND,0,0)
EndIf
; StartDrawing(ScreenOutput())
; Locate(10,10)
; DrawText("Zeit: " + Str(frames*10))
; Locate(10,30)
; DrawText("MovL: " + Str(MovieLength))
; StopDrawing()
FlipBuffers()
;Delay(10)
frames + 1
Until KeyboardPushed(#PB_Key_Escape)
EndIf