Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: data/trunk/scripts/spaceship_flight.lua @ 4382

Last change on this file since 4382 was 4328, checked in by muellmic, 18 years ago

lights now children of player

File size: 1.8 KB
Line 
1-- Create the trigger
2trigger = ScriptTrigger()
3trigger:setName("spaceship_flight_trigger")
4trigger:setScript("spaceship_flight.lua")
5trigger:setFunction("tick")
6trigger:setAbsCoor(2500, 0, -1695)
7trigger:setTarget("SPACE_CRAFT")
8trigger:setRadius(150)
9
10-- Add Objects
11thisscript:addObject("GameWorld", "Ambush_at_Uranus")
12thisscript:addObject("Spacecraft2D", "SPACE_CRAFT")
13thisscript:addObject("Gate", "Hypergate")
14thisscript:addObject("SpaceShip", "TerranCruizer")
15-- Global Variables
16horizontalmode = false
17gateReached = false
18terrancriuseratgate = false
19
20
21function dist( x1,x2,x3, y1,y2,y3 )
22  return math.sqrt( (x1-y1)^2 + (x2-y2)^2 + (x3-y3)^2 )
23end
24
25
26function observeSpaceCraft()
27  SPACE_CRAFTX = SPACE_CRAFT:getAbsCoorX()
28  SPACE_CRAFTY = SPACE_CRAFT:getAbsCoorY()
29  SPACE_CRAFTZ = SPACE_CRAFT:getAbsCoorZ()
30
31  distance = dist(SPACE_CRAFTX,SPACE_CRAFTY,SPACE_CRAFTZ,6053.186035, -2.306574, -1704.989624)
32
33  if distance < 100 then
34    Hypergate:destroy()
35  end
36
37end
38
39function tick(timestep)
40  observeSpaceCraft()
41
42  if not horizontalmode then
43    Ambush_at_Uranus:setPlaymode("Horizontal")
44    Ambush_at_Uranus:setSoundtrack("sound/music/00-luke_grey_-_hypermode.ogg")
45    SPACE_CRAFT:setAirFriction(3.0)
46    horizontalmode = true
47  end
48
49  if not terrancriuseratgate then
50    dx = 70 * timestep
51    dy = 0 * timestep
52    dz = 0 * timestep
53
54    TerranCruizerX = TerranCruizer:getAbsCoorX()
55    TerranCruizerY = TerranCruizer:getAbsCoorY()
56    TerranCruizerZ = TerranCruizer:getAbsCoorZ()
57
58    distance = dist(TerranCruizerX,TerranCruizerY,TerranCruizerZ,6053.186035, -2.306574, -1704.989624)
59
60    if distance < 100  then
61      TerranCruizer:hide()
62      dx = 5000
63      terrancriuseratgate = true
64    end
65
66    TerranCruizer:setAbsCoor(TerranCruizerX + dx, TerranCruizerY + dy, TerranCruizerZ + dz)
67
68  end
69
70 return false
71end
Note: See TracBrowser for help on using the repository browser.