33 lines
523 B
Odin
33 lines
523 B
Odin
package game
|
|
|
|
import rl "vendor:raylib"
|
|
|
|
run :: proc() {
|
|
rl.InitWindow(SCREEN_W, SCREEN_H, "Tower Defense")
|
|
defer rl.CloseWindow()
|
|
rl.SetTargetFPS(60)
|
|
|
|
init_ui()
|
|
defer destroy_ui()
|
|
|
|
world := init_world()
|
|
|
|
for !rl.WindowShouldClose() {
|
|
dt := rl.GetFrameTime()
|
|
|
|
ui_prepare_frame(&world, dt)
|
|
update_world(&world, dt)
|
|
|
|
rl.BeginDrawing()
|
|
rl.ClearBackground(rl.Color{34, 139, 34, 255})
|
|
|
|
render_world(&world)
|
|
render_ui()
|
|
rl.EndDrawing()
|
|
}
|
|
|
|
delete(world.path)
|
|
delete(world.towers)
|
|
delete(world.events)
|
|
}
|