| 845 |
lars |
1 |
// EF2 Level Script File
|
|
|
2 |
//
|
|
|
3 |
// Level: map3b.bsp
|
|
|
4 |
// Script By: Cortex, Argyle, ltiefland
|
|
|
5 |
// Geometry By: Argyle, Cortex, Alpharaptor
|
|
|
6 |
// Created on: 17/11/03
|
|
|
7 |
// Last Edited on: 20/01/07
|
|
|
8 |
// Last Edited by: ltiefland
|
|
|
9 |
|
| 676 |
argyle |
10 |
#include "maps/global_scripts/global_archetype.scr"
|
|
|
11 |
#include "maps/global_scripts/global_common.scr"
|
|
|
12 |
#include "maps/global_scripts/global_playerLoadout.scr"
|
|
|
13 |
#include "maps/global_scripts/global_debugUtils.scr"
|
|
|
14 |
#include "maps/global_scripts/global_array.scr"
|
|
|
15 |
#include "maps/global_scripts/global_math.scr"
|
|
|
16 |
#include "maps/global_scripts/global_acceleratedMovement.scr"
|
|
|
17 |
#include "maps/attackplayer.scr"
|
|
|
18 |
|
|
|
19 |
void jeff_door_open();
|
|
|
20 |
void jeff_door_close();
|
|
|
21 |
void ff1();
|
|
|
22 |
void ff2();
|
|
|
23 |
void ff3();
|
|
|
24 |
void switch_open();
|
|
|
25 |
void lever_move();
|
|
|
26 |
void alexia_walk();
|
|
|
27 |
void door_field_active();
|
| 677 |
argyle |
28 |
void spotted();
|
|
|
29 |
//void spotted_action();
|
| 676 |
argyle |
30 |
void trap_activation();
|
|
|
31 |
void north();
|
|
|
32 |
void east();
|
|
|
33 |
void south();
|
|
|
34 |
void west();
|
|
|
35 |
void neil_find();
|
|
|
36 |
void sarah_find();
|
|
|
37 |
void levelchange();
|
|
|
38 |
|
|
|
39 |
|
|
|
40 |
//-----------------------------MAP3EX ORIGINAL SCRIPT------------------------------------------------------------
|
|
|
41 |
|
|
|
42 |
void jeff_door_open()
|
|
|
43 |
{
|
|
|
44 |
$latch.time( 0.2 );
|
|
|
45 |
$latch.movedown(4);
|
|
|
46 |
$latch.playsound( "sound/environment/metal/panel_close1.wav" );
|
|
|
47 |
wait(1);
|
|
|
48 |
$latch.bind( $jeff_door_origin );
|
|
|
49 |
$jeff_door.bind( $jeff_door_origin );
|
|
|
50 |
$jeff_door_origin.time( 2.5 );
|
|
|
51 |
$jeff_door_origin.playsound( "sound/doors/drull_smldoor_01.wav" );
|
|
|
52 |
$jeff_door_origin.rotateto( '0 90 0' );
|
|
|
53 |
waitfor( $jeff_door_origin );
|
|
|
54 |
$jeff_door_origin.playsound( "sound/doors/drull_smldoor_stop_01.wav" );
|
|
|
55 |
}
|
|
|
56 |
|
|
|
57 |
void jeff_door_close()
|
|
|
58 |
{
|
|
|
59 |
$latch.bind( $jeff_door_origin );
|
|
|
60 |
$jeff_door.bind( $jeff_door_origin );
|
|
|
61 |
$jeff_door_origin.time( 2.5 );
|
|
|
62 |
$jeff_door_origin.playsound( "sound/doors/drull_smldoor_01.wav" );
|
|
|
63 |
$jeff_door_origin.rotateto( '0 0 0' );
|
|
|
64 |
waitfor( $jeff_door_origin );
|
|
|
65 |
$jeff_door_origin.playsound( "sound/doors/drull_smldoor_stop_01.wav" );
|
|
|
66 |
wait(1);
|
|
|
67 |
$latch.time( 0.2 );
|
|
|
68 |
$latch.moveup(4);
|
|
|
69 |
$latch.playsound( "sound/environment/metal/panel_close1.wav" );
|
|
|
70 |
}
|
|
|
71 |
|
|
|
72 |
|
|
|
73 |
void ff1()
|
|
|
74 |
{
|
|
|
75 |
$cor_ff1.show();
|
| 822 |
lars |
76 |
$cor_ff1.solid();
|
| 676 |
argyle |
77 |
$cor_ff1.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
|
|
|
78 |
$cor_ff1.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
|
|
|
79 |
$ff2_trig.triggerable();
|
|
|
80 |
}
|
|
|
81 |
|
|
|
82 |
void ff2()
|
|
|
83 |
{
|
|
|
84 |
$cor_ff2.show();
|
| 822 |
lars |
85 |
$cor_ff2.solid();
|
| 676 |
argyle |
86 |
$cor_ff2.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
|
|
|
87 |
$cor_ff2.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
|
|
|
88 |
}
|
|
|
89 |
|
|
|
90 |
void ff3()
|
|
|
91 |
{
|
|
|
92 |
$cor_ff3.show();
|
| 822 |
lars |
93 |
$cor_ff3.solid();
|
| 676 |
argyle |
94 |
$cor_ff3.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
|
|
|
95 |
$cor_ff3.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
|
|
|
96 |
$ff2_trig.triggerable();
|
|
|
97 |
}
|
|
|
98 |
|
|
|
99 |
void switch_open()
|
|
|
100 |
{
|
|
|
101 |
$lever_door.movewest(1);
|
|
|
102 |
wait(0.1);
|
|
|
103 |
$lever_door.movenorth(35);
|
|
|
104 |
$lever_door.time(2);
|
|
|
105 |
$lever_door.playsound( "sound/ships/forever/for_gravpanel.wav", 1, 1, 11111 );
|
|
|
106 |
waitfor( $lever_door );
|
|
|
107 |
$lever_door.playsound( "sound/ships/forever/for_gravpanelstop.wav", 1, 1, 11111 );
|
|
|
108 |
}
|
|
|
109 |
|
|
|
110 |
void lever_move()
|
|
|
111 |
{
|
|
|
112 |
$lever_one.time(0.2);
|
|
|
113 |
$lever_one.movedown(15);
|
|
|
114 |
$player.playsound( "sound/environment/metal/panel_close1.wav");
|
|
|
115 |
wait(0.2);
|
|
|
116 |
$player.playsound("sound/environment/computer/lcars_yes.wav");
|
|
|
117 |
$alexia.notsolid();
|
|
|
118 |
$alexia.hide();
|
|
|
119 |
$alexia1.solid();
|
|
|
120 |
$alexia1.show();
|
|
|
121 |
$door_field.hide();
|
| 822 |
lars |
122 |
$door_field.notsolid();
|
| 676 |
argyle |
123 |
$door_field.stoploopsound();
|
|
|
124 |
}
|
|
|
125 |
|
|
|
126 |
void alexia_walk()
|
|
|
127 |
{
|
|
|
128 |
$alexia.walkto( "$alexia_nav1", "walk" );
|
|
|
129 |
waitfor( $alexia );
|
|
|
130 |
$alexia.walkto( "alexia_nav2", "walk" );
|
|
|
131 |
waitfor( $alexia );
|
|
|
132 |
$alexia.walkto( "$alexia_nav3", "walk" );
|
|
|
133 |
waitfor( $alexia );
|
|
|
134 |
$alexia.hide();
|
|
|
135 |
$alexia.notsolid();
|
|
|
136 |
$alexia1.show();
|
|
|
137 |
}
|
|
|
138 |
|
|
|
139 |
void door_field_active()
|
|
|
140 |
{
|
|
|
141 |
$door_field.show();
|
| 822 |
lars |
142 |
$door_field.solid();
|
| 676 |
argyle |
143 |
$door_field.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
|
|
|
144 |
$door_field.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
|
| 764 |
lars |
145 |
$lever.triggerable();
|
| 676 |
argyle |
146 |
}
|
|
|
147 |
|
| 677 |
argyle |
148 |
void spotted()
|
| 676 |
argyle |
149 |
{
|
| 822 |
lars |
150 |
//$office_field.solid();
|
| 677 |
argyle |
151 |
//$spotted_trigger2.nottriggerable();
|
|
|
152 |
//$spotted_trigger3.nottriggerable();
|
|
|
153 |
//$spotted_trigger4.nottriggerable();
|
| 676 |
argyle |
154 |
$emma.removeactorweapon( "EnterpriseDatapad" );
|
|
|
155 |
$emma.anim( "idle" );
|
|
|
156 |
$emma.turntoangle( 160 );
|
|
|
157 |
$emma.headwatchtarget( "player" , 7 );
|
|
|
158 |
|
|
|
159 |
wait(0.5);
|
|
|
160 |
|
|
|
161 |
$emma.anim( "tap_comm" );
|
|
|
162 |
waitforanimation( $emma, "tap_comm" );
|
|
|
163 |
$player.playsound( "sound/misc/player/communicatorbeep.wav", 1, 1, 11111 );
|
|
|
164 |
$emma.anim( "idle" );
|
|
|
165 |
$alexia1.anim( "idle" );
|
|
|
166 |
wait(0.2);
|
|
|
167 |
$alexia1.turntoangle( 60 );
|
|
|
168 |
$alexia1.headwatchtarget( "player" , 7 );
|
|
|
169 |
$comp_screen.hide();
|
|
|
170 |
$office_door.lock();
|
|
|
171 |
$sick_door.lock();
|
| 677 |
argyle |
172 |
//$office_field.show();
|
| 676 |
argyle |
173 |
$office_field2.show();
|
| 845 |
lars |
174 |
$office_field2.solid();
|
|
|
175 |
$office_field2.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
|
|
|
176 |
$office_field2.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
|
| 676 |
argyle |
177 |
wait(0.3);
|
| 677 |
argyle |
178 |
//$office_door_field.show();
|
| 822 |
lars |
179 |
//$office_door_field.solid();
|
| 677 |
argyle |
180 |
//$office_door_field.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
|
|
|
181 |
//$office_door_field.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
|
| 676 |
argyle |
182 |
wait(0.3);
|
| 845 |
lars |
183 |
$sick_door_field.show();
|
|
|
184 |
$sick_door_field.solid();
|
|
|
185 |
$sick_door_field.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
|
|
|
186 |
$sick_door_field.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
|
| 676 |
argyle |
187 |
|
| 845 |
lars |
188 |
AIShowGroup ( 668, "Federation" );
|
|
|
189 |
$security3.ai_on();
|
|
|
190 |
$security4.ai_on();
|
|
|
191 |
CommandToGroup ( 668 , "groupactortype" , "enemy" , "");
|
|
|
192 |
CommandToGroup ( 668 , "visiondistance" , "4000" , "" );
|
|
|
193 |
CommandToGroup ( 668 , "fov" , "360" , "" );
|
|
|
194 |
CommandToGroup ( 668 , "attack" , "$player" , "" );
|
| 676 |
argyle |
195 |
}
|
|
|
196 |
|
| 677 |
argyle |
197 |
|
|
|
198 |
void spotted_action()
|
|
|
199 |
{
|
|
|
200 |
}
|
|
|
201 |
|
| 676 |
argyle |
202 |
void trap_activation()
|
|
|
203 |
{
|
|
|
204 |
$west_trigger.triggerable();
|
|
|
205 |
}
|
|
|
206 |
|
|
|
207 |
void north()
|
|
|
208 |
{
|
|
|
209 |
$north_field.show();
|
| 822 |
lars |
210 |
$north_field.solid();
|
| 676 |
argyle |
211 |
$north_field.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
|
|
|
212 |
$north_field.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
|
|
|
213 |
|
|
|
214 |
$sarah_find_trig.nottriggerable();
|
|
|
215 |
$neil_find_trig.nottriggerable();
|
|
|
216 |
$east_trigger.triggerable();
|
|
|
217 |
$south_trigger.triggerable();
|
|
|
218 |
}
|
|
|
219 |
|
|
|
220 |
void east()
|
|
|
221 |
{
|
|
|
222 |
$east_field.show();
|
| 822 |
lars |
223 |
$east_field.solid();
|
| 676 |
argyle |
224 |
$east_field.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
|
|
|
225 |
}
|
|
|
226 |
|
|
|
227 |
void south()
|
|
|
228 |
{
|
|
|
229 |
$south_field.show();
|
| 822 |
lars |
230 |
$south_field.solid();
|
| 676 |
argyle |
231 |
$south_field.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
|
|
|
232 |
$south_field.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
|
|
|
233 |
}
|
|
|
234 |
|
|
|
235 |
void west()
|
|
|
236 |
{
|
|
|
237 |
$west_field.show();
|
| 822 |
lars |
238 |
$west_field.solid();
|
| 676 |
argyle |
239 |
$west_field.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
|
|
|
240 |
$west_field.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
|
|
|
241 |
|
|
|
242 |
$sarah_find_trig.nottriggerable();
|
|
|
243 |
$neil_find_trig.nottriggerable();
|
|
|
244 |
$east_trigger.triggerable();
|
|
|
245 |
$south_trigger.triggerable();
|
|
|
246 |
}
|
|
|
247 |
|
|
|
248 |
void neil_find()
|
|
|
249 |
{
|
|
|
250 |
$neil.solid();
|
|
|
251 |
$neil.show();
|
|
|
252 |
|
|
|
253 |
$neil.walkto( "$neil_nav1", "walk" );
|
|
|
254 |
waitfor( $neil );
|
|
|
255 |
$neil.walkto( "$neil_nav2", "walk" );
|
|
|
256 |
waitfor( $neil );
|
|
|
257 |
$neil.walkto( "$neil_nav3", "walk" );
|
|
|
258 |
waitfor( $neil );
|
|
|
259 |
$neil.headwatchtarget( "player" , 7 );
|
|
|
260 |
$neil.anim( "tap_comm" );
|
|
|
261 |
waitforanimation( $neil, "tap_comm" );
|
|
|
262 |
$neil.playsound( "sound/misc/player/communicatorbeep.wav", 1, 1, 11111 );
|
|
|
263 |
$neil.anim( "idle" );
|
|
|
264 |
|
|
|
265 |
$east_field.show();
|
| 822 |
lars |
266 |
$east_field.solid();
|
| 676 |
argyle |
267 |
$east_field.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
|
|
|
268 |
$east_field.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
|
|
|
269 |
|
|
|
270 |
$sarah_find_trig.nottriggerable();
|
|
|
271 |
$south_trigger.triggerable();
|
|
|
272 |
}
|
|
|
273 |
|
|
|
274 |
void sarah_find()
|
|
|
275 |
{
|
|
|
276 |
$sarah.solid();
|
|
|
277 |
$sarah.show();
|
|
|
278 |
|
|
|
279 |
$sarah.walkto( "$sarah_nav1", "walk" );
|
|
|
280 |
waitfor( $sarah );
|
|
|
281 |
$sarah.walkto( "$sarah_nav2", "walk" );
|
|
|
282 |
$sarah.headwatchtarget( "player" , 7 );
|
|
|
283 |
$sarah.anim( "tap_comm" );
|
|
|
284 |
waitforanimation( $sarah, "tap_comm" );
|
|
|
285 |
$sarah.playsound( "sound/misc/player/communicatorbeep.wav", 1, 1, 11111 );
|
|
|
286 |
$sarah.anim( "idle" );
|
|
|
287 |
|
|
|
288 |
$south_field.show();
|
| 822 |
lars |
289 |
$south_field.solid();
|
| 676 |
argyle |
290 |
$south_field.playsound( "sound/ships/borg/borg_forcefield_on.wav", 1, 1, 11111 );
|
|
|
291 |
$south_field.loopsound( "sound/ships/enterprise/ent_forcefield.wav", .7, 30 );
|
|
|
292 |
|
|
|
293 |
$neil_find_trig.nottriggerable();
|
|
|
294 |
$east_trigger.triggerable();
|
|
|
295 |
}
|
|
|
296 |
|
|
|
297 |
void levelchange()
|
|
|
298 |
{
|
|
|
299 |
stuffcmd("map map4 \n");
|
|
|
300 |
}
|
|
|
301 |
|
|
|
302 |
|
|
|
303 |
void main()
|
|
|
304 |
{
|
|
|
305 |
|
|
|
306 |
//-----------------------MAP3EX ORIGINAL SCRIPT--------------------------------
|
|
|
307 |
$cor_ff1.hide();
|
|
|
308 |
$cor_ff2.hide();
|
|
|
309 |
$cor_ff3.hide();
|
| 822 |
lars |
310 |
$cor_ff1.notsolid();
|
|
|
311 |
$cor_ff2.notsolid();
|
|
|
312 |
$cor_ff3.notsolid();
|
| 676 |
argyle |
313 |
$ff2_trig.nottriggerable();
|
| 822 |
lars |
314 |
//$office_door_field.notsolid();
|
|
|
315 |
//$office_field.notsolid();
|
|
|
316 |
//$office_field.hide();
|
|
|
317 |
$office_field2.hide();
|
|
|
318 |
$sick_door_field.notsolid();
|
|
|
319 |
$sick_door_field.hide();
|
| 677 |
argyle |
320 |
//$office_door_field.hide();
|
|
|
321 |
//$office_field.hide();
|
| 676 |
argyle |
322 |
$office_field2.hide();
|
|
|
323 |
$sick_door_field.hide();
|
|
|
324 |
$door_field.hide();
|
| 822 |
lars |
325 |
$door_field.hide();
|
|
|
326 |
$door_field.notsolid();
|
| 676 |
argyle |
327 |
$lever.nottriggerable();
|
|
|
328 |
//--------------------------------------------------
|
|
|
329 |
$alexia.ai_off();
|
|
|
330 |
$alexia.anim( "idle" );
|
|
|
331 |
$alexia.removeactorweapon( "CompressionRifle" );
|
|
|
332 |
$alexia.useactorweapon( "none" );
|
|
|
333 |
$alexia.pushable( 0 );
|
|
|
334 |
|
|
|
335 |
$emma.ai_off();
|
|
|
336 |
$emma.anim( "idle" );
|
|
|
337 |
$emma.removeactorweapon( "CompressionRifle" );
|
|
|
338 |
$emma.useactorweapon( "none" );
|
|
|
339 |
$emma.pushable( 0 );
|
|
|
340 |
$emma.useactorweapon( "EnterpriseDatapad" );
|
|
|
341 |
$emma.anim( "ent-datapad-use" );
|
|
|
342 |
|
|
|
343 |
$alexia1.ai_off();
|
|
|
344 |
$alexia1.anim( "ent-table-gesture2" );
|
|
|
345 |
$alexia1.removeactorweapon( "CompressionRifle" );
|
|
|
346 |
$alexia1.useactorweapon( "none" );
|
|
|
347 |
$alexia1.pushable( 0 );
|
|
|
348 |
$alexia1.notsolid();
|
|
|
349 |
$alexia1.hide();
|
|
|
350 |
|
|
|
351 |
$neil.ai_off();
|
|
|
352 |
$neil.anim( "idle" );
|
|
|
353 |
$neil.removeactorweapon( "CompressionRifle" );
|
|
|
354 |
$neil.useactorweapon( "none" );
|
|
|
355 |
$neil.pushable( 0 );
|
|
|
356 |
$neil.hide();
|
|
|
357 |
$neil.notsolid();
|
|
|
358 |
|
|
|
359 |
$sarah.ai_off();
|
|
|
360 |
$sarah.anim( "idle" );
|
|
|
361 |
$sarah.removeactorweapon( "CompressionRifle" );
|
|
|
362 |
$sarah.useactorweapon( "none" );
|
|
|
363 |
$sarah.pushable( 0 );
|
|
|
364 |
$sarah.hide();
|
|
|
365 |
$sarah.notsolid();
|
|
|
366 |
|
|
|
367 |
//-------------------------------------------------
|
|
|
368 |
$security3.setgroupid ( 668 );
|
|
|
369 |
$security3.pushable( 0 );
|
|
|
370 |
$security3.giveactorweapon( "actorweapons/fed-compressionrifle.tik", 1.0 );
|
|
|
371 |
$security3.useactorweapon( "CompressionRifle" );
|
|
|
372 |
|
|
|
373 |
$security4.setgroupid ( 668 );
|
|
|
374 |
$security4.pushable( 0 );
|
|
|
375 |
$security4.giveactorweapon( "actorweapons/fed-compressionrifle.tik", 1.0 );
|
|
|
376 |
$security4.useactorweapon( "CompressionRifle" );
|
|
|
377 |
|
| 845 |
lars |
378 |
$security3.hide();
|
|
|
379 |
$security3.notsolid();
|
|
|
380 |
$security4.hide();
|
|
|
381 |
$security4.notsolid();
|
| 676 |
argyle |
382 |
//-------------------------------------------------
|
|
|
383 |
$east_trigger.nottriggerable();
|
|
|
384 |
$south_trigger.nottriggerable();
|
|
|
385 |
$west_trigger.nottriggerable();
|
|
|
386 |
|
|
|
387 |
$north_field.hide();
|
| 822 |
lars |
388 |
$north_field.notsolid();
|
| 676 |
argyle |
389 |
|
|
|
390 |
$east_field.hide();
|
| 822 |
lars |
391 |
$east_field.notsolid();
|
| 676 |
argyle |
392 |
|
|
|
393 |
$south_field.hide();
|
| 822 |
lars |
394 |
$south_field.notsolid();
|
| 676 |
argyle |
395 |
|
|
|
396 |
$west_field.hide();
|
| 822 |
lars |
397 |
$west_field.notsolid();
|
| 676 |
argyle |
398 |
|
| 680 |
argyle |
399 |
|
|
|
400 |
//Archetypes
|
|
|
401 |
thread globalArchetype_Setup( $hint_lever, "hint_lever");
|
|
|
402 |
|
| 676 |
argyle |
403 |
}
|