Quadrupled healing rates for axe healing. Have current map restart after 7days up. Added impulse 43 for an instant melee axe attack which swaps back to previous weapon automatically.
This commit is contained in:
parent
341576570a
commit
3c92dd0564
|
@ -25,10 +25,12 @@ COOP specific
|
|||
- Rune pickups and finding secret areas are broadcasted.
|
||||
- Player's keys held are kept after death.
|
||||
- Players cannot pickup other players' backpacks.
|
||||
- The axe can be used to heal, up to 150 hp. Heals 2 points per hit for self when hitting wall, and 4 points for both self and teamate when attacking each-other.
|
||||
- The axe can be used to heal, up to 150 hp. Heals 8 points per hit for self when hitting wall, and 16 points for both self and teamate when attacking each-other.
|
||||
- A disposable personal spawn point can be placed using `impulse 42` that the player will spawn at on death instead of a map start point. Player's backpack is also teleported.
|
||||
- An instant melee attack can be triggered using `impulse 43`. Automatically swaps back to previous weapon.
|
||||
Spawn points have a 5 second cooldown and cannot be placed within a 200 unit radius of an existing point.
|
||||
- The start map is skipped after ending an episode and next episode is started immediately.
|
||||
- Current map is restarted automatically after a 7day total uptime.
|
||||
- **Revenge system:**
|
||||
Monsters now gain frag count for killing players, and keep track of name of recent player killed. Other monster's frag count and recent kill name are absorbed from an infight kill. Players can regain these frags by killing monsters with a frag count for a revenge kill. Revenge kills are broadcasted, including the name of the player avenged if not self.
|
||||
|
||||
|
|
10
items.qc
10
items.qc
|
@ -1366,14 +1366,14 @@ void() DropBackpack =
|
|||
item = spawn();
|
||||
|
||||
// [slipyx] drop player backpack at respawn point if one.
|
||||
// also set owner so only they can pick it up
|
||||
if (coop && self.classname == "player" && self.movetarget)
|
||||
// also set owner so only they can pick it back up
|
||||
item.origin = self.origin - '0 0 24';
|
||||
if (coop && self.classname == "player")
|
||||
{
|
||||
item.origin = self.movetarget.origin - '0 0 24';
|
||||
if (self.movetarget)
|
||||
item.origin = self.movetarget.origin - '0 0 24';
|
||||
item.owner = self;
|
||||
}
|
||||
else
|
||||
item.origin = self.origin - '0 0 24';
|
||||
|
||||
item.items = self.weapon;
|
||||
if (item.items == IT_AXE)
|
||||
|
|
20
weapons.qc
20
weapons.qc
|
@ -65,7 +65,7 @@ void() PlaceRespawn =
|
|||
}
|
||||
|
||||
self.movetarget = spawn ();
|
||||
setorigin (self.movetarget, self.origin + (self.view_ofs / 2));
|
||||
setorigin (self.movetarget, self.origin);
|
||||
self.movetarget.angles = self.angles;
|
||||
self.movetarget.classname = "player_respawn";
|
||||
setmodel (self.movetarget, "progs/s_light.spr");
|
||||
|
@ -137,8 +137,8 @@ void() W_FireAxe =
|
|||
stuffcmd (self, "bf\n");
|
||||
if (trace_ent.health < maxheal)
|
||||
stuffcmd (trace_ent, "bf\n");
|
||||
self.health = self.health + 4;
|
||||
trace_ent.health = trace_ent.health + 4;
|
||||
self.health = self.health + 16;
|
||||
trace_ent.health = trace_ent.health + 16;
|
||||
if (self.health > maxheal) self.health = maxheal;
|
||||
if (trace_ent.health > maxheal) trace_ent.health = maxheal;
|
||||
}
|
||||
|
@ -155,7 +155,7 @@ void() W_FireAxe =
|
|||
// [slipyx] bonus health! :D
|
||||
if (coop && self.health < maxheal)
|
||||
{
|
||||
self.health = self.health + 2;
|
||||
self.health = self.health + 8;
|
||||
if (self.health > maxheal) self.health = maxheal;
|
||||
particle (org, '0 0 0', 47, 40);
|
||||
sound (self, CHAN_ITEM, "items/r_item2.wav", 1, ATTN_NORM);
|
||||
|
@ -1361,9 +1361,21 @@ void() ImpulseCommands =
|
|||
if (self.impulse == 255)
|
||||
QuadCheat ();
|
||||
|
||||
// [slipyx] place a respawn point
|
||||
if (coop && self.impulse == 42)
|
||||
PlaceRespawn ();
|
||||
|
||||
// [slipyx] dedicated quick-melee button
|
||||
if (coop && self.impulse == 43) {
|
||||
local float pwep;
|
||||
pwep = self.weapon;
|
||||
self.weapon = IT_AXE;
|
||||
W_SetCurrentAmmo();
|
||||
W_Attack();
|
||||
self.weapon = pwep;
|
||||
//W_SetCurrentAmmo();
|
||||
}
|
||||
|
||||
self.impulse = 0;
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue