Browse Source

- Debug : Added a debug registering function
- ECS : moved ECSDebug to ECS to have a clean independant debug module

Eiyeron Fulmincendii 8 years ago
parent
commit
60811f6347
4 changed files with 13 additions and 5 deletions
  1. 6 4
      debug_overlay/init.lua
  2. 5 1
      ecs/ECS.lua
  3. 0 0
      ecs/debug/init.lua
  4. 2 0
      main.lua

+ 6 - 4
debug_overlay/init.lua

@@ -2,7 +2,6 @@ local class, object =  require("class"), require("class.object")
 local Console = require("debug_overlay.console")
 local Graphs = require("debug_overlay.graphs")
 local Watch = require("debug_overlay.watch")
-local ECSDebug = require("debug_overlay.ecs")
 
 require("imgui")
 
@@ -14,13 +13,16 @@ function Debug:init()
             Console = Console:new(),
             Watch = Watch:new(),
             Graphs = Graphs:new(),
-        },
-        ECS = {
-            ECS = ECSDebug:new()
         }
     }
     self.console = self.debug_menus.Debug.Console
     self.watch = self.debug_menus.Debug.Watch
+
+end
+
+function Debug:register_menu(menu_name, windows)
+    assert(not self.debug_menus[menu_name])
+    self.debug_menus[menu_name] = windows
 end
 
 function Debug:render()

+ 5 - 1
ecs/ECS.lua

@@ -13,10 +13,14 @@ function ECS:init()
         self.entities[i] = false
     end
 
-
     self.components = {}
     self.components_classes = {}
     self.n_components = 0
+
+end
+
+function ECS.debug_register()
+    debug_overlay:register_menu("ECS", {ECS=require("ecs.debug"):new()})
 end
 
 function ECS:create_ffi_component(name, structdef)

+ 0 - 0
debug_overlay/ecs/init.lua → ecs/debug/init.lua


+ 2 - 0
main.lua

@@ -4,6 +4,8 @@ local Debug = require("debug_overlay")
 local inspect = require 'inspect'
 
 debug_overlay = Debug:new()
+ECS.debug_register()
+
 local ecs = ECS:new()
 local a = {b = 42}
 local Position = ecs:create_ffi_component("Position", [[