You are viewing our Forum Archives. To view or take place in current topics click here.
#11. Posted:
Status: Offline
Joined: Apr 28, 200915Year Member
Posts: 7,038
Reputation Power: 1354
Status: Offline
Joined: Apr 28, 200915Year Member
Posts: 7,038
Reputation Power: 1354
I would imagine Nikolai is just referring to the Sickle (Reaper) - which - as you know - can only be bought off the wall....
Sno
Sno
- 0useful
- 0not useful
#12. Posted:
Status: Offline
Joined: Jan 15, 201113Year Member
Posts: 949
Reputation Power: 44
Status: Offline
Joined: Jan 15, 201113Year Member
Posts: 949
Reputation Power: 44
Snowhiter wrote I would imagine Nikolai is just referring to the Sickle (Reaper) - which - as you know - can only be bought off the wall....
Sno
then why would he say it while utilizing a mystery crate?
- 0useful
- 0not useful
#13. Posted:
Status: Offline
Joined: Nov 28, 201014Year Member
Posts: 956
Reputation Power: 52
Status: Offline
Joined: Nov 28, 201014Year Member
Posts: 956
Reputation Power: 52
It is an Easter egg that Nikolai forsees.
- 0useful
- 0not useful
#14. Posted:
Status: Offline
Joined: Feb 03, 201113Year Member
Posts: 552
Reputation Power: 17
C0starulz wrote it's in the coding of the map which means it's on the map. Just no one has found it yet.
Why is it EVERY post I see from you is full of bulsh1t?
Here's the ascension game code. NOWHERE does it mention the word "reaper"
#include animscripts\zombie_utility;
#include common_scripts\utility;
#include maps\_utility;
#include maps\_zombiemode_utility;
#include maps\_ambientpackage;
#include maps\_music;
#include maps\_busing;
#include maps\_zombiemode_audio;
init()
{
PreCacheModel( "p_glo_electrical_transformer" );
PreCacheModel( "p_zom_monitor_csm_screen_on" );
PreCacheModel( "p_zom_monitor_csm_screen_logo" );
PreCacheModel( "p_rus_electric_switch_stop" );
PreCacheModel( "p_rus_clock_lrg" );
flag_init( "target_teleported" );
flag_init( "rerouted_power" );
flag_init( "switches_synced" );
flag_init( "pressure_sustained" );
flag_init( "passkey_confirmed" );
flag_init( "weapons_combined" );
level.casimir_lights = [];
level.lander_letters[ "a" ] = GetEnt( "letter_a", "targetname" );
level.lander_letters[ "e" ] = GetEnt( "letter_e", "targetname" );
level.lander_letters[ "h" ] = GetEnt( "letter_h", "targetname" );
level.lander_letters[ "i" ] = GetEnt( "letter_i", "targetname" );
level.lander_letters[ "l" ] = GetEnt( "letter_l", "targetname" );
level.lander_letters[ "m" ] = GetEnt( "letter_m", "targetname" );
level.lander_letters[ "n" ] = GetEnt( "letter_n", "targetname" );
level.lander_letters[ "r" ] = GetEnt( "letter_r", "targetname" );
level.lander_letters[ "s" ] = GetEnt( "letter_s", "targetname" );
level.lander_letters[ "t" ] = GetEnt( "letter_t", "targetname" );
level.lander_letters[ "u" ] = GetEnt( "letter_u", "targetname" );
level.lander_letters[ "y" ] = GetEnt( "letter_y", "targetname" );
keys = GetArrayKeys( level.lander_letters );
for ( i=0; i<keys.size; i++ )
{
level.lander_letters[ keys[i] ] Hide();
}
teleport_target_event();
reroute_power_event();
sync_switch_event();
pressure_plate_event();
lander_passkey_event();
weapon_combo_event();
level notify( "help_found" );
monitor = GetEnt( "casimir_monitor", "targetname" );
monitor SetModel( "p_zom_monitor_csm_screen_off" );
}
play_easter_egg_audio( alias, sound_ent, text )
{
if( alias == undefined )
{
return;
}
sound_ent PlaySound( alias, "sounddone" );
sound_ent waittill( "sounddone" );
}
activate_casimir_light( num )
{
spot = GetStruct( "casimir_light_"+num, "targetname" );
if ( IsDefined( spot ) )
{
light = Spawn( "script_model", spot.origin );
light SetModel( "tag_origin" );
light.angles = spot.angles;
fx = PlayFXOnTag( level._effect["fx_zmb_light_floodlight_bright"], light, "tag_origin" );
level.casimir_lights[ level.casimir_lights.size ] = light;
}
}
teleport_target_event()
{
teleport_target_start = getstruct( "teleport_target_start", "targetname" );
teleport_target_spark = getstruct( "teleport_target_spark", "targetname" );
level.teleport_target = Spawn( "script_model", teleport_target_start.origin );
level.teleport_target SetModel( "p_glo_electrical_transformer" );
level.teleport_target.angles = teleport_target_start.angles;
level.teleport_target PlayLoopSound( "zmb_egg_notifier", 1 );
teleport_target_spark = Spawn( "script_model", teleport_target_spark.origin );
teleport_target_spark SetModel( "tag_origin" );
PlayFXOnTag( level._effect["switch_sparks"], teleport_target_spark, "tag_origin" );
level.teleport_target_trigger = Spawn( "trigger_radius", teleport_target_start.origin + (0,0,-70), 0, 125, 100 );
level.black_hole_bomb_loc_check_func = ::bhb_teleport_loc_check;
flag_wait( "target_teleported" );
teleport_target_spark Delete();
level.black_hole_bomb_loc_check_func = undefined;
level thread play_egg_vox( "vox_ann_egg1_success", "vox_gersh_egg1", 1 );
}
bhb_teleport_loc_check( grenade, model, info )
{
if( IsDefined( level.teleport_target_trigger ) && grenade IsTouching( level.teleport_target_trigger ) )
{
model SetClientFlag( level._SCRIPTMOVER_CLIENT_FLAG_BLACKHOLE );
grenade thread maps\_zombiemode_weap_black_hole_bomb::do_black_hole_bomb_sound( model, info );
level thread teleport_target( grenade, model );
return true;
}
return false;
}
teleport_target( grenade, model )
{
level.teleport_target_trigger Delete();
level.teleport_target_trigger = undefined;
wait( 1.0 );
time = 3.0;
level.teleport_target MoveTo( grenade.origin + (0,0,50), time, time - 0.05 );
wait( time );
teleport_target_end = getstruct( "teleport_target_end", "targetname" );
level.teleport_target Hide();
playsoundatposition( "zmb_gersh_teleporter_out", grenade.origin + (0,0,50) );
wait( 0.5 );
level.teleport_target.angles = teleport_target_end.angles;
level.teleport_target MoveTo( teleport_target_end.origin, 0.05 );
level.teleport_target StopLoopSound( 1 );
wait( 0.5 );
level.teleport_target Show();
PlayFXOnTag( level._effect[ "black_hole_bomb_event_horizon" ], level.teleport_target, "tag_origin" );
level.teleport_target PlaySound( "zmb_gersh_teleporter_go" );
wait( 2.0 );
model Delete();
flag_set( "target_teleported" );
}
reroute_power_event()
{
monitor = GetEnt( "casimir_monitor", "targetname" );
location = GetStruct( "casimir_monitor_struct", "targetname" );
monitor PlayLoopSound( "zmb_egg_notifier", 1 );
monitor SetModel( "p_zom_monitor_csm_screen_on" );
trig = Spawn( "trigger_radius", location.origin, 0, 32, 60 );
trig wait_for_use( monitor );
trig delete();
flag_set( "rerouted_power" );
monitor SetModel( "p_zom_monitor_csm_screen_logo" );
monitor StopLoopSound( 1 );
level thread play_egg_vox( "vox_ann_egg2_success", "vox_gersh_egg2", 2 );
level thread activate_casimir_light( 1 );
}
wait_for_use( monitor )
{
while(1)
{
self waittill( "trigger", who );
while( IsPlayer(who) && who IsTouching( self ) )
{
if( who UseButtonPressed() )
{
flag_set( "rerouted_power" );
monitor PlaySound( "zmb_comp_activate" );
return;
}
wait(.05);
}
}
}
sync_switch_event()
{
switches = GetStructArray( "sync_switch_start", "targetname" );
success = false;
while ( !flag( "switches_synced" ) )
{
flag_wait( "monkey_round" );
array_thread( switches, ::reveal_switch );
self thread switch_watcher();
level waittill_either( "between_round_over", "switches_synced" );
}
level thread play_egg_vox( "vox_ann_egg3_success", "vox_gersh_egg3", 3 );
level thread activate_casimir_light( 2 );
}
reveal_switch()
{
button = Spawn( "script_model", self.origin );
button SetModel( "p_rus_electric_switch_stop" );
button.angles = self.angles + (0,90,0);
button PlayLoopSound( "zmb_egg_notifier", 1 );
offset = AnglesToForward(self.angles) * 8;
time = 1;
button MoveTo( button.origin + offset, 1 );
wait( 1 );
if ( flag( "monkey_round" ) )
{
trig = Spawn( "trigger_radius", button.origin, 0, 32, 72 );
trig thread wait_for_sync_use( self );
level waittill_either( "between_round_over", "switches_synced" );
trig delete();
}
button StopLoopSound( 1 );
button MoveTo( self.origin, time );
wait( time );
button delete();
}
wait_for_sync_use( ss )
{
level endon( "between_round_over" );
level endon( "switches_synced" );
ss.pressed = 0;
while(1)
{
self waittill( "trigger", who );
while( IsPlayer(who) && who IsTouching( self ) )
{
if( who UseButtonPressed() )
{
level notify( "sync_button_pressed" );
playsoundatposition( "zmb_push_button", ss.origin );
ss.pressed = 1;
}
wait(.05);
}
}
}
switch_watcher()
{
level endon( "between_round_over" );
pressed = 0;
switches = GetStructArray( "sync_switch_start", "targetname" );
while (1)
{
level waittill( "sync_button_pressed" );
timeout = GetTime() + 500;
while ( GetTime() < timeout )
{
pressed = 0;
for ( i=0; i<switches.size; i++ )
{
if ( IsDefined( switches[i].pressed ) && switches[i].pressed )
{
pressed++;
}
}
if ( pressed == 4 )
{
flag_set( "switches_synced" );
for ( i=0; i<switches.size; i++ )
{
playsoundatposition( "zmb_misc_activate", switches[i].origin );
}
return;
}
wait( 0.05 );
}
switch( pressed )
{
case 1:
case 2:
case 3:
for ( i=0; i<switches.size; i++ )
{
playsoundatposition( "zmb_deny", switches[i].origin );
}
break;
}
for ( i=0; i<switches.size; i++ )
{
switches[i].pressed = 0;
}
}
}
pressure_plate_event()
{
area = GetStruct( "pressure_pad", "targetname" );
trig = Spawn( "trigger_radius", area.origin, 0, 300, 100 );
trig area_timer( 120 );
trig Delete();
level thread play_egg_vox( "vox_ann_egg4_success", "vox_gersh_egg4", 4 );
level thread activate_casimir_light( 3 );
}
area_timer( time )
{
clock_loc = GetStruct( "pressure_timer", "targetname" );
clock = Spawn( "script_model", clock_loc.origin );
clock SetModel( "p_rus_clock_lrg" );
clock.angles = clock_loc.angles;
clock PlayLoopSound( "zmb_egg_notifier", 1 );
timer_hand_angles_init = ( 270, 90, 0 );
timer_hand = Spawn( "script_model", clock_loc.origin + ( -1, 0, 12 ) );
timer_hand SetModel( "t5_weapon_ballistic_knife_blade" );
timer_hand.angles = timer_hand_angles_init;
step = 1.0;
while ( !flag( "pressure_sustained" ) )
{
self waittill( "trigger" );
stop_timer = false;
players = get_players();
for ( i=0; i<players.size; i++ )
{
if ( !players[i] IsTouching( self ) )
{
wait( step );
stop_timer = true;
}
}
if ( stop_timer )
{
continue;
}
self PlaySound( "zmb_pressure_plate_trigger" );
time_remaining = time;
timer_hand RotatePitch( 360, time );
while ( time_remaining )
{
players = get_players();
for ( i=0; i<players.size; i++ )
{
if ( !players[i] IsTouching( self ) )
{
wait( step );
time_remaining = time;
stop_timer = true;
timer_hand RotateTo( timer_hand_angles_init, 0.5 );
timer_hand PlaySound( "zmb_deny" );
wait( 0.5 );
break;
}
}
if ( stop_timer )
{
break;
}
wait( step );
time_remaining -= step;
timer_hand PlaySound( "zmb_egg_timer_oneshot" );
}
if ( time_remaining <= 0 )
{
flag_set( "pressure_sustained" );
players = get_players();
temp_fx = undefined;
if ( IsDefined( players[0].fx ) )
{
temp_fx = players[0].fx;
}
timer_hand playsound( "zmb_perks_packa_ready" );
players[0].fx = level.zombie_powerups[ "nuke" ].fx;
level thread maps\_zombiemode_powerups::nuke_powerup( players[0] );
clock StopLoopSound( 1 );
wait( 1.0 );
if ( IsDefined( temp_fx ) )
{
players[0].fx = temp_fx;
}
else
{
players[0].fx = undefined;
}
clock Delete();
timer_hand Delete();
return;
}
}
}
lander_passkey_event()
{
flag_init( "letter_acquired" );
level.lander_key = [];
level.lander_key[ "lander_station1" ][ "lander_station3" ] = "s";
level.lander_key[ "lander_station1" ][ "lander_station4" ] = "r";
level.lander_key[ "lander_station1" ][ "lander_station5" ] = "e";
level.lander_key[ "lander_station3" ][ "lander_station1" ] = "y";
level.lander_key[ "lander_station3" ][ "lander_station4" ] = "a";
level.lander_key[ "lander_station3" ][ "lander_station5" ] = "i";
level.lander_key[ "lander_station4" ][ "lander_station1" ] = "m";
level.lander_key[ "lander_station4" ][ "lander_station3" ] = "h";
level.lander_key[ "lander_station4" ][ "lander_station5" ] = "u";
level.lander_key[ "lander_station5" ][ "lander_station1" ] = "t";
level.lander_key[ "lander_station5" ][ "lander_station3" ] = "n";
level.lander_key[ "lander_station5" ][ "lander_station4" ] = "l";
level.passkey = array( "l", "u", "n", "a" );
level.passkey_progress = 0;
level.secret1 = array( "h", "i", "t", "s", "a", "m" );
level.secret1_progress = 0;
level.secret2 = array( "h", "y", "e", "n", "a" );
level.secret2_progress = 0;
thread lander_monitor();
flag_wait( "passkey_confirmed" );
level.lander_audio_ent StopLoopSound( 1 );
level thread play_egg_vox( "vox_ann_egg5_success", "vox_gersh_egg5", 5 );
level thread activate_casimir_light( 4 );
wait(1);
level.lander_audio_ent Delete();
}
lander_monitor()
{
lander = getent( "lander", "targetname" );
level.lander_audio_ent = Spawn( "script_origin", lander.origin );
level.lander_audio_ent LinkTo( lander );
level.lander_audio_ent PlayLoopSound( "zmb_egg_notifier", 1 );
while ( !flag( "passkey_confirmed" ) )
{
level waittill("lander_launched");
if ( lander.called )
{
start = lander.depart_station;
dest = lander.station;
letter = level.lander_key[ start ][ dest ];
model = level.lander_letters[ letter ];
model Show();
model PlaySound( "zmb_spawn_powerup" );
model thread spin_letter();
model PlayLoopSound( "zmb_spawn_powerup_loop", .5 );
trig = Spawn( "trigger_radius", model.origin, 0, 200, 150 );
trig thread letter_grab( letter, model );
flag_wait("lander_grounded");
if ( !flag( "letter_acquired" ) )
{
level.passkey_progress = 0;
level.secret1_progress = 0;
level.secret2_progress = 0;
}
else
{
flag_clear( "letter_acquired" );
}
trig delete();
model Hide();
model StopLoopSound( .5 );
}
else
{
level.passkey_progress = 0;
level.secret1_progress = 0;
level.secret2_progress = 0;
}
}
}
spin_letter()
{
level endon( "lander_grounded" );
level endon( "letter_acquired" );
while (1)
{
self RotateYaw( 90, 5 );
wait( 5 );
}
}
letter_grab( letter, model )
{
level endon("lander_grounded");
self waittill( "trigger" );
flag_set( "letter_acquired" );
playsoundatposition("zmb_powerup_grabbed", model.origin);
model Hide();
if ( letter == level.passkey[ level.passkey_progress ] )
{
level.passkey_progress++;
if ( level.passkey_progress == level.passkey.size )
{
flag_set( "passkey_confirmed" );
}
}
else
{
level.passkey_progress = 0;
}
if ( letter == level.secret1[ level.secret1_progress ] )
{
level.secret1_progress++;
if ( level.secret1_progress == level.secret1.size )
{
}
}
else
{
level.secret1_progress = 0;
}
if ( letter == level.secret2[ level.secret2_progress ] )
{
level.secret2_progress++;
if ( level.secret2_progress == level.secret2.size )
{
}
}
else
{
level.secret2_progress = 0;
}
}
weapon_combo_event()
{
flag_init( "thundergun_hit" );
weapon_combo_spot = GetStruct( "weapon_combo_spot", "targetname" );
focal_point = Spawn( "script_model", weapon_combo_spot.origin );
focal_point SetModel( "tag_origin" );
focal_point PlayLoopSound( "zmb_egg_notifier", 1 );
fx = PlayFXOnTag( level._effect["gersh_spark"], focal_point, "tag_origin" );
level.black_hold_bomb_target_trig = Spawn( "trigger_radius", weapon_combo_spot.origin, 0, 50, 72 );
level.black_hole_bomb_loc_check_func = ::bhb_combo_loc_check;
flag_wait( "weapons_combined" );
level.black_hold_bomb_target_trig Delete();
level.black_hole_bomb_loc_check_func = undefined;
focal_point Delete();
for ( i=0; i<level.casimir_lights.size; i++ )
{
level.casimir_lights[i] Delete();
}
}
bhb_combo_loc_check( grenade, model, info )
{
if ( IsDefined( level.black_hold_bomb_target_trig ) &&
grenade IsTouching( level.black_hold_bomb_target_trig ) )
{
trig = Spawn( "trigger_damage", grenade.origin, 0, 15, 72 );
grenade thread wait_for_combo( trig );
}
return false;
}
wait_for_combo( trig )
{
self endon( "death" );
self thread kill_trig_on_death( trig );
weapon_combo_spot = GetStruct( "weapon_combo_spot", "targetname" );
ray_gun_hit = false;
doll_hit = false;
crossbow_hit = false;
players = get_players();
array_thread( players, ::thundergun_check, self, trig, weapon_combo_spot );
while ( 1 )
{
trig waittill( "damage", amount, attacker, dir, org, mod );
if ( isDefined( attacker ) )
{
if ( mod == "MOD_PROJECTILE_SPLASH" && (attacker GetCurrentWeapon() == "ray_gun_upgraded_zm" ) )
{
ray_gun_hit = true;
}
else if ( mod == "MOD_GRENADE_SPLASH" )
{
if ( amount >= 90000 )
{
doll_hit = true;
}
else if ( attacker GetCurrentWeapon() == "crossbow_explosive_upgraded_zm" )
{
crossbow_hit = true;
}
}
if ( ray_gun_hit && doll_hit && flag( "thundergun_hit" ) )
{
flag_set( "weapons_combined" );
level thread soul_release( self, trig.origin );
return;
}
}
}
}
thundergun_check( model, trig, weapon_combo_spot )
{
model endon( "death" );
while (1)
{
self waittill( "weapon_fired" );
if ( self GetCurrentWeapon() == "thundergun_upgraded_zm" )
{
if ( DistanceSquared( self.origin, weapon_combo_spot.origin ) < 90000 )
{
vector_to_spot = VectorNormalize( weapon_combo_spot.origin - self GetWeaponMuzzlePoint() );
vector_player_facing = self GetWeaponForwardDir();
angle_diff = acos( VectorDot( vector_to_spot, vector_player_facing ) );
if ( angle_diff <= 10 )
{
flag_set( "thundergun_hit" );
RadiusDamage( trig.origin, 5, 1, 1, self );
}
}
}
}
}
kill_trig_on_death( trig )
{
self waittill( "death" );
trig delete();
if( flag( "thundergun_hit" ) && !flag( "weapons_combined" ) )
{
level thread play_egg_vox( "vox_ann_egg6p1_success", "vox_gersh_egg6_fail2", 7 );
}
else if( !flag( "weapons_combined" ) )
{
level thread play_egg_vox( undefined, "vox_gersh_egg6_fail1", 6 );
}
flag_clear( "thundergun_hit" );
}
soul_release( model, origin )
{
soul = Spawn( "script_model", origin );
soul SetModel( "tag_origin" );
soul PlayLoopSound( "zmb_egg_soul" );
fx = PlayFXOnTag( level._effect["gersh_spark"], soul, "tag_origin" );
time = 20;
model waittill( "death" );
level thread play_egg_vox( "vox_ann_egg6_success", "vox_gersh_egg6_success", 9 );
level thread wait_for_gersh_vox();
soul MoveZ( 2500, time, time - 1 );
wait( time );
soul Delete();
wait(2);
level thread samantha_is_angry();
}
wait_for_gersh_vox()
{
wait(12.5);
players = GetPlayers();
for ( i=0; i<players.size; i++ )
{
players[i] thread reward_wait();
}
}
reward_wait()
{
while ( !is_player_valid( self ) ||
( self UseButtonPressed() && self in_revive_trigger() ) )
{
wait( 1.0 );
}
level thread maps\_zombiemode_powerups::minigun_weapon_powerup( self, 90 );
}
play_egg_vox( ann_alias, gersh_alias, plr_num )
{
if( IsDefined( ann_alias ) )
{
level maps\zombie_cosmodrome_amb::play_cosmo_announcer_vox( ann_alias );
}
if( IsDefined( gersh_alias ) )
{
level maps\zombie_cosmodrome_amb::play_gersh_vox( gersh_alias );
}
if( IsDefined( plr_num ) )
{
players = get_players();
rand = RandomIntRange( 0, players.size );
players[rand] maps\_zombiemode_audio::create_and_play_dialog( "eggs", "gersh_response", undefined, plr_num );
}
}
samantha_is_angry()
{
playsoundatposition( "zmb_samantha_earthquake", (0,0,0) );
playsoundatposition( "zmb_samantha_whispers", (0,0,0) );
wait(6);
level clientnotify( "sia" );
playsoundatposition( "zmb_samantha_scream", (0,0,0) );
#include common_scripts\utility;
#include maps\_utility;
#include maps\_zombiemode_utility;
#include maps\_ambientpackage;
#include maps\_music;
#include maps\_busing;
#include maps\_zombiemode_audio;
init()
{
PreCacheModel( "p_glo_electrical_transformer" );
PreCacheModel( "p_zom_monitor_csm_screen_on" );
PreCacheModel( "p_zom_monitor_csm_screen_logo" );
PreCacheModel( "p_rus_electric_switch_stop" );
PreCacheModel( "p_rus_clock_lrg" );
flag_init( "target_teleported" );
flag_init( "rerouted_power" );
flag_init( "switches_synced" );
flag_init( "pressure_sustained" );
flag_init( "passkey_confirmed" );
flag_init( "weapons_combined" );
level.casimir_lights = [];
level.lander_letters[ "a" ] = GetEnt( "letter_a", "targetname" );
level.lander_letters[ "e" ] = GetEnt( "letter_e", "targetname" );
level.lander_letters[ "h" ] = GetEnt( "letter_h", "targetname" );
level.lander_letters[ "i" ] = GetEnt( "letter_i", "targetname" );
level.lander_letters[ "l" ] = GetEnt( "letter_l", "targetname" );
level.lander_letters[ "m" ] = GetEnt( "letter_m", "targetname" );
level.lander_letters[ "n" ] = GetEnt( "letter_n", "targetname" );
level.lander_letters[ "r" ] = GetEnt( "letter_r", "targetname" );
level.lander_letters[ "s" ] = GetEnt( "letter_s", "targetname" );
level.lander_letters[ "t" ] = GetEnt( "letter_t", "targetname" );
level.lander_letters[ "u" ] = GetEnt( "letter_u", "targetname" );
level.lander_letters[ "y" ] = GetEnt( "letter_y", "targetname" );
keys = GetArrayKeys( level.lander_letters );
for ( i=0; i<keys.size; i++ )
{
level.lander_letters[ keys[i] ] Hide();
}
teleport_target_event();
reroute_power_event();
sync_switch_event();
pressure_plate_event();
lander_passkey_event();
weapon_combo_event();
level notify( "help_found" );
monitor = GetEnt( "casimir_monitor", "targetname" );
monitor SetModel( "p_zom_monitor_csm_screen_off" );
}
play_easter_egg_audio( alias, sound_ent, text )
{
if( alias == undefined )
{
return;
}
sound_ent PlaySound( alias, "sounddone" );
sound_ent waittill( "sounddone" );
}
activate_casimir_light( num )
{
spot = GetStruct( "casimir_light_"+num, "targetname" );
if ( IsDefined( spot ) )
{
light = Spawn( "script_model", spot.origin );
light SetModel( "tag_origin" );
light.angles = spot.angles;
fx = PlayFXOnTag( level._effect["fx_zmb_light_floodlight_bright"], light, "tag_origin" );
level.casimir_lights[ level.casimir_lights.size ] = light;
}
}
teleport_target_event()
{
teleport_target_start = getstruct( "teleport_target_start", "targetname" );
teleport_target_spark = getstruct( "teleport_target_spark", "targetname" );
level.teleport_target = Spawn( "script_model", teleport_target_start.origin );
level.teleport_target SetModel( "p_glo_electrical_transformer" );
level.teleport_target.angles = teleport_target_start.angles;
level.teleport_target PlayLoopSound( "zmb_egg_notifier", 1 );
teleport_target_spark = Spawn( "script_model", teleport_target_spark.origin );
teleport_target_spark SetModel( "tag_origin" );
PlayFXOnTag( level._effect["switch_sparks"], teleport_target_spark, "tag_origin" );
level.teleport_target_trigger = Spawn( "trigger_radius", teleport_target_start.origin + (0,0,-70), 0, 125, 100 );
level.black_hole_bomb_loc_check_func = ::bhb_teleport_loc_check;
flag_wait( "target_teleported" );
teleport_target_spark Delete();
level.black_hole_bomb_loc_check_func = undefined;
level thread play_egg_vox( "vox_ann_egg1_success", "vox_gersh_egg1", 1 );
}
bhb_teleport_loc_check( grenade, model, info )
{
if( IsDefined( level.teleport_target_trigger ) && grenade IsTouching( level.teleport_target_trigger ) )
{
model SetClientFlag( level._SCRIPTMOVER_CLIENT_FLAG_BLACKHOLE );
grenade thread maps\_zombiemode_weap_black_hole_bomb::do_black_hole_bomb_sound( model, info );
level thread teleport_target( grenade, model );
return true;
}
return false;
}
teleport_target( grenade, model )
{
level.teleport_target_trigger Delete();
level.teleport_target_trigger = undefined;
wait( 1.0 );
time = 3.0;
level.teleport_target MoveTo( grenade.origin + (0,0,50), time, time - 0.05 );
wait( time );
teleport_target_end = getstruct( "teleport_target_end", "targetname" );
level.teleport_target Hide();
playsoundatposition( "zmb_gersh_teleporter_out", grenade.origin + (0,0,50) );
wait( 0.5 );
level.teleport_target.angles = teleport_target_end.angles;
level.teleport_target MoveTo( teleport_target_end.origin, 0.05 );
level.teleport_target StopLoopSound( 1 );
wait( 0.5 );
level.teleport_target Show();
PlayFXOnTag( level._effect[ "black_hole_bomb_event_horizon" ], level.teleport_target, "tag_origin" );
level.teleport_target PlaySound( "zmb_gersh_teleporter_go" );
wait( 2.0 );
model Delete();
flag_set( "target_teleported" );
}
reroute_power_event()
{
monitor = GetEnt( "casimir_monitor", "targetname" );
location = GetStruct( "casimir_monitor_struct", "targetname" );
monitor PlayLoopSound( "zmb_egg_notifier", 1 );
monitor SetModel( "p_zom_monitor_csm_screen_on" );
trig = Spawn( "trigger_radius", location.origin, 0, 32, 60 );
trig wait_for_use( monitor );
trig delete();
flag_set( "rerouted_power" );
monitor SetModel( "p_zom_monitor_csm_screen_logo" );
monitor StopLoopSound( 1 );
level thread play_egg_vox( "vox_ann_egg2_success", "vox_gersh_egg2", 2 );
level thread activate_casimir_light( 1 );
}
wait_for_use( monitor )
{
while(1)
{
self waittill( "trigger", who );
while( IsPlayer(who) && who IsTouching( self ) )
{
if( who UseButtonPressed() )
{
flag_set( "rerouted_power" );
monitor PlaySound( "zmb_comp_activate" );
return;
}
wait(.05);
}
}
}
sync_switch_event()
{
switches = GetStructArray( "sync_switch_start", "targetname" );
success = false;
while ( !flag( "switches_synced" ) )
{
flag_wait( "monkey_round" );
array_thread( switches, ::reveal_switch );
self thread switch_watcher();
level waittill_either( "between_round_over", "switches_synced" );
}
level thread play_egg_vox( "vox_ann_egg3_success", "vox_gersh_egg3", 3 );
level thread activate_casimir_light( 2 );
}
reveal_switch()
{
button = Spawn( "script_model", self.origin );
button SetModel( "p_rus_electric_switch_stop" );
button.angles = self.angles + (0,90,0);
button PlayLoopSound( "zmb_egg_notifier", 1 );
offset = AnglesToForward(self.angles) * 8;
time = 1;
button MoveTo( button.origin + offset, 1 );
wait( 1 );
if ( flag( "monkey_round" ) )
{
trig = Spawn( "trigger_radius", button.origin, 0, 32, 72 );
trig thread wait_for_sync_use( self );
level waittill_either( "between_round_over", "switches_synced" );
trig delete();
}
button StopLoopSound( 1 );
button MoveTo( self.origin, time );
wait( time );
button delete();
}
wait_for_sync_use( ss )
{
level endon( "between_round_over" );
level endon( "switches_synced" );
ss.pressed = 0;
while(1)
{
self waittill( "trigger", who );
while( IsPlayer(who) && who IsTouching( self ) )
{
if( who UseButtonPressed() )
{
level notify( "sync_button_pressed" );
playsoundatposition( "zmb_push_button", ss.origin );
ss.pressed = 1;
}
wait(.05);
}
}
}
switch_watcher()
{
level endon( "between_round_over" );
pressed = 0;
switches = GetStructArray( "sync_switch_start", "targetname" );
while (1)
{
level waittill( "sync_button_pressed" );
timeout = GetTime() + 500;
while ( GetTime() < timeout )
{
pressed = 0;
for ( i=0; i<switches.size; i++ )
{
if ( IsDefined( switches[i].pressed ) && switches[i].pressed )
{
pressed++;
}
}
if ( pressed == 4 )
{
flag_set( "switches_synced" );
for ( i=0; i<switches.size; i++ )
{
playsoundatposition( "zmb_misc_activate", switches[i].origin );
}
return;
}
wait( 0.05 );
}
switch( pressed )
{
case 1:
case 2:
case 3:
for ( i=0; i<switches.size; i++ )
{
playsoundatposition( "zmb_deny", switches[i].origin );
}
break;
}
for ( i=0; i<switches.size; i++ )
{
switches[i].pressed = 0;
}
}
}
pressure_plate_event()
{
area = GetStruct( "pressure_pad", "targetname" );
trig = Spawn( "trigger_radius", area.origin, 0, 300, 100 );
trig area_timer( 120 );
trig Delete();
level thread play_egg_vox( "vox_ann_egg4_success", "vox_gersh_egg4", 4 );
level thread activate_casimir_light( 3 );
}
area_timer( time )
{
clock_loc = GetStruct( "pressure_timer", "targetname" );
clock = Spawn( "script_model", clock_loc.origin );
clock SetModel( "p_rus_clock_lrg" );
clock.angles = clock_loc.angles;
clock PlayLoopSound( "zmb_egg_notifier", 1 );
timer_hand_angles_init = ( 270, 90, 0 );
timer_hand = Spawn( "script_model", clock_loc.origin + ( -1, 0, 12 ) );
timer_hand SetModel( "t5_weapon_ballistic_knife_blade" );
timer_hand.angles = timer_hand_angles_init;
step = 1.0;
while ( !flag( "pressure_sustained" ) )
{
self waittill( "trigger" );
stop_timer = false;
players = get_players();
for ( i=0; i<players.size; i++ )
{
if ( !players[i] IsTouching( self ) )
{
wait( step );
stop_timer = true;
}
}
if ( stop_timer )
{
continue;
}
self PlaySound( "zmb_pressure_plate_trigger" );
time_remaining = time;
timer_hand RotatePitch( 360, time );
while ( time_remaining )
{
players = get_players();
for ( i=0; i<players.size; i++ )
{
if ( !players[i] IsTouching( self ) )
{
wait( step );
time_remaining = time;
stop_timer = true;
timer_hand RotateTo( timer_hand_angles_init, 0.5 );
timer_hand PlaySound( "zmb_deny" );
wait( 0.5 );
break;
}
}
if ( stop_timer )
{
break;
}
wait( step );
time_remaining -= step;
timer_hand PlaySound( "zmb_egg_timer_oneshot" );
}
if ( time_remaining <= 0 )
{
flag_set( "pressure_sustained" );
players = get_players();
temp_fx = undefined;
if ( IsDefined( players[0].fx ) )
{
temp_fx = players[0].fx;
}
timer_hand playsound( "zmb_perks_packa_ready" );
players[0].fx = level.zombie_powerups[ "nuke" ].fx;
level thread maps\_zombiemode_powerups::nuke_powerup( players[0] );
clock StopLoopSound( 1 );
wait( 1.0 );
if ( IsDefined( temp_fx ) )
{
players[0].fx = temp_fx;
}
else
{
players[0].fx = undefined;
}
clock Delete();
timer_hand Delete();
return;
}
}
}
lander_passkey_event()
{
flag_init( "letter_acquired" );
level.lander_key = [];
level.lander_key[ "lander_station1" ][ "lander_station3" ] = "s";
level.lander_key[ "lander_station1" ][ "lander_station4" ] = "r";
level.lander_key[ "lander_station1" ][ "lander_station5" ] = "e";
level.lander_key[ "lander_station3" ][ "lander_station1" ] = "y";
level.lander_key[ "lander_station3" ][ "lander_station4" ] = "a";
level.lander_key[ "lander_station3" ][ "lander_station5" ] = "i";
level.lander_key[ "lander_station4" ][ "lander_station1" ] = "m";
level.lander_key[ "lander_station4" ][ "lander_station3" ] = "h";
level.lander_key[ "lander_station4" ][ "lander_station5" ] = "u";
level.lander_key[ "lander_station5" ][ "lander_station1" ] = "t";
level.lander_key[ "lander_station5" ][ "lander_station3" ] = "n";
level.lander_key[ "lander_station5" ][ "lander_station4" ] = "l";
level.passkey = array( "l", "u", "n", "a" );
level.passkey_progress = 0;
level.secret1 = array( "h", "i", "t", "s", "a", "m" );
level.secret1_progress = 0;
level.secret2 = array( "h", "y", "e", "n", "a" );
level.secret2_progress = 0;
thread lander_monitor();
flag_wait( "passkey_confirmed" );
level.lander_audio_ent StopLoopSound( 1 );
level thread play_egg_vox( "vox_ann_egg5_success", "vox_gersh_egg5", 5 );
level thread activate_casimir_light( 4 );
wait(1);
level.lander_audio_ent Delete();
}
lander_monitor()
{
lander = getent( "lander", "targetname" );
level.lander_audio_ent = Spawn( "script_origin", lander.origin );
level.lander_audio_ent LinkTo( lander );
level.lander_audio_ent PlayLoopSound( "zmb_egg_notifier", 1 );
while ( !flag( "passkey_confirmed" ) )
{
level waittill("lander_launched");
if ( lander.called )
{
start = lander.depart_station;
dest = lander.station;
letter = level.lander_key[ start ][ dest ];
model = level.lander_letters[ letter ];
model Show();
model PlaySound( "zmb_spawn_powerup" );
model thread spin_letter();
model PlayLoopSound( "zmb_spawn_powerup_loop", .5 );
trig = Spawn( "trigger_radius", model.origin, 0, 200, 150 );
trig thread letter_grab( letter, model );
flag_wait("lander_grounded");
if ( !flag( "letter_acquired" ) )
{
level.passkey_progress = 0;
level.secret1_progress = 0;
level.secret2_progress = 0;
}
else
{
flag_clear( "letter_acquired" );
}
trig delete();
model Hide();
model StopLoopSound( .5 );
}
else
{
level.passkey_progress = 0;
level.secret1_progress = 0;
level.secret2_progress = 0;
}
}
}
spin_letter()
{
level endon( "lander_grounded" );
level endon( "letter_acquired" );
while (1)
{
self RotateYaw( 90, 5 );
wait( 5 );
}
}
letter_grab( letter, model )
{
level endon("lander_grounded");
self waittill( "trigger" );
flag_set( "letter_acquired" );
playsoundatposition("zmb_powerup_grabbed", model.origin);
model Hide();
if ( letter == level.passkey[ level.passkey_progress ] )
{
level.passkey_progress++;
if ( level.passkey_progress == level.passkey.size )
{
flag_set( "passkey_confirmed" );
}
}
else
{
level.passkey_progress = 0;
}
if ( letter == level.secret1[ level.secret1_progress ] )
{
level.secret1_progress++;
if ( level.secret1_progress == level.secret1.size )
{
}
}
else
{
level.secret1_progress = 0;
}
if ( letter == level.secret2[ level.secret2_progress ] )
{
level.secret2_progress++;
if ( level.secret2_progress == level.secret2.size )
{
}
}
else
{
level.secret2_progress = 0;
}
}
weapon_combo_event()
{
flag_init( "thundergun_hit" );
weapon_combo_spot = GetStruct( "weapon_combo_spot", "targetname" );
focal_point = Spawn( "script_model", weapon_combo_spot.origin );
focal_point SetModel( "tag_origin" );
focal_point PlayLoopSound( "zmb_egg_notifier", 1 );
fx = PlayFXOnTag( level._effect["gersh_spark"], focal_point, "tag_origin" );
level.black_hold_bomb_target_trig = Spawn( "trigger_radius", weapon_combo_spot.origin, 0, 50, 72 );
level.black_hole_bomb_loc_check_func = ::bhb_combo_loc_check;
flag_wait( "weapons_combined" );
level.black_hold_bomb_target_trig Delete();
level.black_hole_bomb_loc_check_func = undefined;
focal_point Delete();
for ( i=0; i<level.casimir_lights.size; i++ )
{
level.casimir_lights[i] Delete();
}
}
bhb_combo_loc_check( grenade, model, info )
{
if ( IsDefined( level.black_hold_bomb_target_trig ) &&
grenade IsTouching( level.black_hold_bomb_target_trig ) )
{
trig = Spawn( "trigger_damage", grenade.origin, 0, 15, 72 );
grenade thread wait_for_combo( trig );
}
return false;
}
wait_for_combo( trig )
{
self endon( "death" );
self thread kill_trig_on_death( trig );
weapon_combo_spot = GetStruct( "weapon_combo_spot", "targetname" );
ray_gun_hit = false;
doll_hit = false;
crossbow_hit = false;
players = get_players();
array_thread( players, ::thundergun_check, self, trig, weapon_combo_spot );
while ( 1 )
{
trig waittill( "damage", amount, attacker, dir, org, mod );
if ( isDefined( attacker ) )
{
if ( mod == "MOD_PROJECTILE_SPLASH" && (attacker GetCurrentWeapon() == "ray_gun_upgraded_zm" ) )
{
ray_gun_hit = true;
}
else if ( mod == "MOD_GRENADE_SPLASH" )
{
if ( amount >= 90000 )
{
doll_hit = true;
}
else if ( attacker GetCurrentWeapon() == "crossbow_explosive_upgraded_zm" )
{
crossbow_hit = true;
}
}
if ( ray_gun_hit && doll_hit && flag( "thundergun_hit" ) )
{
flag_set( "weapons_combined" );
level thread soul_release( self, trig.origin );
return;
}
}
}
}
thundergun_check( model, trig, weapon_combo_spot )
{
model endon( "death" );
while (1)
{
self waittill( "weapon_fired" );
if ( self GetCurrentWeapon() == "thundergun_upgraded_zm" )
{
if ( DistanceSquared( self.origin, weapon_combo_spot.origin ) < 90000 )
{
vector_to_spot = VectorNormalize( weapon_combo_spot.origin - self GetWeaponMuzzlePoint() );
vector_player_facing = self GetWeaponForwardDir();
angle_diff = acos( VectorDot( vector_to_spot, vector_player_facing ) );
if ( angle_diff <= 10 )
{
flag_set( "thundergun_hit" );
RadiusDamage( trig.origin, 5, 1, 1, self );
}
}
}
}
}
kill_trig_on_death( trig )
{
self waittill( "death" );
trig delete();
if( flag( "thundergun_hit" ) && !flag( "weapons_combined" ) )
{
level thread play_egg_vox( "vox_ann_egg6p1_success", "vox_gersh_egg6_fail2", 7 );
}
else if( !flag( "weapons_combined" ) )
{
level thread play_egg_vox( undefined, "vox_gersh_egg6_fail1", 6 );
}
flag_clear( "thundergun_hit" );
}
soul_release( model, origin )
{
soul = Spawn( "script_model", origin );
soul SetModel( "tag_origin" );
soul PlayLoopSound( "zmb_egg_soul" );
fx = PlayFXOnTag( level._effect["gersh_spark"], soul, "tag_origin" );
time = 20;
model waittill( "death" );
level thread play_egg_vox( "vox_ann_egg6_success", "vox_gersh_egg6_success", 9 );
level thread wait_for_gersh_vox();
soul MoveZ( 2500, time, time - 1 );
wait( time );
soul Delete();
wait(2);
level thread samantha_is_angry();
}
wait_for_gersh_vox()
{
wait(12.5);
players = GetPlayers();
for ( i=0; i<players.size; i++ )
{
players[i] thread reward_wait();
}
}
reward_wait()
{
while ( !is_player_valid( self ) ||
( self UseButtonPressed() && self in_revive_trigger() ) )
{
wait( 1.0 );
}
level thread maps\_zombiemode_powerups::minigun_weapon_powerup( self, 90 );
}
play_egg_vox( ann_alias, gersh_alias, plr_num )
{
if( IsDefined( ann_alias ) )
{
level maps\zombie_cosmodrome_amb::play_cosmo_announcer_vox( ann_alias );
}
if( IsDefined( gersh_alias ) )
{
level maps\zombie_cosmodrome_amb::play_gersh_vox( gersh_alias );
}
if( IsDefined( plr_num ) )
{
players = get_players();
rand = RandomIntRange( 0, players.size );
players[rand] maps\_zombiemode_audio::create_and_play_dialog( "eggs", "gersh_response", undefined, plr_num );
}
}
samantha_is_angry()
{
playsoundatposition( "zmb_samantha_earthquake", (0,0,0) );
playsoundatposition( "zmb_samantha_whispers", (0,0,0) );
wait(6);
level clientnotify( "sia" );
playsoundatposition( "zmb_samantha_scream", (0,0,0) );
Don't claim to know shit that you clearly haven't looked into yourself
Last edited by iDestroy ; edited 1 time in total
- 0useful
- 0not useful
#15. Posted:
Status: Offline
Joined: Jan 15, 201113Year Member
Posts: 949
Reputation Power: 44
Status: Offline
Joined: Jan 15, 201113Year Member
Posts: 949
Reputation Power: 44
that ain't the whole coding there is more. That doesn't have half the crap. There isn't any mention of any guns except crossbow, raygun and thundergun........
and put that in a spoiler it's way too big
and put that in a spoiler it's way too big
- 0useful
- 0not useful
#16. Posted:
Status: Offline
Joined: Feb 03, 201113Year Member
Posts: 8
Reputation Power: 0
Why in the coding does it state lunar lander 1,3,4, and 5 rather than 2 ?
- 0useful
- 0not useful
#17. Posted:
Status: Offline
Joined: Jan 15, 201113Year Member
Posts: 949
Reputation Power: 44
Status: Offline
Joined: Jan 15, 201113Year Member
Posts: 949
Reputation Power: 44
Tadsh wrote Why in the coding does it state lunar lander 1,3,4, and 5 rather than 2 ?
can you copy and paste it from that? i'm not going through all that...
- 0useful
- 0not useful
#18. Posted:
Status: Offline
Joined: Mar 21, 200915Year Member
Posts: 755
Reputation Power: 26
Status: Offline
Joined: Mar 21, 200915Year Member
Posts: 755
Reputation Power: 26
Snowhiter wrote I would imagine Nikolai is just referring to the Sickle (Reaper) - which - as you know - can only be bought off the wall....
Sno
I thought he was referring to the Grim Reaper the rocket launcher.
- 0useful
- 0not useful
#19. Posted:
Status: Offline
Joined: Jan 15, 201113Year Member
Posts: 949
Reputation Power: 44
Status: Offline
Joined: Jan 15, 201113Year Member
Posts: 949
Reputation Power: 44
nmball wroteSnowhiter wrote I would imagine Nikolai is just referring to the Sickle (Reaper) - which - as you know - can only be bought off the wall....
Sno
I thought he was referring to the Grim Reaper the rocket launcher.
Why would he say that after the nodes have been done, you can get that before the nodes.
- 0useful
- 0not useful
#20. Posted:
Status: Offline
Joined: Feb 03, 201113Year Member
Posts: 552
Reputation Power: 17
C0starulz wrote#Tadsh wrote Why in the coding does it state lunar lander 1,3,4, and 5 rather than 2 ?
can you copy and paste it from that? i'm not going through all that...
LOL you won't go through 400 lines but you reckon that the reaper is in the "full game code" - you haven't even looked for it yet you just claimed it was in "the code"
Also ctrl + F is your friend..
- 0useful
- 0not useful
You are viewing our Forum Archives. To view or take place in current topics click here.