diff --git a/demo/src/ReplicatedStorage/std/init.luau b/demo/src/ReplicatedStorage/std/init.luau index 54734fc..6102028 100644 --- a/demo/src/ReplicatedStorage/std/init.luau +++ b/demo/src/ReplicatedStorage/std/init.luau @@ -3,9 +3,12 @@ local jecs = require(game:GetService("ReplicatedStorage").ecs) local world = require(script.world) :: jecs.World export type World = jecs.World +local Scheduler = require(script.scheduler) +export type Scheduler = Scheduler.Scheduler + local std = { ChangeTracker = require(script.changetracker), - Scheduler = require(script.scheduler), + Scheduler = Scheduler, bt = require(script.bt), collect = require(script.collect), components = require(script.components), diff --git a/demo/src/ReplicatedStorage/std/scheduler.luau b/demo/src/ReplicatedStorage/std/scheduler.luau index fa6054d..2c9b4e9 100644 --- a/demo/src/ReplicatedStorage/std/scheduler.luau +++ b/demo/src/ReplicatedStorage/std/scheduler.luau @@ -204,7 +204,7 @@ do world = world, debug = Name, entities = {} - } ) + }) jabby.public.updated = true diff --git a/demo/src/ReplicatedStorage/std/start.luau b/demo/src/ReplicatedStorage/std/start.luau index 192d9c4..d6b7895 100644 --- a/demo/src/ReplicatedStorage/std/start.luau +++ b/demo/src/ReplicatedStorage/std/start.luau @@ -12,10 +12,12 @@ local function start(modules) end local events = scheduler.collect.all() scheduler.systems.begin(events) + + jabby.set_check_function(function(player) + return true + end) if RunService:IsClient() then local client = jabby.obtain_client() - local player = game:GetService("Players").LocalPlayer - local apps = player:WaitForChild("PlayerGui") local dtor UserInputService.InputBegan:Connect(function(input) if input.KeyCode == Enum.KeyCode.F4 then diff --git a/demo/src/StarterPlayer/StarterPlayerScripts/systems/move.luau b/demo/src/StarterPlayer/StarterPlayerScripts/systems/move.luau index f520a3d..f403d73 100644 --- a/demo/src/StarterPlayer/StarterPlayerScripts/systems/move.luau +++ b/demo/src/StarterPlayer/StarterPlayerScripts/systems/move.luau @@ -12,7 +12,8 @@ local function move(dt: number) for _, transform, model in world:query(Transform, Model):iter() do local cf = transform.new if cf ~= transform.old then - model.PrimaryPart.CFrame = cf + local origo = model.PrimaryPart.CFrame + model.PrimaryPart.CFrame = origo:Lerp(cf, 1) transform.old = cf end end diff --git a/demo/src/StarterPlayer/StarterPlayerScripts/systems/syncTransforms.luau b/demo/src/StarterPlayer/StarterPlayerScripts/systems/syncTransforms.luau index 6d68280..4e7a8cb 100644 --- a/demo/src/StarterPlayer/StarterPlayerScripts/systems/syncTransforms.luau +++ b/demo/src/StarterPlayer/StarterPlayerScripts/systems/syncTransforms.luau @@ -5,9 +5,11 @@ local ref = std.ref local world = std.world local cts = std.components - +local UpdateTransforms = ReplicatedStorage:WaitForChild("UpdateTransforms") :: RemoteEvent +local collect = std.collect +local stream = collect(UpdateTransforms.OnClientEvent) local function syncTransforms() - for _, id, cf in blink.UpdateTransform.Iter() do + for _, id, cf in stream do local e = ref("server-"..id) local transform = e:get(cts.Transform) if not transform then