mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-03 02:15:43 -04:00
fix getCurrentFrame(animName = blah)
This commit is contained in:
parent
fbc38a3e01
commit
9e76c93d1e
@ -869,10 +869,10 @@ class Actor(DirectObject, NodePath):
|
||||
|
||||
def getCurrentFrame(self, animName=None, partName=None):
|
||||
"""
|
||||
Return the current frame number of the anim current playing on
|
||||
the actor. If part not specified return current anim of first
|
||||
part in dictionary.
|
||||
NOTE: only returns info for an arbitrary LOD
|
||||
Return the current frame number of the named anim, or if no
|
||||
anim is specified, then the anim current playing on the
|
||||
actor. If part not specified return current anim of first part
|
||||
in dictionary. NOTE: only returns info for an arbitrary LOD
|
||||
"""
|
||||
lodName, animControlDict = self.__animControlDict.items()[0]
|
||||
if partName == None:
|
||||
@ -884,10 +884,17 @@ class Actor(DirectObject, NodePath):
|
||||
Actor.notify.warning("couldn't find part: %s" % (partName))
|
||||
return None
|
||||
|
||||
# loop through all anims for named part and find if any are playing
|
||||
for animName, anim in animDict.items():
|
||||
if anim.animControl and anim.animControl.isPlaying():
|
||||
if animName:
|
||||
anim = animDict.get(animName)
|
||||
if not anim:
|
||||
Actor.notify.warning("couldn't find anim: %s" % (animName))
|
||||
elif anim.animControl:
|
||||
return anim.animControl.getFrame()
|
||||
else:
|
||||
# loop through all anims for named part and find if any are playing
|
||||
for animName, anim in animDict.items():
|
||||
if anim.animControl and anim.animControl.isPlaying():
|
||||
return anim.animControl.getFrame()
|
||||
|
||||
# we must have found none, or gotten an error
|
||||
return None
|
||||
|
Loading…
x
Reference in New Issue
Block a user