def Execute(self): VS.PythonAI.Execute(self); if quest_contraband_truck.truck_exit == 1: if self.got_target == 0: self.GetParent().SetTarget(universe.getRandomJumppoint()) self.trucktarget = (self.GetParent()).GetTarget() self.XMLScript ("++afterburn-turntowards.xml") self.AddReplaceLastOrder(1) self.got_target = 1 # starts him afterburning to target if self.timer == 0: self.timer = VS.GetGameTime() debug.info("Timer Set") elif self.timer + 30 < VS.GetGameTime() and self.autoed == 0: self.GetParent().ActivateJumpDrive(1) self.GetParent().AutoPilotTo(self.trucktarget,1) self.autoed = 1 elif self.timer + 5 < VS.GetGameTime(): self.MoveTo(self.trucktarget.Position(),1) self.AddReplaceLastOrder(1) # elif self.timer + 60 < VS.GetGameTime(): # gets him to auto to the jump and jump out # self.GetParent().ActivateJumpDrive(1) debug.info(self.GetParent().getMinDis(self.trucktarget.Position())) return 1
def Execute(self): VS.PythonAI.Execute(self) if quest_contraband_truck.truck_exit == 1: if self.got_target == 0: self.GetParent().SetTarget(universe.getRandomJumppoint()) self.trucktarget = (self.GetParent()).GetTarget() self.XMLScript("++afterburn-turntowards.xml") self.AddReplaceLastOrder(1) self.got_target = 1 # starts him afterburning to target if self.timer == 0: self.timer = VS.GetGameTime() print "Timer Set" elif self.timer + 30 < VS.GetGameTime() and self.autoed == 0: self.GetParent().ActivateJumpDrive(1) self.GetParent().AutoPilotTo(self.trucktarget, 1) self.autoed = 1 elif self.timer + 5 < VS.GetGameTime(): self.MoveTo(self.trucktarget.Position(), 1) self.AddReplaceLastOrder(1) # elif self.timer + 60 < VS.GetGameTime(): # gets him to auto to the jump and jump out # self.GetParent().ActivateJumpDrive(1) print self.GetParent().getMinDis(self.trucktarget.Position()) return 1
def RealSuccessMission(self): cleansweep.cleansweep.RealSuccessMission(self) if (not self.launchedpirate): self.launchedpirate = True import launch L = launch.Launch() L.faction = "pirates" L.fg = "Drake" L.dynfg = "" L.minradius = 1000.0 L.maxradius = 1500.0 L.ai = "default" L.num = 1 import faction_ships L.type = faction_ships.getRandomFighter("pirates") pirate = L.launch(self.you) import universe pirate.SetTarget(universe.getRandomJumppoint()) pirate.ActivateJumpDrive(0) universe.greet(self.pirategreeting)
def RealSuccessMission(self): cleansweep.cleansweep.RealSuccessMission(self) print "REAL SUCCESS" if (not self.launchedpirate): print "LAUNCHING PIRATE" self.launchedpirate=True import launch L= launch.Launch() L.faction="pirates" L.fg="Drake" L.dynfg="" L.minradius=500.0 L.maxradius=550.0 L.ai="default" L.num=1 import faction_ships L.type=faction_ships.getRandomFighter("pirates") pirate=L.launch(self.you) import universe universe.greet(self.pirategreeting,pirate,self.you) print pirate.getName() pirate.SetTarget(universe.getRandomJumppoint()) pirate.ActivateJumpDrive(0) pirate.SetVelocity((0,0,1000))
def __init__ (self,you, landable_only, distance_away_to_trigger,base_only=0,capshipfaction="", dyn_fg="", showObjective=1, forcestarship=0): self.obj=0 self.showObjective=showObjective self.orbitee="" self.capship=0 self.you = you self.arrivedarea=0 self.distfrombase=distance_away_to_trigger significant=VS.Unit() aroundthe="" self.sysfil=VS.getSystemFile() if (landable_only or base_only): randint=vsrandom.randrange(0,128) lim=1 if landable_only and not base_only: lim=10 for i in xrange(lim): significant = unit.getSignificant (randint,landable_only,base_only) if significant.isPlanet(): break else: randint+=1 if (landable_only and not unit.isLandable(significant)) or forcestarship: self.capship=1 if (capshipfaction==""): capshipfaction="merchant" if (self.capship and capshipfaction!=""): if (significant.isNull()): significant=you self.orbitee="%s" % (significant.getName()) self.capship=1 print "orbitee %s " % self.orbitee if (dyn_fg==""): newship=faction_ships.getRandomCapitol(capshipfaction) found=False near=2000.0 far=5000.0 try: near*=faction_ships.launch_distance_factor far*=faction_ships.launch_distance_factor except: pass i=VS.getUnitList() while i.notDone(): testun = i.current() i.advance() if testun.getFactionName()==capshipfaction and faction_ships.isCapital(testun.getName()): significant=moveUnitTo(testun,significant,near) found=True break if (not found): significant=launch.launch_wave_around_unit("Base",capshipfaction,newship,"sitting_duck",1,near,far,significant,"") else: near=5000.0 try: near*=faction_ships.launch_distance_factor except: pass found=False aroundthe=" near "+unit.getUnitFullName(significant,True); i = VS.getUnitList() while i.notDone(): testun = i.current() i.advance() if testun.getFactionName()==capshipfaction and faction_ships.isCapital(testun.getName()): significant=moveUnitTo(testun,significant,near) found=True break if (not found): significant=launch_recycle.launch_dockable_around_unit(dyn_fg,capshipfaction,"sitting_duck",near,significant,4*near,'','Base') significant.setFullname(dyn_fg) else: significant = universe.getRandomJumppoint () if (significant.isNull()): print "ERROR: no significants found in starsystem %s" % (self.sysfil) self.significantun=VS.getPlayer() else: self.significantun=significant self.significantun.setMissionRelevant() #qualifier="the " #if (significant.isPlanet() and significant.isDockableUnit()): # qualifier="" if (self.showObjective): self.obj=VS.addObjective("Visit %s %s" % (self.getSignificantFullName (),aroundthe)) VS.setOwner(self.obj,VS.getPlayer())