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

Public Member Functions

def restoreCruisingSpeed
 
def init
 
def Execute
 

Data Fields

 shipiter
 
 speed
 
 stopping
 
 begin
 

Detailed Description

Definition at line 8 of file traffic.py.

Member Function Documentation

def Execute (   self)

Definition at line 22 of file traffic.py.

References TrafficAI.begin, TrafficAI.restoreCruisingSpeed(), Vector.SafeNorm(), TrafficAI.shipiter, TrafficAI.speed, TrafficAI.stopping, and Vector.Sub().

22 
23  def Execute(self):
24  if (self.begin):
25  self.begin=0
26  self.restoreCruisingSpeed(self.speed)
27  VS.PythonAI.Execute(self)
28  un = VS.getUnit (self.shipiter);
29  parent = self.GetParent()
30  if (parent and un):
31  if (parent!=un):
32  if (car_lib.isCar (un)):
33  posdiff=SafeNorm(Sub (un.Position(),parent.Position())) #look 1 second ahead
34 # distInOneSec = Dot (Sub(parent.GetVelocity(),un.GetVelocity()),posdiff)
35  distInOneSec = Dot (Sub(parent.GetVelocity(),un.GetVelocity()),posdiff)
36  if (distInOneSec>un.getDistance(parent) and Dot (posdiff,un.GetOrientation()[2])>0):
37 # print "%s too close to %s \n" % (parent.getName(),un.getName())
38 # print distInOneSec
39 # print un.getDistance (parent)
40  self.restoreCruisingSpeed(0)
41  self.stopping=1
42  self.shipiter=-1 #-1 + 1 =0
43 
44  self.shipiter +=1
45  else:
46  if (self.stopping):
47  if (parent):
48  self.stopping=0
49  self.restoreCruisingSpeed(self.speed)
50  self.shipiter=0
return
def init (   self,
  un 
)

Definition at line 14 of file traffic.py.

14 
15  def init(self,un):
16  self.shipiter=0;
17  self.speed = vsrandom.uniform (maxspeed/3,maxspeed);
18  print 'self.speed'
19  print self.speed
20  self.stopping=0
21  self.begin=1
self.restoreCruisingSpeed(self.speed)
def restoreCruisingSpeed (   self,
  speed 
)

Definition at line 9 of file traffic.py.

9 
10  def restoreCruisingSpeed(self,speed):
11  vel = Scale (self.GetParent().GetOrientation()[2],speed)
12  self.MatchLinearVelocity(0,vel,0,1)
13  self.AddReplaceLastOrder(1)
self.GetParent().setSpeed(speed)

Field Documentation

begin

Definition at line 20 of file traffic.py.

shipiter

Definition at line 15 of file traffic.py.

speed

Definition at line 16 of file traffic.py.

stopping

Definition at line 19 of file traffic.py.


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