package main import "core:fmt" import "vendor:raylib" player: Player grid: [][]Tile tilemap_sheet: TilemapSpritesheet main :: proc() { fmt.println("Brackey's Game Jam 2026 :) ") config_flags: raylib.ConfigFlags = {.WINDOW_RESIZABLE} raylib.SetConfigFlags(config_flags) raylib.InitWindow(1920, 1080, "Game") raylib.SetTargetFPS(60) tilemap_sheet = load_tilemap_sheet( "assets/tiles/master_tilemap.png", TILEMAP_TILE_SIZE, TILEMAP_TILE_SIZE, ) grid = create_tile_grid(100, 100) player = { position = {20, 20}, camera = { zoom = 4, offset = {f32(raylib.GetScreenWidth()) / 2, f32(raylib.GetScreenHeight()) / 2}, target = {player.position.x + (32 / 2), player.position.y + (32 / 2)}, }, sprite = load_sprite(PLAYER_SPRITE_PATH, PLAYER_WIDTH, PLAYER_HEIGHT), } set_tile(grid, 10, 10, nothing_tile) for (!raylib.WindowShouldClose()) { delta := raylib.GetFrameTime() raylib.BeginDrawing() raylib.ClearBackground(raylib.BLACK) raylib.BeginMode2D(player.camera) raylib.DrawText("Ur mom", 100, 100, 50, raylib.BLACK) draw() raylib.EndMode2D() raylib.DrawFPS(20, 20) raylib.EndDrawing() update(delta) } raylib.CloseWindow() } @(private = "file") update :: proc(delta: f32) { update_player(&player, delta) update_tile_grid(grid, delta) } @(private = "file") draw :: proc() { draw_tile_grid(&tilemap_sheet, grid) draw_player(&player) }