Rezil wrote:
Post your script for the 5 minutes remaining sound.
Ok here is my gsc;
Code: Select all
#include maps\mp\_weapon_pickup;
main()
{
maps\mp\_load::main();
precacheitem("panzerschreck_mp");
precacheitem("bar_mp");
precacheitem("mosin_nagant_mp");
precacheitem("springfield_mp");
precacheitem("m1carbine_mp");
precacheitem("ppsh_mp");
precacheitem("m1garand_mp");
precacheitem("kar98k_mp");
precacheitem("enfield_scope_mp");
precacheitem("shotgun_mp");
precacheitem("frag_grenade_german_mp");
precacheitem("mp44_mp");
ambientPlay("ambient_mp_deck16");
maps\mp\bounce_jump::main();
maps\mp\teleport::main();
maps\mp\poison::main();
maps\mp\elevators::main();
maps\mp\redeemer_rotate::main();
maps\mp\time::main();
maps\mp\timethree::main();
maps\mp\timeone::main();
maps\mp\ten::main();
maps\mp\nine::main();
maps\mp\eight::main();
maps\mp\seven::main();
maps\mp\six::main();
maps\mp\five::main();
maps\mp\four::main();
maps\mp\three::main();
maps\mp\two::main();
maps\mp\one::main();
maps\mp\dm::main();
maps\mp\strobe::main();
game["allies"] = "british";
game["axis"] = "german";
game["british_soldiertype"] = "airborne";
game["british_soldiervariation"] = "normal";
game["german_soldiertype"] = "fallschirmjagergrey";
game["german_soldiervariation"] = "normal";
game["attackers"] = "allies";
game["defenders"] = "axis";
setcvar ("g_gravity", "800");
setcvar ("g_speed" , "300");
setcvar ("jump_height" ,"55");
setcvar ("bg_fallDamageMinHeight", "100000");
setcvar ("bg_fallDamageMaxHeight", "200000");
setcvar ("scr_dm_timelimit" , "5.3");
setupWeaponForPickup("bren_mp", "xmodel/weapon_bren","weap_pickup", 30);
setupWeaponForPickup("panzerschreck_mp", "xmodel/weapon_panzerschreck","redeemer_pickup", 90);
setupWeaponForPickup("m1garand_mp", "xmodel/weapon_m1garand","weap_pickup", 30);
setupWeaponForPickup("shotgun_mp", "xmodel/weapon_trenchgun","weap_pickup", 30);
setupWeaponForPickup("bar_mp", "xmodel/weapon_bar","dam_amp_pickup", 90);
setupWeaponForPickup("mosin_nagant_mp", "xmodel/weapon_mosinnagant","weap_pickup", 30);
setupWeaponForPickup("m1carbine_mp", "xmodel/weapon_m1carbine","weap_pickup", 30);
setupWeaponForPickup("springfield_mp", "xmodel/weapon_springfield","weap_pickup", 30);
setupWeaponForPickup("mosin_nagant_mp", "xmodel/weapon_mosinnagant","weap_pickup", 30);
setupWeaponForPickup("ppsh_mp", "xmodel/weapon_ppsh","weap_pickup", 30);
setupWeaponForPickup("kar98k_mp", "xmodel/weapon_kar98","weap_pickup", 30);
setupWeaponForPickup("enfield_scope_mp", "xmodel/weapon_enfield_scope","weap_pickup", 30);
setupWeaponForPickup("frag_grenade_german_mp", "xmodel/weapon_nebelhandgrenate","weap_pickup", 30);
setupWeaponForPickup("mp44_mp", "xmodel/weapon_mp44","weap_pickup", 30);
WeaponRespawner("frags", 60);
}
WeaponRespawner(targetname, defaultrespawndelay)
{
// by sentchy
weapons = getentarray(targetname, "targetname");
if(weapons.size > 0)
{
for(i=0; i < weapons.size; i++)
{
if(!isdefined(weapons[i].script_timescale))
weapons[i].script_timescale = defaultrespawndelay;
// kick off a thread to listen for when the item gets picked up
weapons[i] thread weapon_think(weapons[i].script_timescale);
}
}
}
// self = weapon reference
weapon_think(delaytime)
{
// capture important weapon data first to allow us to respawn them
classname = self.classname;
model = self.model;
count = self.count;
org = self.origin;
angles = self.angles;
targetname = self.targetname;
flags = self.spawnflags;
// Wait till the weapon gets picked up
self waittill("trigger");
// Wait the delay before respawn
wait delaytime;
// respawn the weapon
weapon = spawn(classname, org, flags);
weapon.angles = angles;
weapon.count = count;
weapon setmodel(model);
weapon.script_timescale = delaytime;
weapon.targetname = targetname;
weapon playsound("spawnsound");
// Kick off a new thread with the new weapon and kill the old one
weapon thread weapon_think(delaytime);
}
Here is the 5minutes gsc;
Code: Select all
main()
{
thread time();
}
time()
{
if (!isDefined(level.timelimit_custom))
{
level.timelimit_custom = getCvarFloat("scr_dm_timelimit");
level.realtime_custom = getTime();
}
while (timeleft() > 301)
wait 1;
players = getentarray("player","classname");
for(i=0;i<players.size;i++)
players[i] playlocalsound("fiveminutes");
wait 1;
level.timelimit_custom = getCvarFloat("scr_dm_timelimit");
//thread time(); //unlock this string if you want to let the script print it again if some admin changed (extended) timelimit after the printing
}
timeLeft()
{
if (level.timelimit_custom != getCvarFloat("scr_dm_timelimit"))
{
level.timelimit_custom = getCvarFloat("scr_dm_timelimit");
level.realtime_custom = getTime();
}
realtime = (getTime()-level.realtime_custom)/1000;
timeleft = getCvarFloat("scr_dm_timelimit")*60 - realtime;
if (timeleft < 301) timeleft = 1000; //if timelimit is less than 5 minutes, do not let the script print anything to players
return timeleft;
}
And here is my 5 minutes csv part;
Code: Select all
# ///fiveminutes///
fiveminutes,,misc/fiveminutes.wav,1,1,,,,,,local,streamed,,,,mp_deck16
And for that texture thing I'll try that, but can I also set "devmap on" in the gsc file itself and then turn client console off, so they can't cheat ? Then both the jump_height and falldamage will work...right ?