from ._builtin import Page, WaitPage from otree.api import Currency as c, currency_range from .models import Constants import random #--------------------------------------- jeu 1 undercutting (contre tout le monde) class Quiz1(Page): form_model = 'player' form_fields = ['q_a1', 'q_a2'] def error_message(self, values): print('values is', values) if values['q_a1'] != 7 : return 'Please correct your answer 1!!' elif values['q_a2'] != 28 : return 'Please correct your answer 2!!' class Quiz2(Page): form_model = 'player' form_fields = ['q_b1', 'q_b2'] def error_message(self, values): print('values is', values) if values['q_b1'] != 11: return 'Please correct your answer 1!!' elif values['q_b2'] != 12: return 'Please correct your answer 2!!' class MyPage1(Page): form_model = 'player' form_fields = ['choice1'] def before_next_page(self): self.player.tirage1 = round(random.random(), 2) if self.player.tirage1 <= 0.54: # voir table 2 (stage 3 - All) self.player.choicejoueur2 = 0 elif self.player.tirage1 <= 0.62: # self.player.choicejoueur2 = 1 elif self.player.tirage1 <= 0.84: # self.player.choicejoueur2 = 2 elif self.player.tirage1 <= 0.96: # self.player.choicejoueur2 = 3 elif self.player.tirage1 <= 0.98: # self.player.choicejoueur2 = 4 else: self.player.choicejoueur2 = 6 self.player.gaintask1 = Constants.l1[self.player.choice1][self.player.choicejoueur2] #--------------------------------------- jeu 2 undercutting (contre tout le monde) class MyPage2(Page): form_model = 'player' form_fields = ['playagain'] def before_next_page(self): if self.player.playagain == 0: self.player.gaintask2 = Constants.surepayoff class MyPage3(Page): form_model = 'player' form_fields = ['choice2'] def is_displayed(self): return self.player.playagain == 1 def before_next_page(self): self.player.tirage2 = round(random.random(), 2) if self.player.tirage2 <= 0.54: # voir table 2 (stage 3 - All) self.player.choicejoueur2_task2 = 0 elif self.player.tirage2 <= 0.62: # self.player.choicejoueur2_task2 = 1 elif self.player.tirage2 <= 0.84: # self.player.choicejoueur2_task2 = 2 elif self.player.tirage2 <= 0.96: # self.player.choicejoueur2_task2 = 3 elif self.player.tirage2 <= 0.98: # self.player.choicejoueur2_task2 = 4 else: self.player.choicejoueur2_task2 = 6 self.player.gaintask2 = Constants.l1[self.player.choice2][self.player.choicejoueur2_task2] class Results(Page): form_model = 'player' form_fields = [] # self.player.tiragetask1ou2 = random.randint(0, 1) # if self.player.tiragetask1ou2 ==0: # self.player.gain_undercutting = self.player.gaintask1 # else: # self.player.gain_undercutting = self.player.gaintask2 # else: # self.player.gain_undercutting = self.player.gaintask1 page_sequence = [ Quiz1, Quiz2, MyPage1, MyPage2, MyPage3, Results, ]