From 2282947c82567ee531bf77c178e3f902972c755b Mon Sep 17 00:00:00 2001 From: Jason Hilder Date: Tue, 21 Jul 2026 07:42:22 +0200 Subject: [PATCH] Initial start on enemy boiler plate. --- src/enemy.odin | 24 ++++++++++++++++++++++++ src/game.odin | 6 ++++++ 2 files changed, 30 insertions(+) create mode 100644 src/enemy.odin diff --git a/src/enemy.odin b/src/enemy.odin new file mode 100644 index 0000000..17e1ba0 --- /dev/null +++ b/src/enemy.odin @@ -0,0 +1,24 @@ +package game + +import rl "vendor:raylib" + +Enemy :: struct { + position: rl.Vector2, + + velocity: rl.Vector2, + speed: f32, // max move speed +} + +enemy_init :: proc() -> Enemy { + enemy := Enemy{} + + enemy.position = {300, 300} + + return enemy +} + +update_enemy :: proc() { } + +draw_enemy :: proc(enemy: Enemy) { + rl.DrawCircle(i32(enemy.position.x), i32(enemy.position.y), 10, rl.RED) +} diff --git a/src/game.odin b/src/game.odin index 976989d..b4d38de 100644 --- a/src/game.odin +++ b/src/game.odin @@ -8,6 +8,7 @@ Game :: struct { world: rl.RenderTexture2D, current_map: Game_Map, player: Player, + enemies: [10]Enemy, debug: Debug } @@ -23,6 +24,9 @@ game_init :: proc() -> Game { game.world = rl.LoadRenderTexture(GAME_WIDTH, GAME_HEIGHT) game.current_map = map_init() + // TESTING + game.enemies[0] = enemy_init() + // @ DEBUG debug_init(&game) @@ -51,6 +55,8 @@ game_draw :: proc(game: ^Game) { rl.ClearBackground(rl.BLACK) rl.BeginMode2D(cam) draw_map(game.current_map) + // draw objects + draw_enemy(game.enemies[0]) draw_player(&game.player) // @ DEBUG