def getCymonPage( day, tag, adrtype, limit, offset): url = 'https://cymon.io/api/nexus/v1/blacklist/' url += adrtype + '/' + tag url += '/?days=' + day url += '&limit=' + limit url += '&offset=' + offset print 'URL: ', url headers = {'accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'accept-encoding':'gzip, deflate, sdch', 'accept-language':'vi,en;q=0.8', 'cache-control':'max-age=0', 'cookie':'__utmt=1; VT_PREFERRED_LANGUAGE=en; __utma=194538546.508165789.1453801379.1454133997.1454134465.7; __utmb=194538546.18.10.1454134465; __utmc=194538546; __utmz=194538546.1454134465.7.2.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=(not%20provided)', 'upgrade-insecure-requests':'1', 'user-agent':'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.97 Safari/537.36}'} r = requests.get(url, headers) raw = json.loads(r.text) result = raw['results'] if len(result) == 0: print '\t\b' for item in result: ShowProgress.show(result.index(item) + 1, len(result)) if not ('addr' in item.keys()): item['addr'] = item['name'] DBHelper.updateAddress({'address': item['addr'], 'address_type': adrtype}) return raw['count']
def change_text(self, button_index): text_screens = { 'btn_finances' : lambda:get_relations_text(VS.getPlayer()), 'btn_manifest' : lambda:get_manifest_text(VS.getPlayer()), 'btn_missions' : lambda:get_missions_text() } if button_index in text_screens: self.txt_screen.setText( text_screens[button_index]() ) self.txt_screen.show() self.picker_screen.hide() elif button_index == "btn_load": if self.mode != button_index: self.picker_screen.items = savelist() self.picker_screen.show() self.txt_screen.hide() elif self.picker_screen.selection is not None: ShowProgress.activateProgressScreen('loading',3) import dj_lib dj_lib.enable() game = self.picker_screen.items[self.picker_screen.selection].data if not Director.isUtf8SaveGame(game): alert = f' {game} is not UTF-8, convert it before loading' print(alert) self.alert_text = GUI.GUIStaticText(self.guiroom, 'txt_screen', alert, GUI.GUIRect(40, 60, 438, 100, 'pixel', (800,600)), color=GUI.GUIColor(255, 255, 255), bgcolor=GUI.GUIColor(0, 0, 0)) self.alert_text.show() return else: VS.loadGame(game) elif button_index == "btn_save": if self.mode != button_index: self.picker_screen.items = [GUI.GUISimpleListPicker.listitem("New Game",NewSaveGame)]+savelist() self.picker_screen.show() self.txt_screen.hide() elif self.picker_screen.visible and self.picker_screen.items[self.picker_screen.selection].data is not NewSaveGame: self.picker_screen.hide() self.txt_screen.setText( "\n"*7+ "Are you sure you want to overwrite the savegame?\n(%s)"% self.picker_screen.items[self.picker_screen.selection] +"\n"*3 +"Press SAVE again to do it." ) self.txt_screen.show() elif self.picker_screen.selection is not None: if self.picker_screen.items[self.picker_screen.selection].data is NewSaveGame: VS.saveGame(makeNewSaveName()) else: VS.saveGame(self.picker_screen.items[self.picker_screen.selection].data) self.picker_screen.items = [GUI.GUISimpleListPicker.listitem("New Game",NewSaveGame)]+savelist() self.picker_screen.show() self.txt_screen.hide() else: self.picker_screen.hide() self.txt_screen.hide() self.mode = button_index
def change_text(self, button_index): text_screens = { 'btn_finances': lambda: get_relations_text(VS.getPlayer()), 'btn_manifest': lambda: get_manifest_text(VS.getPlayer()), 'btn_missions': lambda: get_missions_text() } if button_index in text_screens: self.txt_screen.setText(text_screens[button_index]()) self.txt_screen.show() self.picker_screen.hide() elif button_index == "btn_load": if self.mode != button_index: self.picker_screen.items = savelist() self.picker_screen.show() self.txt_screen.hide() elif self.picker_screen.selection is not None: ShowProgress.activateProgressScreen('loading', 3) import dj_lib dj_lib.enable() VS.loadGame(self.picker_screen.items[ self.picker_screen.selection].data) elif button_index == "btn_save": if self.mode != button_index: self.picker_screen.items = [ GUI.GUISimpleListPicker.listitem("New Game", NewSaveGame) ] + savelist() self.picker_screen.show() self.txt_screen.hide() elif self.picker_screen.visible and self.picker_screen.items[ self.picker_screen.selection].data is not NewSaveGame: self.picker_screen.hide() self.txt_screen.setText( "\n" * 7 + "Are you sure you want to overwrite the savegame?\n(%s)" % self.picker_screen.items[self.picker_screen.selection] + "\n" * 3 + "Press SAVE again to do it.") self.txt_screen.show() elif self.picker_screen.selection is not None: if self.picker_screen.items[ self.picker_screen.selection].data is NewSaveGame: VS.saveGame(makeNewSaveName()) else: VS.saveGame(self.picker_screen.items[ self.picker_screen.selection].data) self.picker_screen.items = [ GUI.GUISimpleListPicker.listitem("New Game", NewSaveGame) ] + savelist() self.picker_screen.show() self.txt_screen.hide() else: self.picker_screen.hide() self.txt_screen.hide() self.mode = button_index
def ReloadUniverse(): global genUniverse, hasUniverse if cp >= 0: ShowProgress.activateProgressScreen("loading", force=True) debug.debug('Purging...') for i in fg_util.AllFactions(): fg_util.PurgeZeroShips(i) systemcount[i] = 0 debug.debug('StartSystemCount') ForEachSys(CountSystems) debug.debug(systemcount) debug.debug('EndSystemCount') genUniverse = 0 needNewUniverse = 0 curfaclist = fg_util.AllFactions() reflist = fg_util.ReadStringList(cp, "FactionRefList") if (reflist != curfaclist): needNewUniverse = 1 debug.debug('reflist is ' + str(reflist)) debug.debug('curfaclist is ' + str(curfaclist)) if (fg_util.HasLegacyFGFormat()): needNewUniverse = 1 debug.warn( 'save using legacy FG format... resetting universe to reformat' ) fg_util.DeleteLegacyFGLeftovers() if needNewUniverse: fg_util.WriteStringList(cp, "FactionRefList", curfaclist) debug.debug('generating ships... ... ...') GenerateAllShips( ) ###Insert number of flight groups and max ships per fg debug.debug('placing ships... ... ...') genUniverse = MakeUniverse() #now every system has distributed ships in the save data! else: GenerateAllShips() debug.debug("Second Load") for i in range(len(fgnames)): fg_util.origfgoffset = fgoffset[i] fgnames[i] = fg_util.TweakFGNames(origfgnames[i]) fgoffset[i] += 1 campaigns.loadAll(cp) hasUniverse = True #TODO: add ships to current system (for both modes) uru? ShowProgress.deactivateProgressScreen('loading') else: debug.error('fatal error: no cockpit')
def DeleteLegacyFGLeftovers(): # Legacy cleanup allsys = AllSystems() numsys = len(allsys) count = 0 oldpct = 0 for sys in allsys: count += 1 pct = count*100/len(allsys) if pct != oldpct: ShowProgress.setProgressBar("loading",pct/100.) ShowProgress.setProgressMessage("loading","Resetting old universe (%d%%)" % (pct)) oldpct = pct DeleteLegacyFGs(sys)
def ReloadUniverse(): global genUniverse, hasUniverse if cp>=0: ShowProgress.activateProgressScreen("loading",force=True) debug.debug('Purging...') for i in fg_util.AllFactions(): fg_util.PurgeZeroShips(i) systemcount[i]=0 debug.debug('StartSystemCount') ForEachSys(CountSystems) debug.debug(systemcount) debug.debug('EndSystemCount') genUniverse=0 needNewUniverse=0 curfaclist = fg_util.AllFactions() reflist = fg_util.ReadStringList(cp,"FactionRefList") if (reflist !=curfaclist): needNewUniverse = 1 debug.debug('reflist is '+str(reflist)) debug.debug('curfaclist is '+str(curfaclist)) if (fg_util.HasLegacyFGFormat()): needNewUniverse = 1 debug.warn('save using legacy FG format... resetting universe to reformat') fg_util.DeleteLegacyFGLeftovers() if needNewUniverse: fg_util.WriteStringList(cp,"FactionRefList",curfaclist) debug.debug('generating ships... ... ...') GenerateAllShips() ###Insert number of flight groups and max ships per fg debug.debug('placing ships... ... ...') genUniverse=MakeUniverse() #now every system has distributed ships in the save data! else: GenerateAllShips() debug.debug("Second Load") for i in xrange(len(fgnames)): fg_util.origfgoffset=fgoffset[i] fgnames[i]=fg_util.TweakFGNames(origfgnames[i]) fgoffset[i]+=1 campaigns.loadAll(cp) hasUniverse=True; #TODO: add ships to current system (for both modes) uru? ShowProgress.deactivateProgressScreen('loading') else: debug.error('fatal error: no cockpit')
def NewSystemHousekeeping(self,oldsystem,newsystem): print oldsystem,' IS NOW AT ',newsystem print oldsystem.split('/')[0] if oldsystem.split('/')[0]=='Special': print 'Showing splash screen!' ShowProgress.activateProgressScreen('loading', 0) fg_util.launchBases(newsystem) fg_util.launchUnits(newsystem) news.newNews() newquest = adventure.newAdventure (self.cur_player,oldsystem,newsystem) if (newquest): self.cur.quests+=[newquest] else: self.RestoreDroneMission() self.CalculateSignificantDistance() ShowProgress.deactivateProgressScreen('loading') VS.hideSplashScreen()
def change_text(self, button_index): text_screens = { 'btn_finances' : lambda:get_relations_text(VS.getPlayer()), 'btn_manifest' : lambda:get_manifest_text(VS.getPlayer()), 'btn_missions' : lambda:get_missions_text() } if button_index in text_screens: self.txt_screen.setText( text_screens[button_index]() ) self.txt_screen.show() self.picker_screen.hide() elif button_index == "btn_load": if self.mode != button_index: self.picker_screen.items = savelist() self.picker_screen.show() self.txt_screen.hide() elif self.picker_screen.selection is not None: ShowProgress.activateProgressScreen('loading',3) import dj_lib dj_lib.enable() VS.loadGame(self.picker_screen.items[self.picker_screen.selection].data) elif button_index == "btn_save": if self.mode != button_index: self.picker_screen.items = [GUI.GUISimpleListPicker.listitem("New Game",NewSaveGame)]+savelist() self.picker_screen.show() self.txt_screen.hide() elif self.picker_screen.visible and self.picker_screen.items[self.picker_screen.selection].data is not NewSaveGame: self.picker_screen.hide() self.txt_screen.setText( "\n"*7+ "Are you sure you want to overwrite the savegame?\n(%s)"% self.picker_screen.items[self.picker_screen.selection] +"\n"*3 +"Press SAVE again to do it." ) self.txt_screen.show() elif self.picker_screen.selection is not None: if self.picker_screen.items[self.picker_screen.selection].data is NewSaveGame: VS.saveGame(makeNewSaveName()) else: VS.saveGame(self.picker_screen.items[self.picker_screen.selection].data) self.picker_screen.items = [GUI.GUISimpleListPicker.listitem("New Game",NewSaveGame)]+savelist() self.picker_screen.show() self.txt_screen.hide() else: self.picker_screen.hide() self.txt_screen.hide() self.mode = button_index
def NewSystemHousekeeping(self, oldsystem, newsystem): print(oldsystem, ' IS NOW AT ', newsystem) print(oldsystem.split('/')[0]) if oldsystem.split('/')[0] == 'Special': print('Showing splash screen!') ShowProgress.activateProgressScreen('loading', 0) fg_util.launchBases(newsystem) fg_util.launchUnits(newsystem) news.newNews() newquest = adventure.newAdventure(self.cur_player, oldsystem, newsystem) if (newquest): self.cur.quests += [newquest] else: self.RestoreDroneMission() self.CalculateSignificantDistance() ShowProgress.deactivateProgressScreen('loading') VS.hideSplashScreen()
def getCymonPage(day, tag, adrtype, limit, offset): url = 'https://cymon.io/api/nexus/v1/blacklist/' url += adrtype + '/' + tag url += '/?days=' + day url += '&limit=' + limit url += '&offset=' + offset print 'URL: ', url headers = { 'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'accept-encoding': 'gzip, deflate, sdch', 'accept-language': 'vi,en;q=0.8', 'cache-control': 'max-age=0', 'cookie': '__utmt=1; VT_PREFERRED_LANGUAGE=en; __utma=194538546.508165789.1453801379.1454133997.1454134465.7; __utmb=194538546.18.10.1454134465; __utmc=194538546; __utmz=194538546.1454134465.7.2.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=(not%20provided)', 'upgrade-insecure-requests': '1', 'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.97 Safari/537.36}' } r = requests.get(url, headers) raw = json.loads(r.text) result = raw['results'] if len(result) == 0: print '\t\b' for item in result: ShowProgress.show(result.index(item) + 1, len(result)) if not ('addr' in item.keys()): item['addr'] = item['name'] DBHelper.updateAddress({ 'address': item['addr'], 'address_type': adrtype }) return raw['count']
def DoStartNewGame(self,params): global starting_new_game ShowProgress.activateProgressScreen('loading',3) VS.loadGame(VS.getNewGameSaveName()) starting_new_game = False enterMainMenu(self,params)
def AddSysDict (cursys): global _generatedsys, _last_progress_percent #pick random fighter from insysenemies with .3 probability OR pick one from the friendlies list. # debug.debug('Addsysdict') sysfaction=VS.GetGalaxyFaction(cursys) numflightgroups = 1+vsrandom.randrange(fg_util.MinNumFlightgroupsInSystem(cursys)-1,fg_util.MaxNumFlightgroupsInSystem(cursys)) #debug.debug("Initializing system %s with %d flightgroups... " % (cursys,numflightgroups)) progress_percent = (float(_generatedsys) / getSystemCount()) if progress_percent - _last_progress_percent > 0.01: ShowProgress.setProgressBar("loading",progress_percent) ShowProgress.setProgressMessage("loading","Generating dynamic universe (%.2f%%)" % (100*progress_percent)) _last_progress_percent = progress_percent _generatedsys += 1 global fgnames, fglists i=0 AddBasesToSystem(sysfaction, cursys) adjsystems=getAdjacentSystemList(cursys) for i in xrange(len(faction_ships.factions)): thisfac=faction_ships.factions[i] thisfactionnr=faction_ships.factionToInt(thisfac) rel=VS.GetRelation(sysfaction,thisfac) iscit=VS.isCitizen(thisfac) if iscit and thisfac.find(sysfaction)!=-1: #debug.debug("generating spc civilian for "+cursys+" faction "+thisfac) #do somethign special for this military faction if thisfac==sysfaction: pass elif iscit: for neighbor in adjsystems: if (VS.GetRelation(thisfac,VS.GetGalaxyFaction(neighbor))>-.05): #fgname=cursys+"->"+neighbor fgname="(CivReg) "+GetNewFGName(thisfac) typenumbertuple=GenerateCivilianFgShips(thisfac,thisfactionnr,True) fg_util.AddShipsToFG (fgname,thisfac,typenumbertuple,cursys) fgname="Insystem_"+cursys; typenumbertuple=GenerateCivilianFgShips(thisfac,thisfactionnr,False) if iscit: #debug.debug("generating gen civilian for "+cursys+" faction "+thisfac) if VS.GetRelation(thisfac,sysfaction)>-.05:#brave citizens of the new order... fgname=GetNewFGName(thisfac) typenumbertuple=GenerateCivilianFgShips(thisfac,thisfactionnr,True) fg_util.AddShipsToFG (fgname,thisfac,typenumbertuple,cursys) friendlychance=.7 if cursys in faction_ships.fortress_systems: friendlychance=faction_ships.fortress_systems[cursys] #debug.debug('enemy chance for '+cursys +'= '+str(friendlychance)) for i in xrange (numflightgroups): #number of fgs in a system. faction=sysfaction friendly=0 if not sysfaction or sysfaction=='unknown' or vsrandom.random()>friendlychance: faction=faction_ships.get_rabble_of_no_citizen(sysfaction)#why even have citizens on the list then else: faction=faction_ships.get_friend_of_no_citizen(sysfaction)#likewise--- maybe this should be a faction_ships fix if (faction==sysfaction): friendly=1 if (sysfaction in faction_ships.production_centers): if (cursys in faction_ships.production_centers[sysfaction]): friendly=2 #if (friendly): # debug.debug(faction+" "+sysfaction+" "+cursys) factionnr=faction_ships.factionToInt(faction) global maxshipsinfg typenumbertuple=GenerateFgShips(vsrandom.randrange(maxshipsinfg)+1,factionnr,friendly) fgname=GetNewFGName(faction) fg_util.AddShipsToFG (fgname,faction,typenumbertuple,cursys) return i
def StartNewGame(self,params): print(" ;;; StartNewGame(self=%s, params=%s" % (str(self), str(params))) ShowProgress.activateProgressScreen('loading',3) print(" ;;; VS.loadGame(VS.getNewGameSaveName=%s)" % (str(VS.getNewGameSaveName()))) VS.loadGame(VS.getNewGameSaveName())
def change_text(self, button_index): text_screens = { 'btn_finances': lambda: get_relations_text(VS.getPlayer()), 'btn_manifest': lambda: get_manifest_text(VS.getPlayer()), 'btn_missions': lambda: get_missions_text() } if button_index in text_screens: self.txt_screen.setText(text_screens[button_index]()) self.txt_screen.show() self.picker_screen.hide() elif button_index == "btn_load": if self.mode != button_index: self.picker_screen.items = savelist() self.picker_screen.show() self.txt_screen.hide() elif self.picker_screen.selection is not None: ShowProgress.activateProgressScreen('loading', 3) VS.loadGame(self.picker_screen.items[ self.picker_screen.selection].data) elif button_index == "btn_save": if self.mode != button_index: self.picker_screen.items = [ GUI.GUISimpleListPicker.listitem("New Game", NewSaveGame) ] + savelist() self.picker_screen.show() self.txt_screen.hide() elif self.picker_screen.visible and self.picker_screen.items[ self.picker_screen.selection].data is not NewSaveGame: self.picker_screen.hide() self.txt_screen.setText( "\n" * 7 + "Are you sure you want to overwrite the savegame?\n(%s)" % self.picker_screen.items[self.picker_screen.selection] + "\n" * 3 + "Press SAVE again to do it.") self.txt_screen.show() elif self.picker_screen.selection is not None: savename = '' if self.picker_screen.items[ self.picker_screen.selection].data is NewSaveGame: savename = makeNewSaveName() self.oldSaveName = None else: savename = self.picker_screen.items[ self.picker_screen.selection].data self.oldSaveName = savename #enter a modal line editor boxloc = GUI.GUIRect(120, 130, 200, 20, "pixel", (800, 600)) self.saveGameNameEntryBox = GUI.GUILineEdit( self.saveNameEntryEntered, self.guiroom, "box_save", savename, boxloc, self.screen_color, bgcolor=self.screen_bgcolor) for id in list(self.buttons.keys()): button = self.buttons[id] button.disable() button.redraw() self.saveGameNameEntryBox.focus(True) # self.setExitLinkState(False) self.txt_screen.setText('Save Game:') self.txt_screen.show() self.saveGameNameEntryBox.show() self.picker_screen.hide() self.lastEnteredSavegameName = None self.guiroom.redraw() else: self.picker_screen.hide() self.txt_screen.hide() self.mode = button_index
def change_text(self, button_index): # this method performs the necessary action of a button click text_screens = { "btn_finances": lambda: get_relations_text(VS.getPlayer()), "btn_manifest": lambda: get_manifest_text(VS.getPlayer()), "btn_missions": lambda: get_missions_text(), } if button_index in text_screens: # show new text screen (finances, manifext, missions) self.txt_screen.setText(text_screens[button_index]()) self.txt_screen.show() self.picker_screen.hide() elif button_index == "btn_load": # "load" button clicked if self.mode != button_index: # load list of saved games self.picker_screen.items = savelist() self.picker_screen.show() self.txt_screen.hide() elif self.picker_screen.selection is not None: # load selected saved game ShowProgress.activateProgressScreen("loading", 3) VS.loadGame(self.picker_screen.items[self.picker_screen.selection].data) elif button_index == "btn_save": # "save" button clicked if self.mode != button_index: # load list of saved games (to overwrite), or "New Game" self.picker_screen.items = [GUI.GUISimpleListPicker.listitem("New Game", NewSaveGame)] + savelist() self.picker_screen.show() self.txt_screen.hide() elif self.picker_screen.selection is not None: # a list item has been selected listItem = self.picker_screen.items[self.picker_screen.selection] if listItem.data is NewSaveGame: # new game # show save text box savename = "" # savename = makeNewSaveName() self.oldSaveName = None # why? # enter a modal line editor boxloc = GUI.GUIRect(120, 130, 200, 20, "pixel", (800, 600)) self.saveGameNameEntryBox = GUI.GUILineEdit( self.saveNameEntryEntered, self.guiroom, "box_save", savename, boxloc, self.screen_bgcolor, bgcolor=self.screen_color, ) # use inverted fore/background colors; even better would be a box around input field # disable all the buttons for id in self.buttons.keys(): button = self.buttons[id] button.disable() button.redraw() # self.setExitLinkState(False) self.txt_screen.setText("Type name and press ENTER:") self.txt_screen.show() self.saveGameNameEntryBox.focus(True) self.saveGameNameEntryBox.show() self.picker_screen.hide() self.lastEnteredSavegameName = None self.guiroom.redraw() elif self.picker_screen.visible: # not new game, and pick screen visible # so, show confirm screen trace(0, "::: picker_screen.visible") self.picker_screen.hide() self.txt_screen.setText( "\n" * 7 + "Are you sure you want to overwrite the savegame?\n" # (%s)"% listItem.data + "\n" * 3 + "Press SAVE again to do it." ) self.txt_screen.show() else: # not new game, and pick screen not visible # that means confirm screen IS visible, so do save trace(0, "::: picker_screen NOT visible") savename = self.picker_screen.items[self.picker_screen.selection].data VS.saveGame(savename) self.oldSaveName = savename # redisplay saved list self.picker_screen.items = [GUI.GUISimpleListPicker.listitem("New Game", NewSaveGame)] + savelist() self.picker_screen.show() self.txt_screen.hide() # or should this call reset? or show "game saved" text? else: # some other button was pressed self.picker_screen.hide() self.txt_screen.hide() self.mode = button_index
def DoStartNewGame(self,params): global starting_new_game ShowProgress.activateProgressScreen('loading',3) VS.loadGame(VS.getNewGameSaveName()) starting_new_game = False enterMainMenu(self,params)
def DoStartNewGame(self, params): ShowProgress.activateProgressScreen('loading', 3) VS.loadGame(VS.getNewGameSaveName()) enterMainMenu(self, params)
def StartNewGame(self, params): ShowProgress.activateProgressScreen("loading", 3) VS.loadGame(VS.getNewGameSaveName())
def DoStartNewGame(self,params): ShowProgress.activateProgressScreen('loading',3) VS.loadGame(VS.getNewGameSaveName()) enterMainMenu(self, params)
def change_text(self, button_index): text_screens = { 'btn_finances' : lambda:get_relations_text(VS.getPlayer()), 'btn_manifest' : lambda:get_manifest_text(VS.getPlayer()), 'btn_missions' : lambda:get_missions_text() } if button_index in text_screens: self.txt_screen.setText( text_screens[button_index]() ) self.txt_screen.show() self.picker_screen.hide() elif button_index == "btn_load": if self.mode != button_index: self.picker_screen.items = savelist() self.picker_screen.show() self.txt_screen.hide() elif self.picker_screen.selection is not None: ShowProgress.activateProgressScreen('loading',3) VS.loadGame(self.picker_screen.items[self.picker_screen.selection].data) elif button_index == "btn_save": if self.mode != button_index: self.picker_screen.items = [ GUI.GUISimpleListPicker.listitem("New Game",NewSaveGame) ]+savelist() self.picker_screen.show() self.txt_screen.hide() elif self.picker_screen.visible and self.picker_screen.items[self.picker_screen.selection].data is not NewSaveGame: self.picker_screen.hide() self.txt_screen.setText( "\n"*7+ "Are you sure you want to overwrite the savegame?\n(%s)"% self.picker_screen.items[self.picker_screen.selection] +"\n"*3 +"Press SAVE again to do it." ) self.txt_screen.show() elif self.picker_screen.selection is not None: savename = '' if self.picker_screen.items[self.picker_screen.selection].data is NewSaveGame: savename = makeNewSaveName() self.oldSaveName = None else: savename = self.picker_screen.items[self.picker_screen.selection].data self.oldSaveName = savename #enter a modal line editor boxloc = GUI.GUIRect(120,130,200,20,"pixel",(800,600)) self.saveGameNameEntryBox = GUI.GUILineEdit(self.saveNameEntryEntered, self.guiroom,"box_save", savename, boxloc, self.screen_color, bgcolor=self.screen_bgcolor) for id in list(self.buttons.keys()): button = self.buttons[id] button.disable() button.redraw() self.saveGameNameEntryBox.focus(True) # self.setExitLinkState(False) self.txt_screen.setText( 'Save Game:' ) self.txt_screen.show() self.saveGameNameEntryBox.show() self.picker_screen.hide() self.lastEnteredSavegameName = None self.guiroom.redraw() else: self.picker_screen.hide() self.txt_screen.hide() self.mode = button_index
def AddSysDict(cursys): global _generatedsys, _last_progress_percent #pick random fighter from insysenemies with .3 probability OR pick one from the friendlies list. # debug.debug('Addsysdict') sysfaction = VS.GetGalaxyFaction(cursys) numflightgroups = 1 + vsrandom.randrange( fg_util.MinNumFlightgroupsInSystem(cursys) - 1, fg_util.MaxNumFlightgroupsInSystem(cursys)) #debug.debug("Initializing system %s with %d flightgroups... " % (cursys,numflightgroups)) progress_percent = (_generatedsys / getSystemCount()) if progress_percent - _last_progress_percent > 0.01: ShowProgress.setProgressBar("loading", progress_percent) ShowProgress.setProgressMessage( "loading", "Generating dynamic universe (%.2f%%)" % (100 * progress_percent)) _last_progress_percent = progress_percent _generatedsys += 1 global fgnames, fglists i = 0 AddBasesToSystem(sysfaction, cursys) adjsystems = getAdjacentSystemList(cursys) for i in range(len(faction_ships.factions)): thisfac = faction_ships.factions[i] thisfactionnr = faction_ships.factionToInt(thisfac) rel = VS.GetRelation(sysfaction, thisfac) iscit = VS.isCitizen(thisfac) if iscit and thisfac.find(sysfaction) != -1: #debug.debug("generating spc civilian for "+cursys+" faction "+thisfac) #do somethign special for this military faction if thisfac == sysfaction: pass elif iscit: for neighbor in adjsystems: if (VS.GetRelation(thisfac, VS.GetGalaxyFaction(neighbor)) > -.05): #fgname=cursys+"->"+neighbor fgname = "(CivReg) " + GetNewFGName(thisfac) typenumbertuple = GenerateCivilianFgShips( thisfac, thisfactionnr, True) fg_util.AddShipsToFG(fgname, thisfac, typenumbertuple, cursys) fgname = "Insystem_" + cursys typenumbertuple = GenerateCivilianFgShips( thisfac, thisfactionnr, False) if iscit: #debug.debug("generating gen civilian for "+cursys+" faction "+thisfac) if VS.GetRelation( thisfac, sysfaction) > -.05: #brave citizens of the new order... fgname = GetNewFGName(thisfac) typenumbertuple = GenerateCivilianFgShips( thisfac, thisfactionnr, True) fg_util.AddShipsToFG(fgname, thisfac, typenumbertuple, cursys) friendlychance = .7 if cursys in faction_ships.fortress_systems: friendlychance = faction_ships.fortress_systems[cursys] #debug.debug('enemy chance for '+cursys +'= '+str(friendlychance)) for i in range(numflightgroups): #number of fgs in a system. faction = sysfaction friendly = 0 if not sysfaction or sysfaction == 'unknown' or vsrandom.random( ) > friendlychance: faction = faction_ships.get_rabble_of_no_citizen( sysfaction) #why even have citizens on the list then else: faction = faction_ships.get_friend_of_no_citizen( sysfaction ) #likewise--- maybe this should be a faction_ships fix if (faction == sysfaction): friendly = 1 if (sysfaction in faction_ships.production_centers): if (cursys in faction_ships.production_centers[sysfaction]): friendly = 2 #if (friendly): # debug.debug(faction+" "+sysfaction+" "+cursys) factionnr = faction_ships.factionToInt(faction) global maxshipsinfg typenumbertuple = GenerateFgShips( vsrandom.randrange(maxshipsinfg) + 1, factionnr, friendly) fgname = GetNewFGName(faction) fg_util.AddShipsToFG(fgname, faction, typenumbertuple, cursys) return i
def StartNewGame(self, params): print(" ;;; StartNewGame(self=%s, params=%s" % (str(self), str(params))) ShowProgress.activateProgressScreen('loading', 3) print(" ;;; VS.loadGame(VS.getNewGameSaveName=%s)" % (str(VS.getNewGameSaveName()))) VS.loadGame(VS.getNewGameSaveName())
def Execute(self): ShowProgress.deactivateProgressScreen('loading')