def choose_from_actions(self,actionsList,image=None,text='Choose',atexts=None): try: i=0 self.buttons=[] margin=5 curr_x=20 curr_y=50 block_size=(95,150) for action in actionsList: if action.pic==None: self.buttons.append(guiButton(action.name,(curr_x,curr_y),action=action.do_action)) else: self.buttons.append(guiButton('',(curr_x,curr_y),action=action.do_action,image=action.pic)) if curr_x+block_size[0]<POPUP_SIZE[0]-margin: curr_x=curr_x+block_size[0] else: curr_x=20 curr_y+=block_size[1] self.buttons.append(guiButton('pass',(POPUP_SIZE[0]//2-40,POPUP_SIZE[1]-50),action=passf)) def check_click(): for control in self.buttons: if control.clicked: return True return False popup=PopupWindow(text,self.buttons,image,texts=atexts) self.open_popup(popup) while not check_click(): time.sleep(0.2) self.popup=False self.popupWindow=None popup.close() except: print("Unexpected error:", sys.exc_info()[0]) raise
def choose_from_actions(self, actionsList, image=None, text='Choose', atexts=None): try: i = 0 self.buttons = [] margin = 5 curr_x = 20 curr_y = 50 block_size = (95, 150) for action in actionsList: if action.pic == None: self.buttons.append( guiButton(action.name, (curr_x, curr_y), action=action.do_action)) else: self.buttons.append( guiButton('', (curr_x, curr_y), action=action.do_action, image=action.pic)) if curr_x + block_size[0] < POPUP_SIZE[0] - margin: curr_x = curr_x + block_size[0] else: curr_x = 20 curr_y += block_size[1] self.buttons.append( guiButton('pass', (POPUP_SIZE[0] // 2 - 40, POPUP_SIZE[1] - 50), action=passf)) def check_click(): for control in self.buttons: if control.clicked: return True return False popup = PopupWindow(text, self.buttons, image, texts=atexts) self.open_popup(popup) while not check_click(): time.sleep(0.2) self.popup = False self.popupWindow = None popup.close() except: print("Unexpected error:", sys.exc_info()[0]) raise
def choose_from_options(self, actions, image=None): i = 0 self.buttons = [] for name in actions.keys(): self.buttons.append( guiButton(name, (250 + i // 3 * 100, 65 + (i % 3) * 50), actions[name], sizing=1.5)) i += 1 def check_click(): for control in self.buttons: if control.clicked: return True return False popup = PopupWindow('Choose', self.buttons, image, measures=((POPUP_TOP, POPUP_LEFT), (400, 200))) self.open_popup(popup) while not check_click(): time.sleep(0.2) self.popup = False self.popupWindow = None popup.close()
def create_selection_menu(self,options): def set_value(value): self.value=value i=0 self.controls=[] for option in options: x=600+(i//3)*150 y=550+(i%3)*50 if len(str(option))>10: self.controls.append(guiButton(str(option),(x,y),set_value,option,1.75,7)) else: self.controls.append(guiButton(str(option),(x,y),set_value,option,1.75)) i+=1 self.value=0 while (self.value==0): time.sleep(0.1) print (self.value) return self.value
def create_trade_menu(self,players,image=None): from gameClasses import Trader trader=Trader(players[0],players[1]) self.buttons=[] passb=guiButton('pass',(700//2+40,600-50),action=passf) finishb=guiButton('finish',(700//2-40,600-50),action=trader.make_trade) self.buttons.append(passb) self.buttons.append(finishb) def check_click(): if passb.clicked or finishb.clicked: return True return False popup=TradeWindow(self.buttons,trader,players) self.open_popup(popup) while not check_click(): time.sleep(0.2) self.popup=False self.popupWindow=None popup.close()
def create_selection_menu(self, options): def set_value(value): self.value = value i = 0 self.controls = [] for option in options: x = 620 + (i // 3) * 135 y = 560 + (i % 3) * 45 if len(str(option)) > 10: self.controls.append( guiButton(str(option), (x, y), set_value, option, 1.75, 7)) else: self.controls.append( guiButton(str(option), (x, y), set_value, option, 1.75)) i += 1 self.value = 0 while (self.value == 0): time.sleep(0.1) print(self.value) return self.value
def create_buttons_from_action_dict(self,actions): self.controls=[] i=0 for name in actions.keys(): self.controls.append(guiButton(name,(600+i//3*100,550+(i%3)*50),actions[name],sizing=1.5)) i+=1 def check_click(): for control in self.controls: if control.clicked: return True return False while not check_click(): time.sleep(0.2)
def create_trade_menu(self, players, image=None): from gameClasses import Trader trader = Trader(players[0], players[1]) self.buttons = [] passb = guiButton('pass', (700 // 2 + 40, 600 - 50), action=passf) finishb = guiButton('finish', (700 // 2 - 40, 600 - 50), action=trader.make_trade) self.buttons.append(passb) self.buttons.append(finishb) def check_click(): if passb.clicked or finishb.clicked: return True return False popup = TradeWindow(self.buttons, trader, players) self.open_popup(popup) while not check_click(): time.sleep(0.2) self.popup = False self.popupWindow = None popup.close()
def createChooseButtonPopup(self,actions,image=None): i=0 self.buttons=[] for name in actions.keys(): self.buttons.append(guiButton(name,(70+i//3*100,110+(i%3)*50),actions[name],sizing=1.5)) i+=1 def check_click(): for control in self.buttons: if control.clicked: return True return False popup=PopupWindow(self.gameWindow,'Choose',self.buttons,image) self.gameWindow.open_popup(popup) while not check_click(): time.sleep(0.2) popup.close()
def __init__(self,buttons,trader,players): self.buttons=buttons self.trader=trader self.players=players self.money_interval=[50,50] self.money1=0 self.money2=0 margin=5 curr_x=20 curr_y=50 block_size=(50,75) headers=[(players[0].name+ ' assets',(800//4-1,20)),(players[1].name+ ' assets',(3*800//4,20)), ('money :$'+str(players[0].money),(800//4-170,20)),('money :$'+str(players[1].money),(-170+3*800//4,20)), ('Trade assets',(POPUP_SIZE[0]//4-100,260)),('Trade assets',(3*POPUP_SIZE[0]//4-100,260))] for asset in players[0].assets_list(): self.buttons.append(guiButton('',(curr_x,curr_y),action=self.add1_asset,parameter=asset,image=get_asset_image(asset),name='add'+asset.name,sizing=0.5,y_sizing=0.5)) self.buttons.append(guiButton('',(curr_x,curr_y+260),action=self.rem1_asset,parameter=asset,image=get_asset_image(asset),name='rem'+asset.name,enabled=False,sizing=0.5,y_sizing=0.5)) if curr_x+block_size[0]<POPUP_SIZE[0]//2-margin: curr_x=curr_x+block_size[0] else: curr_x=50 curr_y+=block_size[1] curr_x=20 curr_y=50 for asset in players[1].assets_list(): self.buttons.append(guiButton('',(POPUP_SIZE[0]//2+curr_x,curr_y),action=self.add2_asset,parameter=asset,image=get_asset_image(asset),name='add'+asset.name,sizing=0.5,y_sizing=0.5)) self.buttons.append(guiButton('',(POPUP_SIZE[0]//2+curr_x,curr_y+260),action=self.rem2_asset,parameter=asset,image=get_asset_image(asset),name='rem'+asset.name,enabled=False,sizing=0.5,y_sizing=0.5)) if curr_x+block_size[0]<POPUP_SIZE[0]//2-margin: curr_x=curr_x+block_size[0] else: curr_x=100 curr_y+=block_size[1] self.buttons.append(guiButton('+',(50,500),action=self.add1_money)) self.buttons.append(guiButton('-',(120,500),action=self.rem1_money)) self.buttons.append(guiButton('+',(450,500),action=self.add2_money)) self.buttons.append(guiButton('-',(520,500),action=self.rem2_money)) PopupWindow.__init__(self,'',buttons,texts=headers,measures=((100,50),(800,600))) self.top_dx=[40,40] self.top_dy=[100,100] self.down_dx=[40,40] self.down_dy=[400,400]
def choose_from_options(self,actions,image=None): i=0 self.buttons=[] for name in actions.keys(): self.buttons.append(guiButton(name,(250+i//3*100, 65+(i%3)*50),actions[name],sizing=1.5)) i+=1 def check_click(): for control in self.buttons: if control.clicked: return True return False popup=PopupWindow('Choose',self.buttons,image,measures=((POPUP_TOP,POPUP_LEFT),(400,200))) self.open_popup(popup) while not check_click(): time.sleep(0.2) self.popup=False self.popupWindow=None popup.close()
def __init__(self, buttons, trader, players): self.buttons = buttons self.trader = trader self.players = players self.money_interval = [50, 50] self.money1 = 0 self.money2 = 0 margin = 5 curr_x = 20 curr_y = 50 block_size = (50, 75) headers = [(players[0].name + ' assets', (800 // 4 - 1, 20)), (players[1].name + ' assets', (3 * 800 // 4, 20)), ('money :$' + str(players[0].money), (800 // 4 - 170, 20)), ('money :$' + str(players[1].money), (-170 + 3 * 800 // 4, 20)), ('Trade assets', (POPUP_SIZE[0] // 4 - 100, 260)), ('Trade assets', (3 * POPUP_SIZE[0] // 4 - 100, 260))] for asset in players[0].assets_list(): self.buttons.append( guiButton('', (curr_x, curr_y), action=self.add1_asset, parameter=asset, image=get_asset_image(asset), name='add' + asset.name, sizing=0.5, y_sizing=0.5)) self.buttons.append( guiButton('', (curr_x, curr_y + 260), action=self.rem1_asset, parameter=asset, image=get_asset_image(asset), name='rem' + asset.name, enabled=False, sizing=0.5, y_sizing=0.5)) if curr_x + block_size[0] < POPUP_SIZE[0] // 2 - margin: curr_x = curr_x + block_size[0] else: curr_x = 50 curr_y += block_size[1] curr_x = 20 curr_y = 50 for asset in players[1].assets_list(): self.buttons.append( guiButton('', (POPUP_SIZE[0] // 2 + curr_x, curr_y), action=self.add2_asset, parameter=asset, image=get_asset_image(asset), name='add' + asset.name, sizing=0.5, y_sizing=0.5)) self.buttons.append( guiButton('', (POPUP_SIZE[0] // 2 + curr_x, curr_y + 260), action=self.rem2_asset, parameter=asset, image=get_asset_image(asset), name='rem' + asset.name, enabled=False, sizing=0.5, y_sizing=0.5)) if curr_x + block_size[0] < POPUP_SIZE[0] // 2 - margin: curr_x = curr_x + block_size[0] else: curr_x = 100 curr_y += block_size[1] self.buttons.append(guiButton('+', (50, 500), action=self.add1_money)) self.buttons.append(guiButton('-', (120, 500), action=self.rem1_money)) self.buttons.append(guiButton('+', (450, 500), action=self.add2_money)) self.buttons.append(guiButton('-', (520, 500), action=self.rem2_money)) PopupWindow.__init__(self, '', buttons, texts=headers, measures=((100, 50), (800, 600))) self.top_dx = [40, 40] self.top_dy = [100, 100] self.down_dx = [40, 40] self.down_dy = [400, 400]