chore: refractor
This commit is contained in:
35
ReplicatedStorage/Shared/PlacementState.lua
Normal file
35
ReplicatedStorage/Shared/PlacementState.lua
Normal file
@@ -0,0 +1,35 @@
|
||||
--!native
|
||||
--!optimize 2
|
||||
|
||||
local ReplicatedStorage = game:GetService("ReplicatedStorage")
|
||||
|
||||
local PlacementState = {}
|
||||
|
||||
local selectedId: string = ""
|
||||
local selectedName: string = ""
|
||||
|
||||
local changed = Instance.new("BindableEvent")
|
||||
PlacementState.Changed = changed.Event
|
||||
|
||||
local valueObject = ReplicatedStorage:FindFirstChild("HotbarSelectedBlock")
|
||||
if not valueObject then
|
||||
valueObject = Instance.new("StringValue")
|
||||
valueObject.Name = "HotbarSelectedBlock"
|
||||
valueObject.Parent = ReplicatedStorage
|
||||
end
|
||||
PlacementState.ValueObject = valueObject
|
||||
|
||||
function PlacementState:SetSelected(id: string?, name: string?)
|
||||
selectedId = id or ""
|
||||
selectedName = name or selectedId
|
||||
valueObject.Value = selectedName or ""
|
||||
local Util = require(ReplicatedStorage:WaitForChild("Shared"):WaitForChild("Util"))
|
||||
Util.StudioLog("[PLACE][CLIENT][SELECT]", "id", selectedId, "name", selectedName)
|
||||
changed:Fire(selectedId, selectedName)
|
||||
end
|
||||
|
||||
function PlacementState:GetSelected()
|
||||
return selectedId, selectedName
|
||||
end
|
||||
|
||||
return PlacementState
|
||||
Reference in New Issue
Block a user