summaryrefslogtreecommitdiffstats
path: root/TemplePushing.c4s/Sections.c4d/SectClassic.c4d/Script.c
blob: 4f839d85645fdeed49084ba39ed4a088bdff92d0 (plain)
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
/*-- Classic scenario section --*/

#strict 2

public func SectionName() { return "Classic"; }

public func SpawnpointLocations() { return [[550, 282], [603, 205], [682, 282], [784, 227], [912, 168], [1040, 120],
	[651, 467], [432, 438], [170, 118], [299, 170], [435, 230], [1175, 290], [105, 380], [910, 400], [560, 610]]; }

protected func Initialize()
{
	// Moving bricks
	var bricks = [CreateObject(BRK2, 225, 150, NO_OWNER), CreateObject(BRK2, 985, 150, NO_OWNER)];

	if (ambienceEnabled)
	{
		// Create background sound, fog and rain
		if (mode != MODE_Apocalyptic) SoundLevel("Ambience", 50);
		for (var i; i < 300; ++i)
		{
			CreateParticle("Fog", Random(LandscapeWidth()), Random(LandscapeHeight()) + 500, RandomX(3, 9), 0, RandomX(1000, 1500));
		}
		AddEffect("Rain", 0, 20, 1);
		
		// Create sun and lenseflare
		CreateObject(SONE, 0, 0, NO_OWNER);
		CreateObject(LENS, 0, 0, NO_OWNER);
	}
	
	if (mode == MODE_Apocalyptic)
	{
		// Rock fall
		for (var i = 0; i < 10; ++i)
		{
			CreateObject(RCKF, 0, 0, NO_OWNER);
		}
		
		// Fire rain
		AddEffect("FireRain", 0, 20, 1);
		CreateObject(FRRN, 0, 0, NO_OWNER);
		
		// Background sound
		Music();
		SoundLevel("ExtremeAmbience", 100);
		
		// Modulate brick color (object + material)
		
		for (var brick in bricks)
		{
			brick->SetClrModulation(RGB(220, 20, 20));
		}
		
		SetMaterialColor(Material("Brick"), 100, 0, 0, 150, 0, 0, 20, 0, 0);
	}
}