Cocos2d Python - AttributeError:'资源'对象没有属性' set_view'

时间:2017-04-29 01:08:48

标签: python cocos2d-python

import cocos
from cocos.tiles import load
from cocos.layer import ScrollingManager
from cocos.director import director
from cocos.scene import Scene

director.init()

MapLayer = load("themap.tmx")

scroller = ScrollingManager()

scroller.add(MapLayer)

director.run(Scene(scroller))

刚开始使用cocos并试图找出Tilemaps。得到荒谬的错误,并会感激一些帮助。

1 个答案:

答案 0 :(得分:1)

当您在cocos2d-python中加载tmx文件时,您将获得一个Resource对象,其中包含有关地图的更多数据,而不仅仅是图层。同样重要的是,地图可以有多个层。

ScrollingManager需要图层对象,而不是资源对象。要获取要从Resource对象中添加的图层,您可以像字典一样访问它,如下所示:

MapLayer = load("themap.tmx")["The name of the layer"]

以下是我自己的测试地图的修改示例:

import cocos
from cocos.tiles import load
from cocos.layer import ScrollingManager
from cocos.director import director
from cocos.scene import Scene

director.init()

loaded_tmx = load("test.tmx")

MapLayer = loaded_tmx["Tile Layer 1"]

scroller = ScrollingManager()

scroller.add(MapLayer)

director.run(Scene(scroller))

作为预警,cocos2d-python中当前版本的TMX文件处理无法正确处理最新版本的TMX文件格式。我必须做一些修改才能让它发挥作用。