from . import models from ._builtin import Page, WaitPage from p_instructions.pages import Page from otree.api import Currency as c, currency_range from .models import Constants import json import random from random import sample, choice class Inizio(Page): def is_displayed(self): return self.round_number == 1 class Decisione(Page): form_model = 'player' form_fields = ['decision', 'time_spent'] def vars_for_template(self): return { 'f1': Constants.f1, 'f2': Constants.f2, 'f3': Constants.f3, 'f4': Constants.f4, } def before_next_page(self): self.player.set_payoff_decision() self.player.set_not_choice() class Risultato1(Page): form_model = 'player' timeout_seconds = 3 def vars_for_template(self): return { 'payoff_decision': self.player.participant.vars['payoff_decision'], 'lottery': self.player.participant.vars['lottery_F'], 'probability': self.participant.vars['probability'], 'choice': self.participant.vars['decision'], 'not_choice': self.participant.vars['not_choice'], } class Risultato2(Page): form_model = 'player' timeout_seconds = 3 def vars_for_template(self): return { 'payoff_decision': self.player.participant.vars['payoff_decision'], 'lottery': self.player.participant.vars['lottery_F'], 'probability': self.participant.vars['probability'], 'choice': self.participant.vars['decision'], 'not_choice': self.participant.vars['not_choice'], } class Montepremi(Page): def is_displayed(self): return self.round_number == Constants.num_rounds def vars_for_template(self): return{ 'total_payoff': self.player.participant.payoff } page_sequence = [Inizio, Decisione, Risultato1, Risultato2, Montepremi]