本文整理汇总了Python中cluster.Cluster.removeGameObject方法的典型用法代码示例。如果您正苦于以下问题:Python Cluster.removeGameObject方法的具体用法?Python Cluster.removeGameObject怎么用?Python Cluster.removeGameObject使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类cluster.Cluster
的用法示例。
在下文中一共展示了Cluster.removeGameObject方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: Level
# 需要导入模块: from cluster import Cluster [as 别名]
# 或者: from cluster.Cluster import removeGameObject [as 别名]
class Level(object):
"""Object voor een level.
Hierin staat opgeslagen waar alle bricks zitten.
"""
def __init__(self):
# Player object.
self.player = None
# Boolean voor of je het level hebt gehaald.
self.finished = False
# Bepaal de rect van het gehele level.
self.rect = pygame.Rect(0, 0, settings.TILE_WIDTH*settings.LEVEL_WIDTH, settings.TILE_HEIGHT*settings.LEVEL_HEIGHT)
# Bepaal de lijst met alle game objects van dit level.
#
# Dit doen we door eerst een levelmap te genereren met een level-
# generator. Vervolgens lopen we de level map door en maken we alle game
# objects aan.
#
levelMap = levelgenerator.generateLevelMap()
gameObjectList = self.getGameObjectListFromLevelMap(levelMap)
# Maak cluster aan waar alle game objects in worden opgeslagen.
staticObjectList = [k for k in gameObjectList if isinstance(k, Actor) == False]
self.cluster = Cluster(self, staticObjectList, self.rect)
# Maak lijst aan met alle actors.
self.actorList = [k for k in gameObjectList if isinstance(k, Actor) == True]
def getGameObjectListFromLevelMap(self, levelMap):
"""Return lijst met alle game objects beschreven in 'levelMap'.
"""
# De lijst met game objects die we gaan returnen.
gameObjectList = []
# Loop door alle tiles heen.
for y in xrange(len(levelMap)):
for x in xrange(len(levelMap[0])):
# Bepaal de x/y positie.
posX = x * settings.TILE_WIDTH
posY = y * settings.TILE_HEIGHT
# Haal tile op.
tile = levelMap[y][x]
# Loop door alle game object id's in de tile heen.
for gameObjectId in tile:
# Bepaal de class van het game object.
gameObjectClass = ID_TO_OBJECT_CLASS[gameObjectId]
# Maak aan en zet in de lijst.
gameObjectRect = pygame.Rect(posX, posY, settings.TILE_WIDTH, settings.TILE_HEIGHT)
gameObject = gameObjectClass(self, gameObjectRect)
gameObjectList.append(gameObject)
# Return de game objects.
return gameObjectList
def getGameObjectList(self, clusterCollisionRect):
"""Return alle game objects.
Er worden alleen statische game objects gereturned die colliden met
'clusterCollisionRect'. Daarnaast worden alle actors gereturned.
"""
gameObjectList = self.cluster.getGameObjectList(clusterCollisionRect)
gameObjectList += self.getActorList()
return gameObjectList
def removeGameObject(self, gameObject):
"""Verwijder een game object uit het level.
"""
if isinstance(gameObject, Actor):
self.actorList.remove(gameObject)
else:
self.cluster.removeGameObject(gameObject)
def getActorList(self):
"""Return lijst met alle actors.
"""
return self.actorList[:]
def setFinished(self, finished):
"""Set of het level is gehaald.
"""
self.finished = finished
def isFinished(self):
"""Return of je het level hebt gehaald.
"""
return self.finished
def getPlayer(self):
"""Return het player object.
"""
#.........这里部分代码省略.........