change the class name
This commit is contained in:
parent
d513781a10
commit
38d3e2f829
|
@ -3,43 +3,12 @@ import util
|
||||||
import agent
|
import agent
|
||||||
import random
|
import random
|
||||||
|
|
||||||
class InnerStatePlayer(agent.Agent):
|
|
||||||
def __init__(self, name, pnr):
|
|
||||||
self.name = name
|
|
||||||
self.explanation = []
|
|
||||||
def get_action(self, nr, hands, knowledge, trash, played, board, valid_actions, hints, hits, cards_left):
|
|
||||||
my_knowledge = knowledge[nr]
|
|
||||||
|
|
||||||
potential_discards = []
|
|
||||||
for i,k in enumerate(my_knowledge):
|
|
||||||
if util.is_playable(k, board):
|
|
||||||
return Action(PLAY, card_index=i)
|
|
||||||
if util.is_useless(k, board):
|
|
||||||
potential_discards.append(i)
|
|
||||||
|
|
||||||
if potential_discards:
|
|
||||||
return Action(DISCARD, card_index=random.choice(potential_discards))
|
|
||||||
|
|
||||||
if hints > 0:
|
|
||||||
for player,hand in enumerate(hands):
|
|
||||||
if player != nr:
|
|
||||||
for card_index,card in enumerate(hand):
|
|
||||||
if card.is_playable(board):
|
|
||||||
if random.random() < 0.5:
|
|
||||||
return Action(HINT_COLOR, player=player, color=card.color)
|
|
||||||
return Action(HINT_RANK, player=player, rank=card.rank)
|
|
||||||
|
|
||||||
hints = util.filter_actions(HINT_COLOR, valid_actions) + util.filter_actions(HINT_RANK, valid_actions)
|
|
||||||
return random.choice(hints)
|
|
||||||
|
|
||||||
return random.choice(util.filter_actions(DISCARD, valid_actions))
|
|
||||||
|
|
||||||
def format_hint(h):
|
def format_hint(h):
|
||||||
if h == HINT_COLOR:
|
if h == HINT_COLOR:
|
||||||
return "color"
|
return "color"
|
||||||
return "rank"
|
return "rank"
|
||||||
|
|
||||||
class OuterStatePlayer(agent.Agent):
|
class SkillIssuePlayer(agent.Agent):
|
||||||
def __init__(self, name, pnr):
|
def __init__(self, name, pnr):
|
||||||
self.name = name
|
self.name = name
|
||||||
self.hints = {}
|
self.hints = {}
|
||||||
|
@ -132,5 +101,4 @@ class OuterStatePlayer(agent.Agent):
|
||||||
self.hints[(player,action.card_index+i)] = self.hints[(player,action.card_index+i+1)]
|
self.hints[(player,action.card_index+i)] = self.hints[(player,action.card_index+i+1)]
|
||||||
self.hints[(player,action.card_index+i+1)] = set()
|
self.hints[(player,action.card_index+i+1)] = set()
|
||||||
|
|
||||||
agent.register("inner", "Inner State Player", InnerStatePlayer)
|
agent.register("skill", "Skill Issue Player", SkillIssuePlayer)
|
||||||
agent.register("outer", "Outer State Player", OuterStatePlayer)
|
|
||||||
|
|
Loading…
Reference in New Issue