from otree.api import ( models, widgets, BaseConstants, BaseSubsession, BaseGroup, BasePlayer, Currency as c, currency_range, ) author = 'Yang Zhong' doc = """ Nonogram """ #One game per person class Constants(BaseConstants): name_in_url = 'nonogram_podcast_a' players_per_group = None num_rounds = 3 class Subsession(BaseSubsession): pass class Group(BaseGroup): pass class Player(BasePlayer): podcast_time_spent = models.FloatField() podcast_points = models.IntegerField(min=-1000) podcast_score_on_display = models.IntegerField(min=-1000) podcast_total_green = models.IntegerField() podcast_total_gray = models.IntegerField() podcast_total_wrong = models.IntegerField() podcast_total_right = models.IntegerField() podcast_wrong_green = models.IntegerField() #correct should be green podcast_wrong_gray = models.IntegerField() #correct should be gray podcast_right_green = models.IntegerField() podcast_right_gray = models.IntegerField() podcast_board_history = models.LongStringField() #if each cell is correct or not (1 for correct color, 0 for wrong color) podcast_time_between_moves = models.LongStringField() podcast_solve_order = models.LongStringField() total_wrong_adding_podcast = models.IntegerField() final_points_podcast = models.FloatField(max=30, min=0) final_payoff_podcast = models.FloatField(max=30, min=0) podcast_game_finished = models.IntegerField() podcast_adding_numbers1_correct = models.IntegerField() podcast_adding_numbers1_time_spent = models.FloatField() podcast_adding_numbers2_correct = models.IntegerField() podcast_adding_numbers2_time_spent = models.FloatField() podcast_adding_numbers3_correct = models.IntegerField() podcast_adding_numbers3_time_spent = models.FloatField() podcast_adding_numbers4_correct = models.IntegerField() podcast_adding_numbers4_time_spent = models.FloatField() podcast_adding_numbers5_correct = models.IntegerField() podcast_adding_numbers5_time_spent = models.FloatField() q1 = models.StringField( choices=["Strongly Disagree", "Disagree", "Slightly Disagree", "Neutral", "Slightly Agree", "Agree", "Strongly Agree"], label= "I felt stressed while playing Nonogram.", widget=widgets.RadioSelectHorizontal ) q2 = models.StringField( choices=["Strongly Disagree", "Disagree", "Slightly Disagree", "Neutral", "Slightly Agree", "Agree", "Strongly Agree"], label="I felt happy while playing Nonogram.", widget=widgets.RadioSelectHorizontal ) q3 = models.StringField( choices=["Strongly Disagree", "Disagree", "Slightly Disagree", "Neutral", "Slightly Agree", "Agree", "Strongly Agree"], label= "I felt angry while playing Nonogram.", widget=widgets.RadioSelectHorizontal ) q4 = models.StringField( choices=["Strongly Disagree", "Disagree", "Slightly Disagree", "Neutral", "Slightly Agree", "Agree", "Strongly Agree"], label= "I felt stressed while playing the adding-numbers game.", widget=widgets.RadioSelectHorizontal ) q5 = models.StringField( choices=["Strongly Disagree", "Disagree", "Slightly Disagree", "Neutral", "Slightly Agree", "Agree", "Strongly Agree"], label= "I felt happy while playing the adding-numbers game.", widget=widgets.RadioSelectHorizontal ) q6 = models.StringField( choices=["Strongly Disagree", "Disagree", "Slightly Disagree", "Neutral", "Slightly Agree", "Agree", "Strongly Agree"], label= "I felt angry while playing the adding-numbers game.", widget=widgets.RadioSelectHorizontal ) # podcast1 = models.StringField( # choices=["Option 1", # "Option 2", # "Option 3"], # # label= "Question 1", # # widget=widgets.RadioSelect, # # ) # # podcast2 = models.StringField( # choices=["Option 1", # "Option 2", # "Option 3"], # # label="Question 2", # # widget=widgets.RadioSelect, # )