Vega strike Python Modules doc  0.5.1
Documentation of the " Modules " folder of Vega strike
 All Data Structures Namespaces Files Functions Variables
rescue Class Reference
Inheritance diagram for rescue:

Public Member Functions

def __init__
 
def Execute
 
def Win
 
def Lose
 
def initbriefing
 
def loopbriefing
 
def endbriefing
 

Data Fields

 arrived
 
 faction
 
 enfaction
 
 enflightgroup
 
 cred
 
 donevar
 
 you
 
 mplay
 
 adjsys
 
 numenemy
 
 eject
 
 enemy
 
 numejectors
 
 obj
 
 cargname
 

Detailed Description

Definition at line 12 of file rescue.py.

Constructor & Destructor Documentation

def __init__ (   self,
  creds,
  numsysaway,
  fac,
  numenemy,
  enfac,
  enfg = '',
  jumps = (),
  var_when_done = '' 
)

Definition at line 14 of file rescue.py.

14 
15  def __init__ (self, creds,numsysaway, fac,numenemy,enfac,enfg='', jumps=(),var_when_done=''):
16  Director.Mission.__init__ (self)
17  self.arrived=0
18  self.faction = fac
19  self.enfaction=enfac
20  self.enflightgroup=enfg
21  self.cred=creds
22  self.donevar=var_when_done
23  self.you = VS.getPlayer()
26  self.numenemy=numenemy
27  self.eject=None
28  self.enemy=None
29  self.numejectors=0
self.obj=0

Member Function Documentation

def endbriefing (   self)

Definition at line 136 of file rescue.py.

137  def endbriefing(self):
138  print "ending briefing"
def Execute (   self)

Definition at line 30 of file rescue.py.

References escort_mission.adjsys, rescue.adjsys, patrol.adjsys, directions_mission.adjsys, bounty.adjsys, defend.adjsys, escort_local.adjsys, cargo_mission.adjsys, rescue.arrived, defend.arrived, escort_mission.arrived, escort_local.arrived, plunder.arrived, directions_mission.arrived, bounty.arrived, cargo_mission.arrived, rescue.eject, plunder.enemy, rescue.enemy, bounty.enemy, ambush.enemy, rescue.enfaction, rescue.enflightgroup, patrol_enemies.faction, rescue.faction, SystemInformation.faction, ambush.faction, plunder.faction, bounty.faction, escort_mission.faction, defend.faction, ShipTracker.faction, escort_local.faction, cargo_mission.faction, go_to_adjacent_systems.faction, Launch.faction, ClearFactionRecord.faction, PushRelation.faction, PopRelation.faction, LaunchWingmen.faction, ChangeSystemOwner.faction, ChangeShipOwners.faction, faction_ships.getRandomFighter(), launch.launch_wave_around_unit(), plunder.mplay, escort_mission.mplay, defend.mplay, patrol.mplay, patrol_ambush.mplay, rescue.mplay, escort_local.mplay, bounty.mplay, directions_mission.mplay, cargo_mission.mplay, rescue.numejectors, rescue.numenemy, plunder.obj, bounty.obj, rescue.obj, go_to_adjacent_systems.obj, directions_mission.obj, locale.str(), plunder.Win(), bounty.Win(), rescue.Win(), escort_mission.you, patrol.you, rescue.you, plunder.you, directions_mission.you, go_to_adjacent_systems.you, bounty.you, escort_local.you, defend.you, and cargo_mission.you.

30 
31  def Execute(self):
32  if (not self.you):
33  VS.terminateMission(0)
34  return
35  if (not self.adjsys.Execute()):
36  return
37  if (self.arrived==0):
39  sys = VS.getSystemFile()
40  import dynamic_battle
41  if sys in dynamic_battle.rescuelist:
42  del dynamic_battle.rescuelist[sys]
43  self.arrived=1
44  elif (self.arrived==1):
45  mymin=2500.
46  mymax=3000.
47 # try:
48 # mymin*=faction_ships.launch_distance_factor
49 # mymax*=faction_ships.launch_distance_factor
50 # except:
51 # pass
52  self.eject = launch.launch_wave_around_unit("Rescue Pilot",self.faction,"eject","printhello.py",1,mymin,mymax,self.adjsys.SignificantUnit())
53  self.eject.setMissionRelevant()
54  self.arrived=2
55  self.eject.setName("Pilot")
56  self.eject.SetHull(25);
57  L = launch.Launch()
58  L.fg = "Shadow"
59  L.faction=self.enfaction
60  L.dynfg = self.enflightgroup
62  L.ai="default"
63  L.num=self.numenemy
64  L.minradius=float(VS.vsConfig("dynamic_universe","missions.rescue.enemy.minradius","5000"))
65  L.maxradius=float(VS.vsConfig("dynamic_universe","missions.rescue.enemy.maxradius","15000"))
66  try:
67  L.minradius*=faction_ships.launch_distance_factor
68  L.maxradius*=faction_ships.launch_distance_factor
69  except:
70  pass
71  self.enemy=L.launch(self.adjsys.SignificantUnit())
72  self.enemy.SetTarget(self.eject)
73  self.enemy.setFgDirective("A.")
74  self.you.SetTarget(self.eject)
75  VS.IOmessage(0,"eject",self.mplay,"This is ejector pod 0x4032 requesting immediate rescue and pickup")
76  self.obj=VS.addObjective("Tractor Ejected Pilot")
77 
78  elif (self.arrived==2):
79  if (self.eject):
80  self.enemy.SetTarget(self.eject)
81  self.numejectors=self.you.GetCargo("Pilot").GetQuantity()
82  else:
83  if (self.enemy):
84  self.enemy.SetTarget(self.you)
85  self.enemy.setFgDirective("A.")
86  print 'numej '+str(self.numejectors)
87  if (self.numejectors<self.you.GetCargo("Pilot").GetQuantity()):
88  self.you.removeCargo("Pilot",1,1)
89  carg=VS.getRandCargo(1,"Passengers/Economy")
90  carg.SetMissionFlag(1)
91  VS.setCompleteness(self.obj,1)
92  if (not self.you.addCargo(carg)):
93  self.Win(self.you,1)
94  else:
95  self.arrived=3
96  self.cargname=carg.GetContent()
97  print 'adding '+self.cargname
98  self.adjsys = go_somewhere_significant.go_somewhere_significant(self.you,1,25000,base_only=1)
99  VS.IOmessage(0,"Passenger",self.mplay,"Please take me to my home base: %s so I may begin to recover. Thank you!"%self.adjsys.SignificantUnit().getName())
100  else:
101  VS.IOmessage(0,"rescue_mission",self.mplay,"#ff0000You Lost the Pilot before you could drop the Pilot at the base. The Pilot's oxygen is currently empty. You fail.")
102  self.Lose(1)
103  elif (self.arrived==3):
104  #check for dockal
105  if (self.you.GetCargo(self.cargname).GetQuantity()==0):
106  self.Lose(1)
107  elif (self.adjsys.SignificantUnit().isDocked(self.you) or self.you.isDocked(self.adjsys.SignificantUnit()) or self.adjsys.SignificantUnit().getDistance(self.you)<10):
108  if (self.you.removeCargo(self.cargname,1,1)):
109  self.Win(self.you,1)
110  else:
self.Lose(1)
def initbriefing (   self)

Definition at line 130 of file rescue.py.

131  def initbriefing(self):
print "ending briefing"
def loopbriefing (   self)

Definition at line 132 of file rescue.py.

133  def loopbriefing(self):
134  print "loop briefing"
135  Briefing.terminate();
def Lose (   self,
  terminate 
)

Definition at line 122 of file rescue.py.

References patrol.donevar, rescue.donevar, plunder.donevar, patrol_enemies.faction, rescue.faction, SystemInformation.faction, ambush.faction, plunder.faction, escort_mission.faction, bounty.faction, defend.faction, ShipTracker.faction, escort_local.faction, cargo_mission.faction, go_to_adjacent_systems.faction, Launch.faction, ClearFactionRecord.faction, PushRelation.faction, PopRelation.faction, LaunchWingmen.faction, ChangeSystemOwner.faction, ChangeShipOwners.faction, plunder.mplay, escort_mission.mplay, defend.mplay, patrol_ambush.mplay, rescue.mplay, patrol.mplay, escort_local.mplay, bounty.mplay, directions_mission.mplay, cargo_mission.mplay, and quest.removeQuest().

123  def Lose (self,terminate):
124  VS.AdjustRelation(self.you.getFactionName(),self.faction,-.02,1)
125  VS.IOmessage(0,"rescue_mission",self.mplay,"#ff0000Credit agency reports that you have failed the mission.")
126  if len(self.donevar):
127  quest.removeQuest(int(self.mplay[1:]),self.donevar,-1)
128  if (terminate):
129  print "lose plunder mission"
VS.terminateMission(0)
def Win (   self,
  un,
  terminate 
)

Definition at line 111 of file rescue.py.

References patrol.cred, patrol_ambush.cred, rescue.cred, plunder.cred, bounty.cred, defend.cred, escort_local.cred, cargo_mission.cred, patrol.donevar, rescue.donevar, plunder.donevar, patrol_enemies.faction, rescue.faction, SystemInformation.faction, ambush.faction, plunder.faction, escort_mission.faction, bounty.faction, defend.faction, ShipTracker.faction, escort_local.faction, cargo_mission.faction, go_to_adjacent_systems.faction, Launch.faction, ClearFactionRecord.faction, PushRelation.faction, PopRelation.faction, LaunchWingmen.faction, ChangeSystemOwner.faction, ChangeShipOwners.faction, plunder.mplay, escort_mission.mplay, defend.mplay, patrol_ambush.mplay, rescue.mplay, patrol.mplay, bounty.mplay, escort_local.mplay, directions_mission.mplay, cargo_mission.mplay, and quest.removeQuest().

112  def Win (self,un,terminate):
113  VS.IOmessage (0,"Passenger",self.mplay,"#00ff00Excellent work pilot.")
114  VS.IOmessage (0,"Passenger",self.mplay,"#00ff00You have been rewarded for your effort as agreed.")
115  VS.IOmessage (0,"Passenger",self.mplay,"#00ff00You saved my life. I owe you a drink, pal")
116  un.addCredits(self.cred)
117  VS.AdjustRelation(self.you.getFactionName(),self.faction,.02,1)
118  if len(self.donevar):
119  quest.removeQuest(self.you.isPlayerStarship(),self.donevar,1)
120  if (terminate):
121  VS.terminateMission(1)

Field Documentation

adjsys

Definition at line 24 of file rescue.py.

arrived

Definition at line 16 of file rescue.py.

cargname

Definition at line 95 of file rescue.py.

cred

Definition at line 20 of file rescue.py.

donevar

Definition at line 21 of file rescue.py.

eject

Definition at line 26 of file rescue.py.

enemy

Definition at line 27 of file rescue.py.

enfaction

Definition at line 18 of file rescue.py.

enflightgroup

Definition at line 19 of file rescue.py.

faction

Definition at line 17 of file rescue.py.

mplay

Definition at line 23 of file rescue.py.

numejectors

Definition at line 28 of file rescue.py.

numenemy

Definition at line 25 of file rescue.py.

obj

Definition at line 29 of file rescue.py.

you

Definition at line 22 of file rescue.py.


The documentation for this class was generated from the following file: