49 lines
1012 B
Plaintext
49 lines
1012 B
Plaintext
|
@startuml titlescreen startup
|
||
|
!theme materia-outline
|
||
|
skinparam DefaultFontName Courier
|
||
|
skinparam Shadowing false
|
||
|
|
||
|
participant usc
|
||
|
participant "titlescreen.lua" as main
|
||
|
collections screens
|
||
|
collections pages
|
||
|
|
||
|
usc -> main : load titlescreen.lua
|
||
|
|
||
|
activate main
|
||
|
|
||
|
group construct screens
|
||
|
main -> screens : create
|
||
|
screens -> pages : create
|
||
|
screens -> pages : set callbacks
|
||
|
main -> screens : set callbacks
|
||
|
main -> usc : get persistent states
|
||
|
main <-- usc
|
||
|
main -> screens : load persistent previous state values
|
||
|
end
|
||
|
|
||
|
main -> usc : get last screen value
|
||
|
main <-- usc
|
||
|
|
||
|
main -> main : set last screen value as current screen
|
||
|
|
||
|
main -> screens : call current screen's init()
|
||
|
|
||
|
activate screens
|
||
|
|
||
|
screens -> usc : set current screen as last screen value
|
||
|
|
||
|
screens -> pages : init()
|
||
|
activate pages
|
||
|
|
||
|
loop main render loop
|
||
|
main -> screens : call current screen's render()
|
||
|
activate screens
|
||
|
screens -> pages : render()
|
||
|
activate pages
|
||
|
deactivate screens
|
||
|
deactivate pages
|
||
|
end
|
||
|
|
||
|
@enduml
|