コード例 #1
0
ファイル: PetWander.py プロジェクト: its-thyme/src-1
 def __init__(self, minDist=5.0, moveAngle=20.0):
     self.movingTarget = hidden.attachNewNode('petWanderTarget')
     PetChase.__init__(self, self.movingTarget, minDist, moveAngle)
     self.targetMoveCountdown = 0
     self.collEvent = None
     self.gotCollision = False
     return
コード例 #2
0
ファイル: PetWander.py プロジェクト: snoopdogg420/src
 def __init__(self, minDist = 5.0, moveAngle = 20.0):
     self.movingTarget = hidden.attachNewNode('petWanderTarget')
     PetChase.__init__(self, self.movingTarget, minDist, moveAngle)
     self.targetMoveCountdown = 0
     self.collEvent = None
     self.gotCollision = False
     return
コード例 #3
0
ファイル: PetWander.py プロジェクト: its-thyme/src-1
 def _process(self, dt):
     self.targetMoveCountdown -= dt
     if self.targetMoveCountdown <= 0.0:
         distance = normalDistrib(3.0, 30.0)
         heading = normalDistrib(-(90 + 45), 90 + 45)
         if self.gotCollision:
             self.gotCollision = False
             heading = heading + 180
         target = self.getTarget()
         target.setPos(self.getNodePath().getPos())
         target.setH(target, heading)
         target.setY(target, distance)
         duration = distance / self.mover.getFwdSpeed()
         self.targetMoveCountdown = duration * randFloat(1.2, 3.0)
     PetChase.process(self, dt)
コード例 #4
0
ファイル: PetWander.py プロジェクト: snoopdogg420/src
 def _process(self, dt):
     self.targetMoveCountdown -= dt
     if self.targetMoveCountdown <= 0.0:
         distance = normalDistrib(3.0, 30.0)
         heading = normalDistrib(-(90 + 45), 90 + 45)
         if self.gotCollision:
             self.gotCollision = False
             heading = heading + 180
         target = self.getTarget()
         target.setPos(self.getNodePath().getPos())
         target.setH(target, heading)
         target.setY(target, distance)
         duration = distance / self.mover.getFwdSpeed()
         self.targetMoveCountdown = duration * randFloat(1.2, 3.0)
     PetChase.process(self, dt)
コード例 #5
0
ファイル: PetWander.py プロジェクト: its-thyme/src-1
 def _clearMover(self, mover):
     PetChase.clearMover(self, mover)
     self.__ignoreCollisions()
コード例 #6
0
ファイル: PetWander.py プロジェクト: its-thyme/src-1
 def _setMover(self, mover):
     PetChase.setMover(self, mover)
     self.mover = mover
     self.__ignoreCollisions()
     self.collEvent = mover.getCollisionEventName()
     self.accept(self.collEvent, self._handleCollision)
コード例 #7
0
ファイル: PetWander.py プロジェクト: snoopdogg420/src
 def _clearMover(self, mover):
     PetChase.clearMover(self, mover)
     self.__ignoreCollisions()
コード例 #8
0
ファイル: PetWander.py プロジェクト: snoopdogg420/src
 def _setMover(self, mover):
     PetChase.setMover(self, mover)
     self.mover = mover
     self.__ignoreCollisions()
     self.collEvent = mover.getCollisionEventName()
     self.accept(self.collEvent, self._handleCollision)