-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathprop.js
117 lines (98 loc) · 2.1 KB
/
prop.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
// one propulsor
class Propeller extends Unity {
constructor(x, y, mass, force){
// force: p5.Vector
super(x, y, mass);
this.thrust = false; //false;
this.force = force;
}
display(){
translate(this.posX, this.posY);
rotate(this.force.heading()+PI/2);
}
}
class Prop_Control extends Propeller {
constructor(x, y){
var mass = 2;
var force = createVector(0, -1);
super(x, y, mass, force);
}
display(){
push();
super.display();
fill(55);
beginShape();
vertex(6, -10);
vertex(2, -5);
vertex(2, 4);
vertex(-2, 4);
vertex(-2, -5);
vertex(-6, -10);
endShape();
if(this.thrust){
fill(255, 100, 100);
beginShape();
vertex(10,10);
vertex(15,15);
vertex(10, 20);
vertex(5, 15);
endShape();
}
pop();
}
}
class Main_Engine extends Propeller {
constructor(x, y){
var mass = 10;
var force = createVector(0, -10);
super(x, y, mass, force);
}
display(){
push();
super.display();
fill(40);
beginShape();
vertex(10, -10);
vertex(4, -4);
vertex(8, 8);
vertex(-8, 8);
vertex(-4, -4);
vertex(-10, -10);
vertex(10, -10);
endShape();
if(!this.thrust){
fill(255, 100, 100);
beginShape();
/*
curveVertex(0, 8);
curveVertex( 10, 18);
curveVertex( 0, 30);
curveVertex(-10, 18);
curveVertex(0, 8);
*/
vertex(0, 8);
vertex(10, 18);
vertex( 0, 30);
vertex(-10, 18);
vertex( 0, 8);
endShape();
}
pop()
}
}
// classe container of all the propulsores
class Propulsao {
constructor(){
}
addPropulsor(p, key){
this.lista.push([p, key]);
}
display(){
this.jatos.foreach( function(v){
v.display();
});
}
// uma ship, array of keysCode
activators(ship, keys){
}
}