from otree.api import ( models, widgets, BaseConstants, BaseSubsession, BaseGroup, BasePlayer, Currency as c, currency_range ) doc = '' class Constants(BaseConstants): name_in_url = 'VotacionMedia2' players_per_group = 3 num_rounds = 1 Endowment1 = 12 Endowment2 = 9 Endowment3 = 6 instructions_template = 'VotacionMedia2/instructions.html' class Subsession(BaseSubsession): Tratamiento = models.StringField() def creating_session(self): if self.round_number == 1: for group in self.get_groups(): self.Tratamiento = "Amedia" self.session.vars["Tratamiento"]=self.Tratamiento def my_method(self): pass class Group(BaseGroup): Voto1 = models.IntegerField(choices=[[5, '5 fichas.'], [8, '8 fichas.'], [11, '11 fichas.']], initial=11, label='¿Cuál deberá ser la cuota máxima de inversión en la actividad extractiva?', widget=widgets.RadioSelect) Voto2 = models.IntegerField(choices=[[5, '5 fichas.'], [8, '8 fichas.'], [11, '11 fichas.']], initial=11, label='¿Cuál deberá ser la cuota máxima de inversión en la actividad extractiva?', widget=widgets.RadioSelect) Voto3 = models.IntegerField(choices=[[5, '5 fichas.'], [8, '8 fichas.'], [11, '11 fichas.']], initial=11, label='¿Cuál deberá ser la cuota máxima de inversión en la actividad extractiva?', widget=widgets.RadioSelect) cuota_grupo = models.LongStringField() def cuota(self): votosM = [self.Voto2,self.Voto2,self.Voto2,self.Voto2,self.Voto2,self.Voto2,self.Voto2, self.Voto1,self.Voto3] import random cuota = random.choice(votosM) if cuota != 0: return cuota elif cuota == 0: return 11 def cuota_esc(self): self.session.vars["Resultado2"]= self.cuota() self.cuota_grupo = str (self.session.vars["Resultado2"]) class Player(BasePlayer): def role(self): if self.id_in_group == 1: return "Jugador X" if self.id_in_group == 2: return "Jugador Y" if self.id_in_group == 3: return "Jugador Z" def cuota(self): self.session.config["cuota"] = self.group.Resultado