Reproduction Steps
I’m trying to access the AccessoryWeld in my code when an Accessory gets equipped, but I cannot do so because I’m getting a reference to a weld which was created and destroyed before the real weld is created. TouchInterest creation also has some problems.
Expected Behavior
When equipping:
- Existing TouchInterest is removed once.
- AccessoryWeld is created once.
When unequipping:
- Existing AccessoryWeld is removed once.
- TouchInterest is created once.
Actual Behavior
When equipping:
- New AccessoryWeld is created.
- Existing TouchInterest is removed.
- New TouchInterest is created.
- New TouchInterest is removed.
- New AccessoryWeld is removed.
- Real AccessoryWeld is created.
When unequipping:
- Existing AccessoryWeld is removed.
- New TouchInterest is created.
- New TouchInterest is removed.
- Real TouchInterest is created.
Workaround
local AccessoryWeld = Handle:WaitForChild("AccessoryWeld")
-- Bug workaround.
if AccessoryWeld.Parent == nil then
AccessoryWeld = Handle:FindFirstChild("AccessoryWeld")
end
Issue Area: Engine
Issue Type: Other
Impact: Moderate
Frequency: Constantly
Date First Experienced: 2021-12-05 00:12:00 (+01:00)