from otree.api import Currency as c, currency_range from ._builtin import Page, WaitPage from .models import Constants class Task(Page): form_model = 'player' form_fields = ['gambled'] def vars_for_template(self): print("endowment =",self.session.vars['endowment']," sure_amount= ",self.session.vars['sure_amount']) return{ 'endowment': self.session.vars['endowment'], 'sure_amount': self.session.vars['sure_amount'], 'gamble_chance': self.session.vars['gamble_chance'], 'lose_chance': 100 - self.session.vars['gamble_chance'], } def before_next_page (self): if self.player.gambled == True and self.session.vars['random_number'] > self.session.vars['gamble_chance']: self.player.payoff = self.session.vars['endowment'] else: self.player.payoff = 0 if self.player.gambled == False: self.player.payoff = self.session.vars['sure_amount'] pass class Results(Page): def vars_for_template(self): return{ 'endowment': self.session.vars['endowment'], 'gamble_chance': self.session.vars['gamble_chance'], 'sure_amount': self.session.vars['sure_amount'], 'random_number': self.session.vars['random_number'], 'payoff': self.player.payoff, 'cumulative_payoff': sum([p.payoff for p in self.player.in_all_rounds()]), } page_sequence = [ Task, Results ]