Example #1
0
    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
Example #2
0
    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
Example #3
0
 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))
Example #5
0
    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())