Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 7 additions & 15 deletions lua/entities/gmod_wire_expression2/core/gametick.lua
Original file line number Diff line number Diff line change
Expand Up @@ -26,25 +26,17 @@ e2function number tickClk()
return self.data.tickrun and 1 or 0
end

hook.Add("Think", "Expression2TickClock", function()
-- This additional step is needed because we cant modify registered_chips while it is being iterated.
local entities = {}
local i = 1
E2Lib.registerEvent("tick")

hook.Add("Think", "Expression2TickClock", function()
for entity in pairs(registered_chips) do
if entity:IsValid() then
entities[i] = entity
i = i + 1
end
end
local tab = entity:GetTable()
local data = tab.context.data

for _, entity in ipairs(entities) do
entity.context.data.tickrun = true
entity:Execute()
entity.context.data.tickrun = nil
data.tickrun = true
tab.Execute(entity)
data.tickrun = nil
end

E2Lib.triggerEvent("tick")
end)

E2Lib.registerEvent("tick")
Loading