Panda3D
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Static Public Attributes | Protected Attributes | List of all members
GravityWalker Class Reference
Inheritance diagram for GravityWalker:
BattleWalker TwoDWalker

Public Member Functions

 __init__ (self, gravity=64.348, standableGround=0.707, hardLandingForce=16.0, legacyLifter=False)
 
 addBlastForce (self, vector)
 
 debugPrint (self, message)
 
 deleteCollisions (self)
 
 disableAvatarControls (self)
 
 displayDebugInfo (self)
 
 doDeltaPos (self)
 
 enableAvatarControls (self)
 
 flushEventHandlers (self)
 
 getAirborneHeight (self)
 
 getCollisionsActive (self)
 
 getGravity (self, gravity)
 
 getIsAirborne (self)
 
 getSpeeds (self)
 
 getVelocity (self)
 
 handleAvatarControls (self, task)
 
 initializeCollisions (self, collisionTraverser, avatarNodePath, avatarRadius=1.4, floorOffset=1.0, reach=1.0)
 
 oneTimeCollide (self)
 
 placeOnFloor (self)
 
 reset (self)
 
 setAirborneHeightFunc (self, unused_parameter)
 
 setAvatar (self, avatar)
 
 setAvatarPhysicsIndicator (self, indicator)
 
 setCollisionRayHeight (self, height)
 
 setCollisionsActive (self, active=1)
 
 setFloorBitMask (self, bitMask)
 
 setGravity (self, gravity)
 
 setMayJump (self, task)
 
 setPriorParentVector (self)
 
 setTag (self, key, value)
 
 setupEventSphere (self, bitmask, avatarRadius)
 
 setupFloorSphere (self, bitmask, avatarRadius)
 
 setupRay (self, bitmask, floorOffset, reach)
 
 setupWallSphere (self, bitmask, avatarRadius)
 
 setWalkSpeed (self, forward, jump, reverse, rotate)
 
 setWallBitMask (self, bitMask)
 
 startJumpDelay (self, delay)
 
 swapFloorBitMask (self, oldMask, newMask)
 

Public Attributes

 avatar
 
 avatarControlForwardSpeed
 
 avatarControlJumpForce
 
 avatarControlReverseSpeed
 
 avatarControlRotateSpeed
 
 avatarNodePath
 
 avatarPhysicsIndicator
 
 avatarRadius
 
 cEventSphereNodePath
 
 cFloorSphereNodePath
 
 collisionsActive
 
 controlsTask
 
 cRay
 
 cRayNodePath
 
 cTrav
 
 cWallSphereNodePath
 
 event
 
 falling
 
 floorBitmask
 
 getAirborneHeight
 
 highMark
 
 indicatorTask
 
 isAirborne
 
 jumpDelayTask
 
 lifter
 
 mayJump
 
 moving
 
 needToDeltaPos
 
 physVelocityIndicator
 
 priorParent
 
 pusher
 
 pusherFloor
 
 pusherFloorhandler
 
 rotationSpeed
 
 setMayJump
 
 slideSpeed
 
 speed
 
 vel
 
 wallBitmask
 

Static Public Attributes

int DiagonalFactor = math.sqrt(2.) / 2.
 
 earlyEventSphere = ConfigVariableBool('early-event-sphere', False)
 
 notify = directNotify.newCategory("GravityWalker")
 
 wantDebugIndicator = ConfigVariableBool('want-avatar-physics-indicator', False)
 
 wantFloorSphere = ConfigVariableBool('want-floor-sphere', False)
 

Protected Attributes

 _legacyLifter
 

Constructor & Destructor Documentation

◆ __init__()

__init__ ( self,
gravity = 64.348,
standableGround = 0.707,
hardLandingForce = 16.0,
legacyLifter = False )

Reimplemented in BattleWalker, and TwoDWalker.

Member Function Documentation

◆ addBlastForce()

addBlastForce ( self,
vector )

◆ debugPrint()

debugPrint ( self,
message )
for debugging

◆ deleteCollisions()

deleteCollisions ( self)

◆ disableAvatarControls()

disableAvatarControls ( self)
Ignore the arrow keys, etc.

◆ displayDebugInfo()

displayDebugInfo ( self)
For debug use.

◆ doDeltaPos()

doDeltaPos ( self)

◆ enableAvatarControls()

enableAvatarControls ( self)
Activate the arrow keys, etc.

◆ flushEventHandlers()

flushEventHandlers ( self)

◆ getAirborneHeight()

getAirborneHeight ( self)

◆ getCollisionsActive()

getCollisionsActive ( self)

◆ getGravity()

getGravity ( self,
gravity )

◆ getIsAirborne()

getIsAirborne ( self)

◆ getSpeeds()

getSpeeds ( self)

Reimplemented in BattleWalker.

◆ getVelocity()

getVelocity ( self)

◆ handleAvatarControls()

handleAvatarControls ( self,
task )
Check on the arrow keys and update the avatar.

Reimplemented in BattleWalker, BattleWalker, and TwoDWalker.

◆ initializeCollisions()

initializeCollisions ( self,
collisionTraverser,
avatarNodePath,
avatarRadius = 1.4,
floorOffset = 1.0,
reach = 1.0 )
floorOffset is how high the avatar can reach.  I.e. if the avatar
    walks under a ledge that is <= floorOffset above the ground (a
    double floor situation), the avatar will step up on to the
    ledge (instantly).

Set up the avatar collisions

◆ oneTimeCollide()

oneTimeCollide ( self)
Makes one quick collision pass for the avatar, for instance as
a one-time straighten-things-up operation after collisions
have been disabled.

◆ placeOnFloor()

placeOnFloor ( self)
Make a reasonable effor to place the avatar on the ground.
For example, this is useful when switching away from the
current walker.

◆ reset()

reset ( self)

◆ setAirborneHeightFunc()

setAirborneHeightFunc ( self,
unused_parameter )

◆ setAvatar()

setAvatar ( self,
avatar )

◆ setAvatarPhysicsIndicator()

setAvatarPhysicsIndicator ( self,
indicator )
indicator is a NodePath

◆ setCollisionRayHeight()

setCollisionRayHeight ( self,
height )

◆ setCollisionsActive()

setCollisionsActive ( self,
active = 1 )

◆ setFloorBitMask()

setFloorBitMask ( self,
bitMask )

◆ setGravity()

setGravity ( self,
gravity )

◆ setMayJump()

setMayJump ( self,
task )
This function's use is internal to this class (maybe I'll add
the __ someday).  Anyway, if you want to enable or disable
jumping in a general way see the ControlManager (don't use this).

◆ setPriorParentVector()

setPriorParentVector ( self)

◆ setTag()

setTag ( self,
key,
value )

◆ setupEventSphere()

setupEventSphere ( self,
bitmask,
avatarRadius )
Set up the collision sphere

◆ setupFloorSphere()

setupFloorSphere ( self,
bitmask,
avatarRadius )
Set up the collision sphere

◆ setupRay()

setupRay ( self,
bitmask,
floorOffset,
reach )

◆ setupWallSphere()

setupWallSphere ( self,
bitmask,
avatarRadius )
Set up the collision sphere

◆ setWalkSpeed()

setWalkSpeed ( self,
forward,
jump,
reverse,
rotate )

◆ setWallBitMask()

setWallBitMask ( self,
bitMask )

◆ startJumpDelay()

startJumpDelay ( self,
delay )

◆ swapFloorBitMask()

swapFloorBitMask ( self,
oldMask,
newMask )

Member Data Documentation

◆ _legacyLifter

_legacyLifter
protected

◆ avatar

avatar

◆ avatarControlForwardSpeed

avatarControlForwardSpeed

◆ avatarControlJumpForce

avatarControlJumpForce

◆ avatarControlReverseSpeed

avatarControlReverseSpeed

◆ avatarControlRotateSpeed

avatarControlRotateSpeed

◆ avatarNodePath

avatarNodePath

◆ avatarPhysicsIndicator

avatarPhysicsIndicator

◆ avatarRadius

avatarRadius

◆ cEventSphereNodePath

cEventSphereNodePath

◆ cFloorSphereNodePath

cFloorSphereNodePath

◆ collisionsActive

collisionsActive

◆ controlsTask

controlsTask

◆ cRay

cRay

◆ cRayNodePath

cRayNodePath

◆ cTrav

cTrav

◆ cWallSphereNodePath

cWallSphereNodePath

◆ DiagonalFactor

int DiagonalFactor = math.sqrt(2.) / 2.
static

◆ earlyEventSphere

earlyEventSphere = ConfigVariableBool('early-event-sphere', False)
static

◆ event

event

◆ falling

falling

◆ floorBitmask

floorBitmask

◆ getAirborneHeight

getAirborneHeight

◆ highMark

highMark

◆ indicatorTask

indicatorTask

◆ isAirborne

isAirborne

◆ jumpDelayTask

jumpDelayTask

◆ lifter

lifter

◆ mayJump

mayJump

◆ moving

moving

◆ needToDeltaPos

needToDeltaPos

◆ notify

notify = directNotify.newCategory("GravityWalker")
static

◆ physVelocityIndicator

physVelocityIndicator

◆ priorParent

priorParent

◆ pusher

pusher

◆ pusherFloor

pusherFloor

◆ pusherFloorhandler

pusherFloorhandler

◆ rotationSpeed

rotationSpeed

◆ setMayJump

setMayJump

◆ slideSpeed

slideSpeed

◆ speed

speed

◆ vel

vel

◆ wallBitmask

wallBitmask

◆ wantDebugIndicator

wantDebugIndicator = ConfigVariableBool('want-avatar-physics-indicator', False)
static

◆ wantFloorSphere

wantFloorSphere = ConfigVariableBool('want-floor-sphere', False)
static