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
|
/*-- Apocalypse Effects --*/
#strict 2
global func FxCreateTeraFlintsTimer()
{
for (var i = 0; i < GetPlayerCount(); ++i)
{
var clonk = GetCrew(GetPlayerByIndex(i));
if (!clonk) continue;
var teraflint = CreateObject(EFLN, 0, 0, NO_OWNER);
if (!clonk->Collect(teraflint)) teraflint->RemoveObject();
}
return 1;
}
global func FxShakeScreenTimer()
{
ShakeViewPort(10);
return 1;
}
global func FxSkyAdjustStart(object target, int effectNumber)
{
EffectVar(0, 0, effectNumber) = 255;
EffectVar(1, 0, effectNumber) = 1;
return 1;
}
global func FxSkyAdjustTimer(object target, int effectNumber)
{
var color = EffectVar(0, 0, effectNumber);
var decrease = EffectVar(1, 0, effectNumber);
// Increase/decrease color value
if (decrease)
{
--color;
}
else
{
++color;
}
// Switch direction?
if (color <= 0)
{
color = 0;
decrease = false;
}
else if (color >= 255)
{
color = 255;
decrease = true;
}
// Apply color
SetSkyAdjust(RGB(255, color / 2, color / 4), RGB(128, color / 2, color / 4));
SetGamma(RGB(2, 0, 0), RGB(128, color / 2, color / 4), RGB(180, color /2 , color / 4));
EffectVar(0, 0, effectNumber) = color;
EffectVar(1, 0, effectNumber) = decrease;
return 1;
}
global func FxBottomTimer()
{
for (var i = 0; i < GetPlayerCount(); ++i)
{
var clonk = GetCrew(GetPlayerByIndex(i));
if (clonk && clonk->GetY() >= LandscapeHeight() - 20) clonk->SetPosition(clonk->GetX() + RandomX(-10, 10), 0);
}
return 1;
}
|