Advertisement
Guest User

Untitled

a guest
Jul 21st, 2017
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.50 KB | None | 0 0
  1. def setParticles(self):
  2. base.enableParticles()
  3.  
  4. p = ParticleEffect()
  5. p.loadConfig('Explosion.ptf')
  6. p.start(parent = render, renderParent = render)
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17. def Explode(self, hitID, collPt):
  18. duration = 2.0
  19. hitID = ('that was a collision')
  20. collPt = self.parentcnode
  21.  
  22.  
  23. startVec = Vec3(0, 0, 0) + Vec3(collPt)
  24. print "******Collision should be at " + str(startVec)
  25. self.cntExplode = self.cntExplode + 1
  26. for i in range(20):
  27. unitVec = Vec3(1, 1, 1)
  28. unitVec.normalize()
  29. raD = 30
  30. destVec = startVec + Vec3(raD*unitVec[0], raD*unitVec[1], raD*unitVec[2])
  31.  
  32. self.cntExplode = self.cntExplode + 1
  33. current = '-' + str(self.cntExplode)
  34. explodeID = hitID + current
  35. base.enableParticles()
  36.  
  37. p = ParticleEffect()
  38. p.loadConfig('Explosion.ptf')
  39. p.start(parent = render, renderParent = render)
  40. self.explodeModels[explodeID] = p.loadConfig('./Explosion.ptf')
  41. self.explodeModels[explodeID].setScale(10)
  42. self.explodeModels[explodeID].setPos(startVec)
  43. self.explodeModels[explodeID].reparentTo(render)
  44.  
  45. self.ship.lookAt(p)
  46. self.explodeModels[explodeID].setColorScale(1,1,1,0)
  47. self.explodeIntervals[explodeID] = lerpPosInterval(self.explodeModels[explodeID], \
  48. duration, destVec, startVec, fluid=1)
  49. self.explodeIntervals[explodeID].start(parent = render, renderParent = render)
  50.  
  51.  
  52. def ExplodeEvent(self, t):
  53. print "Explode timers : " + str(t)
  54.  
  55. def Explosion(self, hitID, collPt):
  56. duration = 2.0
  57.  
  58. startVec = Vec3(0, 0, 0) + Vec3(collPt)
  59. print "******Collision should be at " + str(collPt) + "\n\n"
  60. self.cntExplode = self.cntExplode + 1
  61. explodeID = 'explode-' + str(self.cntExplode)
  62. self.explodeIntervals[explodeID] = LerpFunctionInterval(self.ExplodeEvent,
  63. fromData=0,
  64. toData=1,
  65. duration=1.0)
  66.  
  67.  
  68. self.explodeIntervals[explodeID].start()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement