no there was no problems , everything worked as it should i was just pointing out that its best used if you modify it for your games need its flexible enough to support it. ( sorry if it came out in the wrong light )
most of it was me removing certain stuff i don’t need like the sprint and landing features or certain configs and how variant are being indexed again just very specific things i needed. and adding stuff i did. landed duration and jump duration were also part of it.
again great job its a surprisingly clean and flexible piece of module.
i know this is the worst possible time to share this but
i did find tiny issue but ended up ̶s̶o̶l̶v̶i̶n̶g̶ it my self so here is a small hiccup i found out in the ̶s̶w̶i̶t̶c̶h̶ ̶function.
Found the cause when updating the parms of already playing animation , the didloop event attached to it retains its orignal parms and passses into another switchanimation event which causes the clash.
my current solution is to update the parms if there is any change to the main animationtrack parms
Hey, thanks for reporting this. So it happens when using ChangeAnimateParams while an animation is already being played, and then when DidLoop fires, it doesn’t use the newly changed AnimateParams, is this correct?
If so, I’ll be taking a look when I’m available and release a quick fix. It’s great that you found a solution.
Cool Module! Swapping out animation sets on the fly (like when equipping a weapon), can be a lot of work. Nicely done! Personally, I don’t think I’ll use Roblox Animators/AnimationControllers anymore, but this will definitely open up some doors for beginners while also speeding up workflows for sure!
yes that is correct the Didloop will use the previously issued parms given to it when the it originally played! even if the animation switches to its self with different parms
my current solution is to update some of the AnimateParams using the track before passing it into another SwitchAnimation triggred byDidLoop
this did throw me off abit thinking its caused by the Switch function thus the 8 edits on the original posts
( the video was recorded using a stock version of the module without any of my additional changes beside the walking hook. )
here is the code snippet
if speed > 0.1 then
local Front_Dir = rootPart.CFrame.LookVector
local Move_Dir = MoveDirr
local Dot_Dir = Front_Dir:Dot(Move_Dir)
if Dot_Dir <= -0.63 then
SwitchAnimation(GetPossibleVariant("Walk"), {FadeTime = 0.2 , Speed = -1}, self.Reload)
else
SwitchAnimation(GetPossibleVariant("Walk"), {FadeTime = 0.2 , Speed = 1}, self.Reload)
end
else
SwitchAnimation(GetPossibleVariant("Idle"), {FadeTime = 0.25}, self.Reload)
end
the only Solution i can recommend is to make a variable just like currentMainTrack and update or replacing it instead of using the one provided by the arguments.