-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathModuleSceneSpace.cpp
More file actions
84 lines (65 loc) · 2.2 KB
/
ModuleSceneSpace.cpp
File metadata and controls
84 lines (65 loc) · 2.2 KB
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
#include "Globals.h"
#include "Application.h"
#include "ModuleTextures.h"
#include "ModuleAudio.h"
#include "ModuleRender.h"
#include "ModulePlayer.h"
#include "ModuleCollision.h"
#include "ModuleParticles.h"
#include "ModuleEnemies.h"
#include "ModuleSceneSpace.h"
// Reference at https://www.youtube.com/watch?v=OEhmUuehGOA
ModuleSceneSpace::ModuleSceneSpace()
{}
ModuleSceneSpace::~ModuleSceneSpace()
{}
// Load assets
bool ModuleSceneSpace::Start()
{
LOG("Loading space scene");
background = App->textures->Load("rtype/background.png");
App->player->Enable();
App->particles->Enable();
App->collision->Enable();
App->enemies->Enable();
// Colliders ---
App->collision->AddCollider({0, 224, 3930, 16}, COLLIDER_WALL);
App->collision->AddCollider({1375, 0, 111, 96}, COLLIDER_WALL);
App->collision->AddCollider({1375, 145, 111, 96}, COLLIDER_WALL);
// Enemies ---
App->enemies->AddEnemy(ENEMY_TYPES::REDBIRD, 600, 80);
App->enemies->AddEnemy(ENEMY_TYPES::REDBIRD, 625, 80);
App->enemies->AddEnemy(ENEMY_TYPES::REDBIRD, 640, 80);
App->enemies->AddEnemy(ENEMY_TYPES::REDBIRD, 665, 80);
// TODO 1: Add a new wave of red birds
App->enemies->AddEnemy(ENEMY_TYPES::REDBIRD, 800, 120);
App->enemies->AddEnemy(ENEMY_TYPES::REDBIRD, 825, 120);
App->enemies->AddEnemy(ENEMY_TYPES::REDBIRD, 840, 120);
App->enemies->AddEnemy(ENEMY_TYPES::REDBIRD, 865, 120);
App->enemies->AddEnemy(ENEMY_TYPES::BROWNCOOKIE, 700, 100);
App->enemies->AddEnemy(ENEMY_TYPES::BROWNCOOKIE, 715, 100);
App->enemies->AddEnemy(ENEMY_TYPES::BROWNCOOKIE, 730, 100);
App->enemies->AddEnemy(ENEMY_TYPES::BROWNCOOKIE, 745, 100);
App->enemies->AddEnemy(ENEMY_TYPES::BROWNCOOKIE, 760, 100);
return true;
}
// UnLoad assets
bool ModuleSceneSpace::CleanUp()
{
LOG("Unloading space scene");
App->textures->Unload(background);
App->enemies->Disable();
App->collision->Disable();
App->particles->Disable();
App->player->Disable();
return true;
}
// Update: draw background
update_status ModuleSceneSpace::Update()
{
// Move camera forward -----------------------------
App->render->camera.x += 1 * SCREEN_SIZE;
// Draw everything --------------------------------------
App->render->Blit(background, 0, 0, NULL);
return UPDATE_CONTINUE;
}