I am a newbie scripter to Panda3D but I did all the tutorials and such. I’ve been working on a protogame and now I’m get this error:unsupported operand type(s) for -: ‘NotImplementedType’ and ‘init’ everything I run it. I comes up when relating to
sRotP = self.pship.hprInterval(.2,Vec3(0,self.pship.getP()-(1*dir),0))
this line
Here is the whole script:
SpaceGame
Exploring Space
import direct.directbase.DirectStart
import sys
from pandac.PandaModules import *
from direct.showbase.DirectObject import DirectObject
from direct.actor.Actor import Actor
from direct.interval.IntervalGlobal import *
from direct.interval.FunctionInterval import HprInterval
class main(DirectObject):
def init(self):
self.spcontrols()
self.menucontrols()
self.pship = self.fighter()
self.camera()
run()
def camera(self):
base.disableMouse()
camera.reparentTo(render)
camera.setPos(Vec3(0,10,10))
print "Camera working"
def menucontrols(self):
self.accept('escape',sys.exit)
def spcontrols(self):
# Controls for Outer Space
# Pitch down
self.accept('w-repeat',self.rotp,[-1])
# Pitch up
self.accept('s-repeat',self.rotp,[1])
# Roll left
self.accept('a-repeat',self.rotr,[-1])
# Roll right
self.accept('d-repeat',self.rotr,[1])
def rotp(self,dir):
sRotP = self.pship.hprInterval(.2,Vec3(0,self.pship.getP()-(1*dir),0))
sRotP.start()
print "Control working"
def rotr(self,dir):
sRotR = self.pship.hprInterval(.2,Vec3(0,0,self.pship.getP()-(1*dir)))
sRotR.start()
print "Control working"
class fighter(NodePath):
def __init__(self):
self.ship = loader.loadModel("panda")
self.ship.reparentTo(render)
self.ship.setScale(1)
self.ship.setPos(Vec3(0,0,0))
Main = main()
Please help, I have no idea what it means.