def __init__(self, closeButton=True): g.selectMeneWindowOpened = True self.currentMeneID = g.currMeneID self.selectMeneID = None self.meneCont = [] self.meneButtons = [] self.closeButton = closeButton self.constructMeneButtons() selectButton = HighlightedButton("Select Mene", on_release=self.selectMene, width=150, height=30) if closeButton: closeBtn = HighlightedButton("", on_release=self.delete, width=19, height=19, path='delete') cont = VerticalContainer(content=[ HorizontalContainer(content=[Spacer(0, 0), closeBtn]), HorizontalContainer(content=self.meneCont), Spacer(0, 10), selectButton ]) else: cont = VerticalContainer(content=[ HorizontalContainer(content=self.meneCont), Spacer(0, 10), selectButton ]) Manager.__init__(self, Frame(cont), window=g.screen, batch=g.guiBatch, is_movable=False, offset=(0, 0), theme=g.theme)
def __init__(self): g.postWindowOpened = True label1 = Label("Notifications", bold=True, color=g.loginFontColor) closeBtn = HighlightedButton("", on_release=self.delete, width=19, height=19, path='delete') self.postCont = [] #self.menes = [{"name":"Hitler","hp":100,"level":1,"power":50,"defense":40,"speed":60,"sprite":'americanbear'},{"name":"Stalin","hp":100,"level":1,"power":50,"defense":40,"speed":60,"sprite":'lorslara'},{"name":"Ebin","hp":100,"level":1,"power":50,"defense":40,"speed":60,"sprite":'squadlider'},{"name":"Mao","hp":100,"level":1,"power":50,"defense":40,"speed":60,"sprite":'mongolbear'},{"name":"Uusi mene","hp":100,"level":1,"power":50,"defense":40,"speed":60,"sprite":'mongol'},{"name":"Hintti","hp":50,"level":15,"power":60,"defense":50,"speed":70,'sprite':'uusimene'}] #self.selectedMene=self.menes[0]["name"] for c in g.mails: label = Label(c["s"], bold=True, color=g.guiNameColor, font_size=g.theme["font_size"] + 2) label1 = Label(c["t"][:16] + '...', color=g.whiteColor) deleteBtn = HighlightedButton("", on_release=self.deletemail, width=14, height=14, path='delete_alt', argument=c["id"]) openBtn = HighlightedButton("", on_release=self.openmail, width=20, height=21, path='mailopen', argument=c["id"]) self.postCont.append( VerticalContainer(content=[ HorizontalContainer(content=[openBtn, label, deleteBtn]), label1 ], align=HALIGN_LEFT)) self.vertCont = VerticalContainer(self.postCont, align=VALIGN_TOP) self.report = Document("", is_fixed_size=True, height=g.SCREEN_HEIGHT / 2, width=g.SCREEN_WIDTH / 5) self.scrollable = Scrollable(content=self.vertCont, height=g.SCREEN_HEIGHT / 2, width=g.SCREEN_WIDTH / 5) total = HorizontalContainer( content=[self.scrollable, self.report, closeBtn], align=VALIGN_TOP) Manager.__init__( self, Frame(total), window=g.screen, batch=g.guiBatch, is_movable=False, anchor=ANCHOR_LEFT, offset=(40, int(g.SCREEN_HEIGHT * g.WINDOW_POSY_RELATIVE)), theme=g.theme) if len(self.postCont) > 0: self.openmail(self.postCont[0]._content[0]._content[0].arg)
def __init__(self): g.ignoreWindowOpened = True label1 = Label("Ignore List", bold=True, color=g.loginFontColor) closeBtn = HighlightedButton("", on_release=self.delete, width=19, height=19, path='delete') title = [label1, None, closeBtn] ignores = [] for c in ignoreList: ignores.append(c) ignores.sort() ignoreCont = [] for c in ignores: label = HighlightedButton(c, width=150, height=24, path='baroutline_btn', on_release=self.constructSelect, argument=c, align=HALIGN_LEFT, font_color=g.guiNameColor) ignoreCont.append(label) #label=Label(c,bold=True,color=g.nameColorLighter) #removeBtn = HighlightedButton("",on_release=self.removeIgnore,width=24,height=24,path='ignoreremove',argument=c) #ignoreCont.append(HorizontalContainer(content=[label,removeBtn])) addBtn = HighlightedButton("Ignore Player", on_release=addIgnorePopup, width=100, height=24) horzCont = HorizontalContainer(content=title) frame = Frame( VerticalContainer(content=[ horzCont, Scrollable(height=400, width=400, content=VerticalContainer(content=ignoreCont, align=HALIGN_LEFT, padding=0)), addBtn ])) Manager.__init__( self, frame, window=g.screen, batch=g.guiBatch, is_movable=False, anchor=ANCHOR_LEFT, offset=(40, int(g.SCREEN_HEIGHT * g.WINDOW_POSY_RELATIVE)), theme=g.theme)
def __init__(self, title, content=None, x=0, y=0, type=0): g.selectedWindowOpened = True cont = [] self.type = type cont.append(Label(title, color=g.loginFontColor)) for c in content: cont.append( HighlightedButton(c["text"], on_release=c["function"], width=120, height=24, path='empty', argument=c["argument"], align=HALIGN_LEFT)) frame = Frame(VerticalContainer(content=cont, padding=0, align=HALIGN_LEFT), path='frame_alternative') Manager.__init__(self, frame, window=g.screen, batch=g.selectWindowBatch, is_movable=False, offset=(0, 0), theme=g.theme) self.set_position(x, y - self.height)
def __init__(self, options, labels=None, max_height=400, align=VALIGN_TOP, on_select=None): Selector.__init__(self, options, labels, on_select=on_select, selected=options[0]) HighlightedButton.__init__(self) self.max_height = max_height self.align = align self._pulldown_menu = None
def __init__(self): g.reportWindowOpened = True getReport() label1 = Label("Send Ticket", bold=True, color=g.loginFontColor) closeBtn = HighlightedButton("", on_release=self.delete, width=19, height=19, path='delete') horzCont = HorizontalContainer(content=[label1, None, closeBtn]) #self.infoLabel = Label("No reports founds") self.reportInput = TextInput(text="", padding=5, length=16, max_length=400, width=g.SCREEN_WIDTH / 3, height=g.SCREEN_HEIGHT / 3, multiline=True) clearBtn = HighlightedButton("Clear", on_release=self.clear, width=120, height=30) deleteBtn = HighlightedButton("Delete", on_release=self.remove, width=120, height=30) sendBtn = HighlightedButton("Send", on_release=self.send, width=120, height=30) buttons = HorizontalContainer(content=[clearBtn, deleteBtn, sendBtn]) frame = Frame( VerticalContainer(content=[horzCont, self.reportInput, buttons])) Manager.__init__(self, frame, window=g.screen, batch=g.guiBatch, is_movable=False, theme=g.theme) frame.expand(g.SCREEN_WIDTH / 2, height=g.SCREEN_HEIGHT / 4 * 3)
def __init__(self, text="", ok="Ok", cancel="Cancel", window=None, batch=None, group=None, theme=None, on_ok=None, on_cancel=None, argument=None,offset=(0,0)): self.arg=argument def on_ok_click(_): if on_ok is not None: on_ok(self.arg) self.delete() def on_cancel_click(_): if on_cancel is not None: on_cancel(self.arg) self.delete() Manager.__init__(self, content=Frame( VerticalContainer([ Label(text), HorizontalContainer([HighlightedButton(ok, on_release=on_ok_click), HighlightedButton(cancel, on_release=on_cancel_click)] )]) ), window=window, batch=batch, group=group, theme=theme, is_movable=True,offset=offset)
def __init__(self, text="", window=None, textcolor=None,batch=None, group=None, width=None, theme=None, on_escape=None, have_focus=False,font_size=None): def on_ok(_): if on_escape is not None: on_escape(self) self.delete() #button = FocusButton("Ok", on_press=on_ok) button=HighlightedButton("Ok",on_release=on_ok,height=35,width=80) Manager.__init__(self, content=Frame(VerticalContainer( [Label(text,color=textcolor,font_size=font_size,width=width,multiline=True), Spacer(min_height=5),button])), window=window, batch=batch, group=group, theme=theme, is_movable=True) Manager.set_next_focus(self, 1)
def __init__(self): gameSettingsButton = HighlightedButton(label="Game Settings",on_release=self.gameSettings,width=120,height=30) settingsButton = HighlightedButton(label="Video Settings",on_release=self.settings,width=120,height=30) keybindingsButton = HighlightedButton(label="Keybindings",on_release=self.keybindings,width=120,height=30) helpButton = HighlightedButton(label="Help",on_release=self.help,width=120,height=30) disconnectButton = HighlightedButton(label="Disconnect",on_release=self.disconnect,width=120,height=30) closeButton = HighlightedButton(label="Close",on_release=self.delete,width=120,height=30) quitButton = HighlightedButton(label="Quit",on_release=self.onQuit,width=120,height=30) Manager.__init__(self, Frame(VerticalContainer(content=[gameSettingsButton,settingsButton,keybindingsButton,helpButton,disconnectButton,quitButton,Spacer(0,20),closeButton])), window=g.screen, batch=g.guiBatch, is_movable=False, theme=g.theme)
def initNameMene(self): def sendMeneName(event): self.menename = self.nameInput.get_text() if len(self.menename) > 0: self.saveBtn.disabled = True self.naming = True label = Label("Name Your Mene", color=g.postColor, font_size=18, bold=True) #meneTheme = Theme({g.spriteName: { # "image": { # "source": g.spriteName+'_front.png' # }, # "gui_color": [255,255,255,255] # } # },resources_path=g.dataPath+'/menes/' #) #picture = Graphic(g.spriteName,alternative=meneTheme) picture = Graphic( texture=g.gameEngine.resManager.meneSprites[g.spriteName]['front']) self.nameInput = TextInput(text="", padding=2, length=12, max_length=12, width=200, font_size=16) self.saveBtn = HighlightedButton(label="Save", on_release=sendMeneName, width=100, height=40, font_size=16) frame = Frame(VerticalContainer(content=[ label, picture, HorizontalContainer([self.nameInput, self.saveBtn]) ]), path='frame_npc_talk') self.meneMan = Manager(frame, window=self.screen, batch=g.guiBatch, theme=g.theme, offset=(0, 0), is_movable=False)
def __init__(self): g.adminWindowOpened = True label1=Label("Admin Menu",bold=True,color=g.loginFontColor) closeBtn = closeBtn =HighlightedButton("",on_release=self.delete,width=19,height=19,path='delete') adminSayBtn=HighlightedButton("Admin say",on_release=self.adminSay,width=120,height=25) muteBtn=HighlightedButton("Mute player",on_release=self.mutePlayer,width=120,height=25) unmuteBtn=HighlightedButton("Unmute player",on_release=self.unmutePlayer,width=120,height=25) teleportBtn=HighlightedButton("Teleport player",on_release=self.teleportPlayer,width=120,height=25) banBtn=HighlightedButton("Ban player",on_release=self.banPlayer,width=120,height=25) unbanBtn=HighlightedButton("Unban player",on_release=self.unbanPlayer,width=120,height=25) reportBtn=HighlightedButton("Reports",on_release=self.reports,width=120,height=25) #addBtn = HighlightedButton("",on_release=self.addFriend,width=24,height=24,path='friendadd') horzCont = HorizontalContainer(content=[label1,closeBtn]) frame = Frame(VerticalContainer(content=[horzCont,adminSayBtn,muteBtn,unmuteBtn,teleportBtn,banBtn,unbanBtn,reportBtn])) Manager.__init__(self, frame, window=g.screen, batch=g.guiBatch, is_movable=False, anchor=ANCHOR_LEFT, offset=(40,int(g.SCREEN_HEIGHT*g.WINDOW_POSY_RELATIVE)), theme=g.theme)
def __init__(self): t1=time.time()*1000 g.meneWindowOpened = True label1=Label("My Menes",bold=True,color=g.loginFontColor) closeBtn =HighlightedButton("",on_release=self.delete,width=19,height=19,path='delete') self.meneCont= [] self.menes=[] self.established=False for c in meneList: self.menes.append({"name":c.name, "hp":c.hp, "maxhp":c.maxhp, "xp":c.xp, "level":c.level, "power":c.power, "id":c.ID, "defense":c.defense, "speed":c.speed, "attack1":c.attack1, "attack2":c.attack2, "attack3":c.attack3, "attack4":c.attack4, "sprite":c.spriteName, "defaultmene":c.defaultMene}) #self.menes = [{"name":"Hitler","hp":100,"level":1,"power":50,"defense":40,"speed":60,"sprite":'americanbear'},{"name":"Stalin","hp":100,"level":1,"power":50,"defense":40,"speed":60,"sprite":'lorslara'},{"name":"Ebin","hp":100,"level":1,"power":50,"defense":40,"speed":60,"sprite":'squadlider'},{"name":"Mao","hp":100,"level":1,"power":50,"defense":40,"speed":60,"sprite":'mongolbear'},{"name":"Uusi mene","hp":100,"level":1,"power":50,"defense":40,"speed":60,"sprite":'mongol'},{"name":"Hintti","hp":50,"level":15,"power":60,"defense":50,"speed":70,'sprite':'uusimene'}] self.selectedMene=getDefaultMeneID() for i in range(6): if i < len(self.menes): if self.menes[i]["id"]==self.selectedMene: menebutton = Button("",on_press=self.updateWindow,width=64,height=64, argument=self.menes[i]["id"],texture=g.gameEngine.resManager.meneSprites[self.menes[i]["sprite"]]["portrait"],is_pressed=True,outline='menewindowbutton') else: menebutton = Button("",on_press=self.updateWindow,width=64,height=64, argument=self.menes[i]["id"],texture=g.gameEngine.resManager.meneSprites[self.menes[i]["sprite"]]["portrait"],is_pressed=False,outline='menewindowbutton') nameLabel = Label(self.menes[i]["name"],bold=True,color=g.npcColor) levelLabel = Label("Lvl " + str(self.menes[i]["level"]),color=g.whiteColor,font_size=g.theme["font_size_small"]) defaultMeneLabel=None if self.menes[i]["defaultmene"]==1: defaultMeneLabel= Label('Default Mene',color=g.whiteColor,font_size=g.theme["font_size_small"]) #self.meneCont.append(HorizontalContainer(content=[menebutton,VerticalContainer(content=[nameLabel,levelLabel,defaultMeneLabel],align=HALIGN_LEFT)],align=HALIGN_CENTER)) #else: self.meneCont.append(HorizontalContainer(content=[menebutton,VerticalContainer(content=[nameLabel,levelLabel,defaultMeneLabel],align=HALIGN_LEFT)],align=HALIGN_CENTER)) else: menebutton = Button("",width=64,height=64,is_pressed=False,path='menewindowbutton',disabled=True) self.meneCont.append(menebutton) self.menelisting = VerticalContainer(content=[label1,VerticalContainer(content=self.meneCont,align=HALIGN_LEFT)]) properties=Label("Mene Properties",bold=True,color=g.loginFontColor) #horzCont = HorizontalContainer(content=[properties,closeBtn]) nameinfoLabel = Label("Name:",color=g.whiteColor) self.selectedNAME = Label("Uusi mene",bold=True,color=g.npcColor) levelinfoLabel = Label("Level:",color=g.whiteColor) self.selectedLevel = Label("0",bold=True,color=g.npcColor) hpinfoLabel = Label("HP:",color=g.whiteColor) self.selectedHp = Label("0",bold=True,color=g.npcColor) xpinfoLabel = Label("XP:",color=g.whiteColor) #self.selectedXp = Label("0",bold=True,color=g.npcColor) attackinfoLabel = Label("Power:",color=g.whiteColor) self.selectedAttack = Label("0",bold=True,color=g.npcColor) self.hpBar = HpBar() self.defaultButton = HighlightedButton("Set Default Mene :D",argument=None,on_release=makeDefaultMene) self.xpBar = HpBar(type="xp",height=20,width=100) defenseinfoLabel = Label("Defense:",color=g.whiteColor) self.selectedDefense = Label("0",bold=True,color=g.npcColor) speedinfoLabel = Label("Speed:",color=g.whiteColor) self.selectedSpeed = Label("0",bold=True,color=g.npcColor) #selectTheme = Theme({'uusimene': { # "image": { # "source": 'uusimene_front.png' # }, # "gui_color": [255,255,255,255] # } # },resources_path=g.dataPath+'/menes/' # ) self.picture = Graphic(texture=g.gameEngine.resManager.meneSprites['uusimene']['front']) abilities = ['burger', 'burger'] #abilityTheme = self.constructAbilityTheme(abilities) abilityButtons=[] for i in xrange(4): #if i<len(abilities): # self.abilityButtons.append(HoverGraphic(width=50,height=50,path=abilities[i],alternative=abilityTheme,outline='abilityoutline',hover=onHover,hoveringType=HOVERING_ABILITY,arguments={'name':'Burger Attack','type':'Attack','info':'Throws a burger at the enemy. Deals X damage.'})) #else: abilityButtons.append(Graphic(width=50,height=50,path='abilityoutline')) infoCont1 = VerticalContainer([nameinfoLabel,levelinfoLabel,xpinfoLabel],align=HALIGN_LEFT) infoCont2 = VerticalContainer([attackinfoLabel,defenseinfoLabel,speedinfoLabel],align=HALIGN_LEFT) statsCont1 = VerticalContainer([self.selectedNAME,self.selectedLevel,self.xpBar],align=HALIGN_LEFT) statsCont2 = VerticalContainer([self.selectedAttack,self.selectedDefense,self.selectedSpeed],align=HALIGN_LEFT) infoAndStatsCont = HorizontalContainer([infoCont1,statsCont1,infoCont2,statsCont2]) self.abilityCont = HorizontalContainer(abilityButtons,padding=10) rightFrame = VerticalContainer(content=[properties,self.picture,self.hpBar,infoAndStatsCont,self.abilityCont,self.defaultButton]) total = HorizontalContainer(content=[self.menelisting,Spacer(30,0),rightFrame,closeBtn],align=VALIGN_TOP) Manager.__init__(self, Frame(total), window=g.screen, batch=g.guiBatch, is_movable=False, anchor=ANCHOR_LEFT, offset=(40,int(g.SCREEN_HEIGHT*g.WINDOW_POSY_RELATIVE)), theme=g.theme) self.changeInfos(self.selectedMene)
def __init__(self): friendBtn = HighlightedButton("", on_release=self.openFriends, width=32, height=32, path='btn_friendwindow') ignoreBtn = HighlightedButton("", on_release=self.openIgnores, width=32, height=32, path='btn_ignorewindow') #meneBtn = HighlightedButton("",on_release=self.openMenes,width=50,height=50,path='es') meneBtn = HighlightedButton("", on_release=self.openMenes, width=50, height=50, path='menes') fightBtn = HighlightedButton("", on_release=self.openMenes, width=50, height=50, path='es') if g.latencyType == PING_TYPE_GREEN: path = 'ping_green' elif g.latencyType == PING_TYPE_YELLOW: path = 'ping_yellow' else: path = 'ping_red' self.latencyBtn = HoverGraphic(width=15, height=32, path=path, hover=onHover, hoveringType=HOVERING_PING) guildBtn = HighlightedButton("", on_release=self.openGuild, width=32, height=32, path='guild') settingsBtn = HighlightedButton("", on_release=self.openSettings, width=32, height=32, path='settings') self.mailBtn = HighlightedButton("", on_release=self.openMail, width=32, height=32, path='mail') bagBtn = HoverGraphic(width=32, height=32, path='bag', hover=onHover, hoveringType=HOVERING_BAG, showHighlight=True) self.horzCont = HorizontalContainer(content=[ friendBtn, ignoreBtn, meneBtn, fightBtn, guildBtn, self.latencyBtn, settingsBtn, bagBtn ], align=VALIGN_BOTTOM) Manager.__init__(self, self.horzCont, window=g.screen, batch=g.guiBatch, is_movable=False, anchor=ANCHOR_BOTTOM, offset=(0, 20), theme=g.theme) if len(g.mails) > 0: self.addMail()
def __init__(self): g.guildWindowOpened = True closeBtn = HighlightedButton("", on_release=self.delete, width=19, height=19, path='delete') if g.guildName is None: label1 = Label("Guild", bold=True, color=g.loginFontColor) horzCont = HorizontalContainer(content=[label1, None, closeBtn]) label = Label("You are not in a guild", color=g.loginFontColor) createBtn = HighlightedButton("Create Guild", on_release=self.createGuild, width=120, height=25) frameContent = VerticalContainer( content=[horzCont, label, createBtn]) else: label1 = Label(g.guildName, bold=True, color=g.loginFontColor) horzCont = HorizontalContainer(content=[label1, None, closeBtn]) onlineMembers = [] offlineMembers = [] for c in guildList: if c[2] == 1: onlineMembers.append([c[0], c[1]]) else: offlineMembers.append([c[0], c[1]]) onlineMembers.sort() offlineMembers.sort() members = [] for c in onlineMembers: if c[1] == GUILD_MODERATOR: font_color = g.modColor elif c[1] == GUILD_ADMIN: font_color = g.adminColorLighter else: font_color = g.loginFontColor label = HighlightedButton(c[0], width=150, height=24, path='baroutline_btn', font_color=font_color, on_release=self.constructSelect, argument=c[0], align=HALIGN_LEFT) #whisperBtn = HighlightedButton("",on_release=self.whisper,width=28,height=24,path='chatwhisper',argument=c[0]) #if c[1]==GUILD_MODERATOR: # label_extra=Label('#Mod#',color=g.modColor) #elif c[1]==GUILD_ADMIN: # label_extra=Label('#Admin#',color=g.adminColorLighter) #else: label_extra = None members.append( HorizontalContainer(content=[label, label_extra])) for c in offlineMembers: if c[1] == GUILD_MODERATOR: font_color = g.errorColor elif c[1] == GUILD_ADMIN: font_color = g.adminColor else: font_color = g.npcColorLighter label = HighlightedButton(c[0], width=150, height=24, path='baroutline_btn', font_color=font_color, on_release=self.constructSelect, argument=c[0], align=HALIGN_LEFT) members.append(label) buttons = [] print g.myGuildAccess if g.myGuildAccess > GUILD_MEMBER: buttons.append( HighlightedButton("Invite Player", on_release=invitePlayerGuildPopup, width=100, height=24)) #if g.myGuildAccess==GUILD_ADMIN: # buttons.append(HighlightedButton("Guild Settings",on_release=openSettingsGuild,width=100,height=24)) #leaveBtn = HighlightedButton("Leave Guild",on_release=self.leaveBtn,width=80,height=24) #addBtn = HighlightedButton("",on_release=self.addFriend,width=24,height=24,path='friendadd') frameContent = VerticalContainer(content=[ horzCont, Scrollable(height=600, width=400, content=VerticalContainer( content=members, align=HALIGN_LEFT, padding=0)), HorizontalContainer(buttons) ]) #horzCont = HorizontalContainer(content=[label1,closeBtn]) frame = Frame(frameContent) Manager.__init__( self, frame, window=g.screen, batch=g.guiBatch, is_movable=False, anchor=ANCHOR_LEFT, offset=(40, int(g.SCREEN_HEIGHT * g.WINDOW_POSY_RELATIVE)), theme=g.theme)
def __init__(self): g.gameSettingsWindowOpened = True self.mouseoverPaint = g.selectPaint self.hoverPaint = g.hoverPaint self.musicEnabled = g.MUSIC self.musicVolume = g.MUSICVOLUME self.soundEnabled = g.SOUND self.soundVolume = g.SOUNDVOLUME titleText = Label("Game Settings", color=g.loginFontColor, font_size=g.theme["font_size"] + 2) mouseoverBtn = Checkbox("Paint tile select", on_press=self.mouseoverSelect, is_pressed=self.mouseoverPaint, align=HALIGN_LEFT, width=24, height=24) hoverBtn = Checkbox("Paint hover players", on_press=self.hoverSelect, is_pressed=self.hoverPaint, align=HALIGN_LEFT) audioEnabled = Checkbox("Enable music", on_press=self.musicSelect, is_pressed=self.musicEnabled, align=HALIGN_LEFT) musicVolume = Label("Music volume") musicSlider = HorizontalSlider(on_set=self.musicVolumeChange, value=self.musicVolume) self.musicVolumeNumber = Label('%.2f' % self.musicVolume) soundEnabled = Checkbox("Enable sounds", on_press=self.soundSelect, is_pressed=self.soundEnabled, align=HALIGN_LEFT) soundVolume = Label("Sound volume") soundSlider = HorizontalSlider(on_set=self.soundVolumeChange, value=self.soundVolume) self.soundVolumeNumber = Label('%.2f' % self.soundVolume) horz2 = HorizontalContainer( [musicVolume, musicSlider, self.musicVolumeNumber], padding=0) horz3 = HorizontalContainer( [soundVolume, soundSlider, self.soundVolumeNumber], padding=0) discardBtn = HighlightedButton(label="Discard", on_release=self.delete, width=120, height=30) saveBtn = HighlightedButton(label="Save", on_release=self.onSave, width=120, height=30) horzBtn = HorizontalContainer([discardBtn, saveBtn]) Manager.__init__(self, Frame( VerticalContainer([ titleText, mouseoverBtn, hoverBtn, audioEnabled, horz2, soundEnabled, horz3, horzBtn ])), window=g.screen, batch=g.guiBatch, theme=g.theme, is_movable=False)
def __init__(self): w1 = int(350 * (g.SCREEN_WIDTH / 1920.)) h1 = int(300 * (g.SCREEN_HEIGHT / 1080.)) if w1 > 300: g.chatTheme["font_size"] = 11 g.theme["font_size"] = 11 g.theme["button"]["font_size"] = 11 elif w1 > 250: g.chatTheme["font_size"] = 12 g.theme["font_size"] = 12 g.theme["button"]["font_size"] = 12 w1 = int(w1 * 1.1) elif w1 > 200: g.chatTheme["font_size"] = 11 g.theme["font_size"] = 11 g.theme["button"]["font_size"] = 11 w1 = int(w1 * 1.2) elif w1 > 175: g.chatTheme["font_size"] = 10 g.theme["font_size"] = 10 g.theme["button"]["font_size"] = 10 w1 = int(w1 * 1.3) else: g.chatTheme["font_size"] = 9 g.theme["font_size"] = 9 g.theme["button"]["font_size"] = 9 w1 = int(w1 * 1.3) self.chatInput = TextInput(text="", padding=0, length=16, max_length=MAX_CHAT_INPUT, width=w1 - 5 - 50) sendButton = HighlightedButton(label="Send", on_release=self.sendMessage, width=50, height=35) realtext = '{font_size ' + str( g.chatTheme["font_size"]) + '}{background_color ' + str( g.postBgColor ) + '}{font_name "' + g.chatTheme["font"] + '"}{wrap "char"} ' document = pyglet.text.decode_attributed(realtext) self.textArea = Document(document, width=w1, height=h1, background=True, font_size=g.chatTheme["font_size"], font_name=g.chatTheme["font"], chat=True) vertCont = VerticalContainer(content=[ self.textArea, HorizontalContainer(content=[self.chatInput, sendButton]) ], align=HALIGN_LEFT) Manager.__init__(self, vertCont, window=g.screen, batch=g.guiBatch, theme=g.chatTheme, anchor=ANCHOR_BOTTOM_LEFT, offset=(g.SCREEN_WIDTH * 0.05, g.SCREEN_HEIGHT * 0.1), is_movable=False)
def __init__(self): g.friendWindowOpened = True label1 = Label("Friends List", bold=True, color=g.loginFontColor) closeBtn = HighlightedButton("", on_release=self.delete, width=19, height=19, path='delete') onlineFriends = [] offlineFriends = [] for c in friendList: if c[1] == 1: onlineFriends.append(c[0]) else: offlineFriends.append(c[0]) onlineFriends.sort() offlineFriends.sort() friends = [] for c in onlineFriends: label = HighlightedButton(c, width=150, height=24, path='baroutline_btn', on_release=self.constructSelect, argument=c, align=HALIGN_LEFT, font_color=g.loginFontColor) friends.append(label) for c in offlineFriends: label = HighlightedButton(c, width=150, height=24, path='baroutline_btn', on_release=self.constructSelect, argument=c, align=HALIGN_LEFT, font_color=g.npcColorLighter) friends.append(label) addBtn = HighlightedButton("Add Friend", on_release=addFriendPopup, width=100, height=24) horzCont = HorizontalContainer(content=[label1, None, closeBtn]) frame = Frame( VerticalContainer(content=[ horzCont, Scrollable(height=400, width=400, content=VerticalContainer(content=friends, align=HALIGN_LEFT, padding=0)), addBtn ])) Manager.__init__( self, frame, window=g.screen, batch=g.guiBatch, is_movable=False, anchor=ANCHOR_LEFT, offset=(40, int(g.SCREEN_HEIGHT * g.WINDOW_POSY_RELATIVE)), theme=g.theme)
def initCreateChar(self): def checkClothingOk(): found = 0 #print g.clothingPairs for clothes in g.clothingPairs: found = 0 if clothes["type"] == 'exclude': if 'shirt' in clothes and clothes[ 'shirt'] == myPlayer.shirt: found += 1 if 'hat' in clothes and clothes['hat'] == myPlayer.hat: found += 1 if 'face' in clothes and clothes['face'] == myPlayer.face: found += 1 if 'shoes' in clothes and clothes[ 'shoes'] == myPlayer.shoes: found += 1 if found >= 2: return False return True def hatLeft(event): myPlayer.hat -= 1 if myPlayer.hat < 0: myPlayer.hat = g.MAX_HAT - 1 if not checkClothingOk(): hatLeft(None) self.changing = True def hatRight(event): myPlayer.hat += 1 if myPlayer.hat >= g.MAX_HAT: myPlayer.hat = 0 if not checkClothingOk(): hatRight(None) self.changing = True def faceLeft(event): myPlayer.face -= 1 if myPlayer.face < 0: myPlayer.face = g.MAX_FACE - 1 if not checkClothingOk(): faceLeft(None) self.changing = True def faceRight(event): myPlayer.face += 1 if myPlayer.face >= g.MAX_FACE: myPlayer.face = 0 if not checkClothingOk(): faceRight(None) self.changing = True def shirtLeft(event): myPlayer.shirt -= 1 if myPlayer.shirt < 0: myPlayer.shirt = g.MAX_SHIRT - 1 if not checkClothingOk(): shirtLeft(None) self.changing = True def shirtRight(event): myPlayer.shirt += 1 if myPlayer.shirt >= g.MAX_SHIRT: myPlayer.shirt = 0 if not checkClothingOk(): shirtRight(None) self.changing = True def shoesLeft(event): myPlayer.shoes -= 1 if myPlayer.shoes < 0: myPlayer.shoes = g.MAX_SHOES - 1 if not checkClothingOk(): shoesLeft(None) self.changing = True def shoesRight(event): myPlayer.shoes += 1 if myPlayer.shoes >= g.MAX_SHOES: myPlayer.shoes = 0 if not checkClothingOk(): shoesRight(None) self.changing = True def facingLeft(event): myPlayer.dir -= 1 if myPlayer.dir < DIR_DOWN: myPlayer.dir = DIR_RIGHT myPlayer.tmpPlayer.spriteFacing = 8 elif myPlayer.dir == DIR_UP: myPlayer.tmpPlayer.spriteFacing = 5 elif myPlayer.dir == DIR_LEFT: myPlayer.tmpPlayer.spriteFacing = 3 elif myPlayer.dir == DIR_DOWN: myPlayer.tmpPlayer.spriteFacing = 0 #myPlayer.tmpPlayer.spriteFacing-=1 #if myPlayer.tmpPlayer.spriteFacing<0: # myPlayer.tmpPlayer.spriteFacing=9 def facingRight(event): myPlayer.dir += 1 if myPlayer.dir > DIR_RIGHT: myPlayer.dir = DIR_DOWN myPlayer.tmpPlayer.spriteFacing = 0 elif myPlayer.dir == DIR_UP: myPlayer.tmpPlayer.spriteFacing = 5 elif myPlayer.dir == DIR_LEFT: myPlayer.tmpPlayer.spriteFacing = 3 elif myPlayer.dir == DIR_RIGHT: myPlayer.tmpPlayer.spriteFacing = 8 def saveClothes(event): self.ready = True saveBtn.disabled = True self.changing = True label = Label("Create Character", color=g.postColor, font_size=18) name = Label(myPlayer.name, bold=True, color=g.nameColor, font_size=18) hatBtnLeft = HighlightedButton(label="<-", on_release=hatLeft, width=25, height=25, font_size=13) hatBtnRight = HighlightedButton(label="->", on_release=hatRight, width=25, height=25, font_size=13) hatHorz = HorizontalContainer( content=[hatBtnLeft, Spacer(256 - TILESIZE * 2, 0), hatBtnRight]) faceBtnLeft = HighlightedButton(label="<-", on_release=faceLeft, width=25, height=25, font_size=13) faceBtnRight = HighlightedButton(label="->", on_release=faceRight, width=25, height=25, font_size=13) faceHorz = HorizontalContainer( content=[faceBtnLeft, Spacer(256 - TILESIZE * 2, 0), faceBtnRight]) shirtBtnLeft = HighlightedButton(label="<-", on_release=shirtLeft, width=25, height=25, font_size=13) shirtBtnRight = HighlightedButton(label="->", on_release=shirtRight, width=25, height=25, font_size=13) shirtHorz = HorizontalContainer(content=[ shirtBtnLeft, Spacer(256 - TILESIZE * 2, 0), shirtBtnRight ]) shoesBtnLeft = HighlightedButton(label="<-", on_release=shoesLeft, width=25, height=25, font_size=13) shoesBtnRight = HighlightedButton(label="->", on_release=shoesRight, width=25, height=25, font_size=13) shoesHorz = HorizontalContainer(content=[ shoesBtnLeft, Spacer(256 - TILESIZE * 2, 0), shoesBtnRight ]) facingBtnLeft = HighlightedButton(label="<---", on_release=facingLeft, width=30, height=30, font_size=13) facingBtnRight = HighlightedButton(label="--->", on_release=facingRight, width=30, height=30, font_size=13) facingHorz = HorizontalContainer( content=[facingBtnLeft, facingBtnRight]) saveBtn = HighlightedButton(label="Save", on_release=saveClothes, width=100, height=40, font_size=16) frame = Frame(VerticalContainer(content=[ label, Spacer(256 - TILESIZE, TILESIZE / 4), name, Spacer(0, 8), hatHorz, faceHorz, shirtHorz, shoesHorz, facingHorz, Spacer(0, 8), saveBtn ]), path='frame_npc_talk') self.charMan = Manager(frame, window=self.screen, batch=g.guiBatch, theme=g.theme, offset=(0, 0), is_movable=False)
def __init__(self, name, text, actionType=0): g.npcTalkWindowOpened = True g.cursorRound = -1 self.name = name sendTalkToNpc(name) if actionType == NPC_ACTIONTYPE_SHOP: namecolor = g.npcColor postcolor = g.whiteColor path = 'frame_npc_talk_shop' else: namecolor = g.npcColorLighter postcolor = g.postColor path = 'frame_npc_talk' label1 = Label(name, color=namecolor, bold=True) closeBtn = HighlightedButton("", on_release=self.delete, width=19, height=19, path='delete') horzCont = HorizontalContainer(content=[label1, None, closeBtn]) self.yourmoney = None w1 = int(300 * (g.SCREEN_WIDTH / 1920.)) + 50 h1 = int(500 * (g.SCREEN_HEIGHT / 1080.)) textArr = text.split('\n\n') realText = "" for c in textArr: if c[0] == '>': realText += '{color ' + str( g.greentextColor) + '}' + c + '\n\n' else: realText += '{color ' + str(postcolor) + '}' + c + '\n\n' realText = realText[:-2] document = pyglet.text.decode_attributed(realText) self.textArea = Document(document, width=w1, height=h1, background=False, font_size=g.chatTheme["font_size"], font_name=g.chatTheme["font"]) if actionType == NPC_ACTIONTYPE_HEAL: healButton = HighlightedButton("Heal my menes", on_release=self.healButton) okButton = HighlightedButton("Goodbye", on_release=self.delete) cont = VerticalContainer(content=[ horzCont, self.textArea, HorizontalContainer([healButton, okButton]) ]) elif actionType == NPC_ACTIONTYPE_SHOP: #TODO: When more items, do a loop that adds then dynamically instead of statically like this disabled = False if Items["es"]["cost"] > g.moneyAmount: # print "TAPAHTU" disabled = True self.esButton = AbilityButton( width=50, height=50, argument=Items["es"]["id"], disabled=disabled, on_press=buyItem, texture=g.gameEngine.resManager.items[Items["es"]["sprite"]], outline='abilityoutline', hover=onHover, hoveringType=HOVERING_ITEM, arguments={ 'name': Items["es"]["name"], 'info': Items["es"]["info"], "args": () }) nameLabel = Label(Items["es"]["name"], color=g.npcColor) esCost = Items["es"]["cost"] / 100.0 costLabel = Label("%.2f" % esCost) euroPicture = Graphic("euro") costCont = HorizontalContainer(content=[costLabel, euroPicture]) infoCont = VerticalContainer( content=[Spacer(), nameLabel, costCont], align=HALIGN_LEFT) itemCont = HorizontalContainer(content=[self.esButton, infoCont]) moneyTmp = g.moneyAmount / 100.0 self.yourmoney = Label('%.2f' % moneyTmp) yourmoneyCont = HorizontalContainer( content=[self.yourmoney, Graphic("euro")]) self.yourES = Label('%s' % g.esAmount) yourESCont = HorizontalContainer( content=[self.yourES, Graphic("es_icon")]) okButton = HighlightedButton("Goodbye", on_release=self.delete) cont = VerticalContainer(content=[ horzCont, self.textArea, itemCont, Spacer(0, 20), HorizontalContainer(content=[ Spacer(), VerticalContainer(content=[yourmoneyCont, yourESCont], align=HALIGN_RIGHT) ]), okButton ]) else: okButton = HighlightedButton("Goodbye", on_release=self.delete) cont = VerticalContainer( content=[horzCont, self.textArea, okButton]) frame = Frame(cont, path=path) Manager.__init__( self, frame, window=g.screen, batch=g.guiBatch, is_movable=False, anchor=ANCHOR_LEFT, offset=(40, int(g.SCREEN_HEIGHT * g.WINDOW_POSY_RELATIVE)), theme=g.theme)
def initManagers(self): g.gameEngine.changeMusicSong(LOGINMENUSONG) g.gameEngine.musicManager.volume = g.MUSICVOLUME self.skyHeight = int(0.4592592 * g.SCREEN_HEIGHT) self.skyWidth = int(1.625 * g.SCREEN_WIDTH) self.ukkeliSprite._set_scale(self.screen.width / 1920.0) #self.ukkeliSprite.anchor_x=self.ukkeliSprite.width//2 #self.ukkeliSprite.anchor_y=self.ukkeliSprite.height//2 self.ukkeliSprite.x = 0.5 * self.screen.width self.ukkeliSprite2._set_scale(self.screen.width / 1920.0) self.ukkeliSprite2.x = 0.5 * self.screen.width #self.ukkeliSprite2.anchor_x=self.ukkeliSprite2.width//2 #self.ukkeliSprite2.anchor_y=self.ukkeliSprite2.height//2 self.logo._set_scale(self.screen.width / 1920.0) self.logo.x = (self.screen.width - self.l1.width * (self.screen.width / 1920.0)) / 2 self.logo.y = (self.screen.height - 350) * (1080.0 / self.screen.height) self.charTick = int( (datetime.datetime.utcnow() - datetime.datetime(1970, 1, 1)).total_seconds() * 1000) label = Label("Username", color=g.loginFontColor, font_size=18) label1 = Label("Password", color=g.loginFontColor, font_size=18) self.logininput = TextInput(text="", padding=2, length=16, max_length=16, width=220, font_size=18) self.passwordinput = TextInput(text="", font=g.defaultPWFont.name, padding=0, length=21.5, width=220, font_size=18) self.button = HighlightedButton(label="Login", on_release=self.tryLogin, width=210, height=50, font_size=16) vertCont = VerticalContainer([ label, self.logininput, Spacer(min_height=10), label1, self.passwordinput, Spacer(min_height=40), self.button ]) versionInfo = Label("Version: " + GAME_VERSION, color=(0, 0, 0, 255), font_size=10) self.exitButton = HighlightedButton(label="Exit", on_release=self.exit, width=100, height=40, font_size=14) vertCont2 = VerticalContainer([versionInfo, self.exitButton]) self.man1 = Manager(vertCont, window=self.screen, batch=g.guiBatch, theme=g.theme, offset=(0, -50), is_movable=False) self.man2 = Manager(vertCont2, window=self.screen, batch=g.guiBatch, theme=g.theme, anchor=ANCHOR_BOTTOM_RIGHT, offset=(-50, 50), is_movable=False) self.man1.set_focus(self.logininput)
def __init__(self): g.keybindingsWindowOpened = True self.resW = g.SCREEN_WIDTH self.resH = g.SCREEN_HEIGHT self.fullscreen = g.FULLSCREEN self.vsync = g.VSYNC self.screenSelected = g.SCREENSELECTED screens = pyglet.window.get_platform().get_default_display( ).get_screens() screenopts = [] for i in range(len(screens)): screenopts.append(str(i)) if int(self.screenSelected) >= 0 and int( self.screenSelected) < len(screens): screenopts.insert(0, str(self.screenSelected)) options = [] modes = pyglet.window.get_platform().get_default_display( ).get_default_screen().get_modes() for i in modes: if i.width >= 1024 and i.height >= 720: opt = str(int(i.width)) + ':' + str(int(i.height)) if opt not in options: options.append(opt) options.insert(0, str(g.SCREEN_WIDTH) + ':' + str(g.SCREEN_HEIGHT)) titleText = Label("Video Settings", color=g.loginFontColor, font_size=g.theme["font_size"] + 2) windowTypeInfo = Label("Window mode") if g.FULLSCREEN: windowType = Dropdown(['Fullscreen', 'Windowed'], on_select=self.selection) else: windowType = Dropdown(['Windowed', 'Fullscreen'], on_select=self.selection) horz = HorizontalContainer([windowTypeInfo, windowType]) resolutionInfo = Label("Resolution") resolutionType = Dropdown(options, on_select=self.resSelect) horz1 = HorizontalContainer([resolutionInfo, resolutionType]) vsyncBtn = Checkbox("VSync", on_press=self.vsyncSelect, is_pressed=self.vsync, align=HALIGN_LEFT) resolutionInfo = Label("Monitor") resolutionType = Dropdown(screenopts, on_select=self.screenSelect) horz3 = HorizontalContainer([resolutionInfo, resolutionType]) discardBtn = HighlightedButton(label="Discard", on_release=self.delete, width=120, height=30) saveBtn = HighlightedButton(label="Save", on_release=self.onSave, width=120, height=30) horzBtn = HorizontalContainer([discardBtn, saveBtn]) Manager.__init__(self, Frame( VerticalContainer([ titleText, horz, horz1, vsyncBtn, horz3, horzBtn ])), window=g.screen, batch=g.guiBatch, theme=g.theme, is_movable=False)
class MeneWindow(Manager): def __init__(self): t1=time.time()*1000 g.meneWindowOpened = True label1=Label("My Menes",bold=True,color=g.loginFontColor) closeBtn =HighlightedButton("",on_release=self.delete,width=19,height=19,path='delete') self.meneCont= [] self.menes=[] self.established=False for c in meneList: self.menes.append({"name":c.name, "hp":c.hp, "maxhp":c.maxhp, "xp":c.xp, "level":c.level, "power":c.power, "id":c.ID, "defense":c.defense, "speed":c.speed, "attack1":c.attack1, "attack2":c.attack2, "attack3":c.attack3, "attack4":c.attack4, "sprite":c.spriteName, "defaultmene":c.defaultMene}) #self.menes = [{"name":"Hitler","hp":100,"level":1,"power":50,"defense":40,"speed":60,"sprite":'americanbear'},{"name":"Stalin","hp":100,"level":1,"power":50,"defense":40,"speed":60,"sprite":'lorslara'},{"name":"Ebin","hp":100,"level":1,"power":50,"defense":40,"speed":60,"sprite":'squadlider'},{"name":"Mao","hp":100,"level":1,"power":50,"defense":40,"speed":60,"sprite":'mongolbear'},{"name":"Uusi mene","hp":100,"level":1,"power":50,"defense":40,"speed":60,"sprite":'mongol'},{"name":"Hintti","hp":50,"level":15,"power":60,"defense":50,"speed":70,'sprite':'uusimene'}] self.selectedMene=getDefaultMeneID() for i in range(6): if i < len(self.menes): if self.menes[i]["id"]==self.selectedMene: menebutton = Button("",on_press=self.updateWindow,width=64,height=64, argument=self.menes[i]["id"],texture=g.gameEngine.resManager.meneSprites[self.menes[i]["sprite"]]["portrait"],is_pressed=True,outline='menewindowbutton') else: menebutton = Button("",on_press=self.updateWindow,width=64,height=64, argument=self.menes[i]["id"],texture=g.gameEngine.resManager.meneSprites[self.menes[i]["sprite"]]["portrait"],is_pressed=False,outline='menewindowbutton') nameLabel = Label(self.menes[i]["name"],bold=True,color=g.npcColor) levelLabel = Label("Lvl " + str(self.menes[i]["level"]),color=g.whiteColor,font_size=g.theme["font_size_small"]) defaultMeneLabel=None if self.menes[i]["defaultmene"]==1: defaultMeneLabel= Label('Default Mene',color=g.whiteColor,font_size=g.theme["font_size_small"]) #self.meneCont.append(HorizontalContainer(content=[menebutton,VerticalContainer(content=[nameLabel,levelLabel,defaultMeneLabel],align=HALIGN_LEFT)],align=HALIGN_CENTER)) #else: self.meneCont.append(HorizontalContainer(content=[menebutton,VerticalContainer(content=[nameLabel,levelLabel,defaultMeneLabel],align=HALIGN_LEFT)],align=HALIGN_CENTER)) else: menebutton = Button("",width=64,height=64,is_pressed=False,path='menewindowbutton',disabled=True) self.meneCont.append(menebutton) self.menelisting = VerticalContainer(content=[label1,VerticalContainer(content=self.meneCont,align=HALIGN_LEFT)]) properties=Label("Mene Properties",bold=True,color=g.loginFontColor) #horzCont = HorizontalContainer(content=[properties,closeBtn]) nameinfoLabel = Label("Name:",color=g.whiteColor) self.selectedNAME = Label("Uusi mene",bold=True,color=g.npcColor) levelinfoLabel = Label("Level:",color=g.whiteColor) self.selectedLevel = Label("0",bold=True,color=g.npcColor) hpinfoLabel = Label("HP:",color=g.whiteColor) self.selectedHp = Label("0",bold=True,color=g.npcColor) xpinfoLabel = Label("XP:",color=g.whiteColor) #self.selectedXp = Label("0",bold=True,color=g.npcColor) attackinfoLabel = Label("Power:",color=g.whiteColor) self.selectedAttack = Label("0",bold=True,color=g.npcColor) self.hpBar = HpBar() self.defaultButton = HighlightedButton("Set Default Mene :D",argument=None,on_release=makeDefaultMene) self.xpBar = HpBar(type="xp",height=20,width=100) defenseinfoLabel = Label("Defense:",color=g.whiteColor) self.selectedDefense = Label("0",bold=True,color=g.npcColor) speedinfoLabel = Label("Speed:",color=g.whiteColor) self.selectedSpeed = Label("0",bold=True,color=g.npcColor) #selectTheme = Theme({'uusimene': { # "image": { # "source": 'uusimene_front.png' # }, # "gui_color": [255,255,255,255] # } # },resources_path=g.dataPath+'/menes/' # ) self.picture = Graphic(texture=g.gameEngine.resManager.meneSprites['uusimene']['front']) abilities = ['burger', 'burger'] #abilityTheme = self.constructAbilityTheme(abilities) abilityButtons=[] for i in xrange(4): #if i<len(abilities): # self.abilityButtons.append(HoverGraphic(width=50,height=50,path=abilities[i],alternative=abilityTheme,outline='abilityoutline',hover=onHover,hoveringType=HOVERING_ABILITY,arguments={'name':'Burger Attack','type':'Attack','info':'Throws a burger at the enemy. Deals X damage.'})) #else: abilityButtons.append(Graphic(width=50,height=50,path='abilityoutline')) infoCont1 = VerticalContainer([nameinfoLabel,levelinfoLabel,xpinfoLabel],align=HALIGN_LEFT) infoCont2 = VerticalContainer([attackinfoLabel,defenseinfoLabel,speedinfoLabel],align=HALIGN_LEFT) statsCont1 = VerticalContainer([self.selectedNAME,self.selectedLevel,self.xpBar],align=HALIGN_LEFT) statsCont2 = VerticalContainer([self.selectedAttack,self.selectedDefense,self.selectedSpeed],align=HALIGN_LEFT) infoAndStatsCont = HorizontalContainer([infoCont1,statsCont1,infoCont2,statsCont2]) self.abilityCont = HorizontalContainer(abilityButtons,padding=10) rightFrame = VerticalContainer(content=[properties,self.picture,self.hpBar,infoAndStatsCont,self.abilityCont,self.defaultButton]) total = HorizontalContainer(content=[self.menelisting,Spacer(30,0),rightFrame,closeBtn],align=VALIGN_TOP) Manager.__init__(self, Frame(total), window=g.screen, batch=g.guiBatch, is_movable=False, anchor=ANCHOR_LEFT, offset=(40,int(g.SCREEN_HEIGHT*g.WINDOW_POSY_RELATIVE)), theme=g.theme) self.changeInfos(self.selectedMene) def updateWindow(self,argument): for c in self.meneCont: try: if c.content[0].arg!=argument and c.content[0]._is_pressed: c.content[0].changeStateWithoutFnc() except: break for c in self.meneCont: try: if c.content[0].arg==argument and not c.content[0]._is_pressed: c.content[0].changeStateWithoutFnc() except: break self.changeInfos(argument) def constructAbilityButtons(self,a1,a2,a3,a4): if a1 is not None: self.abilityCont.add(HoverGraphic(width=50,height=50,outline='abilityoutline',hover=onHover,texture=g.gameEngine.resManager.abilities[a1.spriteName],hoveringType=HOVERING_ABILITY,arguments={'name':a1.name,'type':getAbilityTypeName(a1.abilityType),'info':a1.infotext,"args":(a1.power, a1.length)})) else: self.abilityCont.add(Graphic(width=50,height=50,path='abilityoutline')) if a2 is not None: self.abilityCont.add(HoverGraphic(width=50,height=50,outline='abilityoutline',texture=g.gameEngine.resManager.abilities[a2.spriteName],hover=onHover,hoveringType=HOVERING_ABILITY,arguments={'name':a2.name,'type':getAbilityTypeName(a2.abilityType),'info':a2.infotext,"args":(a2.power, a2.length)})) else: self.abilityCont.add(Graphic(width=50,height=50,path='abilityoutline')) if a3 is not None: self.abilityCont.add(HoverGraphic(width=50,height=50,outline='abilityoutline',texture=g.gameEngine.resManager.abilities[a3.spriteName],hover=onHover,hoveringType=HOVERING_ABILITY,arguments={'name':a3.name,'type':getAbilityTypeName(a3.abilityType),'info':a3.infotext,"args":(a3.power, a3.length)})) else: self.abilityCont.add(Graphic(width=50,height=50,path='abilityoutline')) if a4 is not None: self.abilityCont.add(HoverGraphic(width=50,height=50,outline='abilityoutline',texture=g.gameEngine.resManager.abilities[a4.spriteName],hover=onHover,hoveringType=HOVERING_ABILITY,arguments={'name':a4.name,'type':getAbilityTypeName(a4.abilityType),'info':a4.infotext,"args":(a4.power, a4.length)})) else: self.abilityCont.add(Graphic(width=50,height=50,path='abilityoutline')) def changeInfos(self,ID): selectedMene = None for c in self.menes: if c["id"]==ID: selectedMene=c #print selectedMene, self.selectedMene if selectedMene != None and (ID!=self.selectedMene or (ID==self.selectedMene and not self.established)): self.selectedMene=ID for i in reversed(range(len(self.abilityCont.content))): self.abilityCont.remove(self.abilityCont.content[0]) #self.abilityCont.unload_content() #for c in self.abilityCont.content: # self.abilityCont.remove() #for abilityButton in self.abilityButtons: # abilityButton.unload() #print self.abilityCont.__dict__ #for abilityButton in self.abilityButtons: # print abilityButton.__dict__ # self.abilityCont.remove(abilityButton) self.constructAbilityButtons(selectedMene["attack1"],selectedMene["attack2"],selectedMene["attack3"],selectedMene["attack4"]) #self.abilityCont.load_content() #self.abilityCont.remove(self.abilityButtons[0]) #self.abilityCont.add(Graphic(width=50,height=50,path='abilityoutline'),0) self.selectedNAME.set_text(selectedMene["name"]) self.selectedLevel.set_text(str(selectedMene["level"])) #self.selectedHp.set_text(str(selectedMene["hp"])+' / '+str(selectedMene["maxhp"])) self.hpBar.setHP(selectedMene["hp"],selectedMene["maxhp"]) self.xpBar.setHP(selectedMene["xp"]-selectedMene["level"]**3,(selectedMene["level"]+1)**3-selectedMene["level"]**3) #self.selectedXp.set_text(str(selectedMene["xp"])) self.selectedAttack.set_text(str(selectedMene["power"])) self.selectedDefense.set_text(str(selectedMene["defense"])) self.selectedSpeed.set_text(str(selectedMene["speed"])) if selectedMene["defaultmene"]==1: self.defaultButton._label._set_text("Dis is default mene") else: self.defaultButton._label._set_text("Set Default Mene :D") self.defaultButton.layout() self.defaultButton.arg=ID #selectTheme = Theme({selectedMene["sprite"]: { # "image": { # "source": selectedMene["sprite"]+'_front.png' # }, # "gui_color": [255,255,255,255] # } # },resources_path=g.dataPath+'/menes/' #) #self.picture._path=selectedMene["sprite"] #self.picture._alt=selectTheme self.picture.textureTmp = g.gameEngine.resManager.meneSprites[selectedMene["sprite"]]['front'] #self.picture.unload_graphics(False) self.picture.reload() self.picture.layout() self.established=True def delete(self,event): super(Manager,self).delete() g.meneWindowOpened = False if g.hoveringType==HOVERING_ABILITY: g.gameEngine.graphics.hoverWindow.delete(None) #def on_mouse_motion(self,x,y,dx,dy): # print self._hover