本文整理汇总了Python中terrain.Terrain.create方法的典型用法代码示例。如果您正苦于以下问题:Python Terrain.create方法的具体用法?Python Terrain.create怎么用?Python Terrain.create使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类terrain.Terrain
的用法示例。
在下文中一共展示了Terrain.create方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: Game
# 需要导入模块: from terrain import Terrain [as 别名]
# 或者: from terrain.Terrain import create [as 别名]
class Game(Scene):
"""
This is the game class, this is the most important scene, and keeps track of the whole game
"""
def __init__(self):
""" Initializes the game scene """
self.mainmenu = None
self.winscreen = None
self.initEvents()
self.initTerrain()
self.initTeams()
self.createGameObjects()
self.startNewGame()
def initEvents(self):
""" Initializes the eventreader """
SceneManager().registerEventReader(self.do_action)
def do_action(self, event):
"""
Check the events, and do something when needed
@param event: The event
"""
# check events
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_SPACE:
for snail in TurnManager().currentTeam.orderedSnailList:
if snail.hasTurn:
snail.shoot()
if event.key == pygame.K_ESCAPE:
SceneManager().setScene(self.mainmenu)
def clean(self):
""" Clean everything up, so that application doesn't crash """
self.turnManager.stopTimer()
SceneManager().unregisterEventReader(self.do_action)
def initTeams(self):
""" Initializes the team """
self.teams = []
self.teamsAlive = 0
def initTerrain(self):
""" Initializes the terrain """
self.terrain = Terrain()
def createGameObjects(self):
""" Create the terrain """
self.terrain.create(15)
def addTeam(self, name, numberOfSnails, gravity_direction):
"""
Add a team to the game
@param name: The name of the team
@param numberOfSnails: The amount of snails the team has
@param gravity_direction: The gravity direction of the team
"""
team = Team(name)
team.setGravity(gravity_direction)
team.addSnails(numberOfSnails)
team.setTeamImage((gravity_direction+1))
self.teams.append(team)
def startNewGame(self):
""" Start a new game """
for i in range(0, Settings.GAME_PLAYERS):
self.addTeam('team '+str(i+1), Settings.GAME_SNAILS, i)
self.turnManager = TurnManager()
self.turnManager.setTeams(self.teams)
self.gamemode = GameModes.GAME_PLACING_SNAILS
def stopGame(self):
""" Stop the game """
self.turnManager.timer.cancel()
teamColors = {1:'green', 2:'red', 3:'yellow', 4:'blue'}
livingTeamColor = str(teamColors[self.teams[0].colorIndex])
SceneManager().setScene(WinScreen(self.mainmenu, livingTeamColor))
#SceneManager().scene = self.mainmenu
def update(self, input):
"""
Update the game
@param input: The input class
"""
self.terrain.update()
self.updateTeams(input)
self.updateGameMode()
def updateTeams(self, input):
"""
Update every team
@param input: The input class
"""
self.teamsAlive = 0
for team in self.teams:
team.update(input, self.terrain)
#.........这里部分代码省略.........