from otree.api import Currency as c, currency_range from ._builtin import Page, WaitPage from .models import Constants import random import numpy as np class MyPage(Page): form_model = 'player' form_fields = ['bid'] class ResultsWaitPage(WaitPage): def after_all_players_arrive(self): pass class Results(Page): def vars_for_template(self): group = self.group p1 = group.get_player_by_id(1) p2 = group.get_player_by_id(2) p3 = group.get_player_by_id(3) p4 = group.get_player_by_id(4) player = self.player d = {1:p1.bid, 2:p2.bid, 3:p3.bid, 4:p4.bid} l = list(d.values()) d_a={v: k for k, v in d.items()} group.price = max(l) group.winner = d_a.get(max(d_a)) if player.id_in_group==group.winner: player.profit = player.budeget - player.bid else: player.profit=0 return{ 'price':group.price, 'winner':group.winner, 'profit':player.profit } page_sequence = [ MyPage, ResultsWaitPage, Results ]