def test_polygon(): from gameclass import Game from spritebuilder import SpriteBuilder game = Game("Cartes/gardenofdelight.json", SpriteBuilder) game.draw() draw_transparent_arrow(game.screen, 400, 100, 1 + pi) draw_arrow(game.screen, 300, 100, 1) pygame.display.flip() while True: for event in pygame.event.get(): # User did something if event.type == pygame.QUIT: # If user clicked close pygame.quit() quit()
def init(_boardname=None): global player, game # pathfindingWorld_MultiPlayer4 name = _boardname if _boardname is not None else 'pathfindingWorld_MultiPlayer2' game = Game('Cartes/' + name + '.json', SpriteBuilder) game.O = Ontology(True, 'SpriteSheet-32x32/tiny_spritesheet_ontology.csv') game.populate_sprite_names(game.O) game.fps = 10 # frames per second game.mainiteration() game.mask.allow_overlaping_players = True
def init(_boardname=None): global player, game, tailleV, tailleH name = _boardname if _boardname is not None else 'pathfindingWorld3' game = Game('Cartes/' + name + '.json', SpriteBuilder) game.O = Ontology(True, 'SpriteSheet-32x32/tiny_spritesheet_ontology.csv') game.populate_sprite_names(game.O) game.fps = 5 # frames per second game.mainiteration() player = game.player tailleV = game.spriteBuilder.rowsize tailleH = game.spriteBuilder.colsize
def init(_boardname=None): global player,game name = _boardname if _boardname is not None else 'pathfindingWorld_multiPlayer' game = Game('Cartes/' + name + '.json', SpriteBuilder) game.O = Ontology(True, 'SpriteSheet-32x32/tiny_spritesheet_ontology.csv') game.populate_sprite_names(game.O) game.fps = 5 # frames per second game.mainiteration()
def __init__(self, boardNumber=1, boardName=None, fps=5, iterations=100): """ boardNumber : identifiant de la carte de jeu à utiliser. fps : nombre de cadres par seconde. iterations : nombre maximal d'itérations. """ global game if boardName is None: game = Game( 'Cartes/pathfindingWorld_MultiPlayer' + str(boardNumber) + '.json', SpriteBuilder) else: game = Game('Cartes/' + str(boardName) + '.json', SpriteBuilder) game.O = Ontology(True, 'SpriteSheet-32x32/tiny_spritesheet_ontology.csv') game.populate_sprite_names(game.O) game.fps = fps # frames per second game.mainiteration() game.mask.allow_overlaping_players = False self.iterations = iterations
def init(_boardname=None): global player,game # pathfindingWorld_MultiPlayer4 name = _boardname if _boardname is not None else 'tictactoeBis' game = Game('Cartes/' + name + '.json', SpriteBuilder) game.O = Ontology(True, 'SpriteSheet-32x32/tiny_spritesheet_ontology.csv') game.populate_sprite_names(game.O) game.fps = 5 # frames per second game.mainiteration() game.mask.allow_overlaping_players = True
def init(_boardname=None): global player,game name = _boardname if _boardname is not None else 'gardenofdelight' game = Game('Cartes/' + name + '.json', GardenSpriteBuilder) game.O = Ontology(True, 'SpriteSheet-32x32/tiny_spritesheet_ontology.csv') game.populate_sprite_names(game.O) game.fps = 60 # frames per second game.mainiteration() player = game.player if _boardname in ['planter_enclos','panier_plein']: rempli_panier_de_citrouilles(100)
def __init__(self, _boardname=None, swap=False, affiche=True): self.game = Game() name = _boardname if _boardname is not None else 'at2' self.game = Game('Cartes/' + name + '.json', SpriteBuilder) self.game.O = Ontology( True, 'SpriteSheet-32x32/tiny_spritesheet_ontology.csv') self.game.populate_sprite_names(self.game.O) self.game.fps = 2 # frames per second self.affiche = affiche if affiche: self.game.mainiteration() self.game.mask.allow_overlaping_players = True # player = game.player # on localise tous les états initiaux (loc du joueur) self.initStates = [o.get_rowcol() for o in self.game.layers['joueur']] print("Init states:", self.initStates) # on localise tous les objets ramassables self.goalStates = [ o.get_rowcol() for o in self.game.layers['ramassable'] ] print("Goal states:", self.goalStates) # on localise tous les murs self.wallStates = [ w.get_rowcol() for w in self.game.layers['obstacle'] ] # print ("Wall states:", self.wallStates) self.nbIteration = 0 if swap: self.goalStates[0], self.goalStates[1] = self.goalStates[ 1], self.goalStates[0] self.players = [o for o in self.game.layers['joueur']]
def init(_boardname=None,_spriteBuilder=TurtleSpriteBuilder,screen_width=None,screen_height=None): """ Reinitialise la carte et l'ensemble des parametres """ global player,game pygame.quit() name = _boardname if _boardname else 'robot_obstacles' game = Game('Cartes/' + name + '.json', _SpriteBuilder=_spriteBuilder,screen_width=screen_width,screen_height=screen_height) game.fps = 200 # frames per second game.mainiteration() player = game.player # new attributes game.pencolor = glo.RED game.usepen = False game.frame_skip = 0
def init(_boardname=None): global player, game name = _boardname if _boardname is not None else 'pathfindingWorld_MultiPlayer1' #name = _boardname if _boardname is not None else 'pathfindingWorld_MultiPlayer2' #name = _boardname if _boardname is not None else 'pathfindingWorld_MultiPlayer3' #name = _boardname if _boardname is not None else '10x10' #name = _boardname if _boardname is not None else 'Lab_15x15' #name = _boardname if _boardname is not None else 'map' #NON #name = _boardname if _boardname is not None else 'map2' #NON #name = _boardname if _boardname is not None else 'pathfindingWorld_MultiPlayer_6x6' #YES #name = _boardname if _boardname is not None else 'pathfindingWorld_MultiPlayer_bomberman' #YES #name = _boardname if _boardname is not None else 'pathfindingWorld_MultiPlayer_impossible' #name = _boardname if _boardname is not None else 'pathfindingWorld_MultiPlayer_incroyable' #name = _boardname if _boardname is not None else 'pathfindingWorld_MultiPlayer_labyrinthe2' #name = _boardname if _boardname is not None else 'pathfindingWorld_MultiPlayer_labyrinthe3' name = _boardname if _boardname is not None else 'thirst' game = Game('Cartes/' + name + '.json', SpriteBuilder) game.O = Ontology(True, 'SpriteSheet-32x32/tiny_spritesheet_ontology.csv') game.populate_sprite_names(game.O) game.fps = 20 # frames per second game.mainiteration() game.mask.allow_overlaping_players = True
from ontology import Ontology from itertools import chain import pygame import glo from tree_Class import * import random import numpy as np import sys # ---- ---- ---- ---- ---- ---- # ---- Main ---- # ---- ---- ---- ---- ---- ---- game = Game() def init(_boardname=None): global player,game # pathfindingWorld_MultiPlayer4 name = _boardname if _boardname is not None else "pathfindingWorld_multiPlayer" game = Game('Cartes/' + name + '.json', SpriteBuilder) game.O = Ontology(True, 'SpriteSheet-32x32/tiny_spritesheet_ontology.csv') game.populate_sprite_names(game.O) game.fps = 15# frames per second game.mainiteration() game.mask.allow_overlaping_players = True #player = game.player def conditionZone(next_row, next_col, wallStates):
class initTest(): def __init__(self, _boardname=None, swap=False, affiche=True): self.game = Game() name = _boardname if _boardname is not None else 'at2' self.game = Game('Cartes/' + name + '.json', SpriteBuilder) self.game.O = Ontology( True, 'SpriteSheet-32x32/tiny_spritesheet_ontology.csv') self.game.populate_sprite_names(self.game.O) self.game.fps = 2 # frames per second self.affiche = affiche if affiche: self.game.mainiteration() self.game.mask.allow_overlaping_players = True # player = game.player # on localise tous les états initiaux (loc du joueur) self.initStates = [o.get_rowcol() for o in self.game.layers['joueur']] print("Init states:", self.initStates) # on localise tous les objets ramassables self.goalStates = [ o.get_rowcol() for o in self.game.layers['ramassable'] ] print("Goal states:", self.goalStates) # on localise tous les murs self.wallStates = [ w.get_rowcol() for w in self.game.layers['obstacle'] ] # print ("Wall states:", self.wallStates) self.nbIteration = 0 if swap: self.goalStates[0], self.goalStates[1] = self.goalStates[ 1], self.goalStates[0] self.players = [o for o in self.game.layers['joueur']] def placementAlea(self): # ------------------------------- # Placement aleatoire des fioles de couleur # ------------------------------- for o in self.game.layers[ 'ramassable']: # les rouges puis jaunes puis bleues # et on met la fiole qqpart au hasard x = random.randint(1, 19) y = random.randint(1, 19) while (x, y) in self.wallStates: x = random.randint(1, 19) y = random.randint(1, 19) o.set_rowcol(x, y) self.game.layers['ramassable'].add(o) self.game.mainiteration() def coopBaseStrategyTest(self): self.pathPlayersList = [] for i in range(len(self.players)): self.pathPlayersList.append( PlayerPath(i, list(self.initStates[i]), list(self.goalStates[i]), self.wallStates, self.game)) baseStrat = CoopBaseStrategy(self.pathPlayersList, self.game) self.nbIteration = 0 while not baseStrat.onGoals(): nextMoves = baseStrat.nextIteration() for key, value in nextMoves.items(): self.players[key].set_rowcol(value[0], value[1]) self.nbIteration += 1 if self.affiche: self.game.mainiteration() pygame.quit() print("Cooperative Basic Strategy : done in ", self.nbIteration, " moves") def pathSlicingStrategyTest(self): self.pathPlayersList = [] for i in range(len(self.players)): self.pathPlayersList.append( PlayerPath(i, list(self.initStates[i]), list(self.goalStates[i]), self.wallStates, self.game)) pathsclicing = PathSlicingStrategy(self.pathPlayersList, self.game) self.nbIteration = 0 while not pathsclicing.onGoals(): nextMoves = pathsclicing.nextIteration() for key, value in nextMoves.items(): self.players[key].set_rowcol(value[0], value[1]) if self.affiche: self.game.mainiteration() self.nbIteration += 1 pygame.quit() print("Path Slicing Strategy : done in ", self.nbIteration, " moves") def coopAdvStrategyTest(self): self.pathPlayersList = [] for i in range(len(self.players)): self.pathPlayersList.append( PlayerPath(i, list(self.initStates[i]), list(self.goalStates[i]), self.wallStates, self.game)) s = CoopAdvStrategy(list(self.initStates), list(self.goalStates), self.pathPlayersList, list(self.wallStates), self.game) self.nbIteration = 0 while not s.onGoals(): nextMoves = s.nextIteration() for key, value in nextMoves.items(): self.players[key].set_rowcol(value[0], value[1]) if self.affiche: self.game.mainiteration() self.nbIteration += 1 pygame.quit() print("Cooperative Advanced Strategy : done in ", self.nbIteration, " moves")
def rungame(stdscr): myPlayer = Player(1, 1, random.randint(0, 10000), curses.COLOR_RED) # own Player always FIRST Player, was btw ne blöde Idee ist GAME = Game([myPlayer]) curses.cbreak() stdscr.keypad(True) stdscr.nodelay(True) mainMenu = Menu.menu(["Exit", "Multiplayer"], stdscr) if (mainMenu == Menu.Singleplayer): exit() elif (mainMenu == Menu.Multiplayer): myName = TextInput.TextInput(stdscr, "Player Name", width=12) mpMode = Menu.menu(["Host", "Join"], stdscr) if (mpMode == Menu.Host): Netzwerker.getHookedorListen(GAME, isClient=False, IP="localhost", PORT=30814) elif (mpMode == Menu.Join): myPlayer.x += 1 Netzwerker.getHookedorListen(GAME, isClient=True, IP="localhost", PORT=30814) levelIndex = Menu.menu(printLevels(), stdscr) room = readLevel(printLevels()[levelIndex][:-4]) stdscr.clear() curses.curs_set(0) stdscr.addstr(0, 0, "\n".join(room)) for player in GAME.Players: stdscr.addstr(player.x, player.y, player.rep) stdscr.refresh() stdscr.nodelay(True) while True: kp = stdscr.getch() # DEBUGgging stdscr.addstr(13, 1, str(time.time())) stdscr.addstr(0, 0, "\n".join(room)) for player in range(len(GAME.Players)): # yes this is ugly stdscr.addstr(GAME.Players[player].x, GAME.Players[player].y, "-") if (kp == 113 or kp == 3): exit() elif (kp == ord("d")): myPlayer.move(0, 1, room) myPlayer.rep = ">" elif (kp == ord("a")): myPlayer.move(0, -1, room) myPlayer.rep = "<" elif (kp == ord("w")): myPlayer.move(-1, 0, room) myPlayer.rep = "ʌ" elif (kp == ord("s")): myPlayer.move(1, 0, room) myPlayer.rep = "v" for player in range(len(GAME.Players)): # yes this is ugly stdscr.addstr( 10 + player, 1, str(GAME.Players[player].x) + "," + str(GAME.Players[player].y) + " " + GAME.Players[player].rep) stdscr.addstr(GAME.Players[player].x, GAME.Players[player].y, GAME.Players[player].rep) stdscr.refresh()
from gardenworld import GardenSpriteBuilder from gameclass import Game from spritebuilder import SpriteBuilder import pygame game = Game('Cartes/gardenofdelight.json', GardenSpriteBuilder) game.player.translate_sprite(0, 0, 90) # tourne le joueur pour qu'il nous regarde game.setup_keyboard_callbacks() print """regles du Jeu : deplacer le joueur avec les touches du clavier taper c pour chercher un objet ramassable taper r pour ramasser taper d pour deposer taper t pour lancer le telemetre le but est de transferer 8 laitues dans l'enclos du chateau""" game.mainloop()