package main import "core:fmt" import "util" import "vendor:sdl3" DEFAULT_VELOCITY: util.Velocity : util.Velocity{x = 0, y = 0} SPEED: f32 : 200 HandleInput :: proc(game: ^Game, event: sdl3.Event) { effect := event.type == sdl3.EventType.KEY_DOWN ? true : false game.input_state[event.key.scancode] = effect } MovePlayer :: proc(game: ^Game) { y: f32 = game.input_state[sdl3.Scancode.W] ? -SPEED : 0 y += game.input_state[sdl3.Scancode.S] ? SPEED : 0 x: f32 = game.input_state[sdl3.Scancode.A] ? -SPEED : 0 x += game.input_state[sdl3.Scancode.D] ? SPEED : 0 game.player.velocity = util.Velocity{x, y} game.player.position.y += y * game.delta game.player.position.x += x * game.delta }