示例#1
0
 def PollAndUpdate(self):
     self.error_text = None
     try:
         response = requests.get("http://localhost:6119/game")
         game_info = json.loads(response.text)
         self.game_time = game_info['displayTime']
         for player in game_info['players']:
             name = player['name']
             if self.villain is not None and name == self.villain.name:
                 break
             elif name != self.cfg.hero:
                 self.villain = Villain(name, self.cfg.data_dir)
                 self.build = Build(player['race'], self.cfg.data_dir)
                 self.view.SetNotesText(self.villain.GetNotes())
                 break
         else:
             self.error_text = 'No villain found.'
     except Exception as e:
         self.error_text = "Can't connect to API."
         print(e)
     self.UpdateView(self.view_format)
示例#2
0
class Board:
    '''board class'''
    bricks = []
    bricks2 = []
    level1 = []
    enemies = []
    bullets = []
    ebul = []

    coins = []

    flyer = Flyer(355, 35, 1, 0)

    player = Mario(620, 28, 5, 0, 0, 1)
    for j in range(40):
        row = []
        for k in range(1000):
            row.append(" ")
        level1.append(row)

    enemy = Enemy(140, 20, 1, 0)
    enemies.append(enemy)

    enemy = Enemy(170, 32, 1, 0)
    enemies.append(enemy)

    enemy = Enemy(150, 32, -1, 0)
    enemies.append(enemy)

    enemy = Enemy(215, 20, 1, 0)
    enemies.append(enemy)

    enemy = Enemy(265, 32, 1, 0)
    enemies.append(enemy)

    enemy = Enemy(580, 32, 1, 0)
    enemies.append(enemy)

    enemy = Enemy(590, 32, 1, 0)
    enemies.append(enemy)

    vil = Villain(730, 22, 0, 10)

    brick(bricks)
    for i in range(70, 130, 5):
        brick = MakeBrick(i, 30, -2)
        bricks2.append(brick)
        coin = Coin(i + 1, 28)
        coins.append(coin)

    for i in range(50, 80, 5):
        brick = MakeBrick(i, 20, -2)
        bricks2.append(brick)
        coin = Coin(i + 1, 18)
        coins.append(coin)
    for i in range(10, 60, 5):
        brick = MakeBrick(i, 30, -2)
        bricks2.append(brick)
        coin = Coin(i + 1, 28)
        coins.append(coin)
    for i in range(100, 140, 5):
        brick = MakeBrick(i, 20, -2)
        bricks2.append(brick)
        coin = Coin(i + 1, 18)
        coins.append(coin)
    time = 0
    alivev = 1

    # print_background(level1)
    # draw_brick(level1,bricks)

    def print_board(self, k):
        '''print board function'''
        if self.player.level == 1:
            print_background(self)
            print_player(self)
            draw_brick(self, self.bricks)
            print_enemy(self)
            print_bullet(self, self.bullets)
            print_bullet(self, self.ebul)

            if self.alivev == 1:
                print_villain(self, self.vil.posx, self.vil.posy)

            if self.alivev == 0:
                win(self)
                # time.sleep(3)

            temp = ""

            string = '\033[93m' + "Life=" + str(
                self.player.life) + " Score=" + str(
                    self.player.score) + " Coins=" + str(
                        self.player.coins) + "\n" + '\033[0m'
            if k >= 550 and self.alivev == 1:
                string += '\033[93m' + "Boss Life=" + \
                    str(self.vil.life) + "\n" + '\033[0m'

            temp += string

            for i in range(40):

                for j in range(k, k + 150, 1):
                    temp += self.level1[i][j]

            print(temp)
        else:
            print_background(self)
            print_player(self)
            draw_brick(self, self.bricks2)
            draw_coin(self, self.coins)

            if time.time() - self.time >= 0.3:
                write(self)
                self.time = time.time()

            temp = ""

            string = '\033[93m' + "Life=" + str(
                self.player.life) + " Score=" + str(
                    self.player.score) + " Coins=" + str(
                        self.player.coins) + "\n" + '\033[0m'

            temp += string

            for i in range(40):

                for j in range(k, k + 150, 1):
                    temp += self.level1[i][j]

            print(temp)

    def dum(self):
        '''dummy method'''
        return self
示例#3
0
def start_game(screen):
    height, width = os.popen( 'stty size', 'r' ).read().split()

    #this obtains board size and width as dependent on the terminal size
    config.height = int( height ) - 8
    config.width = int( width ) * 5
    config.frame_width = int( width )

    Coin = coins.Coins()
    Obs = obstacles.Obstacles()
    Bullets = bullets.Bullet()
    Mag=Magnet()
    ice=bullets.Bullet()

    screen.create_board( height, width, Coin, Obs, Mag )

    player = hero.Hero( 4, 40 )  # creating hero with co ordinates

    config.time_left = 500
    config.start_time = time()

    screen.refresh_screen( player,Bullets )

    dragon_flag=0
    Dragon=Villain(config.width-49,player.get_y())


    itr=1
    quitter=False

    while ((not game_state.is_game_over()) and (config.time_left > 0) and (not quitter)):
        player.gravity()
        player.magnet_effect(Mag.get_y(),Mag.get_start(),Mag.get_end()) #to put the effect of the magnet on the hero

        quitter=player.movehero( screen.get_screen(), Bullets)

        game_state.coin_check( screen.get_screen() )

        game_state.place_bullets( screen.get_screen(), Bullets, Obs ,dragon_flag)

        config.time_left = 500-(time()-config.start_time)
        screen.refresh_screen( player ,Bullets)

        if config.start_col < 4 * int( width ):  # for moving the board frame
            config.start_col += 1 + config.boost_speed
        else:
            #this takes place when in the last frame
            dragon_flag=1
            Dragon.update(player.get_y(),ice,screen.get_screen())
            game_state.place_ice(screen.get_screen(),ice,player)

        if config.boost_end_time <= time(): #to handle power ups
            if config.state == 'u':
                if config.boost_speed!=0:
                    config.boost_speed = 0
                elif config.shield!=0:
                    config.shield=0
                config.state = 'c'
                config.boost_end_time=time()+10

            elif config.state=='c':
                config.boost_end_time=time()+10
                config.state='r'

        itr+=1
        if player.get_y()<config.height-3:
            config.hangtime+=1

    if config.result == 1:
        print( "\nYOU WON !!!!!!!!! :)" )
    else:
        print( "YOU LOST :( :( :(" )

    print( "SCORE:- %d" % (config.score) )
示例#4
0
 def quest_enemy(self):
     """Returns an enemy for revenge/killing based quests"""
     villain = Villain()
     self.enemy = villain.main()
示例#5
0
print("\nCreando Arco")
heroBow = Bow("Armatus", 4, 7, 70)
print("Equipando arco ...")
hero.equip(heroBow)

print("\nCreando Escudo")
heroShield = Shield("Aegis", 10, 10)
print("Equipando escudo ...")
hero.equip(heroShield)

print("--------------------")

#ENEMIGO
print("Creando Enemigo")
villain = Villain("Rixton", 45, 100)
villain.details()
#villain.equipment()

print("--------------------")

print("\nCreando Espada")
villainSword = Sword("Dark Sword", 5, 11, 100)

print("Equipando espada ...")
villain.equip(villainSword)

print("\nCreando Arco")
villainBow = Bow("Dark Bow", 2, 9, 70)
print("Equipando arco ...")
villain.equip(villainBow)