assert_eq(ret_code.OK, result['code'])

result = gc.player_act({
                           'token': players[1].token,
                           'method': 'discard',
                           'discard': [15],
                       })
assert_eq(ret_code.OK, result['code'])

last_event_id = len(gc.get_events(players[0].token, 0)) # until brink of death

assert_eq({
              'code': ret_code.OK,
              'action': 'discard',
              'players': [players[1].player_id],
          }, gc.hint(players[0].token))
assert_eq(gc.hint(players[0].token), gc.hint(players[2].token))
assert_eq({
    'code': ret_code.OK,
    'action': 'discard',
    'methods': {
        'peach': {
            'require': ['fix card count'],
            'card count': 1,
            'cards': [7],
        },
    },
    'abort': 'allow',
    'players': [players[1].player_id],
}, gc.hint(players[1].token))
Exemple #2
0
    'token': players[1].token,
    'method': 'abort',
})
assert_eq(ret_code.OK, result['code'])

result = gc.player_act({
    'token': players[0].token,
    'action': 'abort',
})
assert_eq(ret_code.OK, result['code'])

assert_eq({
    'code': ret_code.OK,
    'action': 'use',
    'players': [players[1].player_id],
}, gc.hint(players[0].token))
assert_eq({
    'code': ret_code.OK,
    'action': 'use',
    'card': {
        4: {
            'require': ['fix target'],
            'target count': 1,
            'targets': [players[0].player_id],
        },
        5: { 'require': ['implicit target'] },
        6: { 'require': ['implicit target'] },
        7: { 'require': ['implicit target'] },
        10: { 'require': ['forbid'] },
        11: { 'require': ['forbid'] },
    },
Exemple #3
0
assert_eq(
    {
        "code": ret_code.OK,
        "action": "use",
        "card": {
            0: {"require": ["fix target"], "target count": 1, "targets": [1]},
            1: {"require": ["fix target"], "target count": 1, "targets": [1]},
            2: {"require": ["fix target"], "target count": 1, "targets": [1]},
            3: {"require": ["fix target"], "target count": 1, "targets": [1]},
            8: {"require": ["fix target"], "target count": 1, "targets": [1]},
            9: {"require": ["fix target"], "target count": 1, "targets": [1]},
        },
        "abort": "allow",
        "players": [players[0].player_id],
    },
    gc.hint(players[0].token),
)
assert_eq({"code": ret_code.OK, "action": "use", "players": [players[0].player_id]}, gc.hint(players[1].token))

# cards:
# name     | rank (id = rank - 1) | suit

# sabotage | 1                    | SPADE   <- use this to duel
# sabotage | 2                    | SPADE
# sabotage | 3                    | SPADE
# sabotage | 4                    | SPADE
# sabotage | 9                    | HEART
# sabotage | 10                   | CLUB

# slash    | 5                    | SPADE   <- discard this
# dodge    | 6                    | HEART