Play a sequence/activity in reverse

I’m wanting to play a weapon’s deploy animation in reverse to make it into a holster animation of sorts. This is an option in newer Source engine branch versions, but I don’t see a way to directly do it in Garry’s Mod.

I’ve heard that people were using this

Entity:SetCycle
But i’m not %100 sure if this actually works

I sort of got it with doing SetCycle in a think hook, but it’s really choppy.

Entity:SetPlaybackRate -1?

I think that would be awesome to get SetPlaybackRate with negative numbers, but actually it doesn’t work
Anyway, did you try to first use SetPlaybackRate to 0, then get duration of sequence, so you substract Cycle - (1/lenght)

I Use SetCycle, works well for me and is not choppy.

Might make more sense to use it in Draw though, not think.

Think runs every frame on the client. At least that’s what it says on the wiki.

In general, draw / render hooks shouldn’t be changing stuff, only rendering them. There are exceptions but I don’t think this is one of them.

My logic was maybe it was drawing the model but the animation had not be updated from think yet so it still shows old frames from the animation. My logic is probably wrong, which is why it was just a suggestion.

I’ve tried doing this in a SWEP Think function to play an activity backward but SetCycle does nothing; the activity just plays at normal speed forward.

Guess there’s no other way