@@ -31,7 +31,7 @@ class GravityWalker(DirectObject.DirectObject):
3131 DiagonalFactor = math .sqrt (2. ) / 2.
3232
3333 # special methods
34- def __init__ (self , gravity = - 32.1740 , standableGround = 0.707 ,
34+ def __init__ (self , gravity = 64.348 , standableGround = 0.707 ,
3535 hardLandingForce = 16.0 ):
3636 assert self .notify .debugStateCall (self )
3737 DirectObject .DirectObject .__init__ (self )
@@ -165,7 +165,7 @@ def getSpeeds(self):
165165
166166 def getIsAirborne (self ):
167167 return self .isAirborne
168-
168+
169169 def setAvatar (self , avatar ):
170170 self .avatar = avatar
171171 if avatar is not None :
@@ -187,7 +187,7 @@ def setupRay(self, bitmask, floorOffset, reach):
187187
188188 # set up floor collision mechanism
189189 self .lifter = CollisionHandlerGravity ()
190- self .lifter .setGravity (32.174 * 2.0 )
190+ self .lifter .setGravity (self . __gravity )
191191 self .lifter .addInPattern ("enter%in" )
192192 self .lifter .addOutPattern ("exit%in" )
193193 self .lifter .setOffset (floorOffset )
@@ -283,6 +283,12 @@ def swapFloorBitMask(self, oldMask, newMask):
283283 if self .cRayNodePath and not self .cRayNodePath .isEmpty ():
284284 self .cRayNodePath .node ().setFromCollideMask (self .floorBitmask )
285285
286+ def setGravity (self , gravity ):
287+ self .__gravity = gravity
288+
289+ def getGravity (self , gravity ):
290+ return self .__gravity
291+
286292 def initializeCollisions (self , collisionTraverser , avatarNodePath ,
287293 avatarRadius = 1.4 , floorOffset = 1.0 , reach = 1.0 ):
288294 """
@@ -384,7 +390,7 @@ def setCollisionsActive(self, active = 1):
384390 # position, so we never trigger things that are
385391 # behind other polygons.
386392 base .shadowTrav .addCollider (self .cEventSphereNodePath , self .event )
387-
393+
388394 else :
389395 if hasattr (self , 'cTrav' ):
390396 self .cTrav .removeCollider (self .cWallSphereNodePath )
@@ -513,7 +519,7 @@ def handleAvatarControls(self, task):
513519 self .speed *= base .debugRunningMultiplier
514520 self .slideSpeed *= base .debugRunningMultiplier
515521 self .rotationSpeed *= 1.25
516-
522+
517523 if self .needToDeltaPos :
518524 self .setPriorParentVector ()
519525 self .needToDeltaPos = 0
@@ -676,7 +682,7 @@ def flushEventHandlers(self):
676682 self .floorPusher .flush ()
677683 self .event .flush ()
678684 self .lifter .flush () # not currently defined or needed
679-
685+
680686 if __debug__ :
681687 def debugPrint (self , message ):
682688 """for debugging"""
0 commit comments