Random stuff

This commit is contained in:
Riyyi
2026-09-17 21:26:19 +02:00
parent 5cc4f9c7f5
commit eb495f67c2
2 changed files with 24 additions and 5 deletions
+4 -5
View File
@@ -9,7 +9,7 @@ import "sindri:core"
// ----------------------------------------- // -----------------------------------------
Game_Memory :: struct { Game_Memory :: struct {
should_close: bool should_close: bool,
} }
g: ^Game_Memory g: ^Game_Memory
@@ -61,6 +61,7 @@ init :: proc() {
fmt.println("hello from .dll!") fmt.println("hello from .dll!")
g = new(Game_Memory) g = new(Game_Memory)
memory_set(g)
} }
@(export) @(export)
@@ -90,12 +91,10 @@ should_close :: proc() -> bool {
@(export) @(export)
force_reload :: proc() -> bool { force_reload :: proc() -> bool {
// TODO: read keypress return input.key_state(.Key_F5) == .Press
return false
} }
@(export) @(export)
force_restart :: proc() -> bool { force_restart :: proc() -> bool {
// TODO: read keypress return input.key_state(.Key_F6) == .Press
return false
} }
+20
View File
@@ -5,9 +5,11 @@ import "core:fmt"
import "sindri:input" import "sindri:input"
// ----------------------------------------- // -----------------------------------------
// Types
// event category, bitfield (?) // event category, bitfield (?)
// Event_Data :: union {
Event :: union { Event :: union {
Window_Close_Event, Window_Close_Event,
Window_Resize_Event, Window_Resize_Event,
@@ -22,6 +24,11 @@ Event :: union {
Mouse_Scroll_Event, Mouse_Scroll_Event,
} }
// Event :: struct {
// data: Event_Data,
// handled: bool,
// }
Window_Close_Event :: struct { Window_Close_Event :: struct {
handled: bool, handled: bool,
} }
@@ -85,6 +92,13 @@ Mouse_Scroll_Event :: struct {
} }
// ----------------------------------------- // -----------------------------------------
// Variables
// I want to have a list of Listeners per Event type, but this is state
// listeners: map[typeid][dynamic]Listener
// -----------------------------------------
// Public functions
// Dispatcher(Event) -> forwards to the right function // Dispatcher(Event) -> forwards to the right function
on_event :: proc(event: Event) { on_event :: proc(event: Event) {
@@ -116,3 +130,9 @@ on_event :: proc(event: Event) {
fmt.println("Joy dis:", e.id) fmt.println("Joy dis:", e.id)
} }
} }
/*
Notes:
Have the events queued up into a frame buffer that gets drained at a specific time.
*/