当前位置: 首页>>代码示例>>Python>>正文


Python GameState.turn方法代码示例

本文整理汇总了Python中GameState.GameState.turn方法的典型用法代码示例。如果您正苦于以下问题:Python GameState.turn方法的具体用法?Python GameState.turn怎么用?Python GameState.turn使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在GameState.GameState的用法示例。


在下文中一共展示了GameState.turn方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_accuse_bad_guess_of_murderer

# 需要导入模块: from GameState import GameState [as 别名]
# 或者: from GameState.GameState import turn [as 别名]
    def test_accuse_bad_guess_of_murderer(self):
        try:
            old_raw_input = raw_input
            Interactive.raw_input = mock_raw_input('1', '3L', '5L')  # opponent id, first card, second card

            joe = HumanPlayer('joe')
            joe._hand = [(4, 'L'), (7, 'L'), (5, 'H'), (8, 'H')]
            ai1 = AIPlayer('ai1')
            ai1._hand = [(1, 'L'), (3, 'L'), (1, 'H'), (9, '$')]
            ai2 = AIPlayer('ai2')
            ai2._hand = [(8, 'L'), (3, 'H'), (2, '$'), (3, '$')]

            state = GameState()
            state.turn = 23
            state.current_player = joe
            state.players = [joe, ai1, ai2]
            state.evidence_cards = [(3, 'L'), (5, 'L')]

            with captured_output() as (out, err):
                self.assertTrue(accuse_command(state))

            self.assertEqual('Accuse\n\n'
                             'Your guess is: Incorrect', output(out))
            self.assertEqual('ended', state.status)
        finally:
            Interactive.raw_input = old_raw_input
开发者ID:manurFR,项目名称:deduceia,代码行数:28,代码来源:TestInteractive.py

示例2: test_interrogate_for_the_same_two_cards_asks_for_rank_or_suit

# 需要导入模块: from GameState import GameState [as 别名]
# 或者: from GameState.GameState import turn [as 别名]
    def test_interrogate_for_the_same_two_cards_asks_for_rank_or_suit(self):
        try:
            old_raw_input = raw_input
            Interactive.raw_input = mock_raw_input('1', '3L', '3L', 'suit')  # opponent id, low card, high card

            player = HumanPlayer('joe')
            tom = AIPlayer('Tom')
            tom._hand = [(1, 'L'), (3, 'L'), (6, 'L'), (2, 'H'), (8, '$'), (9, '$')]

            state = GameState()
            state.turn = 10
            state.current_player = player
            state.players = [player, tom]
            state.question_cards = [(1, '$'), (3, 'L'), (3, 'L')]

            with captured_output() as (out, err):
                turn_ended = interrogate_command(state)

            self.assertEqual('Interrogate\n'
                             'Question cards: 1$ 3L 3L\n'
                             'Cards in this range: 3', output(out))
            turn = state.history.pop()
            self.assertEqual(10, turn['turn'])
            self.assertEqual('joe', turn['player'].name)
            self.assertEqual('Tom', turn['opponent'].name)
            self.assertEqual('interrogate', turn['action'])
            self.assertEqual('3L->3L [suit]', str(turn['range']))
            self.assertEqual(3, turn['result'])
            self.assertTrue(turn_ended)
        finally:
            Interactive.raw_input = old_raw_input
开发者ID:manurFR,项目名称:deduceia,代码行数:33,代码来源:TestInteractive.py

示例3: test_accuse_bad_guess_of_cards

# 需要导入模块: from GameState import GameState [as 别名]
# 或者: from GameState.GameState import turn [as 别名]
    def test_accuse_bad_guess_of_cards(self):
        try:
            old_raw_input = raw_input
            Interactive.raw_input = mock_raw_input('1', '1L', '2L')  # opponent id, first card, second card

            joe = HumanPlayer('joe')
            joe._hand = [(4, 'L'), (8, 'L'), (5, 'H'), (8, 'H')]
            ai = AIPlayer('ai')
            ai._hand = [(1, 'L'), (3, 'L'), (1, 'H'), (9, '$')]

            state = GameState()
            state.turn = 23
            state.current_player = joe
            state.players = [joe, ai]
            state.evidence_cards = [(5, '$'), (5, 'L')]

            with captured_output() as (out, err):
                self.assertTrue(accuse_command(state))

            self.assertEqual('Accuse\n\n'
                             'Your guess is: Incorrect', output(out))
            accusation = state.accusations.pop()
            self.assertEqual('joe', accusation['player'].name)
            self.assertEqual('ai', accusation['accused'].name)
            self.assertEqual([(1, 'L'), (2, 'L')], accusation['cards'])
            self.assertEqual('incorrect', accusation['outcome'])
            self.assertEqual('ended', state.status)
        finally:
            Interactive.raw_input = old_raw_input
开发者ID:manurFR,项目名称:deduceia,代码行数:31,代码来源:TestInteractive.py

示例4: test_secret_asks_for_two_cards_puts_the_range_in_history_and_display_the_result

# 需要导入模块: from GameState import GameState [as 别名]
# 或者: from GameState.GameState import turn [as 别名]
    def test_secret_asks_for_two_cards_puts_the_range_in_history_and_display_the_result(self):
        try:
            old_raw_input = raw_input
            Interactive.raw_input = mock_raw_input('1', '9$', '1H')  # opponent id, low card, high card

            player = HumanPlayer('joe')
            donna = AIPlayer('donna')
            donna._hand = [(1, 'L'), (3, 'L'), (6, 'L'), (2, 'H'), (8, '$'), (9, '$')]

            state = GameState()
            state.turn = 1
            state.current_player = player
            state.players = [player, donna]
            state.question_cards = [(1, 'L'), (3, 'L'), (7, 'L')]

            with captured_output() as (out, err):
                turn_ended = secret_command(state)

            self.assertEqual('Secret\n'
                             'Cards in this range: 2', output(out))
            turn = state.history.pop()
            self.assertEqual(1, turn['turn'])
            self.assertEqual('joe', turn['player'].name)
            self.assertEqual('donna', turn['opponent'].name)
            self.assertEqual('secret', turn['action'])
            self.assertEqual(['L', 'H', '$'], turn['range'].suits)
            self.assertEqual([9, 1], turn['range'].ranks)
            self.assertEqual(2, turn['result'])
            self.assertTrue(turn_ended)
            self.assertEqual(0, state.current_player.secret)
        finally:
            Interactive.raw_input = old_raw_input
开发者ID:manurFR,项目名称:deduceia,代码行数:34,代码来源:TestInteractive.py

示例5: test_interrogate_asks_for_two_cards_puts_the_range_in_history_and_display_the_result

# 需要导入模块: from GameState import GameState [as 别名]
# 或者: from GameState.GameState import turn [as 别名]
    def test_interrogate_asks_for_two_cards_puts_the_range_in_history_and_display_the_result(self):
        try:
            old_raw_input = raw_input
            Interactive.raw_input = mock_raw_input('1', '3L', '7L')  # opponent id, low card, high card

            player = HumanPlayer('joe')
            tom = AIPlayer('tom')
            tom._hand = [(1, 'L'), (3, 'L'), (6, 'L'), (2, 'H'), (8, '$'), (9, '$')]

            state = GameState()
            state.turn = 10
            state.current_player = player
            state.players = [player, tom]
            state.question_cards = [(1, 'L'), (3, 'L'), (7, 'L')]

            with captured_output() as (out, err):
                turn_ended = interrogate_command(state)

            self.assertEqual('Interrogate\n'
                             'Question cards: 1L 3L 7L\n'
                             'Cards in this range: 2', output(out))
            turn = state.history.pop()
            self.assertEqual(10, turn['turn'])
            self.assertEqual('joe', turn['player'].name)
            self.assertEqual('tom', turn['opponent'].name)
            self.assertEqual('interrogate', turn['action'])
            self.assertEqual(['L'], turn['range'].suits)
            self.assertEqual([3, 4, 5, 6, 7], turn['range'].ranks)
            self.assertEqual(2, turn['result'])
            self.assertTrue(turn_ended)
        finally:
            Interactive.raw_input = old_raw_input
开发者ID:manurFR,项目名称:deduceia,代码行数:34,代码来源:TestInteractive.py

示例6: test_secret_is_refused_if_no_secrets_left

# 需要导入模块: from GameState import GameState [as 别名]
# 或者: from GameState.GameState import turn [as 别名]
    def test_secret_is_refused_if_no_secrets_left(self):
        player = HumanPlayer('joe')
        player._secret = 0

        state = GameState()
        state.turn = 1
        state.current_player = player

        with captured_output() as (out, err):
            turn_ended = secret_command(state)

        self.assertEqual('Secret already used!', output(out))
        self.assertFalse(turn_ended)
开发者ID:manurFR,项目名称:deduceia,代码行数:15,代码来源:TestInteractive.py

示例7: main

# 需要导入模块: from GameState import GameState [as 别名]
# 或者: from GameState.GameState import turn [as 别名]
def main():
    print 'Welcome to Deduce or Die! IA'
    print
    nb_players = ask_for('Number of players : ', int, ['3', '4', '5', '6'])
    human_player_name = ask_for('Type your name : ')

    state = GameState()

    players, state.human_player = prepare_players(nb_players, human_player_name)
    state.players = players

    motive_deck = prepare_game_deck(nb_decks=1)

    state.interrogation_deck = prepare_game_deck(nb_decks=2)
    state.discard_deck = []

    state.evidence_cards = [motive_deck.pop(), motive_deck.pop()]

    deal_deck(motive_deck, players)

    assert len(motive_deck) <= 1

    if len(motive_deck) == 1:
        state.extra_card = motive_deck[0]
    else:
        state.extra_card = None

    for player in state.players:
        if not player.is_human():
            player.setup_ai(state)

    print_summary(state)

    determine_low_suit(state)
    print
    print_low_suit(players)

    state.turn = 1
    while state.status != 'ended':
        play_turn(state)

    end_game_summary(state)
    print
开发者ID:manurFR,项目名称:deduceia,代码行数:45,代码来源:Game.py

示例8: test_choose_an_opponent

# 需要导入模块: from GameState import GameState [as 别名]
# 或者: from GameState.GameState import turn [as 别名]
    def test_choose_an_opponent(self):
        try:
            old_raw_input = raw_input
            Interactive.raw_input = mock_raw_input('5', '2')

            player = HumanPlayer('joe')
            ai1 = AIPlayer('ai1')
            ai2 = AIPlayer('ai2')
            ai3 = AIPlayer('ai3')

            state = GameState()
            state.turn = 1
            state.current_player = player
            state.players = [ai2, player, ai3, ai1]

            with captured_output() as (out, err):
                chosen_opponent = choose_an_opponent(state)

            self.assertEqual(ai3, chosen_opponent)
        finally:
            Interactive.raw_input = old_raw_input
开发者ID:manurFR,项目名称:deduceia,代码行数:23,代码来源:TestInteractive.py

示例9: test_determine_current_player_after_a_few_rounds

# 需要导入模块: from GameState import GameState [as 别名]
# 或者: from GameState.GameState import turn [as 别名]
 def test_determine_current_player_after_a_few_rounds(self):
     state = GameState()
     state.players = ['one', 'two', 'three']
     state.turn = 8
     self.assertEqual('two', determine_current_player(state))
开发者ID:manurFR,项目名称:deduceia,代码行数:7,代码来源:TestGame.py

示例10: test_determine_current_player_turn1

# 需要导入模块: from GameState import GameState [as 别名]
# 或者: from GameState.GameState import turn [as 别名]
 def test_determine_current_player_turn1(self):
     state = GameState()
     state.players = ['one', 'two', 'three']
     state.turn = 1
     self.assertEqual('one', determine_current_player(state))
开发者ID:manurFR,项目名称:deduceia,代码行数:7,代码来源:TestGame.py


注:本文中的GameState.GameState.turn方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。