summaryrefslogtreecommitdiff
path: root/src/cutScene.cpp
blob: 27fbafcf0aa219e5749250876c2ae5d2c8622e9c (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
56
57
58
59
#include "cutScene.h"

dScCutScene_c *dScCutScene_c::instance = 0;

dScCutScene_c *dScCutScene_c::build() {
	// return new dScCutScene_c;
	void *buffer = AllocFromGameHeap1(sizeof(dScCutScene_c));
	dScCutScene_c *c = new(buffer) dScCutScene_c;

	instance = c;
	return c;
}

dScCutScene_c::dScCutScene_c() : state(this) {
}



int dScCutScene_c::onCreate() {
	*CurrentDrawFunc = CutSceneDrawFunc;

	return true;
}

int dScCutScene_c::onDelete() {
	return true;
}

int dScCutScene_c::onExecute() {
	return true;
}

int dScCutScene_c::onDraw() {
	return true;
}

void CutSceneDrawFunc() {
	Reset3DState();
	SetupLYTDrawing();
	DrawAllLayoutsBeforeX(0x81);
	RenderEffects(0, 3);
	RenderEffects(0, 2);
	GXDrawDone();
	RemoveAllFromScnRoot();
	Reset3DState();
	SetCurrentCameraID(1);
	DoSpecialDrawing1();
	SetCurrentCameraID(0);
	for (int i = 0; i < 4; i++)
		RenderEffects(0, 0xB+i);
	for (int i = 0; i < 4; i++)
		RenderEffects(0, 7+i);
	GXDrawDone();
	// Leaving out some stuff here
	DrawAllLayoutsAfterX(0x80);
	ClearLayoutDrawList();
	SetCurrentCameraID(0);
}