Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/presentationHS15/data/levels/planetLevelHS15.oxw @ 11058

Last change on this file since 11058 was 11039, checked in by landauf, 9 years ago

some cleanup in planetLevelHS15.oxw. using a directional light & reducing ambient light enables pretty shadows in the city. :)

  • Property svn:eol-style set to native
File size: 8.0 KB
Line 
1<LevelInfo
2 name = "Planet and City level"
3 description = "Fly into the planet. Get teleported into a city"
4 tags = "test"
5 screenshot = "emptylevel.png"
6/>
7
8<?lua
9  include("stats.oxo")
10  include("HUDTemplates3.oxo")
11  include("templates/lodInformation.oxt")
12?>
13
14<?lua
15  include("templates/spaceshipAssff2.oxt")
16  include("templates/spaceshipPirate.oxt")
17  include("templates/spaceshipEscort.oxt")
18  include("templates/spaceshipRing.oxt")
19  include("templates/spaceshipSwallow.oxt")
20?>
21
22
23<!-- Global variable definition -->
24<?lua
25PLANET_DISTANCE = 1000000
26PLANET_SCALE = 20000
27SKYBOX_SCALE = 100000
28X = 20
29Y = 20
30CELL_SIZE = 600
31?>
32
33<!-- city generator -->
34<?lua
35function randomHouses(x,y,cellSize)
36    returnString = ""
37    for currentX = 1, x, 1 do
38      for currentY = 1, y, 1 do
39        houseNr = math.floor(math.random()*7 + 1)
40        orientation = math.floor(math.random()*4)*90
41        houses = {"Glasstower1","ETH","Hausc1","PrimeTower","Hausc2","101","hausc3"}
42        scales = {100,100,100,100,100,100,100}
43        collisionShapes = {--[[Glasstower1]]"<BoxCollisionShape position=\"0,405,0\" halfExtents=\"90,405,90\" /><BoxCollisionShape  position=\"0,855,0\" halfExtents=\"110, 45, 110\" /><BoxCollisionShape      position=\"0,957,0\" halfExtents=\"5, 70, 5\" />  ",--[[ETH]]"<BoxCollisionShape      position=\"-46.16,22.423,3.439\" halfExtents=\"89.5,30.4,151.5\" /><BoxCollisionShape      position=\"105.607996,22.905,-137.980005\" halfExtents=\"31.40,23.55,39.25\" /><BoxCollisionShape      position=\"105.607996,22.905,137.078003\" halfExtents=\"31.40,23.55,39.25\" /><BoxCollisionShape      position=\"65.356,22.905,118.208997\" halfExtents=\"31.40,23.55,20.40\" /><BoxCollisionShape      position=\"65.356,22.905,-121.712\" halfExtents=\"31.40,23.55,20.40\" /><SphereCollisionShape  position=\"44.985001,60.196997,0.352 \" radius=\"31.65\" />",--[[Hausc1]]"<BoxCollisionShape position=\"0,71.43,0\" halfExtents=\"142.86, 71.43, 142.86\" /><BoxCollisionShape position=\"-71.43,285.72,-71.43\" halfExtents=\"71.43, 142.86, 71.43\" /><BoxCollisionShape position=\"71.43,428.58,0\" halfExtents=\"71.43, 285.72, 142.86\" /><BoxCollisionShape position=\"71.43,857.16,-71.43\" halfExtents=\"71.43, 142.86, 71.43\" /><BoxCollisionShape position=\"-35.715,214.29,35.715\" halfExtents=\"35.715, 71.43, 35.715\" /><BoxCollisionShape position=\"-35.715,500.01,-107.145\" halfExtents=\"35.715, 71.43, 35.715\" /><BoxCollisionShape position=\"107.145,785.73,35.715\" halfExtents=\"35.715, 71.43, 35.715\" />",--[[PrimeTower]]"<BoxCollisionShape      position=\"-16.1,278.6,053.\" halfExtents=\"063,296,063\" yaw=\"-16.5\" /> <BoxCollisionShape      position=\"007.1,278.6,027.3\" halfExtents=\"065,296,065\" yaw=\"-28\" /><BoxCollisionShape      position=\"012.8,278.6,-63.3\" halfExtents=\"076,296,076\" yaw=\"4\" /> <BoxCollisionShape      position=\"023.18,278.6,-135.4\" halfExtents=\"067.7,296,067.7\" yaw=\"-36\" />",--[[Hausc2]]"<BoxCollisionShape      position=\"0,349.999,-166.667\" halfExtents=\"83.333, 349.999, 83.333\" /><BoxCollisionShape      position=\"0,349.999,166.667\" halfExtents=\"83.333, 349.999, 83.333\" /><BoxCollisionShape      position=\"41.666,291.666,0\" halfExtents=\"41.666, 58.333, 83.333\" /><BoxCollisionShape      position=\"-41.666,524.999,0\" halfExtents=\"41.666, 58.333, 83.333\" /> ",--[[101]]"<BoxCollisionShape    position=\"0,565.7,0\" halfExtents=\"76,565.7,76\" /><BoxCollisionShape position=\"-2.8,1210,1\" halfExtents=\"39,82,39\" />",--[[hausc3]]"<BoxCollisionShape      position=\"0,300,-208.33\" halfExtents=\"250,0,65.1\" pitch=\"-50.194\" /><BoxCollisionShape      position=\"0,300,-125\" halfExtents=\"250,0,65.1\" pitch=\"50.194\" /><BoxCollisionShape      position=\"125,275,0\" halfExtents=\"48.59,0,250\" roll=\"30.964\" /><BoxCollisionShape      position=\"208.33,275,0\" halfExtents=\"48.59,0,250\" roll=\"-30.964\" /><BoxCollisionShape      position=\"166.67,125,0\" halfExtents=\"83.33,125,250\" /><BoxCollisionShape      position=\"-83.33,125,-166.67\" halfExtents=\"166.66,125,83.33\" />"}
44        if (currentX > 0 and currentX < x and currentY > 1 --[[and currentY ~= y]]) then
45        returnString = returnString .. "<StaticEntity collisionType=\"static\" position=\"" .. (currentX*cellSize) .. "," .. (currentY*cellSize - (cellSize/2)) .. ",0\" direction=\"0,1,0\" pitch=\"0\" roll=\"0\" yaw=\"" .. orientation .. "\">  <attached> <Model position=\"0,0,0\" mesh=\"" .. houses[houseNr] .. ".mesh\" scale=\"" .. scales[houseNr] .. "\"/></attached><collisionShapes>" .. collisionShapes[houseNr] .. "</collisionShapes></StaticEntity>\n\n"
46        end
47        returnString = returnString .. "<StaticEntity collisionType=\"static\" position=\"" .. (currentX*cellSize - cellSize/2) .. "," .. (currentY*cellSize) .. ",0\" direction=\"0,1,0\" pitch=\"0\" roll=\"0\" yaw=\"0\">  <attached> <Model position=\"0,0,0\" mesh=\"CityGroundLamps.mesh\" scale=\"" .. cellSize .. "\"/><Model position=\"0,0,0\" mesh=\"CityGround.mesh\" scale=\"" .. cellSize .. "\"/></attached><collisionShapes><BoxCollisionShape position=\"0,0,0\" halfExtents=\"500,0,500\"/><BoxCollisionShape position=\"48.5,50.88,192\" halfExtents=\"5,50.88,5\"/><BoxCollisionShape position=\"48.5,50.88,-192\" halfExtents=\"5,50.88,5\"/><BoxCollisionShape position=\"48.5,50.88,-54\" halfExtents=\"5,50.88,5\"/><BoxCollisionShape position=\"48.5,50.88,54\" halfExtents=\"5,50.88,5\"/><BoxCollisionShape position=\"-48.5,50.88,192\" halfExtents=\"5,50.88,5\"/><BoxCollisionShape position=\"-48.5,50.88,-192\" halfExtents=\"5,50.88,5\"/><BoxCollisionShape position=\"-48.5,50.88,-54\" halfExtents=\"5,50.88,5\"/><BoxCollisionShape position=\"-48.5,50.88,54\" halfExtents=\"5,50.88,5\"/></collisionShapes></StaticEntity>\n\n"
48      end
49    end
50    return returnString
51end
52
53?>
54
55<Level>
56  <templates>
57    <Template link=lodtemplate_default />
58  </templates>
59
60  <?lua include("includes/notifications.oxi") ?>
61
62
63  <Scene
64    ambientlight = "0.45, 0.4, 0.35"
65    skybox       = "Orxonox/Starbox"
66  >
67
68   
69    <Planet
70      position="<?lua print(PLANET_DISTANCE)?>,0,0"
71      scale="<?lua print(PLANET_SCALE)?>"
72      collisionType="dynamic"
73      linearDamping="0.8"
74      angularDamping="0"
75      mass="5.9e21"
76      mesh="planets/earth.mesh"
77      atmosphere="atmosphere1"
78      rotationaxis="0,1,0"
79      rotationrate="0.2"
80      atmospheresize="80.0f"
81      imagesize="1024.0f"
82      collisiondamage= 2
83      enablecollisiondamage= false
84    />
85
86    <DistanceTrigger name="SkyboxVisible" position="0,0,0" target="Pawn" distance="100000" stayActive="true" delay=0 />
87
88    <?lua print(randomHouses(X,Y,CELL_SIZE)) ?>
89 
90    <StaticEntity position="0,0,0" direction="0,0,0" collisionType=static mass=0 friction=0.01 yaw=90 pitch=180 roll=90 >
91      <attached>
92        <Model position="0,0,0" mesh="skyboxHoenggerberg.mesh" scale3D="<?lua print(SKYBOX_SCALE)?>,<?lua print(SKYBOX_SCALE)?>,<?lua print(SKYBOX_SCALE)?>" lodLevel="0">
93          <events>
94            <visibility>
95              <EventTrigger>
96                <events>
97                  <trigger>
98                    <EventListener event="SkyboxVisible"/>
99                  </trigger>
100                </events>
101              </EventTrigger>
102            </visibility>
103          </events>
104        </Model>
105      </attached>
106    </StaticEntity>
107
108    <Light type="directional" position="-90,50,60" lookat="0,0,0" diffuse="1.0, 0.9, 0.9, 1.0" specular="1.0, 0.9, 0.9, 1.0"/>
109
110    <SpawnPoint team=0 position="<?lua print(PLANET_DISTANCE - PLANET_SCALE - 2000)?>,0,0" lookat="<?lua print(PLANET_DISTANCE) ?>,0,0" spawnclass=SpaceShip pawndesign=spaceshipescort orientation="-0.4,-0.6,0.6,0.4" />
111
112    <PortalEndPoint position="<?lua print(X*CELL_SIZE/2) ?>,<?lua print(Y*CELL_SIZE/2) ?>,500" id="3" distance="40" target="Pawn"/>
113    <PortalEndPoint position="<?lua print(PLANET_DISTANCE) ?>,0,0" id="2" distance="<?lua print(PLANET_SCALE)?>" target="Pawn"/>
114    <PortalEndPoint position="<?lua print(PLANET_DISTANCE + PLANET_SCALE + 6000) ?>,0,0" id="1" distance="40" target="Pawn"/>
115
116    <PortalLink fromID="2" toID="3" />
117    <PortalLink fromID="3" toID="1" />   
118  </Scene>
119</Level>
Note: See TracBrowser for help on using the repository browser.