Commit Graph

693 Commits (0.7.1-build-fixes)

Author SHA1 Message Date
Chris Robinson 91513206a0 Don't use per-animation accumulation values
This breaks walking diagonally and "jumping" (which technically wasn't jumping
anyway).
12 years ago
Chris Robinson 51d5efeeb2 Work out the state in the character controller update method 12 years ago
Chris Robinson 7fe877d8ea Add a couple more character states 12 years ago
Chris Robinson 007a5963de Handle most state changes in the character controller when setting the movement vector 12 years ago
Chris Robinson 04d4c125ba Print when an animation event is unhandled 12 years ago
Chris Robinson 37fe1bd3f0 Handle looping in the Animation object 12 years ago
Chris Robinson e956a1cbc0 Merge SpecialIdle character state into Idle 12 years ago
Chris Robinson 6905bd18ba Filter out the group name from the text keys
It's already in the animation name, and the text keys are animation-specific
anyway.
12 years ago
Chris Robinson 85ca1e993f Properly check if an animation exists before playing it 12 years ago
Chris Robinson 68779375b2 Implement WalkLeft and WalkRight character states 12 years ago
Chris Robinson a7b07ee5cf Don't reset the animation when setting the same state
Unless looping is being toggled on.
12 years ago
Chris Robinson e0541b52c4 Use a list to store and get state information 12 years ago
Chris Robinson de2d084e61 Add a looping property to handle if an animation should loop 12 years ago
Chris Robinson 0b68953f0d Scale animation speed using the direction length
The direction length doesn't currently give a good speed, but it's something.
12 years ago
Chris Robinson aecfc0829a Implement WalkForward and WalkBack character states 12 years ago
Chris Robinson e33f59e0fe Ensure the direction vector is initialized and copied properly 12 years ago
Chris Robinson 1cdd64cd9b Return the animation movement from the character controller.
Consequently, dead actors don't move anymore. The doPhysics call apparently
isn't moving them.
12 years ago
Chris Robinson 9235fba770 Store the movement vector in the character controller 12 years ago
Chris Robinson 40f8e75763 Use a SpecialIdle state for PlayGroup/LoopGroup invoked animations
Note that actors will *not* automatically resume a normal idle state afterward.
Their AI will need to control what to do when the special idle is finished.
12 years ago
Chris Robinson a527cb8349 Loop the current animation when not dead
This should be better, but it's not perfect. It misses the case where
start < loop start == loop stop <= stop
12 years ago
Chris Robinson c7684cb979 Pass the key time to markerEvent 12 years ago
Chris Robinson 3e9b0a333c Allow specifying the accumulation for animations
Animations that move a character may do so either visually or physically. An
axis' accumuluation value specifies whether the movement is visual (0) or
physical (1). Idle animations, for instance, typically don't physically move a
character, while death animations may physically move them along the X and Y
planes, but not along Z (the vertical movement is purely visual).
12 years ago
Chris Robinson 5cafc24ee2 Rename CharState_Alive back to CharState_Idle 12 years ago
Chris Robinson a94947029e Check the marker name before deciding what to do with it
Also, don't force 'idle' after a playgroup
12 years ago
Chris Robinson 9d7ccfda1f Rename CharState_Idle to CharState_Alive 12 years ago
Chris Robinson 8720433fa9 Do not automatically loop animations
There are 0 length idle animations that break this
12 years ago
Chris Robinson 8fa1b56efc Loop the current animation if there's nothing more queued 12 years ago
Chris Robinson 7cce44290e Handle the animation queue in mwmechanics 12 years ago
Chris Robinson 47c157303a Filter events that do not belong to the current group 12 years ago
Chris Robinson da4f17859e Recognize soundgen animation markers 12 years ago
Chris Robinson 7ee389f3b2 Handle animation skipping in the character controller 12 years ago
Chris Robinson 852aa214cc Store the available animation names in the character controller 12 years ago
Chris Robinson afbc9f3e41 Keep track of the animation group currently playing 12 years ago
Chris Robinson 685f219560 Return a movement vector from the character controller update 12 years ago
Chris Robinson d2f5a886c7 Handle playgroup and skipanim through mwmechanics 12 years ago
Chris Robinson 46fc61a4c1 Run animations from the character controller 12 years ago
Chris Robinson 46728ab27f Handle "sound:" animation events 12 years ago
Chris Robinson 3c32385e17 Avoid trying to animate things that don't have animations 12 years ago
Chris Robinson 94b93227d3 Treat activators as actors for rendering and mechanics
Kinda hacky, but it's the only way to get animated activators (flags, silt
striders, etc) to work properly.
12 years ago
Chris Robinson d2fc3c7b33 Add a method to tell the character controller of new text keys 12 years ago
Chris Robinson f46587c383 Store an character controller in the animation 12 years ago
Chris Robinson 3c487e6019 Play an animation when changing states 12 years ago
Chris Robinson 771a5f7316 Add the beginnings of a character controller 12 years ago