Skip to content

Commit

Permalink
Meteors bounce on walls
Browse files Browse the repository at this point in the history
  • Loading branch information
dylanlangston committed Dec 26, 2023
1 parent 134d3f4 commit 6d5fe9e
Showing 1 changed file with 15 additions and 1 deletion.
16 changes: 15 additions & 1 deletion src/Models/Meteor.zig
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,21 @@ pub const Meteor = struct {
self.position.x += self.speed.x;
self.position.y += self.speed.y;

pub fn Draw(self: @This(), shipPosition: raylib.Vector2) void {
// Collision logic: meteor vs wall
if (self.position.x > screenSize.x - self.radius) {
self.speed.x = -1 * self.speed.x;
self.position.x = screenSize.x - self.radius + self.speed.x;
} else if (self.position.x < self.radius) {
self.speed.x = -1 * self.speed.x;
self.position.x = self.radius + self.speed.x;
}
if (self.position.y > screenSize.y - self.radius) {
self.speed.y = -1 * self.speed.y;
self.position.y = screenSize.y - self.radius + self.speed.y;
} else if (self.position.y < self.radius) {
self.speed.y = -1 * self.speed.y;
self.position.y = self.radius + self.speed.y;
}

// Check if shot hit
inline for (0..shoots.len) |i| {
Expand Down

0 comments on commit 6d5fe9e

Please sign in to comment.