Something wrong with the if statement then, what is workspace.Plates.Active
?
Testing this now.
char limit char limit
What?
I’m pretty sure that’s not how collisions work
When it’s unanchored the part just spins around like crazy so it doesn’t really work
This is a long a thread for no reason and I’m gonna clear some misconceptions.
Parts properties do not matter here!
Expect for CanTouch, which is responsible for .Touched and similar events.
The snippet I posted works when it touches but the if statement does not pass! Something is wrong with it. What is workspace.Plates.Active
? And where is it located?
It’s a folder that almost all of the parts that it would touch are inside of. For the few it doesn’t touch, I found a new way to check those, but even then it didn’t even print the touched part’s name, so that’s not the main issue
Then you had set your force wrongly again.
- Get the number obtained from the formula
- Substitute that number into the component Y of the
Vector3
of the force propeprty.
- DO NOT TOUCH THE X AND Z COMPONENT. Leave them as zero.
Try this then.
local __ONGROUND = false
coroutine.wrap(function()
repeat
task.wait()
newDrop.Position -= Vector3.new(0, 0.1, 0)
until __ONGROUND == true
end)()
newDrop.Touched:Connect(function(hit)
if hit:FindFirstChild("Active", true) then
print("HIT IF STATEMNT")
__ONGROUND = true
end
end)
What does the true inside of FindFirstChild mean?
That can’t be the case, you can inspect my part model here:
This isn’t true. Anchored turns on and off physics. Touched is physics.
If two parts without physics are moved into each other, no touch event fires because neither are running physics for their collisions.
two anchored parts will never fire the BasePart.Touched event on each other
I think you misunderstand, I mean anchored. Anchored matters. Like I said originally and am saying for the third time.
ok, cantouch.
At this point, just please use and inspect my part model I had given to you so we can all call it a day and go home quick.
This code is wrong, hit
is the base part and shouldn’t have the “Active” instance as a child or descendant.
The code should be what it was originally:
hit.Parent.Parent == workspace.Plates.Active
or possibly
hit:IsDescendantOf(workspace.Plates.Active)
Yeah, doesn’t work. I changed the if statement too, and it just doesn’t run at all
Yeah, this doesn’t help with their code. I tried it
Resort to this then.