当前位置: 首页>>代码示例>>Python>>正文


Python Hero.update_position方法代码示例

本文整理汇总了Python中hero.Hero.update_position方法的典型用法代码示例。如果您正苦于以下问题:Python Hero.update_position方法的具体用法?Python Hero.update_position怎么用?Python Hero.update_position使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在hero.Hero的用法示例。


在下文中一共展示了Hero.update_position方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: Level

# 需要导入模块: from hero import Hero [as 别名]
# 或者: from hero.Hero import update_position [as 别名]
class Level(cocos.layer.Layer):
    def __init__(self):
        super(Level, self).__init__()

        self.is_event_handler = True
        self.keys = set()
        self.keyTracker = KeyTracker()
        self.keyTracker.register_double_key_handler(
            (key.LEFT, key.RIGHT),
            self.on_double_key_pressed
        )
        self.schedule(self.step)

        gravity = getattr(settings, 'GRAVITY', (0, 0))
        self.vel_iters = 6
        self.pos_iters = 6
        self.world = b2d.b2World(
            gravity=gravity,
            doSleep=True
        )

        self.hero = Hero(self.world, (5, 5), self)
        self.ground = Ground(self.world, self)
        self.add(self.hero)

    def on_double_key_pressed(self, symbol):
        self.hero.run()

    def get_direction_method(self):
        return (
            (key.RIGHT in self.keys) - (key.LEFT in self.keys),
            (key.UP in self.keys) - (key.DOWN in self.keys),
        )

    def on_key_press(self, symbol, modifiers):
        self.keyTracker.track(symbol)
        self.keys.add(symbol)
        vector = self.get_direction_method()
        self.hero.move(vector)

    def on_key_release(self, symbol, modifiers):
        self.keys.discard(symbol)
        vector = self.get_direction_method()
        self.hero.move(vector)

    def step(self, tick):
        self.hero.update_position(tick)
        self.world.Step(tick, self.vel_iters, self.pos_iters)
        self.world.ClearForces()
开发者ID:baitcode,项目名称:dnishevod,代码行数:51,代码来源:__init__.py


注:本文中的hero.Hero.update_position方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。