from otree.api import ( models, widgets, BaseConstants, BaseSubsession, BaseGroup, BasePlayer, Currency as c, currency_range ) import random import csv import json import itertools from itertools import cycle class Constants(BaseConstants): name_in_url = 'block_22' players_per_group = None num_rounds = 1 class Subsession(BaseSubsession): def creating_session(self): instructions = itertools.cycle(['Se scegli A, riceverai 15 punti se l\'altro partecipante sceglie B oppure 0 punti se l\'altro partecipante sceglie A. Se scegli B, riceverai 10 punti se l\'altro partecipante sceglie B oppure 5 punti se l\'altro partecipante sceglie A.','Se scegli A, riceverai 10 punti se l\'altro partecipante sceglie A oppure 5 punti se l\'altro partecipante sceglie B. Se scegli B, riceverai 15 punti se l\'altro partecipante sceglie A oppure 0 punti se l\'altro partecipante sceglie B.', 'Se scegli A, riceverai 15 punti se l\'altro partecipante sceglie B oppure 0 punti se l\'altro partecipante sceglie A. Se scegli B, riceverai 10 punti se l\'altro partecipante sceglie B oppure 5 punti se l\'altro partecipante sceglie A.']) if self.round_number == 1: for p in self.get_players(): p.participant.vars['opzioni'] = next(instructions) opzioni = next(instructions) p.participant.vars['opzioni'] = opzioni p.opzioni = opzioni class Group(BaseGroup): pass class Player(BasePlayer): opzioni = models.LongStringField() standardchoice_hd = models.StringField( choices=[['A', 'A'], ['B', 'B']], label='Qual é la tua scelta?', widget=widgets.RadioSelect, ) beliefstandard_hd = models.IntegerField(label='Inserisci un numero intero tra 0 e 100', min=0, max=100)