summaryrefslogtreecommitdiffstats
path: root/src/os-plugins/plugins/plymouth/files/lib/plymouth/themes/unifr-rz/unifr-rz.script
blob: f2d8bd280ee0be165070bf8dd9dd9ed22fef405d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
Window.SetBackgroundTopColor(0.00, 0.21, 0.57);
#Window.SetBackgroundBottomColor(0.00, 0.17, 0.95);

title_left_image = Image("rz_banner_trans.png");
title_right_image = Image("rz_logo_trans.png");
title_left_sprite = Sprite(title_left_image);
title_right_sprite = Sprite(title_right_image);

title_right_sprite.SetX(Window.GetWidth() - title_right_image.GetWidth());

dot.image = Image("white_dot_small.png");
dot.sprite1 = Sprite(dot.image);
dot.sprite2 = Sprite(dot.image);
dot.sprite3 = Sprite(dot.image);
dot.sprite4 = Sprite(dot.image);
dot.sprite5 = Sprite(dot.image);

#----------------------------------------- Progress Dots --------------------------------

dot.x = Window.GetWidth()  / 2 - dot.image.GetWidth() / 2;
dot.y = Window.GetHeight() * 0.75 - dot.image.GetHeight() / 2;
dot.spacing = Window.GetWidth() / 15;

# place 5 centered dots
dot.sprite1.SetPosition(dot.x - 2 * dot.spacing, dot.y, 1);
dot.sprite2.SetPosition(dot.x - dot.spacing, dot.y, 1);
dot.sprite3.SetPosition(dot.x, dot.y, 1);
dot.sprite4.SetPosition(dot.x + dot.spacing, dot.y, 1);
dot.sprite5.SetPosition(dot.x + 2 * dot.spacing, dot.y, 1);

# set opacity
dot.sprite1.SetOpacity(0.1);
dot.sprite2.SetOpacity(0.1);
dot.sprite3.SetOpacity(0.1);
dot.sprite4.SetOpacity(0.1);
dot.sprite5.SetOpacity(0.1);

fun progress_callback (duration, progress)
  {
    phase = Math.Int(duration * 2) % 10;

    if ( phase == 1 )
	{ 
		fade_out(dot.sprite5);
		fade_in(dot.sprite1);
	}

    if ( phase == 2 )
	{ 
		fade_out(dot.sprite1);
		fade_in(dot.sprite2);
	}

    if ( phase == 3 )
	{ 
		fade_out(dot.sprite2);
		fade_in(dot.sprite3);
	}

    if ( phase == 4 )
	{ 
		fade_out(dot.sprite3);
		fade_in(dot.sprite4);
	}

    if ( phase == 5 )
	{ 
		fade_out(dot.sprite4);
		fade_in(dot.sprite5);
	}

    if ( phase == 6 )
	{ 
		fade_out(dot.sprite5);
		fade_in(dot.sprite1);
	}

    if ( phase == 7 )
	{ 
		fade_out(dot.sprite1);
		fade_in(dot.sprite2);
	}

    if ( phase == 8 )
	{
		fade_out(dot.sprite2);
		fade_in(dot.sprite3);
	}

    if ( phase == 9 )
	{ 
		fade_out(dot.sprite3);
		fade_in(dot.sprite4);
	}

    if ( phase == 0 )
	{ 
		fade_out(dot.sprite4);
		if ( Math.Int(duration) > 0 ) 
		  { fade_in(dot.sprite5); }
	}
  }

fun fade_in(sprite)
{
  if ( sprite.GetOpacity() + 0.1 < 1 )
    { sprite.SetOpacity(sprite.GetOpacity() + 0.1);}
}

fun fade_out(sprite)
{
  if ( sprite.GetOpacity() - 0.1 > 0.1 )
    { sprite.SetOpacity(sprite.GetOpacity() - 0.1);}
}

Plymouth.SetBootProgressFunction(progress_callback);