I have a problem with a NSZ Telport script:
// Kino Teleporter by NSZ #using scripts\zm\_zm_score; #using scripts\codescripts\struct; #define KINO_SWIRL "_NSZ/Kino_Tele/kino_swirl" #precache( "fx", KINO_SWIRL ); // Kino Teleporter function init() { // ================ Begin: Variables You Can Change if You Like :Begin ===================== level.tele_kill_radius = 100; // The radius that kills zom at the main frame level.cooldown_time = 90; // Cooldown Time after teleporting in seconds level.tele_cost = undefined; // Cost to Use Teleporter, if undefined it is free level.time_in_pap = 30; // The amount of time you will spend in the PaP room level.nsz_debug = false; // Used to bug test and display features // ================ End: Variables You Can Change if You Like :End ===================== level.link_pad_trigger = GetEnt( "link_pad", "targetname" ); level.teleport_trigger = GetEnt( "tele_trigger", "targetname" ); level.tele_room_spots = struct::get_array( "tele_room_org", "targetname" ); level.mainframe_spots = struct::get_array( "mainframe_org", "targetname" ); level.black_spots = struct::get_array( "black_orgs", "targetname" ); level.black_spots_targets = []; for( i=0;i<level.black_spots.size;i++ ) level.black_spots_targets[i] = struct::get( level.black_spots[i].target, "targetname" ); main(); } function main() { while(1) { level.link_pad_trigger SetCursorHint( "HINT_NOICON" ); level.link_pad_trigger SetHintString( "" ); level.teleport_trigger SetHintString( "Hold ^3&&1^7 to Initiate Link to Pad" ); level.teleport_trigger SetCursorHint( "HINT_NOICON" ); level.teleport_trigger waittill( "trigger", player ); level.teleport_trigger playsound( "kino_activate_start" ); level.teleport_trigger SetHintString( "Waiting for Link to Mainframe" ); level.link_pad_trigger SetHintString( "Hold ^3&&1^7 to Link Pad with Core" ); level.link_pad_trigger waittill( "trigger", player ); level.link_pad_trigger playsound( "kino_activate_finish" ); level.link_pad_trigger SetHintString( "" ); if( isDefined(level.tele_cost) ) while(1) { level.teleport_trigger SetHintString( "Hold ^3&&1^7 to Use Teleporter [Cost: "+level.tele_cost+"]" ); level.teleport_trigger waittill( "trigger", player ); if( isDefined(level.tele_cost) && player.score >= level.tele_cost ) { player zm_score::minus_to_player_score( level.tele_cost ); level.teleport_trigger playsound( "cha_ching" ); break; } else if( isDefined( level.tele_cost ) && player.score < level.tele_cost ) { level.teleport_trigger playsound( "nsz_deny" ); nsz_iprintlnbold( "Cost Can Be Turned ON or OFF" ); wait(1); continue; } } else { level.teleport_trigger SetHintString( "Hold ^3&&1^7 to Use Teleporter" ); level.teleport_trigger waittill( "trigger", player ); } level.teleport_trigger SetHintString( "" ); nsz_iprintlnbold( "Kill Radius of Teleporter is Customizable" ); radius = spawn( "trigger_radius", level.teleport_trigger.origin, 1, level.tele_kill_radius, level.tele_kill_radius ); radius thread zom_watcher(); players = getplayers(); for( i=0;i<players.size;i++ ) { if( players[i] isTouching(radius) ) { players[i] thread tele_to_room( level.time_in_pap, i ); teleporter_sounds(); } } radius delete(); level.teleport_trigger SetHintString( "Teleporter is Cooling Down" ); nsz_iprintlnbold( "Cooldown Time is Customizable" ); wait( level.cooldown_time ); } } function tele_to_room( time, num ) { self move_to_room( level.tele_room_spots, num ); nsz_iprintlnbold( "The Amount of Time Spent in PaP is Customizable" ); wait( time ); self move_to_room( level.mainframe_spots, num ); } function teleporter_sounds() { level.teleport_trigger PlaySound( "kino_top_spark" ); wait(0.5); level.teleport_trigger PlaySound( "kino_arc_loop" ); level.teleport_trigger PlaySound( "kino_top_spark" ); wait(0.5); level.teleport_trigger PlaySound( "kino_top_spark" ); wait(2); level.teleport_trigger PlaySound( "kino_beam_fx" ); } function zom_watcher() { time_to_wait = GetTime() + 3000; while( GetTime() < time_to_wait ) { zoms = GetAISpeciesArray( "axis" ); for( i=0;i<zoms.size;i++ ) { if( zoms[i] isTouching( self ) ) zoms[i] doDamage( zoms[i].health + 666, zoms[i].origin ); } wait( 0.05 ); } } function disable_weap_states() { self setstance( "stand" ); wait(0.1); self DisableWeapons(); self DisableOffhandWeapons(); self freezecontrols( true ); } function enable_weap_states() { self EnableWeapons(); self EnableOffhandWeapons(); self freezecontrols( false ); } function move_to_room( spawns, player_num ) { self SetElectrified( 3.5 ); self playlocalsound( "kino_cooldown" ); wait( 3 ); PlaySoundAtPosition( "kino_beam_fx", self.origin ); self stopsound( "kino_cooldown" ); self playlocalsound( "kino_teleport_2d" ); self disable_weap_states(); self SetOrigin( level.black_spots[player_num].origin ); self SetPlayerAngles( level.black_spots[player_num].angles ); playfx( KINO_SWIRL, level.black_spots_targets[player_num].origin ); wait(2); self enable_weap_states(); self SetOrigin( spawns[player_num].origin ); wait(0.05); self playsound( "kino_beam_fx" ); } function nsz_iprintlnbold( string ) { if( isDefined(level.nsz_debug) && level.nsz_debug ) iprintlnbold( "^6NSZ Debug:^7 "+string ); }
I need to make this script work for everyone in the match, because, when everone click F to telport, only one person go.
Thanks.