UGX-Mods Login

or login with an authentication provider below
Sign In with Google
Sign In with Twitter
Sign In with Discord
Sign In with Steam
Sign In with Facebook
Sign In with Twitch

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - EmpGeneral

I was trying to install harry's shields to use in my map,but every time i tried I got a different error.The only map post I saw with it was Alcatraz by WhippyTrout.If someone got them working pls pm me
7 years ago
So recently I got the Richtofen's voiceovers from BO2 and replaced the WaW ones(Root/Raw/sound/voiceovers/zombie/ann).It is already converted but it doesn't play ingame.Do I need to use a soundalias or something?
7 years ago
So I followed this tutorial to try to add my own main menu music: https://confluence.ugx-mods.com/display/UGXMODS/Custom+Main+Menu+Music

But every time I'm getting this error in the Mod Builder tab:


Code Snippet
Plaintext
ERROR: Sound alias file menu_music.csv: Alias name ' ' is invalid
ERROR: Sound alias file menu_music.csv: alias entry missing name and/or file

---------------------------
Errors
---------------------------
ERROR: menu_music.csv:   Invalid alias name


---------------------------
FILES: 18528
UPDATED: 4
ERRORS: 20782
----------------------------
Copying  C:\Program Files\Steam\steamapps\common\Call of Duty World at War\mods\nazi_zombie_dpp\mod.csv
     to  C:\Program Files\Steam\steamapps\common\Call of Duty World at War\zone_source\mod.csv
7 years ago
So I tried to instal DUKIP's Random Perk powerup but I'm getting this script run time error:









7 years ago
Guys please help I was doing my map in radiant and them this error message appeared:



                                                                   











And in the compile level it's giving me the following error:







                                                   



Please someone help I can't even open my map now
7 years ago
Hello guys.So I'm making a zombie map and I want to put the DG-2 as death machine,just like on Call of the Dead.If anyone knows please help

7 years ago
Hi people!
I would like to know if I can use xmodels from COD4 to COD5.For example this weapon http://www.cfgfactory.com/downloads/show/5452bb210c5c7    I have seen this gun in a lot of custom maps,but I never found where to download it,and I don't believe that all the mappers ported it by themselves
8 years ago
Hey guys.Does anyone knows how to install the fire sale in custom maps?I have already the model,but I know nothing about scripting.If anyone knows please help  :)!
8 years ago


This map is a city style map and is placed in Brazil.In this Demo I included only the surface part of it.It's my first map and it is on Beta Phase,so let me know any bugs you found(because it will have...).Before playing it please read this full topic to get the properly instructions

Screenshots:



















Know bugs:

Spoiler: click to open...
*Some weapons float on the air,so please ignore that,I will fix it
*Acidgat allows you to have more than 3 weapons
*Sometimes zombies will not focus on you


FEATURES

Buildable Workbench
3 hits to get down
Der Eisendrache Round Sounds
Black Ops pause menu
Blood Splatter
Acid Gat - Vitriolic Whitering
Tranzit Pack-a-Punch
Tranzit Zombies
BO2 and BO3 guns
BO3 Perks
BO3 Powerups Shaders and Models
BO3 Knife model
BO3 Round Chalk
BO3 Mystery Box (with FX)
BO3 Muzzleflashes effects
BO3 Drop FX
Crawl while down
Death and Texas
Double Pack a Punch
FOV Slider
Hitmarkers
Origins Hud
Four Original Characters
All 4 Original Characters Viewhands
Panzersoldat and Patrolsoldat (Not available in Demo)
Rain(FX)
Randomized Players(with specific viewhands)
UGX Jukebox
Zombie Counter



Weapons List

AN-94
Argus
Aug
Blundergat -The Sweeper / Acid Gat - Vitriolic Whitering
FMG9 Akimbo
Haymaker
HG40
KN-44
KRM
Galil
Five Seven
Kap-40
Uzi
Semtex
M1927
Man-O-War
MG08/15
MR6
Fal
MX Garand
MP5
PPSH-41 (Gorod Krovi)
PP90-M1
Ray Gun Mark II
RK5
Sheiva
Vesper
VMP


CREDITS
(So far...)

Spoiler: click to open...
HarryBo21
Tim Smith
HitmanVere
ACG
OrangeHipHop
Ricko0z
Shippuden1592
Deper
Gogeta
asus891110
Scobalula
Jbird632
YaPh1l
steviewonder8
Stupidedits
xSanchez78's
TomBMX
DamianoTBM
DTZxPorter

If I forgot you,first of all, my apologies, send me a PM and I will add you
                                                                                         
                                                                       
                                                                   
                                                                       
                                                                   
                                                                   
8 years ago
So guys in getting this error every time I try to play my map.It says that the error is on my _zombiemode_powerups line 1088.Here is my zombiemode_powerups script:
Code Snippet
Plaintext
#include maps\_utility; 
#include common_scripts\utility;
#include maps\_zombiemode_utility;

init()
{

PrecacheShader( "specialty_doublepoints_zombies" );
PrecacheShader( "specialty_instakill_zombies" );
// Soy-yo's perma-insta-kill
    PrecacheShader( "specialty_perma_instakill_zombies" );



PrecacheShader( "black" );
// powerup Vars
set_zombie_var( "zombie_insta_kill", 0 );
set_zombie_var( "zombie_point_scalar", 1 );
set_zombie_var( "zombie_drop_item", 0 );
set_zombie_var( "zombie_timer_offset", 350 ); // hud offsets
set_zombie_var( "zombie_timer_offset_interval", 30 );
set_zombie_var( "zombie_powerup_insta_kill_on", false );
set_zombie_var( "zombie_powerup_point_doubler_on", false );
set_zombie_var( "zombie_powerup_point_doubler_time", 30 ); // length of point doubler
set_zombie_var( "zombie_powerup_insta_kill_time", 30 ); // length of insta kill
set_zombie_var( "zombie_powerup_drop_increment", 2000 ); // lower this to make drop happen more often
set_zombie_var( "zombie_powerup_drop_max_per_round", 4 ); // lower this to make drop happen more often

// powerups
level._effect["powerup_on"] = loadfx( "misc/fx_zombie_powerup_on" );
level._effect["powerup_grabbed"] = loadfx( "misc/fx_zombie_powerup_grab" );
level._effect["powerup_grabbed_wave"] = loadfx( "misc/fx_zombie_powerup_wave" );
level.putimer = [];
level.putimer["dptimeremaining"] = 1;

init_powerups();

thread watch_for_drop();
}

init_powerups()
{
if( !IsDefined( level.zombie_powerup_array ) )
{
level.zombie_powerup_array = [];
}
if ( !IsDefined( level.zombie_special_drop_array ) )
{
level.zombie_special_drop_array = [];
}

// Random Drops
add_zombie_powerup( "nuke", "zombie_bomb", &"ZOMBIE_POWERUP_NUKE", "misc/fx_zombie_mini_nuke" );
add_zombie_powerup( "double_points","zombie_x2_icon", &"ZOMBIE_POWERUP_DOUBLE_POINTS" , undefined, "specialty_doublepoints_zombies", "zombie_powerup_point_doubler_time" );
add_zombie_powerup( "full_ammo",  "zombie_ammocan", &"ZOMBIE_POWERUP_MAX_AMMO");
add_zombie_powerup( "carpenter",  "zombie_carpenter", &"ZOMBIE_POWERUP_MAX_AMMO");

// add_zombie_special_powerup( "monkey" );

// additional special "drops"
// add_zombie_special_drop( "nothing" );
add_zombie_special_drop( "dog" );

// Randomize the order
randomize_powerups();

level.zombie_powerup_index = 0;
randomize_powerups();



powerup_hud_overlay()
{

level.powerup_hud_array = [];
level.powerup_hud_array[0] = true;
level.powerup_hud_array[1] = true;

level.powerup_hud = [];
level.powerup_hud_cover = [];
level endon ("disconnect");


for(i = 0; i < 2; i++)
{
level.powerup_hud[i] = create_simple_hud();
level.powerup_hud[i].foreground = true;
level.powerup_hud[i].sort = 2;
level.powerup_hud[i].hidewheninmenu = false;
level.powerup_hud[i].alignX = "center";
level.powerup_hud[i].alignY = "bottom";
level.powerup_hud[i].horzAlign = "center";
level.powerup_hud[i].vertAlign = "bottom";
level.powerup_hud[i].x = -32 + (i * 15);
level.powerup_hud[i].y = level.powerup_hud[i].y - 35;
level.powerup_hud[i].alpha = 0.8;
//hud SetShader( shader_inst, 24, 24 );
}

shader_2x = "specialty_doublepoints_zombies";
shader_insta = "specialty_instakill_zombies";
// shader_white = "black";




//for(i = 0; i < 2; i++)
//{
// level.powerup_hud_cover[i] = create_simple_hud();
// level.powerup_hud_cover[i].foreground = true;
// level.powerup_hud_cover[i].sort = 1;
// level.powerup_hud_cover[i].hidewheninmenu = false;
// level.powerup_hud_cover[i].alignX = "center";
// level.powerup_hud_cover[i].alignY = "bottom";
// level.powerup_hud_cover[i].horzAlign = "center";
// level.powerup_hud_cover[i].vertAlign = "bottom";
// level.powerup_hud_cover[i].x = -32 + (i * 34);
// level.powerup_hud_cover[i].y = level.powerup_hud_cover[i].y - 30;
// level.powerup_hud_cover[i].alpha = 1;
// //hud SetShader( shader_inst, 24, 24 );
//}



//increment = 0;


while(true)
{
if(level.zombie_vars["zombie_powerup_insta_kill_time"] < 5)
{
wait(0.1);
level.powerup_hud[1].alpha = 0;
wait(0.1);


}
else if(level.zombie_vars["zombie_powerup_insta_kill_time"] < 10)
{
wait(0.2);
level.powerup_hud[1].alpha = 0;
wait(0.18);

}

if(level.putimer["dptimeremaining"] < 5)
{
wait(0.1);
level.powerup_hud[0].alpha = 0;
wait(0.1);


}
else if(level.putimer["dptimeremaining"] < 10)
{
wait(0.2);
level.powerup_hud[0].alpha = 0;
wait(0.18);
}


//if(level.zombie_vars["zombie_powerup_insta_kill_time"] != 0)
// iprintlnbold(level.zombie_vars["zombie_powerup_insta_kill_time"]);

//if(level.putimer["dptimeremaining"] != 0)
// iprintlnbold(level.putimer["dptimeremaining"]);


//wait(0.01);

if(level.zombie_vars["zombie_powerup_point_doubler_on"] == true && level.zombie_vars["zombie_powerup_insta_kill_on"] == true)
{

level.powerup_hud[0].x = -24;
level.powerup_hud[1].x = 24;
level.powerup_hud[0].alpha = 1;
level.powerup_hud[1].alpha = 1;
level.powerup_hud[0] setshader(shader_2x, 32, 32);
level.powerup_hud[1] setshader(shader_insta, 32, 32);
/*level.powerup_hud_cover[0].x = -36;
level.powerup_hud_cover[1].x = 36;
level.powerup_hud_cover[0] setshader(shader_white, 32, i);
level.powerup_hud_cover[1] setshader(shader_white, 32, j);
level.powerup_hud_cover[0].alpha = 1;
level.powerup_hud_cover[1].alpha = 1;*/

}
else if(level.zombie_vars["zombie_powerup_point_doubler_on"] == true && level.zombie_vars["zombie_powerup_insta_kill_on"] == false)
{
level.powerup_hud[0].x = 0;
//level.powerup_hud[0].y = level.powerup_hud[0].y - 70;
level.powerup_hud[0] setshader(shader_2x, 32, 32);
level.powerup_hud[1].alpha = 0;
level.powerup_hud[0].alpha = 1;

}
else if(level.zombie_vars["zombie_powerup_insta_kill_on"] == true && level.zombie_vars["zombie_powerup_point_doubler_on"] == false)
{

level.powerup_hud[1].x = 0;
//level.powerup_hud[1].y = level.powerup_hud[1].y - 70;
level.powerup_hud[1] setshader(shader_insta, 32, 32);
level.powerup_hud[0].alpha = 0;
level.powerup_hud[1].alpha = 1;
}
else
{

level.powerup_hud[1].alpha = 0;
level.powerup_hud[0].alpha = 0;

}

wait(0.01);



//increment += 1;

//if(increment >= 20)
//{
// level.powerup_hud[0].alpha = 0;
// level.powerup_hud[1].alpha = 0;
//// level.powerup_hud_cover[0].alpha = 0;
//// level.powerup_hud_cover[1].alpha = 0;
//}
//
//if(increment == 30)
//{

// level.powerup_hud_array[1] = false;
// level.powerup_hud_array[0] = false;

//}
//wait(0.5);






/* if(randomint(100) > 50)
level.powerup_hud_array[0] = false;
else
level.powerup_hud_array[0] = true;


if(randomint(100) > 50)
level.powerup_hud_array[1] = false;
else
level.powerup_hud_array[1] = true;*/

}




//for(i = 0; i < 2; i++)
//{
// level.powerup_hud_cover[i] = create_simple_hud();
// level.powerup_hud_cover[i].foreground = true;
// level.powerup_hud_cover[i].sort = 1;
// level.powerup_hud_cover[i].hidewheninmenu = false;
// level.powerup_hud_cover[i].alignX = "center";
// level.powerup_hud_cover[i].alignY = "bottom";
// level.powerup_hud_cover[i].horzAlign = "center";
// level.powerup_hud_cover[i].vertAlign = "bottom";
// level.powerup_hud_cover[i].x = -32 + (i * 34);
// level.powerup_hud_cover[i].y = level.powerup_hud_cover[i].y - 79;
// level.powerup_hud_cover[i].alpha = 0.5;
// //hud SetShader( shader_inst, 24, 24 );
//}


//while(true)
//{
// /* for(i = 0; i < 2; i++)
// {
// level.powerup_hud[i].y = level.powerup_hud[i].y - 5;

// }*/




// wait(1);
//}

}

randomize_powerups()
{
level.zombie_powerup_array = array_randomize( level.zombie_powerup_array );
}

get_next_powerup()
{
if( level.zombie_powerup_index >= level.zombie_powerup_array.size )
{
level.zombie_powerup_index = 0;
randomize_powerups();
}

powerup = level.zombie_powerup_array[level.zombie_powerup_index];

/#
if( isdefined( level.zombie_devgui_power ) && level.zombie_devgui_power == 1 )
return powerup;

#/

//level.windows_destroyed = get_num_window_destroyed();

while( powerup == "carpenter" && get_num_window_destroyed() < 5)
{


if( level.zombie_powerup_index >= level.zombie_powerup_array.size )
{
level.zombie_powerup_index = 0;
randomize_powerups();
}


powerup = level.zombie_powerup_array[level.zombie_powerup_index];
level.zombie_powerup_index++;

if( powerup != "carpenter" )
return powerup;


wait(0.05);
}

level.zombie_powerup_index++;

return powerup;
}

get_num_window_destroyed()
{
num = 0;
for( i = 0; i < level.exterior_goals.size; i++ )
{
/*targets = getentarray(level.exterior_goals[i].target, "targetname");

barrier_chunks = [];
for( j = 0; j < targets.size; j++ )
{
if( IsDefined( targets[j].script_noteworthy ) )
{
if( targets[j].script_noteworthy == "clip" )
{
continue;
}
}

barrier_chunks[barrier_chunks.size] = targets[j];
}*/


if( all_chunks_destroyed( level.exterior_goals[i].barrier_chunks ) )
{
num += 1;
}

}

return num;
}

watch_for_drop()
{
players = get_players();
score_to_drop = ( players.size * level.zombie_vars["zombie_score_start"] ) + level.zombie_vars["zombie_powerup_drop_increment"];

while (1)
{
players = get_players();

curr_total_score = 0;

for (i = 0; i < players.size; i++)
{
curr_total_score += players[i].score_total;
}

if (curr_total_score > score_to_drop )
{
level.zombie_vars["zombie_powerup_drop_increment"] *= 1.14;
score_to_drop = curr_total_score + level.zombie_vars["zombie_powerup_drop_increment"];
level.zombie_vars["zombie_drop_item"] = 1;
}

wait( 0.5 );
}
}

add_zombie_powerup( powerup_name, model_name, hint, fx )
{
if( IsDefined( level.zombie_include_powerups ) && !IsDefined( level.zombie_include_powerups[powerup_name] ) )
{
return;
}

PrecacheModel( model_name );
PrecacheString( hint );

struct = SpawnStruct();

if( !IsDefined( level.zombie_powerups ) )
{
level.zombie_powerups = [];
}

struct.powerup_name = powerup_name;
struct.model_name = model_name;
struct.weapon_classname = "script_model";
struct.hint = hint;

if( IsDefined( fx ) )
{
struct.fx = LoadFx( fx );
}

level.zombie_powerups[powerup_name] = struct;
level.zombie_powerup_array[level.zombie_powerup_array.size] = powerup_name;
add_zombie_special_drop( powerup_name );
}


// special powerup list for the teleporter drop
add_zombie_special_drop( powerup_name )
{
level.zombie_special_drop_array[ level.zombie_special_drop_array.size ] = powerup_name;
}

include_zombie_powerup( powerup_name )
{
if( !IsDefined( level.zombie_include_powerups ) )
{
level.zombie_include_powerups = [];
}

level.zombie_include_powerups[powerup_name] = true;
}

powerup_round_start()
{
level.powerup_drop_count = 0;
}

powerup_drop(drop_point)
{
rand_drop = randomint(100);

if( level.powerup_drop_count >= level.zombie_vars["zombie_powerup_drop_max_per_round"] )
{
println( "^3POWERUP DROP EXCEEDED THE MAX PER ROUND!" );
return;
}

if( !isDefined(level.zombie_include_powerups) || level.zombie_include_powerups.size == 0 )
{
return;
}

// some guys randomly drop, but most of the time they check for the drop flag
if (rand_drop > 2)
{
if (!level.zombie_vars["zombie_drop_item"])
{
return;
}

debug = "score";
}
else
{
debug = "random";
}

// never drop unless in the playable area
playable_area = getentarray("playable_area","targetname");

powerup = maps\_zombiemode_net::network_safe_spawn( "powerup", 1, "script_model", drop_point + (0,0,40));

//chris_p - fixed bug where you could not have more than 1 playable area trigger for the whole map
valid_drop = false;
for (i = 0; i < playable_area.size; i++)
{
if (powerup istouching(playable_area[i]))
{
valid_drop = true;
}
}

if(!valid_drop)
{
powerup delete();
return;
}

powerup powerup_setup();
level.powerup_drop_count++;

print_powerup_drop( powerup.powerup_name, debug );

powerup thread powerup_timeout();
powerup thread powerup_wobble();
powerup thread powerup_grab();

level.zombie_vars["zombie_drop_item"] = 0;


//powerup = powerup_setup();

if(randomint(100) < 20) // change the 20 to change the chance that this will appear, higher number = more chance to drop
powerup thread random_powerup_powerup();


// if is !is touching trig
// return

// spawn the model, do a ground trace and place above
// start the movement logic, spawn the fx
// start the time out logic
// start the grab logic
}


//
// Special power up drop - done outside of the powerup system.
special_powerup_drop(drop_point)
{
// if( level.powerup_drop_count == level.zombie_vars["zombie_powerup_drop_max_per_round"] )
// {
// println( "^3POWERUP DROP EXCEEDED THE MAX PER ROUND!" );
// return;
// }

if( !isDefined(level.zombie_include_powerups) || level.zombie_include_powerups.size == 0 )
{
return;
}

powerup = spawn ("script_model", drop_point + (0,0,40));

// never drop unless in the playable area
playable_area = getentarray("playable_area","targetname");
//chris_p - fixed bug where you could not have more than 1 playable area trigger for the whole map
valid_drop = false;
for (i = 0; i < playable_area.size; i++)
{
if (powerup istouching(playable_area[i]))
{
valid_drop = true;
break;
}
}

if(!valid_drop)
{
powerup Delete();
return;
}

powerup special_drop_setup();
}


//
// Pick the next powerup in the list
powerup_setup()
{
powerup = get_next_powerup();

struct = level.zombie_powerups[powerup];
self SetModel( struct.model_name );

//TUEY Spawn Powerup
playsoundatposition("spawn_powerup", self.origin);

self.powerup_name = struct.powerup_name;
self.hint = struct.hint;

if( IsDefined( struct.fx ) )
{
self.fx = struct.fx;
}

self PlayLoopSound("spawn_powerup_loop");
}


//
// Get the special teleporter drop
special_drop_setup()
{
powerup = undefined;
is_powerup = true;
// Always give something at lower rounds or if a player is in last stand mode.
if ( level.round_number <= 10 || maps\_laststand::player_num_in_laststand() )
{
powerup = get_next_powerup();
}
// Gets harder now
else
{
powerup = level.zombie_special_drop_array[ RandomInt(level.zombie_special_drop_array.size) ];
if ( level.round_number > 15 &&
( RandomInt(100) < (level.round_number - 15)*5 ) )
{
powerup = "nothing";
}
}
//MM test  Change this if you want the same thing to keep spawning
// powerup = "dog";
switch ( powerup )
{
// Don't need to do anything special
case "nuke":
case "insta_kill":
case "double_points":
case "carpenter":
break;

// Limit max ammo drops because it's too powerful
case "full_ammo":
if ( level.round_number > 10 &&
( RandomInt(100) < (level.round_number - 10)*5 ) )
{
// Randomly pick another one
powerup = level.zombie_powerup_array[ RandomInt(level.zombie_powerup_array.size) ];
}
break;

case "dog":
if ( level.round_number >= 15 )
{
is_powerup = false;
dog_spawners = GetEntArray( "special_dog_spawner", "targetname" );
maps\_zombiemode_dogs::special_dog_spawn( dog_spawners, 1 );
//iprintlnbold( "Samantha Sez: No Powerup For You!" );
thread play_sound_2d( "sam_nospawn" );
}
else
{
powerup = get_next_powerup();
}
break;

// Nothing drops!!
default: // "nothing"
is_powerup = false;
Playfx( level._effect["lightning_dog_spawn"], self.origin );
playsoundatposition( "pre_spawn", self.origin );
wait( 1.5 );
playsoundatposition( "bolt", self.origin );

Earthquake( 0.5, 0.75, self.origin, 1000);
PlayRumbleOnPosition("explosion_generic", self.origin);
playsoundatposition( "spawn", self.origin );

wait( 1.0 );
//iprintlnbold( "Samantha Sez: No Powerup For You!" );
thread play_sound_2d( "sam_nospawn" );
self Delete();
}

if ( is_powerup )
{
Playfx( level._effect["lightning_dog_spawn"], self.origin );
playsoundatposition( "pre_spawn", self.origin );
wait( 1.5 );
playsoundatposition( "bolt", self.origin );

Earthquake( 0.5, 0.75, self.origin, 1000);
PlayRumbleOnPosition("explosion_generic", self.origin);
playsoundatposition( "spawn", self.origin );

// wait( 0.5 );

struct = level.zombie_powerups[powerup];
self SetModel( struct.model_name );

//TUEY Spawn Powerup
playsoundatposition("spawn_powerup", self.origin);

self.powerup_name = struct.powerup_name;
self.hint = struct.hint;

if( IsDefined( struct.fx ) )
{
self.fx = struct.fx;
}

self PlayLoopSound("spawn_powerup_loop");

self thread powerup_timeout();
self thread powerup_wobble();
self thread powerup_grab();
}
}

powerup_grab()
{
self endon ("powerup_timedout");
self endon ("powerup_grabbed");

while (isdefined(self))
{
players = get_players();

for (i = 0; i < players.size; i++)
{
if (distance (players[i].origin, self.origin) < 64)
{
playfx (level._effect["powerup_grabbed"], self.origin);
playfx (level._effect["powerup_grabbed_wave"], self.origin);

if( IsDefined( level.zombie_powerup_grab_func ) )
{
level thread [[level.zombie_powerup_grab_func]]();
}
else
{
switch (self.powerup_name)
{
case "nuke":
level thread nuke_powerup( self );

//chrisp - adding powerup VO sounds
players[i] thread powerup_vo("nuke");
zombies = getaiarray("axis");
players[i].zombie_nuked = get_array_of_closest( self.origin, zombies );
players[i] notify("nuke_triggered");

break;
case "full_ammo":
level thread full_ammo_powerup( self );
players[i] thread powerup_vo("full_ammo");
break;
case "double_points":
level thread double_points_powerup( self );
players[i] thread powerup_vo("double_points");
break;
case "insta_kill":
level thread insta_kill_powerup( self );
players[i] thread powerup_vo("insta_kill");
break;
case "carpenter":
level thread start_carpenter( self.origin );
players[i] thread powerup_vo("carpenter");
break;

default:
println ("Unrecognized poweup.");
break;
}
}

wait( 0.1 );

playsoundatposition("powerup_grabbed", self.origin);
self stoploopsound();

self delete();
self notify ("powerup_grabbed");
}
}
wait 0.1;
}
}

start_carpenter( origin )
{

level thread play_devil_dialog("carp_vox");
window_boards = getstructarray( "exterior_goal", "targetname" );
total = level.exterior_goals.size;

//COLLIN
carp_ent = spawn("script_origin", (0,0,0));
carp_ent playloopsound( "carp_loop" );

while(true)
{
windows = get_closest_window_repair(window_boards, origin);
if( !IsDefined( windows ) )
{
carp_ent stoploopsound( 1 );
carp_ent playsound( "carp_end", "sound_done" );
carp_ent waittill( "sound_done" );
break;
}

else
window_boards = array_remove(window_boards, windows);


while(1)
{
if( all_chunks_intact( windows.barrier_chunks ) )
{
break;
}

chunk = get_random_destroyed_chunk( windows.barrier_chunks );

if( !IsDefined( chunk ) )
break;

windows thread maps\_zombiemode_blockers_new::replace_chunk( chunk, false, true );
windows.clip enable_trigger();
windows.clip DisconnectPaths();
wait_network_frame();
wait(0.05);
}
 

wait_network_frame();

}


players = get_players();
for(i = 0; i < players.size; i++)
{
players[i].score += 200;
players[i].score_total += 200;
players[i] maps\_zombiemode_score::set_player_score_hud();
}


carp_ent delete();


}
get_closest_window_repair( windows, origin )
{
current_window = undefined;
shortest_distance = undefined;
for( i = 0; i < windows.size; i++ )
{
if( all_chunks_intact(windows[i].barrier_chunks ) )
continue;

if( !IsDefined( current_window ) )
{
current_window = windows[i];
shortest_distance = DistanceSquared( current_window.origin, origin );

}
else
{
if( DistanceSquared(windows[i].origin, origin) < shortest_distance )
{

current_window = windows[i];
shortest_distance =  DistanceSquared( windows[i].origin, origin );
}

}

}

return current_window;


}

powerup_vo(type)
{
self endon("death");
self endon("disconnect");

index = maps\_zombiemode_weapons::get_player_index(self);
sound = undefined;
rand = randomintrange(0,3);
vox_rand = randomintrange(1,100);  //RARE: This is to setup the Rare devil response lines
percentage = 1;  //What percent chance the rare devil response line has to play

if(!isdefined (level.player_is_speaking))
{
level.player_is_speaking = 0;
}

wait(randomfloatrange(1,2));

switch(type)
{
case "nuke":
if( vox_rand <= percentage )
{
//sound = "plr_" + index + "_vox_resp_dev_rare_" + rand;
//iprintlnbold( "Whoopdedoo, rare Devil Response line" );
}
else
{
sound = "plr_" + index + "_vox_powerup_nuke_" + rand;
}
break;
case "insta_kill":
if( vox_rand <= percentage )
{
//sound = "plr_" + index + "_vox_resp_dev_rare_" + rand;
//iprintlnbold( "Whoopdedoo, rare Devil Response line" );
}
else
{
sound = "plr_" + index + "_vox_powerup_insta_" + rand;
}
break;
case "full_ammo":
if( vox_rand <= percentage )
{
//sound = "plr_" + index + "_vox_resp_dev_rare_" + rand;
//iprintlnbold( "Whoopdedoo, rare Devil Response line" );
}
else
{
sound = "plr_" + index + "_vox_powerup_ammo_" + rand;
}
break;
case "double_points":
if( vox_rand <= percentage )
{
//sound = "plr_" + index + "_vox_resp_dev_rare_" + rand;
//iprintlnbold( "Whoopdedoo, rare Devil Response line" );
}
else
{
sound = "plr_" + index + "_vox_powerup_double_" + rand;
}
break;
case "carpenter":
if( vox_rand <= percentage )
{
//sound = "plr_" + index + "_vox_resp_dev_rare_" + rand;
//iprintlnbold( "Whoopdedoo, rare Devil Response line" );
}
else
{
sound = "plr_" + index + "_vox_powerup_carp_" + rand;
}
break;
}

//This keeps multiple voice overs from playing on the same player (both killstreaks and headshots).
if (level.player_is_speaking != 1 && isDefined(sound))
{
level.player_is_speaking = 1;
self playsound(sound, "sound_done");
self waittill("sound_done");
level.player_is_speaking = 0;
}


}

powerup_wobble()
{
self endon ("powerup_grabbed");
self endon ("powerup_timedout");

if (isdefined(self))
{
playfxontag (level._effect["powerup_on"], self, "tag_origin");
}

while (isdefined(self))
{
waittime = randomfloatrange(2.5, 5);
yaw = RandomInt( 360 );
if( yaw > 300 )
{
yaw = 300;
}
else if( yaw < 60 )
{
yaw = 60;
}
yaw = self.angles[1] + yaw;
self rotateto ((-60 + randomint(120), yaw, -45 + randomint(90)), waittime, waittime * 0.5, waittime * 0.5);
wait randomfloat (waittime - 0.1);
}
}

powerup_timeout()
{
self endon ("powerup_grabbed");

wait 15;

for (i = 0; i < 40; i++)
{
// hide and show
if (i % 2)
{
self hide();
}
else
{
self show();
}

if (i < 15)
{
wait 0.5;
}
else if (i < 25)
{
wait 0.25;
}
else
{
wait 0.1;
}
}

self notify ("powerup_timedout");
self delete();
}

// kill them all!
nuke_powerup( drop_item )
{
zombies = GetAISpeciesArray( "axis", "all" );
location = drop_item.origin;
PlayFX( drop_item.fx, location );
level thread nuke_flash();
wait 0.5;
zombies = get_array_of_closest( location, zombies );
zombies_nuked = [];
for( i = 0; i < zombies.size; i ++ )
{
if( IsDefined( zombies[i].marked_for_death ) && zombies[i].marked_for_death )
{
continue;
}
if( IsDefined( zombies[i].nuke_damage_func ) )
{
zombies[i] thread [[ zombies[i].nuke_damage_func ]]();
continue;
}
if( is_magic_bullet_shield_enabled( zombies[i] ) )
{
continue;
}
zombies[i].marked_for_death = true;
zombies[i].nuked = true;
zombies_nuked[ zombies_nuked.size ] = zombies[i];
}
for( i = 0; i < zombies_nuked.size; i ++ )
{
wait RandomFloatRange( 0.1, 0.7 );
if( !IsDefined( zombies_nuked[i] ) )
{
continue;
}
if( is_magic_bullet_shield_enabled( zombies_nuked[i] ) )
{
continue;
}
if( i < 5 && !zombies[i] enemy_is_dog() )
{
zombies_nuked[i] thread animscripts\death::flame_death_fx();
zombies_nuked[i] PlaySound( "nuked" );
}
if( !zombies[i] enemy_is_dog() )
{
if( !IsDefined( zombies_nuked[i].no_gib ) || !zombies_nuked[i].no_gib )
{
zombies_nuked[i] maps\_zombiemode_spawner::zombie_head_gib();
}
zombies_nuked[i] PlaySound( "nuked" );
}
zombies_nuked[i] DoDamage( zombies_nuked[i].health + 666, zombies_nuked[i].origin );
}
players = GetPlayers();
for( i = 0; i < players.size; i ++ )
{
players[i] maps\_zombiemode_score::player_add_points( "nuke_powerup", 400 );
}

nuke_flash ()
{
players = getplayers();
for(i=0; i<players.size; i ++)
{
players[i] play_sound_2d("nuke_flash");
}
level thread devil_dialog_delay();


fadetowhite = newhudelem();

fadetowhite.x = 0;
fadetowhite.y = 0;
fadetowhite.alpha = 0;

fadetowhite.horzAlign = "fullscreen";
fadetowhite.vertAlign = "fullscreen";
fadetowhite.foreground = true;
fadetowhite SetShader( "white", 640, 480 );

// Fade into white
fadetowhite FadeOverTime( 0.2 );
fadetowhite.alpha = 0.8;

wait 0.5;
fadetowhite FadeOverTime( 1.0 );
fadetowhite.alpha = 0;

wait 1.1;
fadetowhite destroy();
}

// double the points
double_points_powerup( drop_item )
{
level notify ("powerup points scaled");
level endon ("powerup points scaled");

// players = get_players();
// array_thread(level,::point_doubler_on_hud, drop_item);


level.putimer["dptimeremaining"] += 30;
level thread point_doubler_on_hud( drop_item );


dotimer();

level.zombie_vars["zombie_powerup_point_doubler_on"] = false;
level.zombie_vars["zombie_point_scalar"] = 1;
}

full_ammo_powerup( drop_item )
{
players = get_players();

for (i = 0; i < players.size; i++)
{
primaryWeapons = players[i] GetWeaponsList();

for( x = 0; x < primaryWeapons.size; x++ )
{
players[i] SetWeaponAmmoClip( primaryWeapons[x], WeaponClipSize( primaryWeapons[x] ) );
players[i] GiveMaxAmmo( primaryWeapons[x] );
}
}
// array_thread (players, ::full_ammo_on_hud, drop_item);
level thread full_ammo_on_hud( drop_item );
}

insta_kill_powerup( drop_item )
{
level notify( "powerup instakill" );
level endon( "powerup instakill" );

// Soy-yo's perma-insta-kill
players = get_players();
for( i = 0; i < players.size; i++ ) {
    if( isAlive( players[i] ) )
        players[i].initialKills = players[i].kills;
    if( isDefined( players[i].zeroInstaKills ) && ( players[i].zeroInstaKills >= 2
        || ( players[i].zeroInstaKills == 1 && randomInt(100) == 0 ) )
        && isAlive( players[i] ) )
            players[i] thread soy_yos_insta_kill_perma_perk_init();
}


// array_thread (players, ::insta_kill_on_hud, drop_item);
level thread insta_kill_on_hud( drop_item );

level.zombie_vars["zombie_insta_kill"] = 1;
wait( 30 );
level.zombie_vars["zombie_insta_kill"] = 0;
players = get_players();
for(i = 0; i < players.size; i++)
{
players[i] notify("insta_kill_over");

// Soy-yo's perma-insta-kill
    if( isDefined( players[i].initialKills ) && isAlive( players[i] ) && players[i].kills == players[i].initialKills ) { // the player hasn't killed anybody this time
    if( !isDefined( players[i].zeroInstaKills ) )
        players[i].zeroInstaKills = 1;
    else players[i].zeroInstaKills++;
}   else if( isDefined( players[i].zeroInstaKills ) )
    players[i].zeroInstaKills = undefined;

}

}

soy_yos_insta_kill_perma_perk_init() {
   
    self endon( "death" );
    self endon( "disconnect" );
   
    self.ignoreme = true;
    self thread soy_yos_perma_insta_kill_hud();
    self thread soy_yos_insta_kill_perma_perk_main();
    wait(15);
    self notify( "insta_kill_perma_perk_out" );
    self.ignoreme = false;
   
}

soy_yos_perma_insta_kill_hud() {
    hud = create_simple_hud( self );
    hud.foreground = true;   
    hud.sort = 2;
    hud.hidewheninmenu = false;
    hud.alignX = "center";
    hud.alignY = "bottom";
    hud.horzAlign = "center";
    hud.vertAlign = "bottom";
    hud.y = hud.y - 80;
    hud.alpha = 1;
    hud setShader( "specialty_perma_instakill_zombies", 24, 24 );
    hud thread soy_yos_perma_insta_kill_hud_overlay();
    self waittill_any( "insta_kill_perma_perk_out","death","disconnect" );
    hud destroy_hud();
    hud notify( "hud_destroyed" );
}

soy_yos_perma_insta_kill_hud_overlay() {
   
    self endon( "hud_destroyed" );
   
    wait(10);
   
    for( i = 0; i < 5; i++ ) {
        self.alpha = 0;
        wait(.25);
        self.alpha = 1;
        wait(.25);
    }
   
    while(1) {
        self.alpha = 0;
        wait(.1);
        self.alpha = 1;
        wait(.1);
    }
}

soy_yos_insta_kill_perma_perk_main() {
   
    self endon( "insta_kill_perma_perk_out" );
    self endon( "death" );
    self endon( "disconnect" );
   
    while(1) {
        zombies = getAIArray( "axis" );
        for( i = 0; i < zombies.size; i++ ) {
            if( isAlive( self ) && !( self maps\_laststand::player_is_in_laststand() ) && distance( zombies[i].origin, self.origin ) < 30 ) {
                zombies[i] doDamage( zombies[i].health + 935, zombies[i].origin );
                zombies[i] maps\_zombiemode_spawner::zombie_head_gib();
                self maps\_zombiemode_score::add_to_player_score(50);
                wait(.3); // don't kill zombies too fast
            }
        }
        wait(.1);
    }
}

check_for_instakill( player )
{
if( IsDefined( player ) && IsAlive( player ) && level.zombie_vars["zombie_insta_kill"])
{
if( is_magic_bullet_shield_enabled( self ) )
{
return;
}

if( self.animname == "boss_zombie" )
{
return;
}

if(player.use_weapon_type == "MOD_MELEE")
{
player.last_kill_method = "MOD_MELEE";
}
else
{
player.last_kill_method = "MOD_UNKNOWN";

}

if( flag( "dog_round" ) )
{
self DoDamage( self.health + 666, self.origin, player );
player notify("zombie_killed");
}
else
{
self maps\_zombiemode_spawner::zombie_head_gib();
self DoDamage( self.health + 666, self.origin, player );
player notify("zombie_killed");

}
}
}

insta_kill_on_hud( drop_item )
{
self endon ("disconnect");

// check to see if this is on or not
if ( level.zombie_vars["zombie_powerup_insta_kill_on"] )
{
// reset the time and keep going
level.zombie_vars["zombie_powerup_insta_kill_time"] = 30;
return;
}

level.zombie_vars["zombie_powerup_insta_kill_on"] = true;

// set up the hudelem
//hudelem = maps\_hud_util::createFontString( "objective", 2 );
//hudelem maps\_hud_util::setPoint( "TOP", undefined, 0, level.zombie_vars["zombie_timer_offset"] + level.zombie_vars["zombie_timer_offset_interval"]);
//hudelem.sort = 0.5;
//hudelem.alpha = 0;
//hudelem fadeovertime(0.5);
//hudelem.alpha = 1;
//hudelem.label = drop_item.hint;

// set time remaining for insta kill
level thread time_remaning_on_insta_kill_powerup();

// offset in case we get another powerup
//level.zombie_timer_offset -= level.zombie_timer_offset_interval;
}

time_remaning_on_insta_kill_powerup()
{
//self setvalue( level.zombie_vars["zombie_powerup_insta_kill_time"] );
level thread play_devil_dialog("insta_vox");
temp_enta = spawn("script_origin", (0,0,0));
temp_enta playloopsound("insta_kill_loop");

/*
players = get_players();
for (i = 0; i < players.size; i++)
{
players[i] playloopsound ("insta_kill_loop");
}
*/


// time it down!
while ( level.zombie_vars["zombie_powerup_insta_kill_time"] >= 0)
{
wait 0.1;
level.zombie_vars["zombie_powerup_insta_kill_time"] = level.zombie_vars["zombie_powerup_insta_kill_time"] - 0.1;
// self setvalue( level.zombie_vars["zombie_powerup_insta_kill_time"] );
}

players = get_players();
for (i = 0; i < players.size; i++)
{
//players[i] stoploopsound (2);

players[i] playsound("insta_kill");

}

temp_enta stoploopsound(2);
// turn off the timer
level.zombie_vars["zombie_powerup_insta_kill_on"] = false;

// remove the offset to make room for new powerups, reset timer for next time
level.zombie_vars["zombie_powerup_insta_kill_time"] = 30;
//level.zombie_timer_offset += level.zombie_timer_offset_interval;
//self destroy();
temp_enta delete();
}

point_doubler_on_hud( drop_item )
{
self endon ("disconnect");

// check to see if this is on or not
if ( level.zombie_vars["zombie_powerup_point_doubler_on"] )
{
// reset the time and keep going
return;
}

level.zombie_vars["zombie_powerup_point_doubler_on"] = true;
//level.powerup_hud_array[0] = true;
// set up the hudelem
//hudelem = maps\_hud_util::createFontString( "objective", 2 );
//hudelem maps\_hud_util::setPoint( "TOP", undefined, 0, level.zombie_vars["zombie_timer_offset"] );
//hudelem.sort = 0.5;
//hudelem.alpha = 0;
//hudelem fadeovertime( 0.5 );
//hudelem.alpha = 1;
//hudelem.label = drop_item.hint;

// set time remaining for point doubler
level thread time_remaining_on_point_doubler_powerup();

// offset in case we get another powerup
//level.zombie_timer_offset -= level.zombie_timer_offset_interval;
}
play_devil_dialog(sound_to_play)
{
if(!IsDefined(level.devil_is_speaking))
{
level.devil_is_speaking = 0;
}
if(level.devil_is_speaking == 0)
{
level.devil_is_speaking = 1;
play_sound_2D( sound_to_play );
wait 2.0;
level.devil_is_speaking =0;
}

}
time_remaining_on_point_doubler_powerup()
{
//self setvalue( level.putimer["dptimeremaining"] );

temp_ent = spawn("script_origin", (0,0,0));
temp_ent playloopsound ("double_point_loop");

level thread play_devil_dialog("dp_vox");


// time it down!
while ( level.putimer["dptimeremaining"] >= 0)
{
wait 0.1;
//self setvalue( level.putimer["dptimeremaining"] );
}

// turn off the timer
level.zombie_vars["zombie_powerup_point_doubler_on"] = false;
players = get_players();
for (i = 0; i < players.size; i++)
{
//players[i] stoploopsound("double_point_loop", 2);
players[i] playsound("points_loop_off");
}
temp_ent stoploopsound(2);


// remove the offset to make room for new powerups, reset timer for next time
level.putimer["dptimeremaining"] = 30;
//level.zombie_timer_offset += level.zombie_timer_offset_interval;
//self destroy();
temp_ent delete();
}
devil_dialog_delay()
{
wait(1.8);
level thread play_devil_dialog("nuke_vox");

}
full_ammo_on_hud( drop_item )
{
self endon ("disconnect");

// set up the hudelem
hudelem = maps\_hud_util::createFontString( "objective", 2 );
hudelem maps\_hud_util::setPoint( "TOP", undefined, 0, level.zombie_vars["zombie_timer_offset"] - (level.zombie_vars["zombie_timer_offset_interval"] * 2));
hudelem.sort = 0.5;
hudelem.alpha = 0;
hudelem fadeovertime(0.5);
hudelem.alpha = 1;
hudelem.label = drop_item.hint;

// set time remaining for insta kill
hudelem thread full_ammo_move_hud();

// offset in case we get another powerup
//level.zombie_timer_offset -= level.zombie_timer_offset_interval;
}

full_ammo_move_hud()
{

players = get_players();
level thread play_devil_dialog("ma_vox");
for (i = 0; i < players.size; i++)
{
players[i] playsound ("full_ammo");

}
wait 0.5;
move_fade_time = 1.5;

self FadeOverTime( move_fade_time );
self MoveOverTime( move_fade_time );
self.y = 270;
self.alpha = 0;

wait move_fade_time;

self destroy();
}

//
// DEBUG
//

print_powerup_drop( powerup, type )
{
/#
if( !IsDefined( level.powerup_drop_time ) )
{
level.powerup_drop_time = 0;
level.powerup_random_count = 0;
level.powerup_score_count = 0;
}

time = ( GetTime() - level.powerup_drop_time ) * 0.001;
level.powerup_drop_time = GetTime();

if( type == "random" )
{
level.powerup_random_count++;
}
else
{
level.powerup_score_count++;
}

println( "========== POWER UP DROPPED ==========" );
println( "DROPPED: " + powerup );
println( "HOW IT DROPPED: " + type );
println( "--------------------" );
println( "Drop Time: " + time );
println( "Random Powerup Count: " + level.powerup_random_count );
println( "Random Powerup Count: " + level.powerup_score_count );
println( "======================================" );
#/
}

dotimer()
{
  while(1)
  {
if( !level.putimer["dptimeremaining"] == 0 )
{
level.zombie_vars["zombie_point_scalar"] = 2;
level.putimer["dptimeremaining"] -= 1;
}
else
{
break;
}
wait 1;
  }
}

random_powerup_powerup()
{
while(isdefined(self))
{
powerup = get_next_powerup();
struct = level.zombie_powerups[powerup];

self SetModel( struct.model_name );
self.powerup_name = struct.powerup_name;
self.hint = struct.hint;

if( IsDefined( struct.fx ) )
self.fx = struct.fx;

wait 0.2; // change this to change the cycle time
}
}
8 years ago
Hey guys,as the title says,I need help to apply my custom pap camo to my map,the point is that I don't know how to use Asset Manager,any help will be welcome  :)
8 years ago
Loading ...