-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsketch.js
134 lines (106 loc) · 3.25 KB
/
sketch.js
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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
const Engine = Matter.Engine;
const World = Matter.World;
const Bodies = Matter.Bodies;
const Constraint = Matter.Constraint;
var engine, world;
var canvas;
var palyer, playerBase, playerArcher;
var playerArrows = [];
var board1, board2;
var numberOfArrows = 10;
function preload() {
backgroundImg = loadImage("./assets/background.png");
}
function setup() {
canvas = createCanvas(windowWidth, windowHeight);
engine = Engine.create();
world = engine.world;
playerBase = new PlayerBase(300, 500, 180, 150);
player = new Player(285, playerBase.body.position.y - 153, 50, 180);
playerArcher = new PlayerArcher(
340,
playerBase.body.position.y - 180,
120,
120
);
board1 = new Board(width - 300, 330, 50, 200);
board2 = new Board(width - 550, height - 300, 50, 200);
}
function draw() {
background(backgroundImg);
Engine.update(engine);
playerBase.display();
player.display();
playerArcher.display();
board1.display();
board2.display();
for (var i = 0; i < playerArrows.length; i++) {
if (playerArrows[i] !== undefined) {
playerArrows[i].display();
}
}
// Title
fill("#FFFF");
textAlign("center");
textSize(40);
text("EPIC ARCHERY", width / 2, 100);
// Arrow Count
fill("#FFFF");
textAlign("center");
textSize(30);
text("Remaining Arrows : " + numberOfArrows, 200, 100);
}
function keyPressed() {
// if (keyCode === 23) {
// if (numberOfArrows > 0) {
// var posX = playerArcher.body.position.x;
// var posY = playerArcher.body.position.y;
// var angle = playerArcher.body.angle;
// var arrow = new PlayerArrow(posX, posY, 100, 10, angle);
// Matter.Body.setAngle(arrow.body, angle);
// playerArrows.push(arrow);
// numberOfArrows -= 1;
// }
// }
// if (keyCode === 32) {
// if (numberOfArrows > 0) {
// var posX = playerArcher.body.position.x;
// var posY = playerArcher.body.position.y;
// var angle = playerArcher.body.angle;
// var arrow = new PlayerArrow(posX, posY, 100, 10, angle);
// Matter.Body.setAngle(arrow.body, angle);
// playerArrows.push(arrow);
// numberOfArrows += 1;
// }
// }
if (keyCode === 32) {
if (numberOfArrows > 0) {
var posX = playerArcher.body.position.x;
var posY = playerArcher.body.position.y;
var angle = playerArcher.body.angle;
var arrow = new PlayerArrow(posX, posY, 100, 10, angle);
Matter.Body.setAngle(arrow.body, angle);
playerArrows.push(arrow);
numberOfArrows -= 1;
}
}
// if (keyCode === 32) {
// if (numberOfArrows > 0) {
// var posX = playerArcher.body.position.x;
// var posY = playerArcher.body.position.y;
// var angle = playerArcher.body.angle;
// var arrow = new PlayerArrow(posX, posY, 100, 10, angle);
// Matter.Body.setAngle(arrow.body, angle);
// playerArrows.push(arrow);
// numberOfArrows *= 1;
// }
// }
}
function keyReleased() {
if (keyCode === 32) {
if (playerArrows.length) {
var angle = playerArcher.body.angle;
playerArrows[playerArrows.length - 1].shoot(angle);
}
}
}