Implement dvars for primary and secondary Seeker weapons.
parent
3ef5f671ae
commit
541e208cb8
|
@ -74,17 +74,6 @@ main()
|
|||
versionHudElem.alpha = 0.5;
|
||||
#/
|
||||
|
||||
// Define allowed seeker weapons
|
||||
level.seekerWeapons = [];
|
||||
level.seekerWeapons[0] = "m16";
|
||||
level.seekerWeapons[1] = "m4";
|
||||
level.seekerWeapons[2] = "ump45";
|
||||
level.seekerWeapons[3] = "fal";
|
||||
level.seekerWeapons[4] = "scar";
|
||||
level.seekerWeapons[5] = "ak47";
|
||||
level.seekerWeapons[6] = "p90";
|
||||
level.seekerWeapons[7] = "famas";
|
||||
|
||||
maps\mp\gametypes\_globallogic::init();
|
||||
maps\mp\gametypes\_callbacksetup::SetupCallbacks();
|
||||
maps\mp\gametypes\_globallogic::SetupCallbacks();
|
||||
|
@ -100,6 +89,8 @@ main()
|
|||
|
||||
// Specific DVars for this gametype
|
||||
registerPrereleaseDvar(level.gameType, 30, 0, 300);
|
||||
registerSeekersPrimaryWeaponDvar(level.gameType, "ak47_reflex_mp");
|
||||
registerSeekersSecondaryWeaponDvar(level.gameType, "deserteagle_tactical_mp");
|
||||
|
||||
// Don't show perks
|
||||
SetDvar("scr_showperksonspawn", 0);
|
||||
|
@ -209,6 +200,20 @@ registerPrereleaseDvar(dvarString, defaultValue, minValue, maxValue)
|
|||
}
|
||||
}
|
||||
|
||||
registerSeekersPrimaryWeaponDvar(dvarString, defaultValue)
|
||||
{
|
||||
logPrint("registerSeekersPrimaryWeaponDvar called");
|
||||
|
||||
maps\mp\gametypes\_tweakables::registerTweakable("game", "seekers_primary_weapon", "scr_" + dvarString + "_seekers_primary_weapon", "ak47_reflex_mp");
|
||||
}
|
||||
|
||||
registerSeekersSecondaryWeaponDvar(dvarString, defaultValue)
|
||||
{
|
||||
logPrint("registerSeekersSecondaryWeaponDvar called");
|
||||
|
||||
maps\mp\gametypes\_tweakables::registerTweakable("game", "seekers_secondary_weapon", "scr_" + dvarString + "_seekers_secondary_weapon", "deserteagle_tactical_mp");
|
||||
}
|
||||
|
||||
updateGametypeDvars()
|
||||
{
|
||||
logPrint("updateGametypeDvars called");
|
||||
|
@ -229,6 +234,8 @@ onStartGameType()
|
|||
setDvarIfUninitialized("scr_hns_winlimit", 4);
|
||||
setDvarIfUninitialized("scr_hns_halftime", 0);
|
||||
setDvarIfUninitialized("scr_hns_numlives", 1);
|
||||
setDvarIfUninitialized("scr_hns_seekers_primary_weapon", "ak47_reflex_mp");
|
||||
setDvarIfUninitialized("scr_hns_seekers_secondary_weapon", "deserteagle_tactical_mp");
|
||||
|
||||
// reset flags
|
||||
gameFlagClear("seekers_released");
|
||||
|
@ -594,20 +601,19 @@ handleSeeker() {
|
|||
}
|
||||
|
||||
// random primary weapon
|
||||
primaryWeapon = level.seekerWeapons[RandomInt(level.seekerWeapons.size)];
|
||||
player GiveWeapon(primaryWeapon + "_reflex_mp", RandomInt(9), false);
|
||||
player setSpawnWeapon(primaryWeapon + "_reflex_mp");
|
||||
player SwitchToWeapon(primaryWeapon + "_reflex_mp");
|
||||
player GiveWeapon(level.gameTweaks["seekers_primary_weapon"].value, RandomInt(9), false);
|
||||
player setSpawnWeapon(level.gameTweaks["seekers_primary_weapon"].value);
|
||||
player SwitchToWeapon(level.gameTweaks["seekers_primary_weapon"].value);
|
||||
|
||||
// deagle + tactical knife
|
||||
player GiveWeapon("deserteagle_tactical_mp", 0, false);
|
||||
player GiveWeapon(level.gameTweaks["seekers_secondary_weapon"].value, 0, false);
|
||||
|
||||
// single semtex
|
||||
player GiveWeapon("semtex_mp");
|
||||
|
||||
// ammo
|
||||
player GiveMaxAmmo(primaryWeapon + "_reflex_mp");
|
||||
player GiveMaxAmmo("deserteagle_tactical_mp");
|
||||
player GiveMaxAmmo(level.gameTweaks["seekers_primary_weapon"].value);
|
||||
player GiveMaxAmmo(level.gameTweaks["seekers_secondary_weapon"].value);
|
||||
|
||||
// gametype-friendly perks
|
||||
player GivePerk("specialty_lightweight");
|
||||
|
@ -621,7 +627,6 @@ handleSeeker() {
|
|||
|
||||
/#
|
||||
player thread enableUnlimitedReload();
|
||||
player thread enableWeaponDicing("+actionslot 2");
|
||||
#/
|
||||
player thread giveHelpfulHintsForSeeker();
|
||||
}
|
||||
|
@ -1115,33 +1120,6 @@ enableDisguiseModelAngleLocking(playerCommand)
|
|||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Binds a player command to shuffle the weapon.
|
||||
*/
|
||||
enableWeaponDicing(playerCommand)
|
||||
{
|
||||
logPrint("enableWeaponDicing called");
|
||||
|
||||
player = self;
|
||||
|
||||
level endon("game_ended");
|
||||
player endon("death");
|
||||
player endon("disconnect");
|
||||
|
||||
player notifyOnPlayerCommand("weapondicing_requested", playerCommand);
|
||||
|
||||
for (;;)
|
||||
{
|
||||
player waittill("weapondicing_requested");
|
||||
|
||||
// random primary weapon
|
||||
player TakeWeapon(player GetCurrentWeapon());
|
||||
primaryWeapon = random(level.seekerWeapons);
|
||||
player GiveWeapon(primaryWeapon + "_reflex_mp", RandomInt(9), false);
|
||||
player SwitchToWeapon(primaryWeapon + "_reflex_mp");
|
||||
player GiveMaxAmmo(primaryWeapon + "_reflex_mp");
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Refills ammo stock after a reload.
|
||||
|
|
Loading…
Reference in New Issue