我是个新学生,遇到了一个我不太明白的问题。我已经请我的老师解释了,但他坚持让我先征求别人的意见。
我已经回顾过类似的问题,但是我要么很密集,要么不知道如何将解决方案转换成我自己的代码。我希望在解决我的问题和学习如何在未来防止它的帮助。我收到的错误如下:
TypeError:__init__()最多接受3个参数(8个给定)
class Fighter(ShowBase, object):
fighterCount = 0
def __init__(self, modelPath, parentNode, nodeName, posVec, traverser, scaleVec = 1.0):
super(Fighter, self).__init__(modelPath, parentNode, nodeName, 0, 0, 0, 3.0)
self.modelNode.setScale(scaleVec)
self.modelNode.setPos(posVec)
self.trav = traverser
self.origin = render.attachNewNode("origin")
self.origin.setPos(0, 0, 0)
self.origin.hide()
self.setKeyBindings()
self.hud = Hud("./Tools/Hud.x", self.modelNode, "Hud", (0, 10, 0))
发布于 2018-07-15 06:34:16
在类Fighter
中,调用super().__init__
来初始化实例,该实例将调用基类ShowBase.__init__
。根据您的错误消息,我猜ShowBase.__init__
只有三个参数,但您给了它八个参数。
https://stackoverflow.com/questions/51345462
复制相似问题