Skip to content

Commit d6db376

Browse files
committedJan 21, 2023
lower background music
1 parent 70e6791 commit d6db376

File tree

4 files changed

+194
-213
lines changed

4 files changed

+194
-213
lines changed
 

‎.DS_Store

2 KB
Binary file not shown.

‎assets/themeSong.mp3

-3.14 MB
Binary file not shown.

‎game.js

+191-211
Original file line numberDiff line numberDiff line change
@@ -1,222 +1,202 @@
1-
// window.onload = function () {
2-
// Note that this html file is set to pull down Phaser 2.5.0 from the JS Delivr CDN.
3-
// Although it will work fine with this tutorial, it's almost certainly not the most current version.
4-
// Be sure to replace it with an updated version before you start experimenting with adding your own code.
5-
6-
let game = new Phaser.Game(1280, 720, Phaser.AUTO, "", {
7-
preload: preload,
8-
create: create,
9-
update: update,
10-
});
11-
12-
let score = 28;
13-
let scoreText;
14-
let facing = "right";
15-
let hozMove = 300;
16-
let vertMove = -300;
17-
let coin;
18-
let platforms;
19-
let keys;
20-
let jumpTimer = 0;
21-
let reiner;
22-
let reiner2;
23-
let female;
24-
let attackTitan;
25-
26-
function preload() {
27-
// game.load.image("startscreen", "assets/startscreen.png");
28-
// game.load.image("loading", "assets/loading.png");
29-
game.load.image("ground", "assets/platform.png");
30-
game.load.image("house", "assets/aotHouses.png");
31-
game.load.image("key", "assets/key.png");
32-
game.load.spritesheet("eren", "assets/eren.png", 50, 50);
33-
game.load.spritesheet("reiner", "assets/reiner.png", 65, 70);
34-
game.load.spritesheet("reiner2", "assets/reiner.png", 65, 70);
35-
game.load.spritesheet("female", "assets/female.png", 65, 70);
36-
game.load.spritesheet("attackTitan", "assets/attackTitan.png", 65, 70);
37-
game.load.audio("backgroundMusic", "assets/themeSong.mp3");
38-
game.load.audio("coin", "assets/coin.mp3");
39-
}
40-
41-
function create() {
42-
game.stage.backgroundColor = "#FFFFFF";
43-
game.physics.startSystem(Phaser.Physics.ARCADE);
44-
game.add.sprite(0, 0, "house");
45-
46-
platforms = game.add.group();
47-
platforms.enableBody = true;
48-
49-
//grounds
50-
let ground = platforms.create(0, game.world.height - 30, "ground");
51-
ground.scale.setTo(4, 4);
52-
ground.body.immovable = true;
53-
54-
// ledges
55-
let ledge = platforms.create(-300, 175, "ground");
56-
ledge.scale.setTo(1, 0.25);
57-
ledge.body.immovable = true;
58-
59-
ledge = platforms.create(200, 350, "ground");
60-
ledge.scale.setTo(0.25, 0.25);
61-
ledge.body.immovable = true;
62-
63-
ledge = platforms.create(300, 90, "ground");
64-
ledge.scale.setTo(0.25, 0.25);
65-
ledge.body.immovable = true;
66-
67-
ledge = platforms.create(450, 500, "ground");
68-
ledge.scale.setTo(0.35, 0.25);
69-
ledge.body.immovable = true;
70-
71-
ledge = platforms.create(670, 250, "ground");
72-
ledge.scale.setTo(0.2, 0.25);
73-
ledge.body.immovable = true;
74-
75-
ledge = platforms.create(900, 150, "ground");
76-
ledge.scale.setTo(0.2, 0.25);
77-
ledge.body.immovable = true;
78-
79-
ledge = platforms.create(1100, 350, "ground");
80-
ledge.scale.setTo(0.5, 0.25);
81-
ledge.body.immovable = true;
82-
83-
keys = game.add.group();
84-
keys.enableBody = true;
85-
for (let i = 0; i < 28; i++) {
86-
// create a key inside of the keys group
87-
let key = keys.create(i * 42, 0, "key");
88-
key.body.gravity.y = 1000;
89-
// each key has a slightly random bounce value
90-
key.body.bounce.y = 0.3 + Math.random() * 0.2;
91-
}
92-
93-
scoreText = game.add.text(game.world.width / 2.4, 16, "", {
94-
fontSize: "32px",
95-
fill: "#000",
1+
window.onload = function () {
2+
let game = new Phaser.Game(1280, 720, Phaser.AUTO, "", {
3+
preload: preload,
4+
create: create,
5+
update: update,
966
});
97-
// cursors = game.input.keyboard.createCursorKeys();
98-
99-
//eren
100-
eren = game.add.sprite(20, 0, "eren");
101-
eren.scale.set(1.5);
102-
game.physics.arcade.enable(eren, Phaser.Physics.ARCADE);
103-
eren.body.bounce.y = 0.25;
104-
eren.body.gravity.y = 800;
105-
eren.body.collideWorldBounds = true;
106-
107-
//reiner
108-
reiner = game.add.sprite(0, 250, "reiner");
109-
reiner.name = "reiner";
110-
game.physics.enable(reiner, Phaser.Physics.ARCADE);
111-
reiner.scale.set(2);
112-
113-
reiner.body.collideWorldBounds = true;
114-
reiner.body.bounce.setTo(1, 1);
115-
reiner.body.velocity.x = 250;
116-
reiner.body.immovable = true;
117-
reiner.scale.x *= -1;
118-
119-
//reiner2
120-
reiner2 = game.add.sprite(1200, 800, "reiner2");
121-
reiner2.name = "reiner2";
122-
game.physics.enable(reiner2, Phaser.Physics.ARCADE);
123-
reiner2.scale.set(2);
124-
125-
reiner2.body.collideWorldBounds = true;
126-
reiner2.body.bounce.setTo(1, 1);
127-
128-
reiner2.body.velocity.x = 400;
129-
reiner2.body.immovable = true;
130-
131-
//female
132-
female = game.add.sprite(800, 700, "female");
133-
female.name = "female";
134-
game.physics.enable(female, Phaser.Physics.ARCADE);
135-
female.scale.set(2);
136-
137-
female.body.collideWorldBounds = true;
138-
female.body.bounce.setTo(1, 1);
139-
140-
female.body.velocity.y = 200;
141-
female.body.immovable = true;
142-
143-
//attack titan
144-
attackTitan = game.add.sprite(300, 0, "attackTitan");
145-
attackTitan.name = "attackTitan";
146-
game.physics.enable(attackTitan, Phaser.Physics.ARCADE);
147-
attackTitan.scale.set(2);
148-
149-
attackTitan.body.collideWorldBounds = true;
150-
attackTitan.body.bounce.setTo(1, 1);
151-
152-
attackTitan.body.velocity.y = 300;
153-
attackTitan.body.immovable = true;
154-
155-
//music
156-
backgroundMusic = game.sound.add("backgroundMusic");
157-
coin = game.sound.add("coin");
158-
// backgroundMusic.play();
159-
}
160-
161-
function update() {
162-
game.physics.arcade.collide(eren, platforms);
163-
game.physics.arcade.collide(keys, platforms);
164-
game.physics.arcade.collide(eren, reiner, lose, null, this);
165-
game.physics.arcade.collide(eren, reiner2, lose, null, this);
166-
game.physics.arcade.collide(eren, female, lose, null, this);
167-
game.physics.arcade.collide(eren, attackTitan, lose, null, this);
168-
game.physics.arcade.overlap(eren, keys, collectKey, null, this);
169-
170-
if (score === 0) {
171-
const endMenuWin = document.querySelector(".game-win");
172-
endMenuWin.classList.remove("hidden");
173-
score = 28;
174-
}
1757

176-
function collectKey(eren, key) {
177-
key.kill();
178-
coin.play();
179-
score -= 1;
180-
scoreText.text = "Remaining: " + score;
8+
let score = 28;
9+
let scoreText;
10+
let facing = "right";
11+
let hozMove = 300;
12+
let vertMove = -300;
13+
let coin;
14+
let platforms;
15+
let keys;
16+
let jumpTimer = 0;
17+
let reiner;
18+
let reiner2;
19+
let female;
20+
let attackTitan;
21+
22+
function preload() {
23+
game.load.image("ground", "assets/platform.png");
24+
game.load.image("house", "assets/aotHouses.png");
25+
game.load.image("key", "assets/key.png");
26+
game.load.spritesheet("eren", "assets/eren.png", 50, 50);
27+
game.load.spritesheet("reiner", "assets/reiner.png", 65, 70);
28+
game.load.spritesheet("reiner2", "assets/reiner.png", 65, 70);
29+
game.load.spritesheet("female", "assets/female.png", 65, 70);
30+
game.load.spritesheet("attackTitan", "assets/attackTitan.png", 65, 70);
31+
game.load.audio("backgroundMusic", "assets/themeSong.mp3");
32+
game.load.audio("coin", "assets/coin.mp3");
18133
}
18234

183-
function lose(eren) {
184-
const endMenuLose = document.querySelector(".game-lose");
185-
endMenuLose.classList.remove("hidden");
35+
function create() {
36+
//music
37+
backgroundMusic = game.add.audio("backgroundMusic");
38+
backgroundMusic.play();
39+
coin = game.sound.add("coin");
40+
41+
game.stage.backgroundColor = "#FFFFFF";
42+
game.physics.startSystem(Phaser.Physics.ARCADE);
43+
game.add.sprite(0, 0, "house");
44+
45+
platforms = game.add.group();
46+
platforms.enableBody = true;
47+
48+
//grounds
49+
let ground = platforms.create(0, game.world.height - 30, "ground");
50+
ground.scale.setTo(4, 4);
51+
ground.body.immovable = true;
52+
53+
// ledges
54+
let ledge = platforms.create(-300, 175, "ground");
55+
ledge.scale.setTo(1, 0.25);
56+
ledge.body.immovable = true;
57+
58+
ledge = platforms.create(200, 350, "ground");
59+
ledge.scale.setTo(0.25, 0.25);
60+
ledge.body.immovable = true;
61+
62+
ledge = platforms.create(300, 90, "ground");
63+
ledge.scale.setTo(0.25, 0.25);
64+
ledge.body.immovable = true;
65+
66+
ledge = platforms.create(450, 500, "ground");
67+
ledge.scale.setTo(0.35, 0.25);
68+
ledge.body.immovable = true;
69+
70+
ledge = platforms.create(670, 250, "ground");
71+
ledge.scale.setTo(0.2, 0.25);
72+
ledge.body.immovable = true;
73+
74+
ledge = platforms.create(900, 150, "ground");
75+
ledge.scale.setTo(0.2, 0.25);
76+
ledge.body.immovable = true;
77+
78+
ledge = platforms.create(1100, 350, "ground");
79+
ledge.scale.setTo(0.5, 0.25);
80+
ledge.body.immovable = true;
81+
82+
keys = game.add.group();
83+
keys.enableBody = true;
84+
for (let i = 0; i < 28; i++) {
85+
// create a key inside of the keys group
86+
let key = keys.create(i * 42, 0, "key");
87+
key.body.gravity.y = 1000;
88+
// each key has a slightly random bounce value
89+
key.body.bounce.y = 0.3 + Math.random() * 0.2;
90+
}
91+
92+
scoreText = game.add.text(game.world.width / 2.4, 16, "", {
93+
fontSize: "32px",
94+
fill: "#000",
95+
});
96+
97+
//eren
98+
eren = game.add.sprite(20, 0, "eren");
99+
eren.scale.set(1.5);
100+
game.physics.arcade.enable(eren, Phaser.Physics.ARCADE);
101+
eren.body.bounce.y = 0.25;
102+
eren.body.gravity.y = 800;
103+
eren.body.collideWorldBounds = true;
104+
105+
//reiner
106+
reiner = game.add.sprite(0, 250, "reiner");
107+
reiner.name = "reiner";
108+
game.physics.enable(reiner, Phaser.Physics.ARCADE);
109+
reiner.scale.set(2);
110+
111+
reiner.body.collideWorldBounds = true;
112+
reiner.body.bounce.setTo(1, 1);
113+
reiner.body.velocity.x = 250;
114+
reiner.body.immovable = true;
115+
reiner.scale.x *= -1;
116+
117+
//reiner2
118+
reiner2 = game.add.sprite(1200, 800, "reiner2");
119+
reiner2.name = "reiner2";
120+
game.physics.enable(reiner2, Phaser.Physics.ARCADE);
121+
reiner2.scale.set(2);
122+
123+
reiner2.body.collideWorldBounds = true;
124+
reiner2.body.bounce.setTo(1, 1);
125+
126+
reiner2.body.velocity.x = 400;
127+
reiner2.body.immovable = true;
128+
129+
//female
130+
female = game.add.sprite(800, 700, "female");
131+
female.name = "female";
132+
game.physics.enable(female, Phaser.Physics.ARCADE);
133+
female.scale.set(2);
134+
135+
female.body.collideWorldBounds = true;
136+
female.body.bounce.setTo(1, 1);
137+
138+
female.body.velocity.y = 200;
139+
female.body.immovable = true;
140+
141+
//attack titan
142+
attackTitan = game.add.sprite(300, 0, "attackTitan");
143+
attackTitan.name = "attackTitan";
144+
game.physics.enable(attackTitan, Phaser.Physics.ARCADE);
145+
attackTitan.scale.set(2);
146+
147+
attackTitan.body.collideWorldBounds = true;
148+
attackTitan.body.bounce.setTo(1, 1);
149+
150+
attackTitan.body.velocity.y = 300;
151+
attackTitan.body.immovable = true;
186152
}
187153

188-
eren.body.velocity.x = 0;
154+
function update() {
155+
game.physics.arcade.collide(eren, platforms);
156+
game.physics.arcade.collide(keys, platforms);
157+
game.physics.arcade.collide(eren, reiner, lose, null, this);
158+
game.physics.arcade.collide(eren, reiner2, lose, null, this);
159+
game.physics.arcade.collide(eren, female, lose, null, this);
160+
game.physics.arcade.collide(eren, attackTitan, lose, null, this);
161+
game.physics.arcade.overlap(eren, keys, collectKey, null, this);
162+
163+
if (score === 0) {
164+
const endMenuWin = document.querySelector(".game-win");
165+
endMenuWin.classList.remove("hidden");
166+
score = 28;
167+
}
168+
169+
function collectKey(eren, key) {
170+
key.kill();
171+
coin.play();
172+
score -= 1;
173+
scoreText.text = "Remaining: " + score;
174+
}
189175

190-
if (game.input.keyboard.isDown(Phaser.Keyboard.A)) {
191-
eren.body.velocity.x = -hozMove;
192-
if (facing !== "left") {
193-
facing = "left";
194-
eren.scale.x *= -1;
176+
function lose(eren) {
177+
const endMenuLose = document.querySelector(".game-lose");
178+
endMenuLose.classList.remove("hidden");
195179
}
196-
} else if (game.input.keyboard.isDown(Phaser.Keyboard.D)) {
197-
eren.body.velocity.x = hozMove;
198-
if (facing !== "right") {
199-
facing = "right";
200-
eren.scale.x *= -1;
180+
181+
eren.body.velocity.x = 0;
182+
183+
if (game.input.keyboard.isDown(Phaser.Keyboard.A)) {
184+
eren.body.velocity.x = -hozMove;
185+
if (facing !== "left") {
186+
facing = "left";
187+
eren.scale.x *= -1;
188+
}
189+
} else if (game.input.keyboard.isDown(Phaser.Keyboard.D)) {
190+
eren.body.velocity.x = hozMove;
191+
if (facing !== "right") {
192+
facing = "right";
193+
eren.scale.x *= -1;
194+
}
201195
}
202-
}
203196

204-
if (game.input.keyboard.isDown(Phaser.Keyboard.W)) {
205-
eren.body.velocity.y = vertMove;
206-
jumpTimer = game.time.now + 625;
197+
if (game.input.keyboard.isDown(Phaser.Keyboard.W)) {
198+
eren.body.velocity.y = vertMove;
199+
jumpTimer = game.time.now + 625;
200+
}
207201
}
208-
209-
// if (cursors.left.isDown) {
210-
// eren.body.velocity.x = -150;
211-
// eren.animations.play("left");
212-
// } else if (cursors.right.isDown) {
213-
// eren.body.velocity.x = 150;
214-
// eren.animations.play("right");
215-
// } else {
216-
// eren.animations.stop();
217-
// }
218-
// if (cursors.up.isDown) {
219-
// //&& player.body.touching.down
220-
// eren.body.velocity.y = -400;
221-
// }
222-
}
202+
};

‎index.html

+3-2
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
<script src="./menu.js"></script>
1616
<script type="text/javascript" src="game.js"></script>
1717
<div class="game-start">
18-
<h1>Attack on Titan</h1>
18+
<h1>Attack on Titan 進撃の巨人</h1>
1919
<h2>Instructions:</h2>
2020
<ul class="instructions">
2121
<li>Collect all the keys to reach the basement</li>
@@ -27,7 +27,8 @@ <h2>Instructions:</h2>
2727
</div>
2828
<div class="game-lose hidden">
2929
<h1>Attack on Titan</h1>
30-
<h2>You Lose!!! SHinZoo Wo SasAGEyO!!!~!~!~!~!</h2>
30+
<h2>You Lose :(</h2>
31+
<h3>SHinZoo Wo SasAGEyO!!!~!~!~!~!</h3>
3132
<button id="restart-button-lose">Try Again</button>
3233
</div>
3334
<div class="game-win hidden">

0 commit comments

Comments
 (0)
Please sign in to comment.