Basically, I am trying to make a custom interact system, however I want to use a table to handle all of the parts that can be interacted with, and I want to make a debounce. The problem is that I’m not sure how to make an effective debounce for an array of items.
I want to do something like Part.InteractVisible = true but this property doesn’t exist, and I’m not sure how to give it custom attributes like that, or even if it’s possible.
local PromptParts = {
workspace:WaitForChild('Boardwalk').CoinStand.Coin;
workspace:WaitForChild('Boardwalk').ShopStand.Shop;
}
for i,v in pairs(PromptParts) do
v.InteractVisible = false
end
This is a local script, each interaction is being cloned from ReplicatedStorage, then parented to the part and tweened accordingly. I think your solution would make it server-sided which I want to avoid. I also want the player to be able to interact for as long as they’re within the interaction range (which is 20 studs or something)
I’m not really sure, I just wanted to add a custom “property” to a part that can be either true or false, and the property name would be “InteractVisible” which means the object is currently interact-able. Think CollectionService would work though, and I could use .TagAdded or whatever.