from otree.api import Currency as c, currency_range from . import pages from ._builtin import Bot from .models import Constants class PlayerBot(Bot): def play_round(self): if self.round_number == 1: yield (pages.greetings) if self.player.id_in_group == 1: yield (pages.firstcut_p1, {'cut_value':50}) elif self.player.id_in_group == 2: yield (pages.firstcut_p2, {'cut_value':60}) if self.player.id_in_group == 1: yield (pages.Roundresult_L1_p1) assert self.player.payoff == c(0) elif self.player.id_in_group == 2: yield (pages.Roundresult_L2_p2) assert self.player.payoff == c(120) elif self.round_number > 1 and self.round_number <= 5: if self.player.id_in_group == 1: yield (pages.firstcut_p1, {'cut_value': 60}) elif self.player.id_in_group == 2: yield (pages.firstcut_p2, {'cut_value': 50}) if self.player.id_in_group == 1: yield (pages.Roundresult_L2_p1) assert self.player.payoff == c(120) elif self.player.id_in_group == 2: yield (pages.Roundresult_L1_p2) assert self.player.payoff == c(0) elif self.round_number == 6: if self.player.id_in_group == 1: yield (pages.firstcut_p1_fulifo, {'cut_value': 50}) elif self.player.id_in_group == 2: yield (pages.firstcut_p2_fulifo, {'cut_value': 60}) if self.player.id_in_group == 1: yield (pages.Roundresult_L1_p1) assert self.player.payoff == c(0) elif self.player.id_in_group == 2: yield (pages.Roundresult_L2_p2) assert self.player.payoff == c(120) elif self.round_number == 7: if self.player.id_in_group == 1: yield (pages.firstcut_p1_fulifo, {'cut_value': 60}) elif self.player.id_in_group == 2: yield (pages.firstcut_p2_fulifo, {'cut_value': 50}) if self.player.id_in_group == 1: yield (pages.Roundresult_L2_p1) assert self.player.payoff == c(120) elif self.player.id_in_group == 2: yield (pages.Roundresult_L1_p2) assert self.player.payoff == c(0)