class HorseTestCase(unittest.TestCase): def setUp(self): self.horse = Horse(n=300, x=1, y=1) def test_shortest_path(self): print self.horse.shortest_path_bfs() # # def test_create_graph(self): # self.horse.create_graph() # print self.horse.graph def test_possibile_moves(self): horse10 = Horse(n=10, x=1, y=1) possible_moves = horse10.possible_moves(7, 7) self.assertEqual(possible_moves, [{'y': 9, 'x': 8}, {'y': 8, 'x': 9}, {'y': 6, 'x': 9}, {'y': 5, 'x': 8}, {'y': 5, 'x': 6}, {'y': 6, 'x': 5}, {'y': 8, 'x': 5}, {'y': 9, 'x': 6}]) possible_moves = horse10.possible_moves(10, 10) self.assertEqual(possible_moves, [{'y': 8, 'x': 9}, {'y': 9, 'x': 8}]) # test the 1 off case that it also is able to move to a position on the 10th row possible_moves = horse10.possible_moves(9, 10) self.assertEqual(possible_moves, [{'y': 8, 'x': 10}, {'y': 8, 'x': 8}, {'y': 9, 'x': 7}]) possible_moves = horse10.possible_moves(1, 1) self.assertEqual(possible_moves, [{'y': 3, 'x': 2}, {'y': 2, 'x': 3}])
def test_possibile_moves(self): horse10 = Horse(n=10, x=1, y=1) possible_moves = horse10.possible_moves(7, 7) self.assertEqual(possible_moves, [{'y': 9, 'x': 8}, {'y': 8, 'x': 9}, {'y': 6, 'x': 9}, {'y': 5, 'x': 8}, {'y': 5, 'x': 6}, {'y': 6, 'x': 5}, {'y': 8, 'x': 5}, {'y': 9, 'x': 6}]) possible_moves = horse10.possible_moves(10, 10) self.assertEqual(possible_moves, [{'y': 8, 'x': 9}, {'y': 9, 'x': 8}]) # test the 1 off case that it also is able to move to a position on the 10th row possible_moves = horse10.possible_moves(9, 10) self.assertEqual(possible_moves, [{'y': 8, 'x': 10}, {'y': 8, 'x': 8}, {'y': 9, 'x': 7}]) possible_moves = horse10.possible_moves(1, 1) self.assertEqual(possible_moves, [{'y': 3, 'x': 2}, {'y': 2, 'x': 3}])
colours = [ "red", "blue", "yellow", "pink", "orange", ] def race_horses(horses): return random.choice(horses) while money > 0: print(f"Welcome to the race! You have £{money:.2f}. Your horses are: ") horses = [Horse.random(colour) for colour in colours] for number, horse in enumerate(horses): print(f"{number} - {horse} - {horse.info()}") which_horse = int(input("What horse do you want to gamble on?")) which_howmuch = float(input("How much do you want to throw away?")) money = round(money - which_howmuch, 2) winner = race_horses(horses) os.system('clear') print( f"You bet on {horses[which_horse].name}, the winner is {winner.name}")
__author__ = 'Andrew' from horse import Horse horse1 = Horse() horse2 = Horse() horse3 = Horse() horse1.reset() horse2.reset() horse3.reset() horse1.advance() horse1.advance() horse2.advance() horse1.slow_down() result1 = horse1.getValue() print("Steps for horse1:", result1) result2 = horse2.getValue() print("Steps for horse1:", result2) result3 = horse3.getValue() print("Steps for horse1:", result3)
from animal import Animal from horse import Horse from pig import Pig if __name__ == "__main__": cow = Animal() cow.speak() horse = Horse("Bill") horse.speak() horse2 = Horse("Joe") horse.get_name() horse2.get_name() pig = Pig("Rob") pig.speak() pig.get_name()
def setUp(self): self.horse = Horse(n=300, x=1, y=1)
def spawnHorse(self, box): horse = Horse(box, self.global_horse_number) self.global_horse_number += 1 logger.info(f'spawn horse {horse.number}') self.horses = np.append(self.horses, horse) return horse
#!/usr/bin/env python # -*- coding:utf-8 -*- import pygame from horse import Horse pygame.init() screen = pygame.display.set_mode([800, 600]) img_bg = pygame.image.load("d:/test1/bk.jpg") h1 = [ Horse("小兔", 5, "d:/test1/u33.jpg", 100), Horse("laotu", 5, "d:/test1/u33.jpg", 200), Horse("lao", 5, "d:/test1/u33.jpg", 300) ] while True: screen.blit(img_bg, (0, 0)) for h in h1: screen.blit(h.get_image(), h.get_location()) h.run() pygame.display.update() pygame.time.delay(500) for event in pygame.event.get(): if event.type == pygame.QUIT: pygame.quit()
import sys from horse import Horse for i in range(0, int(sys.argv[1])): h = Horse() print(h.name)
class Game: def __init__(self): self.width = 1400 self.height = 800 self.game_display = None self.background = (255, 230, 220) self.ground = 7 * self.height / 8 self.clock = pygame.time.Clock() self.FPS = 60 self.font_size = 20 self.font = None self.points = 0 self.g = 0.96 self.player = Horse(self) self.obstacles = list() self.time_obs = 0 self.time = 0 def draw_obj(self, obj): self.game_display.blit(obj.img, (obj.x, obj.y)) rect = obj.img.get_rect() rect.topleft = (obj.x, obj.y) pygame.draw.rect(self.game_display, (0, 0, 0), rect, 2) def draw_menu(self): num_obs = len([ob for ob in self.obstacles]) obs = self.font.render('Obstacles: {}'.format(num_obs), True, (0, 0, 0)) rect = obs.get_rect() rect.topleft = (0, 0) self.game_display.blit(obs, rect) obs = self.font.render('Points: {}'.format(self.time / 10), True, (0, 0, 0)) rect = obs.get_rect() rect.topleft = (0, self.font_size) self.game_display.blit(obs, rect) def start_game(self): pygame.init() self.game_display = pygame.display.set_mode((self.width, self.height)) self.font = pygame.font.Font('TypewriterScribbled.ttf', self.font_size) quit_game = False while not quit_game: self.time += 1 self.game_display.fill(self.background) pygame.draw.line(self.game_display, (0, 0, 0), (0, self.ground), (self.width, self.ground), 10) self.draw_menu() self.draw_obj(self.player) self.player.move() self.time_obs += 1 if self.time_obs > 0 else 0 self.time_obs = 0 if self.time_obs == 40 else self.time_obs if random.random() < 0.008 and self.time_obs == 0: self.obstacles.append(Obstacle(self)) self.time_obs += 1 self.obstacles = [ ob for ob in self.obstacles if ob.x > -110 and not ob.remove ] keys = pygame.key.get_pressed() if keys[pygame.K_DOWN]: self.player.crouch() for event in pygame.event.get(): if event.type == pygame.KEYDOWN: if event.key == pygame.K_SPACE or event.key == pygame.K_UP: self.player.jump() if event.type == pygame.KEYUP: if event.key == pygame.K_DOWN: self.player.erect() if event.type == pygame.QUIT: quit_game = True pygame.quit() quit() pygame.display.flip() for ob in self.obstacles: self.draw_obj(ob) ob.move() if i.closed(ob.x, ob.x + ob.width).overlaps(i.closed(self.player.x, self.player.x + self.player.width)) \ and i.closed(ob.y, ob.y + ob.height).overlaps( i.closed(self.player.y, self.player.y + self.player.height)): quit_game = True pygame.quit() quit() pygame.display.flip() self.clock.tick(self.FPS)
from animal import Animal from dog import Dog from horse import Horse a = Animal() d = Dog() h = Horse() a.speak() a.sleep() d.speak() d.sleep() h.speak() h.sleep()
from horse import Horse from race import Race name_horse1 = input("Nombre del primer caballo: ") name_horse2 = input("Nombre del segundo caballo: ") horse1 = Horse(name_horse1) horse2 = Horse(name_horse2) race = Race(horse1, horse2) race.start()
def __init__(self): """ This constructor instantiates a game board, instantiates and adds the game piece objects to the board, initializes the game state to "unfinished", initializes the current turn as the red players, and initializes the in-check status of the players. """ self._board = self._board = { "a1": None, "b1": None, "c1": None, "d1": None, "e1": None, "f1": None, "g1": None, "h1": None, "i1": None, # row 2 "a2": None, "b2": None, "c2": None, "d2": None, "e2": None, "f2": None, "g2": None, "h2": None, "i2": None, # row 3 "a3": None, "b3": None, "c3": None, "d3": None, "e3": None, "f3": None, "g3": None, "h3": None, "i3": None, # row 4 "a4": None, "b4": None, "c4": None, "d4": None, "e4": None, "f4": None, "g4": None, "h4": None, "i4": None, # row 5 "a5": None, "b5": None, "c5": None, "d5": None, "e5": None, "f5": None, "g5": None, "h5": None, "i5": None, # row 6 "a6": None, "b6": None, "c6": None, "d6": None, "e6": None, "f6": None, "g6": None, "h6": None, "i6": None, # row 7 "a7": None, "b7": None, "c7": None, "d7": None, "e7": None, "f7": None, "g7": None, "h7": None, "i7": None, # row 8 "a8": None, "b8": None, "c8": None, "d8": None, "e8": None, "f8": None, "g8": None, "h8": None, "i8": None, # row 9 "a9": None, "b9": None, "c9": None, "d9": None, "e9": None, "f9": None, "g9": None, "h9": None, "i9": None, # row 10 "a10": None, "b10": None, "c10": None, "d10": None, "e10": None, "f10": None, "g10": None, "h10": None, "i10": None, } self._red_pieces = [] self._black_pieces = [] red_char_1 = Chariot("red", "a1") self.update_board("a1", red_char_1) self._red_pieces.append(red_char_1) black_char_1 = Chariot("Black", "a10") self.update_board("a10", black_char_1) self._black_pieces.append(black_char_1) red_horse_1 = Horse("red", "b1") self.update_board("b1", red_horse_1) self._red_pieces.append(red_horse_1) black_horse_1 = Horse("black", "b10") self.update_board("b10", black_horse_1) self._black_pieces.append(black_horse_1) red_ele_1 = Elephant("red", "c1") self.update_board("c1", red_ele_1) self._red_pieces.append(red_ele_1) black_ele_1 = Elephant("black", "c10") self.update_board("c10", black_ele_1) self._black_pieces.append(black_ele_1) red_adv_1 = Advisor("red", "d1") self.update_board("d1", red_adv_1) self._red_pieces.append(red_adv_1) black_adv_1 = Advisor("black", "d10") self.update_board("d10", black_adv_1) self._black_pieces.append(black_adv_1) red_gen = General("red", "e1") self.update_board("e1", red_gen) self._red_pieces.append(red_gen) black_gen = General("Black", "e10") self.update_board("e10", black_gen) self._black_pieces.append(black_gen) red_adv_2 = Advisor("Red", "f1") self.update_board("f1", red_adv_2) self._red_pieces.append(red_adv_2) black_adv_2 = Advisor("black", "f10") self.update_board("f10", black_adv_2) self._black_pieces.append(black_adv_2) red_ele_2 = Elephant("red", "g1") self.update_board("g1", red_ele_2) self._red_pieces.append(red_ele_2) black_ele_2 = Elephant("black", "g10") self.update_board("g10", black_ele_2) self._black_pieces.append(black_ele_2) red_horse_2 = Horse("red", "h1") self.update_board("h1", red_horse_2) self._red_pieces.append(red_horse_2) black_horse_2 = Horse("black", "h10") self.update_board("h10", black_horse_2) self._black_pieces.append(black_horse_2) red_char_2 = Chariot("red", "i1") self.update_board("i1", red_char_2) self._red_pieces.append(red_char_2) black_char_2 = Chariot("black", "i10") self.update_board("i10", black_char_2) self._black_pieces.append(black_char_2) red_can_1 = Cannon("red", "b3") self.update_board("b3", red_can_1) self._red_pieces.append(red_can_1) black_can_1 = Cannon("black", "b8") self.update_board("b8", black_can_1) self._black_pieces.append(black_can_1) red_can_2 = Cannon("red", "h3") self.update_board("h3", red_can_2) self._red_pieces.append(red_can_2) black_can_2 = Cannon("black", "h8") self.update_board("h8", black_can_2) self._black_pieces.append(black_can_2) red_sol_1 = Soldier("red", "a4") self.update_board("a4", red_sol_1) self._red_pieces.append(red_sol_1) red_sol_2 = Soldier("red", "c4") self.update_board("c4", red_sol_2) self._red_pieces.append(red_sol_2) red_sol_3 = Soldier("red", "e4") self.update_board("e4", red_sol_3) self._red_pieces.append(red_sol_3) red_sol_4 = Soldier("red", "g4") self.update_board("g4", red_sol_4) self._red_pieces.append(red_sol_4) red_sol_5 = Soldier("red", "i4") self.update_board("i4", red_sol_5) self._red_pieces.append(red_sol_5) black_sol_1 = Soldier("black", "a7") self.update_board("a7", black_sol_1) self._black_pieces.append(black_sol_1) black_sol_2 = Soldier("black", "c7") self.update_board("c7", black_sol_2) self._black_pieces.append(black_sol_2) black_sol_3 = Soldier("black", "e7") self.update_board("e7", black_sol_3) self._black_pieces.append(black_sol_3) black_sol_4 = Soldier("black", "g7") self.update_board("g7", black_sol_4) self._black_pieces.append(black_sol_4) black_sol_5 = Soldier("black", "i7") self.update_board("i7", black_sol_5) self._black_pieces.append(black_sol_5) self._game_state = "UNFINISHED" self._turn = True self.generate_moves() self._red_in_check = {"red": False} self._black_in_check = {"black": False}