git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3432 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
parent
f9a2e32c64
commit
99c7db1c08
11 changed files with 180 additions and 182 deletions
|
@ -118,7 +118,7 @@ void(entity targ, entity inflictor, entity attacker, float damage) T_Damage =
|
|||
local float save, dm;
|
||||
local float take, severity, helm;
|
||||
local string attackerteam, targteam;
|
||||
|
||||
local string info1, info2;
|
||||
|
||||
if (!targ.takedamage)
|
||||
return;
|
||||
|
@ -535,6 +535,7 @@ take = damage;
|
|||
}
|
||||
|
||||
|
||||
|
||||
targ.health = targ.health - take;
|
||||
|
||||
if (targ.classname == "monster" && targ.enemy.classname != "player" && attacker.classname == "player")
|
||||
|
|
|
@ -623,8 +623,18 @@ void() Invent_Draw =
|
|||
SlotImageSmall('1 12.5 0'*IMGSIZEK, 4);
|
||||
|
||||
|
||||
SlotImageSmall('11 12 0'*IMGSIZEK, 23);
|
||||
SlotImageSmall('13 12 0'*IMGSIZEK, 24);
|
||||
check = getstati(97);
|
||||
if (check > 0)
|
||||
SlotImage('11 12 0'*IMGSIZEK, 23);
|
||||
else
|
||||
drawpic('11 12 0'*IMGSIZEK, "gui/pipboy/mix.png", IMGSIZEH, '1 1 1', 1);
|
||||
|
||||
|
||||
check = getstati(98);
|
||||
if (check > 0)
|
||||
SlotImage('13 12 0'*IMGSIZEK, 24);
|
||||
else
|
||||
drawpic('13 12 0'*IMGSIZEK, "gui/pipboy/mix.png", IMGSIZEH, '1 1 1', 1);
|
||||
|
||||
/*
|
||||
perki = GetPerkImage(getstati(60));
|
||||
|
@ -756,7 +766,36 @@ else if (slotnum == 99)
|
|||
}
|
||||
// drawfill(mousepos, '8 8 0', '0 0 0', 0.7);
|
||||
// drawstring(mousepos, "^", '8 8 0', '1 1 1', 1);
|
||||
drawpic(mousepos, "gui/cursor.jpg", '1 1 0'*CURSORSIZE, '1 1 1', 1);
|
||||
|
||||
if (downslotnum == 0)
|
||||
drawpic(mousepos, "gui/cursor.jpg", '1 1 0'*CURSORSIZE, '1 1 1', 1);
|
||||
else
|
||||
{
|
||||
|
||||
if (downslotnum <= 16)
|
||||
it = getstati(31+downslotnum);
|
||||
else
|
||||
{
|
||||
if (downslotnum == 17)
|
||||
it = getstati(91);
|
||||
if (downslotnum == 18)
|
||||
it = getstati(92);
|
||||
if (downslotnum == 19)
|
||||
it = getstati(93);
|
||||
if (downslotnum == 20)
|
||||
it = getstati(94);
|
||||
if (downslotnum == 21)
|
||||
it = getstati(95);
|
||||
if (downslotnum == 22)
|
||||
it = getstati(96);
|
||||
if (downslotnum == 23)
|
||||
it = getstati(97);
|
||||
if (downslotnum == 24)
|
||||
it = getstati(98);
|
||||
}
|
||||
itname = GetItemImage(ToIID(it));
|
||||
drawpic(mousepos, strcat("gui/", itname), '48 48 0', '1 1 1', 1);
|
||||
}
|
||||
};
|
||||
|
||||
void() CalcScrollPos =
|
||||
|
|
|
@ -66,12 +66,8 @@ local float ldmg;
|
|||
|
||||
T_Damage (self.enemy, self, self, ldmg);
|
||||
|
||||
if (random()*25 <= 5)
|
||||
{
|
||||
stuffcmd(self.enemy, "drop\n");
|
||||
self.enemy.attack_finished = time + 1;
|
||||
self.enemy.position = 2;
|
||||
}
|
||||
self.enemy.attack_finished = time + 0.25;
|
||||
|
||||
};
|
||||
|
||||
void() Dog_JumpTouch =
|
||||
|
|
|
@ -681,13 +681,13 @@ string(float iid) GetItemVModel =
|
|||
if (iid == IID_WP_JACKHAMMER)
|
||||
return "progs/v_jackhammer.mdl";
|
||||
if (iid == IID_WP_GREASEGUN)
|
||||
return "progs/v_mp9.mdl";
|
||||
return "progs/v_smg.mdl";
|
||||
if (iid == IID_WP_MP9)
|
||||
return "progs/v_smg.mdl";
|
||||
if (iid == IID_WP_GREASEGUN_S)
|
||||
return "progs/v_mp9.mdl";
|
||||
if (iid == IID_WP_MP9_S)
|
||||
if (iid == IID_WP_GREASEGUN_S)
|
||||
return "progs/v_smg.mdl";
|
||||
if (iid == IID_WP_MP9_S)
|
||||
return "progs/v_mp9.mdl";
|
||||
if (iid == IID_WP_RANGEMASTER)
|
||||
return "progs/v_rangem.mdl";
|
||||
if (iid == IID_WP_RANGEMASTER_SCOPE)
|
||||
|
@ -707,7 +707,7 @@ string(float iid) GetItemVModel =
|
|||
if (iid == IID_WP_FNFAL)
|
||||
return "progs/v_fnfal.mdl";
|
||||
if (iid == IID_WP_AK112_M)
|
||||
return "progs/v_ak47.mdl";
|
||||
return "progs/v_lsw.mdl";
|
||||
|
||||
if (iid == IID_WP_G11)
|
||||
return "progs/v_g11.mdl";
|
||||
|
@ -916,7 +916,7 @@ float(float iid) WeaponAmmoType =
|
|||
if (iid == IID_WP_AK47)
|
||||
return IID_AM_WARSAW;
|
||||
if (iid == IID_WP_AK112_M)
|
||||
return IID_AM_5MMHIGHVEL;
|
||||
return IID_AM_556MM;
|
||||
if (iid == IID_WP_AK74)
|
||||
return IID_AM_WARSAW;
|
||||
if (iid == IID_WP_ACR)
|
||||
|
@ -993,7 +993,7 @@ float(float iid) WeaponMagQuant =
|
|||
if (iid == IID_WP_AK112)
|
||||
return 24;
|
||||
if (iid == IID_WP_AK112_M)
|
||||
return 90;
|
||||
return 100;
|
||||
if (iid == IID_WP_AK74)
|
||||
return 30;
|
||||
if (iid == IID_WP_ACR)
|
||||
|
@ -1077,7 +1077,7 @@ float(float iid) GetItemWeight =
|
|||
if (iid == IID_WP_AK47)
|
||||
return 6;
|
||||
if (iid == IID_WP_AK112_M)
|
||||
return 7;
|
||||
return 8;
|
||||
if (iid == IID_WP_AK74)
|
||||
return 5;
|
||||
if (iid == IID_WP_ACR)
|
||||
|
@ -1206,7 +1206,7 @@ string(float iid) GetItemName =
|
|||
if (iid == IID_WP_WINCHESTER)
|
||||
return "winchester (12g)";
|
||||
if (iid == IID_WP_MOSSBERG)
|
||||
return "mossberg (12g)";
|
||||
return "citykiller (12g)";
|
||||
if (iid == IID_WP_JACKHAMMER)
|
||||
return "jackhammer (12g)";
|
||||
if (iid == IID_WP_GREASEGUN)
|
||||
|
@ -1222,7 +1222,7 @@ string(float iid) GetItemName =
|
|||
if (iid == IID_WP_AK112)
|
||||
return "ak-112 (5mm jhp)";
|
||||
if (iid == IID_WP_AK112_M)
|
||||
return "ak-112 (extended magazine)";
|
||||
return "light support weapon (5.56mm)";
|
||||
if (iid == IID_WP_AK74)
|
||||
return "ak-47 (7.62mm warsaw pact)";
|
||||
if (iid == IID_WP_ACR)
|
||||
|
@ -1707,9 +1707,9 @@ string(float iid) GetItemDesc =
|
|||
if (iid == IID_WP_AK112)
|
||||
return "a common assault rifle with extreme durability";
|
||||
if (iid == IID_WP_AK112_M)
|
||||
return "this rifle has been modified to accept larger magazines";
|
||||
return "a great weapon for providing suppressing fire";
|
||||
if (iid == IID_WP_DKS1)
|
||||
return "this sturdy rifle fires .308\na larger and more reliable round";
|
||||
return "the larger caliber 7.62mm provides extra power";
|
||||
if (iid == IID_WP_DKS1_S)
|
||||
return ".308 sniper rifle, silenced for stealth-ops";
|
||||
if (iid == IID_WP_DKS1)
|
||||
|
@ -1733,7 +1733,7 @@ string(float iid) GetItemDesc =
|
|||
if (iid == IID_WP_LASERGATLING)
|
||||
return "quite simply, the ultimate in heavy firepower";
|
||||
if (iid == IID_WP_ACR)
|
||||
return "sniper-style weapon that supports burst fire";
|
||||
return "fast, powerful, and accurate - a sniper's dream";
|
||||
|
||||
|
||||
if (iid == IID_AM_NEEDLER)
|
||||
|
@ -1784,7 +1784,7 @@ string(float iid) GetItemDesc =
|
|||
if (iid == IID_ARM_METAL)
|
||||
return "gives great protection at a sacrifice to speed.";
|
||||
if (iid == IID_ARM_TESLA)
|
||||
return "experimental armor with high deflection but low absorb.";
|
||||
return "experimental armor. great against small rounds.";
|
||||
if (iid == IID_ARM_COMBAT)
|
||||
return "this all-purpose armor is designed for combat missions.";
|
||||
if (iid == IID_ARM_SEVA)
|
||||
|
@ -2180,7 +2180,7 @@ string(float iid) GetItemImage =
|
|||
if (iid == IID_WP_AK112)
|
||||
return "ak112.png";
|
||||
if (iid == IID_WP_AK112_M)
|
||||
return "ak112.png";
|
||||
return "lsw.png";
|
||||
if (iid == IID_WP_AK74)
|
||||
return "ak47.jpg";
|
||||
if (iid == IID_WP_ACR)
|
||||
|
|
|
@ -291,6 +291,9 @@ void(vector loc) SpawnJunk =
|
|||
{
|
||||
local entity junk;
|
||||
|
||||
if (random()*100 <= 80)
|
||||
return;
|
||||
|
||||
junk = spawn ();
|
||||
|
||||
setorigin(junk, loc + '0 0 96');
|
||||
|
@ -315,13 +318,12 @@ void(vector loc) SpawnJunk =
|
|||
junk.classname = "random_junk";
|
||||
|
||||
|
||||
if (random()*100 <= 10)
|
||||
junk.islot1 = SlotVal(IID_MISC_JUNK, 1);
|
||||
else if (random()*100 <= 10)
|
||||
|
||||
if (random()*100 <= 25)
|
||||
junk.islot1 = SlotVal(IID_MISC_NUKACOLA, 1);
|
||||
else if (random()*100 <= 10)
|
||||
else if (random()*100 <= 25)
|
||||
junk.islot1 = SlotVal(IID_MISC_CHEMICALS, 1);
|
||||
else if (random()*100 <= 10)
|
||||
else if (random()*100 <= 25)
|
||||
junk.islot1 = SlotVal(IID_MISC_AEROSOL, 1);
|
||||
else if (random()*100 <= 10)
|
||||
junk.islot1 = SlotVal(IID_MISC_RDXCRYSTAL, 1);
|
||||
|
|
|
@ -474,7 +474,7 @@ string () MissionString =
|
|||
"<EFBFBD>3‘ shadow mission \n"
|
||||
"<EFBFBD>4‘ zombie mission \n"
|
||||
"<EFBFBD>5‘ destroy supplies \n"
|
||||
"6‘ bomb defusal \n\n"
|
||||
"<EFBFBD>6‘ bomb defusal \n\n"
|
||||
"<EFBFBD>7‘ grab one later \n");
|
||||
};
|
||||
|
||||
|
|
|
@ -911,6 +911,13 @@ void() misc_noisemaker =
|
|||
|
||||
void() brotherhood_merchant =
|
||||
{
|
||||
local entity sign;
|
||||
/*
|
||||
sign = spawn();
|
||||
sign.origin = self.origin + '0 0 32';
|
||||
setmodel(sign, "progs/trader.spr");
|
||||
sign.solid = SOLID_NOT;*/
|
||||
|
||||
setorigin(self, self.origin + '0 0 64');
|
||||
self.movetype = MOVETYPE_BOUNCE;
|
||||
self.velocity_z = -200;
|
||||
|
@ -925,111 +932,35 @@ void() brotherhood_merchant =
|
|||
self.nextthink = time + 0.5;
|
||||
|
||||
|
||||
if (random()*100 < 33)
|
||||
{
|
||||
self.xslot1 = SlotVal(IID_WP_GREASEGUN, 1);
|
||||
self.xslot6 = SlotVal(IID_AM_45ACP, 30);
|
||||
}
|
||||
else if (random()*100 < 33)
|
||||
{
|
||||
self.xslot1 = SlotVal(IID_WP_USP, 1);
|
||||
self.xslot6 = SlotVal(IID_AM_45ACP, 30);
|
||||
}
|
||||
else
|
||||
{
|
||||
self.xslot1 = SlotVal(IID_WP_GLOCK, 1);
|
||||
self.xslot6 = SlotVal(IID_AM_10MM, 30);
|
||||
}
|
||||
|
||||
self.xslot1 = SlotVal(IID_WP_USP, 1);
|
||||
self.xslot6 = SlotVal(IID_AM_45ACP, 30);
|
||||
|
||||
if (random()*100 < 33)
|
||||
{
|
||||
self.xslot2 = SlotVal(IID_WP_DEAGLE, 1);
|
||||
self.xslot7 = SlotVal(IID_AM_44MAGNUM, 30);
|
||||
}
|
||||
else if (random()*100 < 33)
|
||||
{
|
||||
self.xslot2 = SlotVal(IID_WP_NEEDLER, 1);
|
||||
self.xslot7 = SlotVal(IID_AM_NEEDLER, 30);
|
||||
}
|
||||
else
|
||||
{
|
||||
self.xslot2 = SlotVal(IID_WP_PIPERIFLE, 1);
|
||||
self.xslot7 = SlotVal(IID_AM_44MAGNUM, 30);
|
||||
}
|
||||
self.xslot2 = SlotVal(IID_WP_PIPERIFLE, 1);
|
||||
self.xslot7 = SlotVal(IID_AM_44MAGNUM, 30);
|
||||
|
||||
if (random()*100 < 33)
|
||||
{
|
||||
self.xslot3 = SlotVal(IID_WP_WINCHESTER, 1);
|
||||
self.xslot8 = SlotVal(IID_AM_12GAUGESHELLS, 30);
|
||||
}
|
||||
else if (random()*100 < 33)
|
||||
{
|
||||
self.xslot3 = SlotVal(IID_WP_RANGEMASTER, 1);
|
||||
self.xslot8 = SlotVal(IID_AM_556MM, 30);
|
||||
}
|
||||
else
|
||||
{
|
||||
self.xslot3 = SlotVal(IID_WP_DKS1, 1);
|
||||
self.xslot8 = SlotVal(IID_AM_762MM, 30);
|
||||
}
|
||||
self.xslot3 = SlotVal(IID_WP_WINCHESTER, 1);
|
||||
self.xslot8 = SlotVal(IID_AM_12GAUGESHELLS, 30);
|
||||
|
||||
if (random()*100 < 33)
|
||||
{
|
||||
self.xslot4 = SlotVal(IID_WP_WINCHESTER, 1);
|
||||
self.xslot9 = SlotVal(IID_AM_12GAUGESHELLS, 30);
|
||||
}
|
||||
else if (random()*100 < 33)
|
||||
{
|
||||
self.xslot4 = SlotVal(IID_WP_RANGEMASTER, 1);
|
||||
self.xslot9 = SlotVal(IID_AM_556MM, 30);
|
||||
}
|
||||
else
|
||||
{
|
||||
self.xslot4 = SlotVal(IID_WP_DKS1, 1);
|
||||
self.xslot9 = SlotVal(IID_AM_762MM, 30);
|
||||
}
|
||||
self.xslot4 = SlotVal(IID_WP_RANGEMASTER, 1);
|
||||
self.xslot9 = SlotVal(IID_AM_556MM, 30);
|
||||
|
||||
if (random()*100 < 33)
|
||||
{
|
||||
self.xslot5 = SlotVal(IID_WP_AK112, 1);
|
||||
self.xslot10 = SlotVal(IID_AM_5MMHIGHVEL, 30);
|
||||
}
|
||||
else if (random()*100 < 33)
|
||||
{
|
||||
self.xslot5 = SlotVal(IID_WP_MOSSBERG, 1);
|
||||
self.xslot10 = SlotVal(IID_AM_12GAUGESHELLS, 30);
|
||||
}
|
||||
else
|
||||
{
|
||||
self.xslot5 = SlotVal(IID_WP_MP9, 1);
|
||||
self.xslot10 = SlotVal(IID_AM_10MM, 30);
|
||||
}
|
||||
self.xslot5 = SlotVal(IID_WP_MP9, 1);
|
||||
self.xslot10 = SlotVal(IID_AM_10MM, 30);
|
||||
|
||||
|
||||
if (random()*100 < 50)
|
||||
self.xslot11 = SlotVal(IID_ARM_LEATHER, 1);
|
||||
else
|
||||
self.xslot11 = SlotVal(IID_ARM_VANDAL, 1);
|
||||
|
||||
if (random()*100 < 50)
|
||||
self.xslot12 = SlotVal(IID_ARM_METAL, 1);
|
||||
else
|
||||
self.xslot12 = SlotVal(IID_ARM_TESLA, 1);
|
||||
|
||||
if (random()*100 < 75)
|
||||
self.xslot13 = SlotVal(IID_ARM_COMBAT, 1);
|
||||
else
|
||||
self.xslot13 = SlotVal(IID_ARM_SEVA, 1);
|
||||
self.xslot11 = SlotVal(IID_ARM_VANDAL, 1);
|
||||
self.xslot12 = SlotVal(IID_ARM_METAL, 1);
|
||||
self.xslot13 = SlotVal(IID_ARM_TESLA, 1);
|
||||
|
||||
|
||||
|
||||
self.xslot14 = SlotVal(IID_CHEM_STIMPACK, 1);
|
||||
|
||||
|
||||
self.xslot15 = SlotVal(IID_CHEM_MEDICALBAG, 25);
|
||||
|
||||
|
||||
self.xslot16 = SlotVal(IID_WP_ACR, 1);
|
||||
self.xslot16 = SlotVal(IID_WP_DKS1, 1);
|
||||
self.xslot17 = SlotVal(IID_AM_762MM, 30);
|
||||
|
||||
|
||||
|
@ -1081,11 +1012,17 @@ void() brotherhood_soldier =
|
|||
self.xslot6 = SlotVal(IID_AM_556MM, 30);
|
||||
self.xslot7 = SlotVal(IID_AM_ENERGYCELL, 30);
|
||||
self.xslot8 = SlotVal(IID_AM_CASELESS, 30);
|
||||
self.xslot8 = SlotVal(IID_AM_NEEDLER, 30);
|
||||
self.xslot9 = SlotVal(IID_AM_NEEDLER, 30);
|
||||
self.xslot15 = SlotVal(IID_WP_ACR, 1);
|
||||
self.xslot16 = SlotVal(IID_WP_AK112_M, 1);
|
||||
self.xslot17 = SlotVal(IID_WP_G11, 1);
|
||||
self.xslot18 = SlotVal(IID_WP_JACKHAMMER, 1);
|
||||
self.xslot19 = SlotVal(IID_WP_MOONLIGHT, 1);
|
||||
self.xslot19 = SlotVal(IID_WP_MOSSBERG, 1);
|
||||
|
||||
self.think = shop_face;
|
||||
self.nextthink = time + 0.5;
|
||||
|
||||
};
|
||||
|
||||
void() brotherhood_guard =
|
||||
|
|
|
@ -978,14 +978,21 @@ void() W_PlayerMenu =
|
|||
{
|
||||
if (self.impulse >= 1 && self.impulse <= 6)
|
||||
{
|
||||
if (infokey(world, "objective") == "return" || infokey(world, "objective") == "start")
|
||||
get_new_mission(1);
|
||||
else
|
||||
{
|
||||
sprint(self, 2, "you're already on a mission!\n");
|
||||
self.currentmenu = "none";
|
||||
return;
|
||||
}
|
||||
|
||||
if (self.impulse == 1)
|
||||
get_new_mission(1);
|
||||
if (self.impulse == 2)
|
||||
get_new_mission(2);
|
||||
if (self.impulse == 3)
|
||||
get_new_mission(3);
|
||||
if (self.impulse == 4)
|
||||
get_new_mission(4);
|
||||
if (self.impulse == 5)
|
||||
get_new_mission(5);
|
||||
if (self.impulse == 6)
|
||||
get_new_mission(6);
|
||||
|
||||
|
||||
self.team = 1;
|
||||
sound (self, CHAN_WEAPON, "effects/radio2.wav", TRUE, ATTN_IDLE);
|
||||
centerprint(self, "mission obtained\n");
|
||||
|
|
|
@ -1477,24 +1477,22 @@ void () army_die =
|
|||
if (self.weapon == 1)
|
||||
DropFromChest(self, IID_WP_PIPERIFLE, 1);
|
||||
if (self.weapon == 2)
|
||||
DropFromChest(self, IID_WP_USP, 6);
|
||||
DropFromChest(self, IID_WP_GLOCK, 6);
|
||||
if (self.weapon == 3)
|
||||
DropFromChest(self, IID_WP_WINCHESTER, 1);
|
||||
if (self.weapon == 4)
|
||||
DropFromChest(self, IID_WP_MP9, 15);
|
||||
DropFromChest(self, IID_WP_GREASEGUN, 15);
|
||||
if (self.weapon == 5)
|
||||
DropFromChest(self, IID_WP_AK47, 12);
|
||||
|
||||
if (self.weapon == 1)
|
||||
DropFromChest(self, IID_AM_44MAGNUM, 10);
|
||||
if (self.weapon == 2)
|
||||
DropFromChest(self, IID_AM_45ACP, 12);
|
||||
DropFromChest(self, IID_AM_10MM, 12);
|
||||
if (self.weapon == 3)
|
||||
DropFromChest(self, IID_AM_12GAUGESHELLS, 8);
|
||||
if (self.weapon == 4)
|
||||
DropFromChest(self, IID_AM_10MM, 15);
|
||||
if (self.weapon == 4)
|
||||
DropFromChest(self, IID_AM_10MM, 30);
|
||||
DropFromChest(self, IID_AM_45ACP, 30);
|
||||
if (self.weapon == 5)
|
||||
DropFromChest(self, IID_AM_5MMHIGHVEL, 24);
|
||||
|
||||
|
@ -1515,9 +1513,9 @@ void (vector jojo, entity friend) spawn_soldier =
|
|||
self.movetype = MOVETYPE_STEP;
|
||||
setmodel (self, "progs/soldier.mdl");
|
||||
setsize (self, '-12 -12 -24', '12 12 28');
|
||||
self.health = 60+random()*30;
|
||||
self.netname = "raider";
|
||||
self.max_health = self.health;
|
||||
self.max_health = 150;
|
||||
self.health = self.max_health;
|
||||
self.armornoise = "misc/thud.wav";
|
||||
self.th_stand = army_stand1;
|
||||
self.th_walk = army_walk1;
|
||||
|
@ -1666,8 +1664,9 @@ void () monster_army =
|
|||
self.netname = "enforcer";
|
||||
|
||||
setsize (self, '-12 -12 -24', '12 12 28');
|
||||
self.health = 120;
|
||||
self.islot3 = SlotVal(IID_ARM_COMBAT, 1);
|
||||
self.max_health = 150;
|
||||
self.health = self.max_health;
|
||||
self.islot3 = SlotVal(IID_ARM_COMBAT, 1);
|
||||
self.armortype = 35;
|
||||
self.helmet = 1;
|
||||
self.th_stand = enf_stand1;
|
||||
|
@ -1709,7 +1708,8 @@ void () monster_army =
|
|||
self.movetype = MOVETYPE_STEP;
|
||||
setmodel (self, "progs/soldier.mdl");
|
||||
setsize (self, '-12 -12 -24', '12 12 28');
|
||||
self.health = 100;
|
||||
self.max_health = 150;
|
||||
self.health = self.max_health;
|
||||
self.team = 3;
|
||||
self.islot3 = SlotVal(IID_ARM_LEATHER, 1);
|
||||
self.armortype = 0.2;
|
||||
|
@ -1904,7 +1904,8 @@ void () monster_commander =
|
|||
commanders = commanders + 1;
|
||||
|
||||
setsize (self, '-12 -12 -24', '12 12 32');
|
||||
self.health = 300;
|
||||
self.max_health =250;
|
||||
self.health = self.max_health;
|
||||
self.islot3 = SlotVal(IID_ARM_COMBAT, 1);
|
||||
self.armortype = 0.5;
|
||||
self.helmet = 1;
|
||||
|
|
|
@ -199,7 +199,7 @@ void(float damage, float dist, float rate) FireMelee =
|
|||
|
||||
if (dot < 0.5 && trace_ent.takedamage)
|
||||
{
|
||||
tdam = 10 + (15*self.skill_sneak);
|
||||
tdam = 25 + (30*self.skill_sneak);
|
||||
|
||||
if (getperk(7))
|
||||
tdam = tdam * 2;
|
||||
|
@ -1595,29 +1595,29 @@ void() W_Attack =
|
|||
else if (weap == IID_WP_DEAGLE_M)
|
||||
FirePistol(18, 9, "weapons/deagle.wav", 3000, 0.1);
|
||||
else if (weap == IID_WP_NEEDLER)
|
||||
FirePistol(16, 2, "weapons/needler.wav", 2000, 0.1);
|
||||
FirePistol(10+self.skill_science, 2, "weapons/needler.wav", 2000, 0.1);
|
||||
else if (weap == IID_WP_GLOCK)
|
||||
FirePistol(12, 6, "weapons/glock.wav", 2000, 0.1);
|
||||
else if (weap == IID_WP_GLOCK_S)
|
||||
FirePistol(10, 6, "weapons/smg_s.wav", 2000, 0.1);
|
||||
else if (weap == IID_WP_ALIENBLASTER)
|
||||
FirePulseRifle(16, 0.1, 48, 2);
|
||||
FirePulseRifle(16, 0.1, 10+self.skill_science*4, 2);
|
||||
else if (weap == IID_WP_PIPERIFLE)
|
||||
FireAssaultRifle(20, 5, "weapons/rangem.wav", 5000, 0.1);
|
||||
FireAssaultRifle(15+self.skill_science, 5, "weapons/rangem.wav", 5000, 0.1);
|
||||
else if (weap == IID_WP_PIPERIFLE_S)
|
||||
FireAssaultRifle(20, 5, "weapons/needler.wav", 5000, 0.1);
|
||||
FireAssaultRifle(15+self.skill_science, 5, "weapons/needler.wav", 5000, 0.1);
|
||||
else if (weap == IID_WP_PIPERIFLE_S_R)
|
||||
FireAssaultRifle(20, 5, "weapons/needler.wav", 5000, 0.1);
|
||||
FireAssaultRifle(15+self.skill_science, 5, "weapons/needler.wav", 5000, 0.1);
|
||||
else if (weap == IID_WP_PIPERIFLE_SCOPE_S_R)
|
||||
FireAssaultRifle(20, 5, "weapons/needler.wav", 5000, 0.1);
|
||||
FireAssaultRifle(15+self.skill_science, 5, "weapons/needler.wav", 5000, 0.1);
|
||||
else if (weap == IID_WP_PIPERIFLE_SCOPE_S)
|
||||
FireAssaultRifle(20, 5, "weapons/needler.wav", 5000, 0.1);
|
||||
FireAssaultRifle(15+self.skill_science, 5, "weapons/needler.wav", 5000, 0.1);
|
||||
else if (weap == IID_WP_PIPERIFLE_R)
|
||||
FireAssaultRifle(20, 5, "weapons/rangem.wav", 5000, 0.1);
|
||||
FireAssaultRifle(15+self.skill_science, 5, "weapons/rangem.wav", 5000, 0.1);
|
||||
else if (weap == IID_WP_PIPERIFLE_SCOPE)
|
||||
FireAssaultRifle(20, 5, "weapons/rangem.wav", 5000, 0.1);
|
||||
FireAssaultRifle(15+self.skill_science, 5, "weapons/rangem.wav", 5000, 0.1);
|
||||
else if (weap == IID_WP_PIPERIFLE_SCOPE_R)
|
||||
FireAssaultRifle(20, 5, "weapons/rangem.wav", 5000, 0.1);
|
||||
FireAssaultRifle(15+self.skill_science, 5, "weapons/rangem.wav", 5000, 0.1);
|
||||
else if (weap == IID_WP_DKS1_S)
|
||||
FireAssaultRifle(35, 3, "weapons/moonlight1.wav", 5000, 0.25);
|
||||
else if (weap == IID_WP_WINCHESTER)
|
||||
|
@ -1627,9 +1627,9 @@ void() W_Attack =
|
|||
else if (weap == IID_WP_JACKHAMMER)
|
||||
W_FireShotgun (1, 5, 6, 30, 1750, 2, "weapons/citykiller.wav");
|
||||
else if (weap == IID_WP_GREASEGUN)
|
||||
FireSMG(14, 0, "weapons/mp7.wav", 1500, 0.10);
|
||||
FireSMG(14, 0, "weapons/mp5.wav", 1500, 0.10);
|
||||
else if (weap == IID_WP_MP9)
|
||||
FireSMG(12, 0, "weapons/mp5.wav", 1500, 0.08);
|
||||
FireSMG(12, 0, "ogre/ak74.wav", 1500, 0.08);
|
||||
else if (weap == IID_WP_GREASEGUN_S)
|
||||
FireSMG(12, 0, "weapons/smg_s.wav", 1500, 0.10);
|
||||
else if (weap == IID_WP_MP9_S)
|
||||
|
@ -1639,13 +1639,13 @@ void() W_Attack =
|
|||
else if (weap == IID_WP_AK112)
|
||||
FireAssaultRifle(16, 10, "weapons/ak112.wav", 4000, 0.095);
|
||||
else if (weap == IID_WP_AK112_M)
|
||||
FireAssaultRifle(16, 10, "weapons/ak112.wav", 4000, 0.095);
|
||||
FireAssaultRifle(16, 10, "weapons/lsw.wav", 5000, 0.10);
|
||||
else if (weap == IID_WP_ACR)
|
||||
FireAssaultRifle(45, 7, "weapons/amr.wav", 9000, 0.1);
|
||||
FireAssaultRifle(35, 7, "weapons/bozar.wav", 9000, 0.1);
|
||||
else if (weap == IID_WP_AK74)
|
||||
FireAssaultRifle(45, 12, "ogre/ak47.wav", 3500, 0.090);
|
||||
else if (weap == IID_WP_DKS1)
|
||||
FireAssaultRifle(40, 3, "weapons/dks-1.wav", 8000, 0.2);
|
||||
FireAssaultRifle(35, 3, "weapons/dks-1.wav", 8000, 0.2);
|
||||
else if (weap == IID_WP_MOONLIGHT && self.zoom == 0)
|
||||
FireAssaultRifle(16, 10, "weapons/m4-nw.wav", 4000, 0.09);
|
||||
else if (weap == IID_WP_MOONLIGHT && self.zoom == 1)
|
||||
|
@ -1762,11 +1762,7 @@ void() CheatCommand =
|
|||
local float x;
|
||||
local string y;
|
||||
|
||||
self.islot17 = SlotVal(IID_MISC_CHEMICALS, 50);
|
||||
self.islot18 = SlotVal(IID_MISC_NUKACOLA, 50);
|
||||
self.islot19 = SlotVal(IID_MISC_AEROSOL, 50);
|
||||
self.islot20 = SlotVal(IID_MISC_GUM, 50);
|
||||
self.islot10 = SlotVal(IID_WP_ACR, 1);
|
||||
self.ammo_shells = 900;
|
||||
};
|
||||
|
||||
/*
|
||||
|
@ -3027,7 +3023,7 @@ void (float dam, float ap, string snd, float rng, float rate) FireSMG =
|
|||
if (self.velocity == '0 0 0')
|
||||
tmp = tmp + (15*self.recoil);
|
||||
else
|
||||
tmp = tmp + (20*self.recoil);
|
||||
tmp = tmp + (25*self.recoil);
|
||||
|
||||
self.attack = self.attack + 1;
|
||||
self.recoil = self.recoil + 4;
|
||||
|
@ -3293,17 +3289,17 @@ void (float dam, float accuracy, string snd, float rng, float rate) FireAssaultR
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
if (weap == IID_WP_MOONLIGHT)
|
||||
{
|
||||
if (random()<0.5)
|
||||
sound (self, CHAN_WEAPON, "weapons/moonlight-1.wav", 1, ATTN_NORM);
|
||||
else
|
||||
sound (self, CHAN_WEAPON, "weapons/moonlight-2.wav", 1, ATTN_NORM);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (weap == IID_WP_MOONLIGHT)
|
||||
{
|
||||
if (random()<0.5)
|
||||
sound (self, CHAN_WEAPON, "weapons/moonlight-1.wav", 1, ATTN_NORM);
|
||||
else
|
||||
sound (self, CHAN_WEAPON, "weapons/moonlight-2.wav", 1, ATTN_NORM);
|
||||
}
|
||||
else if (weap == IID_WP_DKS1_S)
|
||||
|
||||
if (weap == IID_WP_DKS1_S)
|
||||
sound (self, CHAN_WEAPON, "ogre/ak74.wav", 1, ATTN_NORM);
|
||||
else
|
||||
sound (self, CHAN_WEAPON, snd, 1, ATTN_NORM);
|
||||
|
@ -3356,8 +3352,7 @@ void (float dam, float accuracy, string snd, float rng, float rate) FireAssaultR
|
|||
|
||||
DropAmmo ();
|
||||
makevectors (self.v_angle);
|
||||
if (self.recoil >= 10)
|
||||
self.recoil = 10;
|
||||
|
||||
|
||||
if (self.attack == 0)
|
||||
{
|
||||
|
@ -3381,6 +3376,7 @@ void (float dam, float accuracy, string snd, float rng, float rate) FireAssaultR
|
|||
tmp = accuracy * 10;
|
||||
xrecoil = dam / 2;
|
||||
|
||||
|
||||
//for the snipers
|
||||
if (self.position == 2 && self.recoil == 0)
|
||||
tmp = tmp * 0.75;
|
||||
|
@ -3390,6 +3386,8 @@ void (float dam, float accuracy, string snd, float rng, float rate) FireAssaultR
|
|||
|
||||
self.attack = self.attack + 1;
|
||||
self.recoil = self.recoil + xrecoil;
|
||||
if (self.recoil >= 10)
|
||||
self.recoil = 10;
|
||||
|
||||
if (self.zoom > 0 && weap == IID_WP_G11 && self.attack == 3)
|
||||
{
|
||||
|
@ -3417,6 +3415,14 @@ void (float dam, float accuracy, string snd, float rng, float rate) FireAssaultR
|
|||
if (self.position == 1)
|
||||
y = y * 0.90;
|
||||
|
||||
if (self.position == 2 && weap == IID_WP_AK112_M)
|
||||
{
|
||||
if (self.recoil >= 7)
|
||||
self.recoil = 7;
|
||||
|
||||
y = y * 0.10;
|
||||
tmp = tmp * 0.75;
|
||||
}
|
||||
if (random()*3<=2)
|
||||
self.driftx = self.driftx + y;
|
||||
else
|
||||
|
@ -3442,7 +3448,7 @@ void (float dam, float accuracy, string snd, float rng, float rate) FireAssaultR
|
|||
stuffcmd (self, "-attack\n");
|
||||
if (weap == IID_WP_FNFAL && self.zoom == 1)
|
||||
stuffcmd (self, "-attack\n");
|
||||
if (self.zoom > 0 && weap != IID_WP_G11 && weap != IID_WP_MOONLIGHT)
|
||||
if (self.zoom > 0 && weap != IID_WP_G11 && weap != IID_WP_MOONLIGHT && weap != IID_WP_AK112_M)
|
||||
stuffcmd (self, "-attack\n");
|
||||
if (self.zoom > 0 && weap == IID_WP_G11 && self.attack >= 3 && weap != IID_WP_MOONLIGHT)
|
||||
stuffcmd (self, "-attack\n");
|
||||
|
@ -6020,10 +6026,10 @@ void (float rec, float number, float dam, float spread, float ran, float auto, s
|
|||
|
||||
weap = ToIID(self.(SlotField(self.current_slot)));
|
||||
|
||||
var1 = ((random () * 16) * (self.recoil));
|
||||
var2 = ((random () * 16) * (self.recoil));
|
||||
var3 = ((random () * 16) * (self.recoil));
|
||||
var4 = ((random () * 16) * (self.recoil));
|
||||
var1 = ((random () * 12) * (self.recoil));
|
||||
var2 = ((random () * 12) * (self.recoil));
|
||||
var3 = ((random () * 12) * (self.recoil));
|
||||
var4 = ((random () * 12) * (self.recoil));
|
||||
|
||||
if (self.position == 0)
|
||||
player_single1 ();
|
||||
|
@ -6214,6 +6220,8 @@ void (string color) ZoomInLarge =
|
|||
|
||||
if (color == "red")
|
||||
stuffcmd (self, "v_cshift 100 0 0 50\n");
|
||||
if (color == "pink")
|
||||
stuffcmd (self, "v_cshift 100 0 25 50\n");
|
||||
if (color == "blue")
|
||||
stuffcmd (self, "v_cshift 0 0 100 75\n");
|
||||
if (color == "green")
|
||||
|
@ -6235,6 +6243,8 @@ void (string color) ZoomInSmall =
|
|||
|
||||
if (color == "red")
|
||||
stuffcmd (self, "v_cshift 100 0 0 50\n");
|
||||
if (color == "pink")
|
||||
stuffcmd (self, "v_cshift 100 0 25 50\n");
|
||||
if (color == "blue")
|
||||
stuffcmd (self, "v_cshift 0 0 100 75\n");
|
||||
if (color == "green")
|
||||
|
@ -6269,6 +6279,8 @@ void () ZoomIn =
|
|||
ZoomInLarge("purple");
|
||||
if (weap == IID_WP_ACR)
|
||||
ZoomInLarge("pink");
|
||||
if (weap == IID_WP_AK112_M)
|
||||
ZoomInSmall("pink");
|
||||
if (weap == IID_WP_DKS1_S)
|
||||
ZoomInLarge("purple");
|
||||
if (weap == IID_WP_FNFAL)
|
||||
|
|
|
@ -703,7 +703,7 @@ if (coop == 1) // Players vs Monsters
|
|||
|
||||
sound (world, CHAN_BODY, "misc/menu3.wav", 1, ATTN_NONE);
|
||||
}
|
||||
else if (hdead >= 2) //hostages killed
|
||||
else if (hdead > hcount) //hostages killed
|
||||
{
|
||||
if (endgame_timer == 0)
|
||||
bprint(2, "^4** ^bTHE HOSTAGES WERE KILLED!!!^b **\n");
|
||||
|
@ -1954,6 +1954,7 @@ void() worldspawn =
|
|||
precache_model ("progs/v_rangem.mdl");
|
||||
precache_model ("progs/v_pipe.mdl");
|
||||
precache_model ("progs/v_bozar.mdl");
|
||||
precache_model ("progs/v_lsw.mdl");
|
||||
precache_model ("progs/v_double.mdl");
|
||||
precache_model ("progs/v_combat.mdl");
|
||||
precache_model ("progs/v_mp9.mdl");
|
||||
|
@ -2084,6 +2085,7 @@ void() worldspawn =
|
|||
precache_sound ("weapons/smoke.wav");
|
||||
precache_sound ("weapons/energy2.wav");
|
||||
|
||||
|
||||
precache_sound ("misc/hosdie1.wav");
|
||||
precache_sound ("misc/hosdie2.wav");
|
||||
precache_sound ("misc/hosdown.wav");
|
||||
|
@ -2137,6 +2139,7 @@ void() worldspawn =
|
|||
precache_sound ("weapons/moonlight-2.wav");
|
||||
precache_sound ("weapons/needler.wav");
|
||||
precache_sound ("weapons/bozar.wav");
|
||||
precache_sound ("weapons/lsw.wav");
|
||||
precache_sound ("weapons/amr.wav");
|
||||
precache_sound ("weapons/smg_s.wav");
|
||||
precache_sound ("weapons/shotgun1.wav");
|
||||
|
|
Loading…
Reference in a new issue