|
|
@ -45,14 +45,23 @@ class SlingShot extends BodyComponent {
|
|
|
|
// vertex.
|
|
|
|
// vertex.
|
|
|
|
// Something as: y = -size.y * math.cos(angle)
|
|
|
|
// Something as: y = -size.y * math.cos(angle)
|
|
|
|
const additionalIncrement = 2;
|
|
|
|
const additionalIncrement = 2;
|
|
|
|
final triangleVertices = [
|
|
|
|
final triangleVertices = _side.isLeft
|
|
|
|
Vector2(_side.isLeft ? 0 : size.x, 0),
|
|
|
|
? [
|
|
|
|
Vector2(_side.isLeft ? 0 : size.x, -size.y),
|
|
|
|
Vector2(0, 0),
|
|
|
|
Vector2(
|
|
|
|
Vector2(0, -size.y),
|
|
|
|
_side.isLeft ? size.x : 0,
|
|
|
|
Vector2(
|
|
|
|
-size.y - additionalIncrement,
|
|
|
|
size.x,
|
|
|
|
),
|
|
|
|
-size.y - additionalIncrement,
|
|
|
|
];
|
|
|
|
),
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
: [
|
|
|
|
|
|
|
|
Vector2(size.x, 0),
|
|
|
|
|
|
|
|
Vector2(size.x, -size.y),
|
|
|
|
|
|
|
|
Vector2(
|
|
|
|
|
|
|
|
0,
|
|
|
|
|
|
|
|
-size.y - additionalIncrement,
|
|
|
|
|
|
|
|
),
|
|
|
|
|
|
|
|
];
|
|
|
|
final triangleCentroid = centroid(triangleVertices);
|
|
|
|
final triangleCentroid = centroid(triangleVertices);
|
|
|
|
for (final vertex in triangleVertices) {
|
|
|
|
for (final vertex in triangleVertices) {
|
|
|
|
vertex.setFrom(vertex - triangleCentroid);
|
|
|
|
vertex.setFrom(vertex - triangleCentroid);
|
|
|
|