Round and pubsub lib.
This commit is contained in:
@@ -40,8 +40,6 @@ function RL.init()
|
||||
camera:setTarget( { 0, 0, 0 } )
|
||||
camera:setUp( { 0, 1, 0 } )
|
||||
camera.mode = camera.MODES.ORBITAL
|
||||
-- camera.mode = camera.MODES.FREE
|
||||
-- camera.mode = camera.MODES.FIRST_PERSON
|
||||
|
||||
heigthImage = RL.LoadImage( RL.GetBasePath().."../resources/images/heightmap.png" )
|
||||
|
||||
@@ -78,7 +76,7 @@ function RL.init()
|
||||
material = RL.LoadMaterialDefault()
|
||||
RL.SetMaterialTexture( material, RL.MATERIAL_MAP_ALBEDO, groundTexture )
|
||||
|
||||
matrix = RL.MatrixMultiply( RL.MatrixIdentity(), RL.MatrixTranslate( { -4, 0, -4 } ) )
|
||||
matrix = RL.MatrixTranslate( { -4, 0, -4 } )
|
||||
end
|
||||
|
||||
function RL.update( delta )
|
||||
|
||||
@@ -31,15 +31,12 @@ function RL.init()
|
||||
camera:setTarget( { 0, 0, 0 } )
|
||||
camera:setUp( { 0, 1, 0 } )
|
||||
camera.mode = camera.MODES.ORBITAL
|
||||
-- camera.mode = camera.MODES.FREE
|
||||
-- camera.mode = camera.MODES.FIRST_PERSON
|
||||
|
||||
local ts = PLANE_SIZE
|
||||
local meshData = {
|
||||
vertices = { { 0, 0, 0 }, { 0, 0, PLANE_SIZE }, { PLANE_SIZE, 0, PLANE_SIZE },
|
||||
{ 0, 0, 0 }, { PLANE_SIZE, 0, PLANE_SIZE }, { PLANE_SIZE, 0, 0 } },
|
||||
texcoords = { { 0, 0 }, { 0, ts }, { ts, ts },
|
||||
{ 0, 0 }, { ts, ts }, { ts, 0 } },
|
||||
texcoords = { { 0, 0 }, { 0, PLANE_SIZE }, { PLANE_SIZE, PLANE_SIZE },
|
||||
{ 0, 0 }, { PLANE_SIZE, PLANE_SIZE }, { PLANE_SIZE, 0 } },
|
||||
texcoords2 = { { 0, 0 }, { 0, 1 }, { 1, 1 },
|
||||
{ 0, 0 }, { 1, 1 }, { 1, 0 } },
|
||||
colors = { RL.WHITE, RL.WHITE, RL.WHITE,
|
||||
@@ -80,7 +77,7 @@ function RL.init()
|
||||
},
|
||||
}
|
||||
material = RL.CreateMaterial( materialData )
|
||||
matrix = RL.MatrixMultiply( RL.MatrixIdentity(), RL.MatrixTranslate( { -4, 0, -4 } ) )
|
||||
matrix = RL.MatrixTranslate( { -PLANE_SIZE / 2, 0, -PLANE_SIZE / 2 } )
|
||||
end
|
||||
|
||||
function RL.update( delta )
|
||||
|
||||
@@ -79,7 +79,9 @@ local function addPropertyList()
|
||||
nil,
|
||||
{
|
||||
properties = {
|
||||
{ RL.SCROLLBAR, RL.ARROWS_VISIBLE, RL.ARROWS_VISIBLE },
|
||||
-- { RL.SCROLLBAR, RL.ARROWS_VISIBLE, RL.ARROWS_VISIBLE },
|
||||
{ RL.LISTVIEW, RL.BORDER_COLOR_FOCUSED, RL.GuiGetStyle( RL.LISTVIEW, RL.BORDER_COLOR_NORMAL ) },
|
||||
{ RL.LISTVIEW, RL.BORDER_COLOR_PRESSED, RL.GuiGetStyle( RL.LISTVIEW, RL.BORDER_COLOR_NORMAL ) },
|
||||
}
|
||||
}
|
||||
)
|
||||
|
||||
@@ -144,4 +144,13 @@ function Color:alphaBlend( dst, src, tint )
|
||||
return Color:new( RL.ColorAlphaBlend( dst, src, tint ) )
|
||||
end
|
||||
|
||||
function Color:lerp( color, amount )
|
||||
return Color:new(
|
||||
RL.Lerp( self.r, color.r, amount ),
|
||||
RL.Lerp( self.g, color.g, amount ),
|
||||
RL.Lerp( self.b, color.b, amount ),
|
||||
RL.Lerp( self.a, color.a, amount )
|
||||
)
|
||||
end
|
||||
|
||||
return Color
|
||||
|
||||
34
examples/resources/lib/pubsub.lua
Normal file
34
examples/resources/lib/pubsub.lua
Normal file
@@ -0,0 +1,34 @@
|
||||
local PubSub = {}
|
||||
PubSub.__index = PubSub
|
||||
|
||||
function PubSub:new()
|
||||
local object = setmetatable( {}, self )
|
||||
|
||||
object.signals = {}
|
||||
|
||||
return object
|
||||
end
|
||||
|
||||
function PubSub:add( name )
|
||||
self.signals[ name ] = {}
|
||||
end
|
||||
|
||||
function PubSub:subscribe( name, func )
|
||||
table.insert( self.signals[ name ], func )
|
||||
end
|
||||
|
||||
function PubSub:unSubscribe( name, uFunc )
|
||||
for i, func in ipairs( self.signals[ name ] ) do
|
||||
if func == uFunc then
|
||||
table.remove( self.signals[ name ], i )
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function PubSub:publish( name, ... )
|
||||
for _, func in ipairs( self.signals[ name ] ) do
|
||||
func( ... )
|
||||
end
|
||||
end
|
||||
|
||||
return PubSub
|
||||
@@ -1,5 +1,10 @@
|
||||
-- Define useful global functions.
|
||||
|
||||
-- For luaJit compatibility.
|
||||
if table.unpack == nil then
|
||||
table.unpack = unpack
|
||||
end
|
||||
|
||||
local utillib = {}
|
||||
|
||||
function utillib.tableClone( org )
|
||||
|
||||
@@ -248,4 +248,6 @@ function RL.draw()
|
||||
0.0,
|
||||
RL.WHITE
|
||||
)
|
||||
|
||||
RL.DrawFPS( { 20, 20 } )
|
||||
end
|
||||
|
||||
@@ -11,10 +11,10 @@ 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 )
|
||||
|
||||
textSize = RL.MeasureText( text, textSize )
|
||||
textColor = RL.BLUE
|
||||
textPos = { winSize[1] / 2 - textSize[1] / 2, winSize[2] / 2 - textSize[2] / 2 }
|
||||
textPos = { winSize[1] / 2 - measuredSize[1] / 2, winSize[2] / 2 - measuredSize[2] / 2 }
|
||||
end
|
||||
|
||||
if RL.IsKeyPressed( RL.KEY_SPACE ) then
|
||||
@@ -25,5 +25,5 @@ end
|
||||
|
||||
function RL.draw()
|
||||
RL.ClearBackground( RL.RAYWHITE )
|
||||
RL.DrawText( text, textPos, textSize, textColor )
|
||||
RL.DrawText( text, textPos, textSize, textColor )
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user