2 Window.SetBackgroundTopColor(0, 0, 0);
3 Window.SetBackgroundBottomColor(0, 0, 0);
6 logo.image = Image("loading_150.png");
7 logo.sprite = Sprite(logo.image);
8 logo.x = Window.GetX() + Window.GetWidth() / 2 - logo.image.GetWidth() / 2;
9 logo.y = Window.GetY() + Window.GetHeight() / 2 - logo.image.GetHeight() / 2;
10 logo.sprite.SetPosition(logo.x, logo.y, 10000);
11 logo.sprite.SetOpacity(0);
14 label.image = Image("label.png");
15 label.sprite = Sprite(label.image);
16 label.x = Window.GetX() + Window.GetWidth() / 2 - label.image.GetWidth() / 2 ;
17 label.y = Window.GetY() + Window.GetHeight() / 2 + logo.image.GetHeight() / 2 ;
18 label.sprite.SetPosition(label.x, label.y, 10000);
19 label.sprite.SetOpacity(0);
24 for (i = 1; i <= image_total; i++)
26 loading[i].image = Image("loading_" + i + ".png");
27 loading[i].sprite = Sprite(loading[i].image);
28 loading[i].sprite.SetOpacity(0);
29 loading[i].x = Window.GetX() + Window.GetWidth() / 2 - loading[i].image.GetWidth() / 2;
30 loading[i].y = Window.GetY() + Window.GetHeight() / 2 - loading[i].image.GetHeight() / 2;
31 loading[i].sprite.SetPosition(loading[i].x, loading[i].y, 0);
35 for (i = 1; i <= image_total; i++)
37 shutdown[i].image = Image("shutdown_" + i + ".png");
38 shutdown[i].sprite = Sprite(shutdown[i].image);
39 shutdown[i].sprite.SetOpacity(0);
40 shutdown[i].x = Window.GetX() + Window.GetWidth() / 2 - shutdown[i].image.GetWidth() / 2;
41 shutdown[i].y = Window.GetY() + Window.GetHeight() / 2 - shutdown[i].image.GetHeight() / 2;
42 shutdown[i].sprite.SetPosition(shutdown[i].x, shutdown[i].y, 0);
50 # 50 frames per second
51 label.sprite.SetOpacity(1);
52 if (index >= image_total + 1) {
53 logo.sprite.SetOpacity(1);
56 for (i = 1; i <= image_total; i++)
60 loading[i].sprite.SetOpacity(0);
64 loading[i].sprite.SetOpacity(1);
76 # 50 frames per second
77 label.sprite.SetOpacity(1);
79 if (reboot_index >= image_total + 1) {
80 shutdown[150].sprite.SetOpacity(1);
83 for (i = 1; i <= image_total; i++){
84 if (reboot_index != i){
85 shutdown[i].sprite.SetOpacity(0);
88 shutdown[i].sprite.SetOpacity(1);
96 if (Plymouth.GetMode() == "boot")
98 Plymouth.SetRefreshFunction(boot_callback);
102 Plymouth.SetRefreshFunction(reboot_callback);
105 Plymouth.SetQuitFunction(reboot_callback);
107 #----------------------------------------- Dialogue --------------------------------
117 box.image = Image("box.png");
118 lock.image = Image("lock.png");
119 entry.image = Image("entry.png");
121 box.sprite = Sprite(box.image);
122 box.x = Window.GetX() + Window.GetWidth() / 2 - box.image.GetWidth ()/2;
123 box.y = Window.GetY() + Window.GetHeight() / 2 - box.image.GetHeight()/2;
125 box.sprite.SetPosition(box.x, box.y, box.z);
127 lock.sprite = Sprite(lock.image);
128 lock.x = box.x + box.image.GetWidth()/2 - (lock.image.GetWidth() + entry.image.GetWidth()) / 2;
129 lock.y = box.y + box.image.GetHeight()/2 - lock.image.GetHeight()/2;
131 lock.sprite.SetPosition(lock.x, lock.y, lock.z);
133 entry.sprite = Sprite(entry.image);
134 entry.x = lock.x + lock.image.GetWidth();
135 entry.y = box.y + box.image.GetHeight()/2 - entry.image.GetHeight()/2;
137 entry.sprite.SetPosition(entry.x, entry.y, entry.z);
139 global.dialog.box = box;
140 global.dialog.lock = lock;
141 global.dialog.entry = entry;
142 global.dialog.bullet_image = Image("bullet.png");
146 fun dialog_opacity(opacity)
148 dialog.box.sprite.SetOpacity (opacity);
149 dialog.lock.sprite.SetOpacity (opacity);
150 dialog.entry.sprite.SetOpacity (opacity);
151 for (index = 0; dialog.bullet[index]; index++)
153 dialog.bullet[index].sprite.SetOpacity(opacity);
157 fun display_normal_callback ()
159 global.status = "normal";
164 fun display_password_callback (prompt, bullets)
166 global.status = "password";
171 for (index = 0; dialog.bullet[index] || index < bullets; index++)
173 if (!dialog.bullet[index])
175 dialog.bullet[index].sprite = Sprite(dialog.bullet_image);
176 dialog.bullet[index].x = dialog.entry.x + index * dialog.bullet_image.GetWidth();
177 dialog.bullet[index].y = dialog.entry.y + dialog.entry.image.GetHeight() / 2 - dialog.bullet_image.GetHeight() / 2;
178 dialog.bullet[index].z = dialog.entry.z + 1;
179 dialog.bullet[index].sprite.SetPosition(dialog.bullet[index].x, dialog.bullet[index].y, dialog.bullet[index].z);
182 dialog.bullet[index].sprite.SetOpacity(1);
184 dialog.bullet[index].sprite.SetOpacity(0);
188 Plymouth.SetDisplayNormalFunction(display_normal_callback);
189 Plymouth.SetDisplayPasswordFunction(display_password_callback);
192 #----------------------------------------- Message --------------------------------
194 message_sprite = Sprite();
195 message_sprite.SetPosition(Window.GetX() + 10, Window.GetY() + 10, 10000);
197 fun message_callback (text)
199 my_image = Image.Text(text, 1, 1, 1);
200 message_sprite.SetImage(my_image);
203 Plymouth.SetMessageFunction(message_callback);