1 | <!-- TODO: Update the level's image--> |
---|
2 | |
---|
3 | <!-- See TowerDefenseReadme.txt for Information on this file --> |
---|
4 | |
---|
5 | <LevelInfo |
---|
6 | name = "Tower Defense" |
---|
7 | description = "Defend your Spacestation from incoming waves." |
---|
8 | tags = "gametype" |
---|
9 | screenshot = "emptylevel.png" |
---|
10 | /> |
---|
11 | |
---|
12 | <?lua |
---|
13 | include("stats.oxo") |
---|
14 | include("HUDTemplates3.oxo") |
---|
15 | include("towerdefenseHUD.oxo") |
---|
16 | include("templates/lodInformation.oxt") |
---|
17 | ?> |
---|
18 | |
---|
19 | <?lua |
---|
20 | include("templates/spaceshipAssff.oxt") |
---|
21 | include("templates/spaceshipPirate.oxt") |
---|
22 | include("templates/tower.oxt") |
---|
23 | ?> |
---|
24 | |
---|
25 | <!-- Specify the position of the camera --> |
---|
26 | <Template name=centerpointmarkcamera defaults=0> |
---|
27 | <Pawn> |
---|
28 | <camerapositions> |
---|
29 | <CameraPosition position="0,0,2000"/> |
---|
30 | </camerapositions> |
---|
31 | </Pawn> |
---|
32 | </Template> |
---|
33 | |
---|
34 | <!-- Loads a mesh to mark the center--> |
---|
35 | <Template name=centerpointmark> |
---|
36 | <Pawn camerapositiontemplate=centerpointmarkcamera> |
---|
37 | <attached> |
---|
38 | <Model position="0,0,0" mesh="cylinder.mesh" scale3D="1,1,1" /> <!-- the camera is attached to this --> |
---|
39 | </attached> |
---|
40 | </Pawn> |
---|
41 | </Template> |
---|
42 | |
---|
43 | |
---|
44 | <!-- Template for a tower EDIT: new towertemplate is included with "templates/tower" --> |
---|
45 | <!--Template name=towertemplate> |
---|
46 | <Tower> |
---|
47 | <attached> |
---|
48 | <Model position="0,0,0" scale=0.25 mesh="Tower_ME.mesh" /> |
---|
49 | </attached> |
---|
50 | </Tower> |
---|
51 | </Template--> |
---|
52 | |
---|
53 | |
---|
54 | |
---|
55 | |
---|
56 | |
---|
57 | <Level gametype = "TowerDefense"> |
---|
58 | <templates> |
---|
59 | <Template link=lodtemplate_default /> |
---|
60 | </templates> |
---|
61 | |
---|
62 | <?lua include("includes/notifications.oxi") ?> |
---|
63 | |
---|
64 | <Scene |
---|
65 | ambientlight = "0.8, 0.8, 0.8" |
---|
66 | skybox = "Orxonox/Starbox" |
---|
67 | > |
---|
68 | |
---|
69 | <Light type=directional position="0,0,0" direction="0.253, 0.593, -0.765" diffuse="1.0, 0.9, 0.9, 1.0" specular="1.0, 0.9, 0.9, 1.0"/> |
---|
70 | |
---|
71 | <!-- Spawns the camera, attached to a crate --> |
---|
72 | <SpawnPoint team=0 position="0,0,0" spawnclass=Pawn pawndesign=centerpointmark /> |
---|
73 | <!--TeamSpawnPoint team=1 position="-7,7,4" direction="-1,0,0" roll=90 yaw=0 spawnclass=SpaceShip pawndesign=spaceshipassff /--> |
---|
74 | |
---|
75 | <!--SpawnPoint team=1 position="0,0,10" lookat="0,0,0" spawnclass=SpaceShip pawndesign=spaceshipassff /--> |
---|
76 | <!--SpawnPoint team=0 position="0,0,0" lookat="0,0,0" spawnclass=SpaceShip pawndesign=spaceshipassff /--> |
---|
77 | |
---|
78 | <SpaceShip position="-700,-500, 100" lookat="0,0,0" scale=2 team=1 > |
---|
79 | <templates> |
---|
80 | <Template link=spaceshipassff /> |
---|
81 | </templates> |
---|
82 | <controller> |
---|
83 | <WaypointController accuracy=60> |
---|
84 | <waypoints> |
---|
85 | <!-- 1,3 10,3 10,11, 13,11 --> |
---|
86 | <Model mesh="cube.mesh" scale=20 position="-700,-500, 100" /> |
---|
87 | <Model mesh="cube.mesh" scale=20 position=" 200,-500, 100" /> |
---|
88 | <Model mesh="cube.mesh" scale=20 position=" 200, 300, 100" /> |
---|
89 | <Model mesh="cube.mesh" scale=20 position=" 500, 300, 100" /> |
---|
90 | </waypoints> |
---|
91 | </WaypointController> |
---|
92 | </controller> |
---|
93 | </SpaceShip> |
---|
94 | |
---|
95 | |
---|
96 | <!--invisible entity to attach towers to, since playfield is static and towers are dynamic--> |
---|
97 | <StaticEntity position=0,0,0> |
---|
98 | |
---|
99 | <attached> |
---|
100 | <Model position="-50,-50,0" mesh="Playfield_ME.mesh" scale=80 /> |
---|
101 | <!--Model position="0,0,0" mesh="crate.mesh" scale3D="3,3,3" /--> <!-- Only temporary needed to help align the collisionshape --> |
---|
102 | <!-- This was used to mark the playfield, let's let it be here for now --> |
---|
103 | <!--Model position="-8,8,0" mesh="crate.mesh" scale3D="0.3,0.3,0.3" /--> |
---|
104 | <!--Model position="-8,-8,0" mesh="crate.mesh" scale3D="0.3,0.3,0.3" /--> |
---|
105 | <!--Model position="8,-8,0" mesh="crate.mesh" scale3D="0.3,0.3,0.3" /--> |
---|
106 | <!--Model position="8,8,0" mesh="crate.mesh" scale3D="0.3,0.3,0.3" /--> |
---|
107 | </attached> |
---|
108 | <collisionShapes> <!-- The collisionshape forbids other worldentities that have a collisionShape to fly through it. |
---|
109 | |
---|
110 | TODO: Find correct size for the collisionshape; since a collisionShape is invisible |
---|
111 | I added the crate wich currently has the same dimensions as the collisionshape. |
---|
112 | You have to adjust the crate's scale3D as well as the collisionshape's halfExtens to |
---|
113 | find the proper shape. --> |
---|
114 | <BoxCollisionShape position="0,0,0" halfExtents="400,400,100" /> |
---|
115 | </collisionShapes> |
---|
116 | </StaticEntity> |
---|
117 | |
---|
118 | |
---|
119 | |
---|
120 | |
---|
121 | <!-- PlayField --> |
---|
122 | <TowerDefenseCenterpoint |
---|
123 | name=towerdefensecenter |
---|
124 | width=16 |
---|
125 | height=16 |
---|
126 | tileScale=100 |
---|
127 | towerTemplate=tower |
---|
128 | position="0,0,0" |
---|
129 | direction="0,0,0" |
---|
130 | collisionType=dynamic |
---|
131 | mass=100000> |
---|
132 | |
---|
133 | </TowerDefenseCenterpoint> |
---|
134 | |
---|
135 | </Scene> |
---|
136 | </Level> |
---|
137 | |
---|