Dois-je utiliser bodyposition? BodyVelocity? AIDEComment faire une brique coulissante qui disparaît dans une autre sur ROBLOX
Répondre
Que signifie "disparaît dans un autre"? Vous pouvez utiliser une multitude de façons de simuler le glissement. Vous pouvez utiliser CFrame, BodyVelocity, BodyForce ou même BodyPosition. Vous pouvez même faire une brique sans frottement et glisser dessus. Y a-t-il autre chose que vous devez savoir? Si oui, commentez.
Eh bien, il y a un autre moyen plus réaliste et moins susceptible de faire faillite, vous pouvez simplement faire une brique, et sur la fonction, exemple onClick(), Vous pouvez le faire disparaître et une brique l'original Brick nonCanCollide, et la position du nouveau substitut se déplace dans la direction, aussi, j'aurais tendance à utiliser BodyPosition, parce que cela fonctionne pour la position et peut être utilisé pour les briques ancrées et non ancrées. Briques non ancrées à déplacer dans une direction, ce qui est un peu tedius, eh bien, je dis qu'il est moins susceptible d'échouer, car si le substitut échoue, alors la brique d'origine est toujours là, et vous pouvez faire un script de sauvegarde pour le sauver pauses.
J'espère que cela a aidé. -Orbian.
Il y a plusieurs façons de faire quelque chose comme ça, si je comprends ce que vous voulez essayer. Pour «glisser dans une autre brique et disparaître», vous pouvez faire 2 choses:
1) Avoir un BodyVelocity puissant dans la direction de l'autre brique, qui a un CanCollide de 0. Quand la brique entre en contact avec l'autre, il faudra attendre un peu de temps, puis se retirer.
2) Vous pouvez déplacer la brique en utilisant CFrame, en trouvant l'angle en utilisant CFrame.new (Brick1.Pos, Brick2.Pos), et en utilisant un système de frames pour ajouter ce CFrame au Brick1 CFrame, en créant l'effet de " mouvement". Vous retirez la brique lorsque les "cadres" se terminent.
utiliser une bande transporteuse pour la faire glisser et faire une cancollide en briques et en faire la graisse thanthe c
D'après ce que je peux dire, vous voulez utiliser CFrame. Pour pouvoir faire bouger deux briques dans le même espace (avec les deux briques ayant un CanCollide = true), vous devez utiliser CFrame. Toutes les instances "Body" (BodyVelocity, BodyPosition) appliquent une force sur les briques, et ne peuvent donc pas les faire bouger dans le même espace.
Si vous voulez une porte coulissante vous pouvez utiliser ce script:
local StartPosition = script.Parent.CFrame
local ToPosition = workspace.TargetPart.CFrame -- Make sure this is right
function Open()
for i=0,100,1 do
script.Parent.CFrame = StartPosition + CFrame.new(StartPosition.p,ToPosition.p).lookVector * ((StartPosition.p-ToPosition.p).magnitude/100) * i
wait(0.01)
end
end
function Close()
for i=100,0,-1 do
script.Parent.CFrame = StartPosition + CFrame.new(StartPosition.p,ToPosition.p).lookVector * ((StartPosition.p-ToPosition.p).magnitude/100) * i
wait(0.01)
end
end
local Moving = false
local IsOpen = false
function Toggle()
if Moving then return end
Moving = true
if IsOpen then
Close()
else
Open()
end
IsOpen = not IsOpen
Moving = false
end
-- Following code is just for testing
Toggle()
wait(1)
Toggle()
Assurez-vous que la deuxième brique est plus grand que le premier.
Vous pouvez créer un script onClick
qui fera en sorte qu'une brique ait de la vélocité pour glisser la deuxième brique en place, puis un nouveau script onClick
pour rendre les effets de la vitesse négative afin de retirer la seconde brique.
Fusionner deux briques en une seule? –