yup xd
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1 +1,2 @@
|
|||||||
bots.txt
|
bots.txt
|
||||||
|
*.log*
|
||||||
|
|||||||
81
mod/main.gsc
81
mod/main.gsc
@@ -132,9 +132,13 @@ loadSettings()
|
|||||||
setDvar("cg_drawDamageFlash", 0);
|
setDvar("cg_drawDamageFlash", 0);
|
||||||
setDvar("bg_shock_lookControl_mousesensitivityscale", 1);
|
setDvar("bg_shock_lookControl_mousesensitivityscale", 1);
|
||||||
setDvar("bg_shock_movement", 0);
|
setDvar("bg_shock_movement", 0);
|
||||||
|
setDvar("bg_shock_movement_duration", 0);
|
||||||
|
setDvar("bg_shock_movement_magnitude", 0);
|
||||||
setDvar("bg_shock_lookControl", 0);
|
setDvar("bg_shock_lookControl", 0);
|
||||||
|
setDvar("bg_shock_lookControl_duration", 0);
|
||||||
setDvar("bg_shock_screenBlurBlendTime", 0);
|
setDvar("bg_shock_screenBlurBlendTime", 0);
|
||||||
setDvar("bg_shock_screenBlurBlendFadeTime", 0);
|
setDvar("bg_shock_screenBlurBlendFadeTime", 0);
|
||||||
|
setDvar("player_sprintUnlimited", 1); // Marathon: unlimited sprint
|
||||||
|
|
||||||
level.state = "prematch";
|
level.state = "prematch";
|
||||||
level.markerIcon = "ui_host";
|
level.markerIcon = "ui_host";
|
||||||
@@ -263,8 +267,7 @@ firstSpawn()
|
|||||||
self.crosshair = self createRectangle("CENTER", "CENTER", 0, 0, 3, 3, (0.5, 0.85, 1.0), "white", 1);
|
self.crosshair = self createRectangle("CENTER", "CENTER", 0, 0, 3, 3, (0.5, 0.85, 1.0), "white", 1);
|
||||||
self.crosshair.alpha = 0.4;
|
self.crosshair.alpha = 0.4;
|
||||||
self.crosshair.hideWhenInMenu = true;
|
self.crosshair.hideWhenInMenu = true;
|
||||||
self thread createLeaderHud();
|
|
||||||
self thread watchLeader();
|
|
||||||
self thread onKilling();
|
self thread onKilling();
|
||||||
self thread createUI();
|
self thread createUI();
|
||||||
self thread refillOnFire();
|
self thread refillOnFire();
|
||||||
@@ -284,6 +287,10 @@ firstSpawn()
|
|||||||
self maps\mp\perks\_perks::givePerk("specialty_fastreload"); // Sleight of Hand
|
self maps\mp\perks\_perks::givePerk("specialty_fastreload"); // Sleight of Hand
|
||||||
self maps\mp\perks\_perks::givePerk("specialty_falldamage");
|
self maps\mp\perks\_perks::givePerk("specialty_falldamage");
|
||||||
self maps\mp\perks\_perks::givePerk("specialty_quickdraw");
|
self maps\mp\perks\_perks::givePerk("specialty_quickdraw");
|
||||||
|
self maps\mp\perks\_perks::givePerk("specialty_lightweight");
|
||||||
|
self maps\mp\perks\_perks::givePerk("specialty_marathon");
|
||||||
|
self maps\mp\perks\_perks::givePerk("specialty_fastmantle"); // Marathon Pro: faster mantle
|
||||||
|
self setPlayerData("challengeState", "ch_marathon_pro", 2); // unlock Marathon Pro
|
||||||
self.firstSpawn = false;
|
self.firstSpawn = false;
|
||||||
self thread tryCreateMarkerIcons();
|
self thread tryCreateMarkerIcons();
|
||||||
}
|
}
|
||||||
@@ -333,9 +340,14 @@ loadSetup()
|
|||||||
self.isJugger = false;
|
self.isJugger = false;
|
||||||
self.moveSpeedScaler = getDvarFloat("speed");
|
self.moveSpeedScaler = getDvarFloat("speed");
|
||||||
self setMoveSpeedScale(getDvarFloat("speed"));
|
self setMoveSpeedScale(getDvarFloat("speed"));
|
||||||
|
self thread enforceSpeed(); // override any engine speed penalty every frame
|
||||||
self maps\mp\perks\_perks::givePerk("specialty_fastreload"); // due to icys request :)
|
self maps\mp\perks\_perks::givePerk("specialty_fastreload"); // due to icys request :)
|
||||||
self maps\mp\perks\_perks::givePerk("specialty_falldamage"); // due to icys request :)
|
self maps\mp\perks\_perks::givePerk("specialty_falldamage"); // due to icys request :)
|
||||||
self maps\mp\perks\_perks::givePerk("specialty_quickdraw");
|
self maps\mp\perks\_perks::givePerk("specialty_quickdraw");
|
||||||
|
self maps\mp\perks\_perks::givePerk("specialty_lightweight");
|
||||||
|
self maps\mp\perks\_perks::givePerk("specialty_marathon");
|
||||||
|
self maps\mp\perks\_perks::givePerk("specialty_fastmantle"); // Marathon Pro: faster mantle
|
||||||
|
self setPlayerData("challengeState", "ch_marathon_pro", 2); // unlock Marathon Pro
|
||||||
// Static HUD dvars set once per spawn.
|
// Static HUD dvars set once per spawn.
|
||||||
// g_hardcore=1 handles minimap/radar/teamscore suppression at engine level.
|
// g_hardcore=1 handles minimap/radar/teamscore suppression at engine level.
|
||||||
// We only need to override what we want TO show (ammo, custom health HUD).
|
// We only need to override what we want TO show (ammo, custom health HUD).
|
||||||
@@ -346,6 +358,11 @@ loadSetup()
|
|||||||
self setClientDvar("cg_drawTurretCrosshair", 0);
|
self setClientDvar("cg_drawTurretCrosshair", 0);
|
||||||
self setClientDvar("cg_cursorHints", 0);
|
self setClientDvar("cg_cursorHints", 0);
|
||||||
self setClientDvar("ui_hud_hardcore", 0); // show custom HUD elements despite g_hardcore
|
self setClientDvar("ui_hud_hardcore", 0); // show custom HUD elements despite g_hardcore
|
||||||
|
// Re-apply shock suppression every spawn — engine can reset client dvars on respawn
|
||||||
|
self setClientDvar("bg_shock_movement", 0);
|
||||||
|
self setClientDvar("bg_shock_movement_duration", 0);
|
||||||
|
self setClientDvar("bg_shock_movement_magnitude", 0);
|
||||||
|
self setClientDvar("bg_shock_lookControl", 0);
|
||||||
self thread takeInvalidWeapon();
|
self thread takeInvalidWeapon();
|
||||||
if(level.state == "prematch")
|
if(level.state == "prematch")
|
||||||
{
|
{
|
||||||
@@ -793,47 +810,7 @@ createRatioHud()
|
|||||||
self.ratiohud fadeOverTime(2);
|
self.ratiohud fadeOverTime(2);
|
||||||
self.ratiohud.alpha = 1;
|
self.ratiohud.alpha = 1;
|
||||||
}
|
}
|
||||||
createLeaderHud()
|
|
||||||
{
|
|
||||||
self endon("disconnect");
|
|
||||||
self.leaderhud = self createFontString("hudsmall", 1.1);
|
|
||||||
self.leaderhud setPoint("TOPLEFT", "TOPLEFT", 10, 10);
|
|
||||||
self.leaderhud.color = (1, 1, 0);
|
|
||||||
self.leaderhud.glowalpha = .4;
|
|
||||||
self.leaderhud.glowcolor = (1, 0.5, 0);
|
|
||||||
self.leaderhud.hideWhenInMenu = true;
|
|
||||||
self.leaderhud setText("Leader: -");
|
|
||||||
}
|
|
||||||
watchLeader()
|
|
||||||
{
|
|
||||||
level endon("nuke");
|
|
||||||
self endon("disconnect");
|
|
||||||
while(true)
|
|
||||||
{
|
|
||||||
wait 1;
|
|
||||||
leader = getLeader();
|
|
||||||
if(isDefined(leader) && isDefined(leader.current))
|
|
||||||
self.leaderhud setText("^3Leader: ^7" + leader.name + " ^5[" + leader.current + "]");
|
|
||||||
else
|
|
||||||
self.leaderhud setText("Leader: -");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
getLeader()
|
|
||||||
{
|
|
||||||
leader = undefined;
|
|
||||||
highLevel = -1;
|
|
||||||
foreach(player in level.players)
|
|
||||||
{
|
|
||||||
if(!isDefined(player.current))
|
|
||||||
continue;
|
|
||||||
if(player.current > highLevel)
|
|
||||||
{
|
|
||||||
highLevel = player.current;
|
|
||||||
leader = player;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return leader;
|
|
||||||
}
|
|
||||||
Weaponnumber() // deprecated
|
Weaponnumber() // deprecated
|
||||||
{
|
{
|
||||||
self notify("weaponnumber");
|
self notify("weaponnumber");
|
||||||
@@ -881,6 +858,24 @@ getBaseSpeed()
|
|||||||
base = getDvarFloat("speed");
|
base = getDvarFloat("speed");
|
||||||
return base;
|
return base;
|
||||||
}
|
}
|
||||||
|
enforceSpeed()
|
||||||
|
{
|
||||||
|
// Calls setMoveSpeedScale every server frame — brute-forces over any engine
|
||||||
|
// speed penalty (bullet pain, bg_shock, mantle exit, etc.) with no gaps.
|
||||||
|
level endon("nuke");
|
||||||
|
self endon("disconnect");
|
||||||
|
self endon("death");
|
||||||
|
while(true)
|
||||||
|
{
|
||||||
|
waitFrame();
|
||||||
|
if(level.state != "ingame")
|
||||||
|
continue;
|
||||||
|
if(self.speed)
|
||||||
|
self setMoveSpeedScale(1.6);
|
||||||
|
else
|
||||||
|
self setMoveSpeedScale(getBaseSpeed());
|
||||||
|
}
|
||||||
|
}
|
||||||
takeInvalidWeapon()
|
takeInvalidWeapon()
|
||||||
{
|
{
|
||||||
self endon("disconnect");
|
self endon("disconnect");
|
||||||
|
|||||||
Reference in New Issue
Block a user