summaryrefslogtreecommitdiff
path: root/build/main.lua
diff options
context:
space:
mode:
authorIndrajith K L2025-11-03 18:04:54 +0530
committerIndrajith K L2025-11-03 18:04:54 +0530
commitf185f2c31a611c985dbdb5e1b40a0c4c2a1dc3b1 (patch)
treefe60ea230e154889216d5ed00f43869c0a3656dd /build/main.lua
parent737214b71be8fe5fdf51155ad50bb064b3156bd3 (diff)
downloadreilua-enhanced-f185f2c31a611c985dbdb5e1b40a0c4c2a1dc3b1.tar.gz
reilua-enhanced-f185f2c31a611c985dbdb5e1b40a0c4c2a1dc3b1.tar.bz2
reilua-enhanced-f185f2c31a611c985dbdb5e1b40a0c4c2a1dc3b1.zip
Fix SEGV crash: Initialize window and font in stateInit()
- Move window initialization and font loading to stateInit() - Window now opens before splash screens (required for rendering) - Custom font loaded in stateInit for splash screen use - Remove RL.config() call from luaCallMain() (window already initialized) - Remove stateContextInit() call (initialization now done in stateInit) - Add hasWindow, customFontLoaded, resolution fields to State - Fix memory management for custom font in stateFree() This matches the ReiLua-JamVersion architecture where the window is opened early so splash screens can render properly.
Diffstat (limited to 'build/main.lua')
-rw-r--r--build/main.lua29
1 files changed, 29 insertions, 0 deletions
diff --git a/build/main.lua b/build/main.lua
new file mode 100644
index 0000000..dc08763
--- /dev/null
+++ b/build/main.lua
@@ -0,0 +1,29 @@
+local textColor = RL.BLACK
+local textPos = { 192, 200 }
+local textSize = 20
+local text = "Congrats! You created your first window!"
+
+function RL.init()
+ RL.SetWindowTitle( "First window" )
+ RL.SetWindowState( RL.FLAG_VSYNC_HINT )
+end
+
+function RL.update( delta )
+ if RL.IsKeyPressed( RL.KEY_ENTER ) then
+ local winSize = RL.GetScreenSize()
+ local measuredSize = RL.MeasureTextEx( RL.GetFontDefault(), text, textSize, 2 )
+
+ textColor = RL.BLUE
+ textPos = { winSize[1] / 2 - measuredSize[1] / 2, winSize[2] / 2 - measuredSize[2] / 2 }
+ end
+
+ if RL.IsKeyPressed( RL.KEY_SPACE ) then
+ textColor = RL.RED
+ textPos = { 192, 200 }
+ end
+end
+
+function RL.draw()
+ RL.ClearBackground( RL.RAYWHITE )
+ RL.DrawText( text, textPos, textSize, textColor )
+end \ No newline at end of file