-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathEntity.pde
More file actions
65 lines (52 loc) · 1.2 KB
/
Entity.pde
File metadata and controls
65 lines (52 loc) · 1.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
class Entity {
private PVector location;
private PVector acceleration;
private PVector velocity;
private float mass;
Entity(PVector _location) {
location = _location.get();
acceleration = new PVector();
velocity = new PVector();
mass = 1;
}
Entity(PVector _location, PVector _acceleration, PVector _velocity, float _mass) {
location = _location.get();
acceleration = _acceleration.get();
velocity = _velocity.get();
mass = _mass;
}
PVector getLocation() {
return location.get();
}
PVector getAcceleration() {
return acceleration.get();
}
PVector getVelocity() {
return velocity.get();
}
float getMass() {
return mass;
}
void setLocation(PVector _location) {
location = _location.get();
}
void resetVelocity() {
velocity.mult(0);
}
void resetForces() {
acceleration.mult(0);
}
void stopMovement() {
resetVelocity();
resetForces();
}
void applyForce(PVector force) {
PVector adjustedForce = force.get().div(mass);
acceleration.add(adjustedForce);
}
void updateMovement() {
velocity.add(acceleration);
location.add(velocity);
acceleration.mult(0);
}
}