kivy太多缩进

2024-04-30 22:41:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我想把一个小屏幕扔给他,让他离开。 我把“敌人”作为散布小部件的子类,并将其添加到我的level类中。 但它告诉我我有很多凹痕。 代码如下:

class Enemy(Scatter):
    intv = NumericProperty(0/10.)
    gravity = NumericProperty(0.01)
    velocity = NumericProperty()
    imgp = StringProperty('enemy.png')
    def __init__(self, **kwargs):
        super(Enemy, self).__init__(**kwargs)
        self.My_Clock = Clock#   declaring the clock for later usage
        self.My_Clock.schedule_interval(self.Update, self.intv)
    def Update(self, *args):
        self.x -= 1
        if self.y > 0:
            self.velocity += self.gravity
            self.y -= self.velocity
        else:
            if self.velocity > 0.5:
                print 'death'

class level(Widget):
    zicie = NumericProperty(10)# the variable containg the life of the player
    zloto = NumericProperty(0)
    e_killed = NumericProperty(0)
    intv1 = NumericProperty(2/1.)
    pu = BooleanProperty(True)
    def __init__(self, **kwargs):
        super(level, self).__init__(**kwargs)
        self.l_Clock = Clock
    def Update(self, *args):# this funktion generates enemys
        pass
        #obj = Root.ids.level
        #obj.add_widget(Enemy(pos=(500,0))) # the widget enemy is added here

Root = Builder.load_string('''
FloatLayout:
    level:
        Enemy:
            pos: 500,0


<Enemy>:
    Image:
        pos: root.pos
        source: 'enemy.png'

''')

Tags: theposselfinitdefupdatelevelkwargs
1条回答
网友
1楼 · 发布于 2024-04-30 22:41:11
FloatLayout:
    level:
        Enemy:

小部件名称必须以大写字母开头,如果您想在kv语言中使用它们,因为kv使用这个来区分属性和小部件。在这种情况下,它可能认为level是一个属性,在这种情况下缩进实际上是无效的(尽管其他人已经评论过,您应该复制并粘贴错误,以便于确认类似的事情)。在

相关问题 更多 >