mirror of
https://git.code.sf.net/p/quake/game-source
synced 2024-11-12 23:44:27 +00:00
fix a slew of precedence bugs
This commit is contained in:
parent
d352e0529f
commit
9d82f07eaa
13 changed files with 64 additions and 70 deletions
|
@ -39,8 +39,8 @@ void() SetChangeParms =
|
||||||
}
|
}
|
||||||
|
|
||||||
// remove items
|
// remove items
|
||||||
self.items = self.items - (self.items &
|
self.items &= ~(IT_KEY1 | IT_KEY2 | IT_INVISIBILITY | IT_INVULNERABILITY
|
||||||
(IT_KEY1 | IT_KEY2 | IT_INVISIBILITY | IT_INVULNERABILITY | IT_SUIT | IT_QUAD) );
|
| IT_SUIT | IT_QUAD);
|
||||||
|
|
||||||
// cap super health
|
// cap super health
|
||||||
if (self.health > 100)
|
if (self.health > 100)
|
||||||
|
@ -220,7 +220,7 @@ void() ExitIntermission =
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( (serverflags&15) == 15)
|
if ((serverflags & 15) == 15)
|
||||||
{
|
{
|
||||||
WriteByte (MSG_ALL, SVC_FINALE);
|
WriteByte (MSG_ALL, SVC_FINALE);
|
||||||
WriteString (MSG_ALL, "Now, you have all four Runes. You sense\ntremendous invisible forces moving to\nunseal ancient barriers. Shub-Niggurath\nhad hoped to use the Runes Herself to\nclear off the Earth, but now instead,\nyou will use them to enter her home and\nconfront her as an avatar of avenging\nEarth-life. If you defeat her, you will\nbe remembered forever as the savior of\nthe planet. If she conquers, it will be\nas if you had never been born.");
|
WriteString (MSG_ALL, "Now, you have all four Runes. You sense\ntremendous invisible forces moving to\nunseal ancient barriers. Shub-Niggurath\nhad hoped to use the Runes Herself to\nclear off the Earth, but now instead,\nyou will use them to enter her home and\nconfront her as an avatar of avenging\nEarth-life. If you defeat her, you will\nbe remembered forever as the savior of\nthe planet. If she conquers, it will be\nas if you had never been born.");
|
||||||
|
@ -308,7 +308,7 @@ void() changelevel_touch =
|
||||||
|
|
||||||
SUB_UseTargets ();
|
SUB_UseTargets ();
|
||||||
|
|
||||||
if ( (self.spawnflags & 1) && (deathmatch == 0) )
|
if ((self.spawnflags & 1) && (deathmatch == 0))
|
||||||
{ // NO_INTERMISSION
|
{ // NO_INTERMISSION
|
||||||
GotoNextMap();
|
GotoNextMap();
|
||||||
return;
|
return;
|
||||||
|
@ -609,22 +609,22 @@ void() NextLevel =
|
||||||
else if (!(serverflags & 1))
|
else if (!(serverflags & 1))
|
||||||
{
|
{
|
||||||
mapname = "e1m1";
|
mapname = "e1m1";
|
||||||
serverflags = serverflags | 1;
|
serverflags |= 1;
|
||||||
}
|
}
|
||||||
else if (!(serverflags & 2))
|
else if (!(serverflags & 2))
|
||||||
{
|
{
|
||||||
mapname = "e2m1";
|
mapname = "e2m1";
|
||||||
serverflags = serverflags | 2;
|
serverflags |= 2;
|
||||||
}
|
}
|
||||||
else if (!(serverflags & 4))
|
else if (!(serverflags & 4))
|
||||||
{
|
{
|
||||||
mapname = "e3m1";
|
mapname = "e3m1";
|
||||||
serverflags = serverflags | 4;
|
serverflags |= 4;
|
||||||
}
|
}
|
||||||
else if (!(serverflags & 8))
|
else if (!(serverflags & 8))
|
||||||
{
|
{
|
||||||
mapname = "e4m1";
|
mapname = "e4m1";
|
||||||
serverflags = serverflags - 7;
|
serverflags -= 7; //FIXME should this be &= ~7?
|
||||||
}
|
}
|
||||||
|
|
||||||
o = spawn();
|
o = spawn();
|
||||||
|
@ -751,10 +751,10 @@ void() PlayerJump =
|
||||||
if (!(self.flags & FL_ONGROUND))
|
if (!(self.flags & FL_ONGROUND))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if ( !(self.flags & FL_JUMPRELEASED) )
|
if (!(self.flags & FL_JUMPRELEASED) )
|
||||||
return; // don't pogo stick
|
return; // don't pogo stick
|
||||||
|
|
||||||
self.flags = self.flags - (self.flags & FL_JUMPRELEASED);
|
self.flags &= ~FL_JUMPRELEASED;
|
||||||
|
|
||||||
self.flags = self.flags - FL_ONGROUND; // don't stairwalk
|
self.flags = self.flags - FL_ONGROUND; // don't stairwalk
|
||||||
|
|
||||||
|
@ -804,8 +804,7 @@ void() WaterMove =
|
||||||
|
|
||||||
if (!self.waterlevel)
|
if (!self.waterlevel)
|
||||||
{
|
{
|
||||||
if (self.flags & FL_INWATER)
|
if (self.flags & FL_INWATER) {
|
||||||
{
|
|
||||||
// play leave water sound
|
// play leave water sound
|
||||||
sound (self, CHAN_BODY, "misc/outwater.wav", 1, ATTN_NORM);
|
sound (self, CHAN_BODY, "misc/outwater.wav", 1, ATTN_NORM);
|
||||||
self.flags = self.flags - FL_INWATER;
|
self.flags = self.flags - FL_INWATER;
|
||||||
|
@ -834,8 +833,7 @@ void() WaterMove =
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( !(self.flags & FL_INWATER) )
|
if (!(self.flags & FL_INWATER)) {
|
||||||
{
|
|
||||||
|
|
||||||
// player enter water sound
|
// player enter water sound
|
||||||
|
|
||||||
|
@ -850,8 +848,8 @@ void() WaterMove =
|
||||||
self.dmgtime = 0;
|
self.dmgtime = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (! (self.flags & FL_WATERJUMP) )
|
if (!(self.flags & FL_WATERJUMP))
|
||||||
self.velocity = self.velocity - 0.8*self.waterlevel*frametime*self.velocity;
|
self.velocity -= 0.8 * self.waterlevel * frametime * self.velocity;
|
||||||
};
|
};
|
||||||
|
|
||||||
void() CheckWaterJump =
|
void() CheckWaterJump =
|
||||||
|
@ -874,9 +872,9 @@ void() CheckWaterJump =
|
||||||
traceline (start, end, TRUE, self);
|
traceline (start, end, TRUE, self);
|
||||||
if (trace_fraction == 1)
|
if (trace_fraction == 1)
|
||||||
{ // open at eye level
|
{ // open at eye level
|
||||||
self.flags = self.flags | FL_WATERJUMP;
|
self.flags |= FL_WATERJUMP;
|
||||||
self.velocity_z = 225;
|
self.velocity_z = 225;
|
||||||
self.flags = self.flags - (self.flags & FL_JUMPRELEASED);
|
self.flags &= ~FL_JUMPRELEASED;
|
||||||
self.teleport_time = time + 2; // safety net
|
self.teleport_time = time + 2; // safety net
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -924,13 +922,14 @@ void() PlayerPreThink =
|
||||||
PlayerJump ();
|
PlayerJump ();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
self.flags = self.flags | FL_JUMPRELEASED;
|
self.flags |= FL_JUMPRELEASED;
|
||||||
|
|
||||||
// teleporters can force a non-moving pause time
|
// teleporters can force a non-moving pause time
|
||||||
if (time < self.pausetime)
|
if (time < self.pausetime)
|
||||||
self.velocity = '0 0 0';
|
self.velocity = '0 0 0';
|
||||||
|
|
||||||
if(time > self.attack_finished && self.currentammo == 0 && self.weapon != IT_AXE)
|
if (time > self.attack_finished
|
||||||
|
&& self.currentammo == 0 && self.weapon != IT_AXE)
|
||||||
{
|
{
|
||||||
self.weapon = W_BestWeapon ();
|
self.weapon = W_BestWeapon ();
|
||||||
W_SetCurrentAmmo ();
|
W_SetCurrentAmmo ();
|
||||||
|
@ -1019,9 +1018,9 @@ void() CheckPowerups =
|
||||||
self.invincible_finished = 0;
|
self.invincible_finished = 0;
|
||||||
}
|
}
|
||||||
if (self.invincible_finished > time)
|
if (self.invincible_finished > time)
|
||||||
self.effects = self.effects | EF_DIMLIGHT;
|
self.effects |= EF_DIMLIGHT;
|
||||||
else
|
else
|
||||||
self.effects = self.effects - (self.effects & EF_DIMLIGHT);
|
self.effects &= ~EF_DIMLIGHT;
|
||||||
}
|
}
|
||||||
|
|
||||||
// super damage
|
// super damage
|
||||||
|
@ -1054,9 +1053,9 @@ void() CheckPowerups =
|
||||||
self.super_time = 0;
|
self.super_time = 0;
|
||||||
}
|
}
|
||||||
if (self.super_damage_finished > time)
|
if (self.super_damage_finished > time)
|
||||||
self.effects = self.effects | EF_DIMLIGHT;
|
self.effects |= EF_DIMLIGHT;
|
||||||
else
|
else
|
||||||
self.effects = self.effects - (self.effects & EF_DIMLIGHT);
|
self.effects &= ~EF_DIMLIGHT;
|
||||||
}
|
}
|
||||||
|
|
||||||
// suit
|
// suit
|
||||||
|
|
|
@ -123,7 +123,7 @@ void(entity targ, entity inflictor, entity attacker, float damage) T_Damage=
|
||||||
{
|
{
|
||||||
save = targ.armorvalue;
|
save = targ.armorvalue;
|
||||||
targ.armortype = 0; // lost all armor
|
targ.armortype = 0; // lost all armor
|
||||||
targ.items = targ.items - (targ.items & (IT_ARMOR1 | IT_ARMOR2 | IT_ARMOR3));
|
targ.items &= ~(IT_ARMOR1 | IT_ARMOR2 | IT_ARMOR3);
|
||||||
}
|
}
|
||||||
|
|
||||||
targ.armorvalue = targ.armorvalue - save;
|
targ.armorvalue = targ.armorvalue - save;
|
||||||
|
|
|
@ -103,7 +103,7 @@ void() enforcer_fire =
|
||||||
{
|
{
|
||||||
local vector org;
|
local vector org;
|
||||||
|
|
||||||
self.effects = self.effects | EF_MUZZLEFLASH;
|
self.effects |= EF_MUZZLEFLASH;
|
||||||
makevectors (self.angles);
|
makevectors (self.angles);
|
||||||
|
|
||||||
org = self.origin + v_forward * 30 + v_right * 8.5 + '0 0 16';
|
org = self.origin + v_forward * 30 + v_right * 8.5 + '0 0 16';
|
||||||
|
|
|
@ -183,7 +183,7 @@ void() health_touch =
|
||||||
// Megahealth = rot down the player's super health
|
// Megahealth = rot down the player's super health
|
||||||
if (self.healtype == 2)
|
if (self.healtype == 2)
|
||||||
{
|
{
|
||||||
other.items = other.items | IT_SUPERHEALTH;
|
other.items |= IT_SUPERHEALTH;
|
||||||
self.nextthink = time + 5;
|
self.nextthink = time + 5;
|
||||||
self.think = item_megahealth_rot;
|
self.think = item_megahealth_rot;
|
||||||
self.owner = other;
|
self.owner = other;
|
||||||
|
@ -215,7 +215,7 @@ void() item_megahealth_rot =
|
||||||
|
|
||||||
// it is possible for a player to die and respawn between rots, so don't
|
// it is possible for a player to die and respawn between rots, so don't
|
||||||
// just blindly subtract the flag off
|
// just blindly subtract the flag off
|
||||||
other.items = other.items - (other.items & IT_SUPERHEALTH);
|
other.items &= ~IT_SUPERHEALTH;
|
||||||
|
|
||||||
if (deathmatch == 1) // deathmatch 2 is silly old rules
|
if (deathmatch == 1) // deathmatch 2 is silly old rules
|
||||||
{
|
{
|
||||||
|
@ -266,7 +266,8 @@ void() armor_touch =
|
||||||
|
|
||||||
other.armortype = type;
|
other.armortype = type;
|
||||||
other.armorvalue = value;
|
other.armorvalue = value;
|
||||||
other.items = other.items - (other.items & (IT_ARMOR1 | IT_ARMOR2 | IT_ARMOR3)) + bit;
|
other.items &= ~(IT_ARMOR1 | IT_ARMOR2 | IT_ARMOR3);
|
||||||
|
other.items |= bit;
|
||||||
|
|
||||||
self.solid = SOLID_NOT;
|
self.solid = SOLID_NOT;
|
||||||
self.model = string_null;
|
self.model = string_null;
|
||||||
|
@ -470,7 +471,7 @@ void() weapon_touch =
|
||||||
|
|
||||||
// change to the weapon
|
// change to the weapon
|
||||||
old = other.items;
|
old = other.items;
|
||||||
other.items = other.items | new;
|
other.items |= new;
|
||||||
|
|
||||||
stemp = self;
|
stemp = self;
|
||||||
self = other;
|
self = other;
|
||||||
|
@ -880,7 +881,7 @@ void() key_touch =
|
||||||
|
|
||||||
sound (other, CHAN_ITEM, self.noise, 1, ATTN_NORM);
|
sound (other, CHAN_ITEM, self.noise, 1, ATTN_NORM);
|
||||||
stuffcmd (other, "bf\n");
|
stuffcmd (other, "bf\n");
|
||||||
other.items = other.items | self.items;
|
other.items |= self.items;
|
||||||
|
|
||||||
if (!coop)
|
if (!coop)
|
||||||
{
|
{
|
||||||
|
@ -1011,7 +1012,7 @@ void() sigil_touch =
|
||||||
stuffcmd (other, "bf\n");
|
stuffcmd (other, "bf\n");
|
||||||
self.solid = SOLID_NOT;
|
self.solid = SOLID_NOT;
|
||||||
self.model = string_null;
|
self.model = string_null;
|
||||||
serverflags = serverflags | (self.spawnflags & 15);
|
serverflags |= self.spawnflags & 15;
|
||||||
self.classname = ""; // so rune doors won't find it
|
self.classname = ""; // so rune doors won't find it
|
||||||
|
|
||||||
activator = other;
|
activator = other;
|
||||||
|
@ -1095,7 +1096,7 @@ void() powerup_touch =
|
||||||
sound (other, CHAN_VOICE, self.noise, 1, ATTN_NORM);
|
sound (other, CHAN_VOICE, self.noise, 1, ATTN_NORM);
|
||||||
stuffcmd (other, "bf\n");
|
stuffcmd (other, "bf\n");
|
||||||
self.solid = SOLID_NOT;
|
self.solid = SOLID_NOT;
|
||||||
other.items = other.items | self.items;
|
other.items |= self.items;
|
||||||
self.model = string_null;
|
self.model = string_null;
|
||||||
|
|
||||||
// do the apropriate action
|
// do the apropriate action
|
||||||
|
@ -1255,7 +1256,7 @@ void() BackpackTouch =
|
||||||
if (!new)
|
if (!new)
|
||||||
new = other.weapon;
|
new = other.weapon;
|
||||||
old = other.items;
|
old = other.items;
|
||||||
other.items = other.items | new;
|
other.items |= new;
|
||||||
|
|
||||||
bound_other_ammo ();
|
bound_other_ammo ();
|
||||||
|
|
||||||
|
|
|
@ -85,7 +85,7 @@ void() walkmonster_start_go =
|
||||||
self.view_ofs = '0 0 25';
|
self.view_ofs = '0 0 25';
|
||||||
self.use = monster_use;
|
self.use = monster_use;
|
||||||
|
|
||||||
self.flags = self.flags | FL_MONSTER;
|
self.flags |= FL_MONSTER;
|
||||||
|
|
||||||
if (self.target)
|
if (self.target)
|
||||||
{
|
{
|
||||||
|
@ -136,8 +136,8 @@ void() flymonster_start_go =
|
||||||
self.view_ofs = '0 0 25';
|
self.view_ofs = '0 0 25';
|
||||||
self.use = monster_use;
|
self.use = monster_use;
|
||||||
|
|
||||||
self.flags = self.flags | FL_FLY;
|
self.flags |= FL_FLY;
|
||||||
self.flags = self.flags | FL_MONSTER;
|
self.flags |= FL_MONSTER;
|
||||||
|
|
||||||
if (!walkmove(0,0))
|
if (!walkmove(0,0))
|
||||||
{
|
{
|
||||||
|
@ -195,8 +195,8 @@ void() swimmonster_start_go =
|
||||||
self.view_ofs = '0 0 10';
|
self.view_ofs = '0 0 10';
|
||||||
self.use = monster_use;
|
self.use = monster_use;
|
||||||
|
|
||||||
self.flags = self.flags | FL_SWIM;
|
self.flags |= FL_SWIM;
|
||||||
self.flags = self.flags | FL_MONSTER;
|
self.flags |= FL_MONSTER;
|
||||||
|
|
||||||
if (self.target)
|
if (self.target)
|
||||||
{
|
{
|
||||||
|
|
|
@ -91,7 +91,7 @@ void() OgreFireGrenade =
|
||||||
{
|
{
|
||||||
local entity missile;
|
local entity missile;
|
||||||
|
|
||||||
self.effects = self.effects | EF_MUZZLEFLASH;
|
self.effects |= EF_MUZZLEFLASH;
|
||||||
|
|
||||||
sound (self, CHAN_WEAPON, "weapons/grenade.wav", 1, ATTN_NORM);
|
sound (self, CHAN_WEAPON, "weapons/grenade.wav", 1, ATTN_NORM);
|
||||||
|
|
||||||
|
|
|
@ -140,7 +140,7 @@ void() player_run =[ $rockrun1, player_run ]
|
||||||
|
|
||||||
|
|
||||||
void() player_shot1 = [$shotatt1, player_shot2 ] {self.weaponframe=1;
|
void() player_shot1 = [$shotatt1, player_shot2 ] {self.weaponframe=1;
|
||||||
self.effects = self.effects | EF_MUZZLEFLASH;};
|
self.effects |= EF_MUZZLEFLASH;};
|
||||||
void() player_shot2 = [$shotatt2, player_shot3 ] {self.weaponframe=2;};
|
void() player_shot2 = [$shotatt2, player_shot3 ] {self.weaponframe=2;};
|
||||||
void() player_shot3 = [$shotatt3, player_shot4 ] {self.weaponframe=3;};
|
void() player_shot3 = [$shotatt3, player_shot4 ] {self.weaponframe=3;};
|
||||||
void() player_shot4 = [$shotatt4, player_shot5 ] {self.weaponframe=4;};
|
void() player_shot4 = [$shotatt4, player_shot5 ] {self.weaponframe=4;};
|
||||||
|
@ -172,7 +172,7 @@ void() player_axed4 = [$axattd4, player_run ] {self.weaponframe=8;};
|
||||||
|
|
||||||
void() player_nail1 =[$nailatt1, player_nail2 ]
|
void() player_nail1 =[$nailatt1, player_nail2 ]
|
||||||
{
|
{
|
||||||
self.effects = self.effects | EF_MUZZLEFLASH;
|
self.effects |= EF_MUZZLEFLASH;
|
||||||
|
|
||||||
if (!self.button0)
|
if (!self.button0)
|
||||||
{player_run ();return;}
|
{player_run ();return;}
|
||||||
|
@ -185,7 +185,7 @@ void() player_nail1 =[$nailatt1, player_nail2 ]
|
||||||
};
|
};
|
||||||
void() player_nail2 =[$nailatt2, player_nail1 ]
|
void() player_nail2 =[$nailatt2, player_nail1 ]
|
||||||
{
|
{
|
||||||
self.effects = self.effects | EF_MUZZLEFLASH;
|
self.effects |= EF_MUZZLEFLASH;
|
||||||
|
|
||||||
if (!self.button0)
|
if (!self.button0)
|
||||||
{player_run ();return;}
|
{player_run ();return;}
|
||||||
|
@ -201,7 +201,7 @@ void() player_nail2 =[$nailatt2, player_nail1 ]
|
||||||
|
|
||||||
void() player_light1 =[$light1, player_light2 ]
|
void() player_light1 =[$light1, player_light2 ]
|
||||||
{
|
{
|
||||||
self.effects = self.effects | EF_MUZZLEFLASH;
|
self.effects |= EF_MUZZLEFLASH;
|
||||||
|
|
||||||
if (!self.button0)
|
if (!self.button0)
|
||||||
{player_run ();return;}
|
{player_run ();return;}
|
||||||
|
@ -214,7 +214,7 @@ void() player_light1 =[$light1, player_light2 ]
|
||||||
};
|
};
|
||||||
void() player_light2 =[$light2, player_light1 ]
|
void() player_light2 =[$light2, player_light1 ]
|
||||||
{
|
{
|
||||||
self.effects = self.effects | EF_MUZZLEFLASH;
|
self.effects |= EF_MUZZLEFLASH;
|
||||||
|
|
||||||
if (!self.button0)
|
if (!self.button0)
|
||||||
{player_run ();return;}
|
{player_run ();return;}
|
||||||
|
@ -230,7 +230,7 @@ void() player_light2 =[$light2, player_light1 ]
|
||||||
|
|
||||||
|
|
||||||
void() player_rocket1 =[$rockatt1, player_rocket2 ] {self.weaponframe=1;
|
void() player_rocket1 =[$rockatt1, player_rocket2 ] {self.weaponframe=1;
|
||||||
self.effects = self.effects | EF_MUZZLEFLASH;};
|
self.effects |= EF_MUZZLEFLASH;};
|
||||||
void() player_rocket2 =[$rockatt2, player_rocket3 ] {self.weaponframe=2;};
|
void() player_rocket2 =[$rockatt2, player_rocket3 ] {self.weaponframe=2;};
|
||||||
void() player_rocket3 =[$rockatt3, player_rocket4 ] {self.weaponframe=3;};
|
void() player_rocket3 =[$rockatt3, player_rocket4 ] {self.weaponframe=3;};
|
||||||
void() player_rocket4 =[$rockatt4, player_rocket5 ] {self.weaponframe=4;};
|
void() player_rocket4 =[$rockatt4, player_rocket5 ] {self.weaponframe=4;};
|
||||||
|
@ -489,7 +489,7 @@ void(string gibname, float dm) ThrowHead =
|
||||||
setsize (self, '-16 -16 0', '16 16 56');
|
setsize (self, '-16 -16 0', '16 16 56');
|
||||||
self.velocity = VelocityForDamage (dm);
|
self.velocity = VelocityForDamage (dm);
|
||||||
self.origin_z = self.origin_z - 24;
|
self.origin_z = self.origin_z - 24;
|
||||||
self.flags = self.flags - (self.flags & FL_ONGROUND);
|
self.flags &= ~FL_ONGROUND;
|
||||||
self.avelocity = crandom() * '0 600 0';
|
self.avelocity = crandom() * '0 600 0';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -525,7 +525,7 @@ void() PlayerDie =
|
||||||
{
|
{
|
||||||
local float i;
|
local float i;
|
||||||
|
|
||||||
self.items = self.items - (self.items & IT_INVISIBILITY);
|
self.items &= ~IT_INVISIBILITY;
|
||||||
self.invisible_finished = 0; // don't die as eyes
|
self.invisible_finished = 0; // don't die as eyes
|
||||||
self.invincible_finished = 0;
|
self.invincible_finished = 0;
|
||||||
self.super_damage_finished = 0;
|
self.super_damage_finished = 0;
|
||||||
|
@ -539,7 +539,7 @@ void() PlayerDie =
|
||||||
self.view_ofs = '0 0 -8';
|
self.view_ofs = '0 0 -8';
|
||||||
self.deadflag = DEAD_DYING;
|
self.deadflag = DEAD_DYING;
|
||||||
self.solid = SOLID_NOT;
|
self.solid = SOLID_NOT;
|
||||||
self.flags = self.flags - (self.flags & FL_ONGROUND);
|
self.flags &= ~FL_ONGROUND;
|
||||||
self.movetype = MOVETYPE_TOSS;
|
self.movetype = MOVETYPE_TOSS;
|
||||||
if (self.velocity_z < 10)
|
if (self.velocity_z < 10)
|
||||||
self.velocity_z = self.velocity_z + random()*300;
|
self.velocity_z = self.velocity_z + random()*300;
|
||||||
|
|
|
@ -135,7 +135,7 @@ void() ShalMissile =
|
||||||
if (flytime < 0.1)
|
if (flytime < 0.1)
|
||||||
flytime = 0.1;
|
flytime = 0.1;
|
||||||
|
|
||||||
self.effects = self.effects | EF_MUZZLEFLASH;
|
self.effects |= EF_MUZZLEFLASH;
|
||||||
sound (self, CHAN_WEAPON, "shalrath/attack2.wav", 1, ATTN_NORM);
|
sound (self, CHAN_WEAPON, "shalrath/attack2.wav", 1, ATTN_NORM);
|
||||||
|
|
||||||
missile = spawn ();
|
missile = spawn ();
|
||||||
|
|
|
@ -194,7 +194,7 @@ void() CastLightning =
|
||||||
{
|
{
|
||||||
local vector org, dir;
|
local vector org, dir;
|
||||||
|
|
||||||
self.effects = self.effects | EF_MUZZLEFLASH;
|
self.effects |= EF_MUZZLEFLASH;
|
||||||
|
|
||||||
ai_face ();
|
ai_face ();
|
||||||
|
|
||||||
|
@ -225,7 +225,7 @@ void() sham_magic2 =[ $magic2, sham_magic3 ] {ai_face();};
|
||||||
void() sham_magic3 =[ $magic3, sham_magic4 ] {ai_face();self.nextthink = self.nextthink + 0.2;
|
void() sham_magic3 =[ $magic3, sham_magic4 ] {ai_face();self.nextthink = self.nextthink + 0.2;
|
||||||
local entity o;
|
local entity o;
|
||||||
|
|
||||||
self.effects = self.effects | EF_MUZZLEFLASH;
|
self.effects |= EF_MUZZLEFLASH;
|
||||||
ai_face();
|
ai_face();
|
||||||
self.owner = spawn();
|
self.owner = spawn();
|
||||||
o = self.owner;
|
o = self.owner;
|
||||||
|
@ -237,12 +237,12 @@ o.think = SUB_Remove;
|
||||||
};
|
};
|
||||||
void() sham_magic4 =[ $magic4, sham_magic5 ]
|
void() sham_magic4 =[ $magic4, sham_magic5 ]
|
||||||
{
|
{
|
||||||
self.effects = self.effects | EF_MUZZLEFLASH;
|
self.effects |= EF_MUZZLEFLASH;
|
||||||
self.owner.frame = 1;
|
self.owner.frame = 1;
|
||||||
};
|
};
|
||||||
void() sham_magic5 =[ $magic5, sham_magic6 ]
|
void() sham_magic5 =[ $magic5, sham_magic6 ]
|
||||||
{
|
{
|
||||||
self.effects = self.effects | EF_MUZZLEFLASH;
|
self.effects |= EF_MUZZLEFLASH;
|
||||||
self.owner.frame = 2;
|
self.owner.frame = 2;
|
||||||
};
|
};
|
||||||
void() sham_magic6 =[ $magic6, sham_magic9 ]
|
void() sham_magic6 =[ $magic6, sham_magic9 ]
|
||||||
|
|
|
@ -99,7 +99,7 @@ void() army_atk2 =[ $shoot2, army_atk3 ] {ai_face();};
|
||||||
void() army_atk3 =[ $shoot3, army_atk4 ] {ai_face();};
|
void() army_atk3 =[ $shoot3, army_atk4 ] {ai_face();};
|
||||||
void() army_atk4 =[ $shoot4, army_atk5 ] {ai_face();};
|
void() army_atk4 =[ $shoot4, army_atk5 ] {ai_face();};
|
||||||
void() army_atk5 =[ $shoot5, army_atk6 ] {ai_face();army_fire();
|
void() army_atk5 =[ $shoot5, army_atk6 ] {ai_face();army_fire();
|
||||||
self.effects = self.effects | EF_MUZZLEFLASH;};
|
self.effects |= EF_MUZZLEFLASH;};
|
||||||
void() army_atk6 =[ $shoot6, army_atk7 ] {ai_face();};
|
void() army_atk6 =[ $shoot6, army_atk7 ] {ai_face();};
|
||||||
void() army_atk7 =[ $shoot7, army_atk8 ] {ai_face();SUB_CheckRefire (army_atk1);};
|
void() army_atk7 =[ $shoot7, army_atk8 ] {ai_face();SUB_CheckRefire (army_atk1);};
|
||||||
void() army_atk8 =[ $shoot8, army_atk9 ] {ai_face();};
|
void() army_atk8 =[ $shoot8, army_atk9 ] {ai_face();};
|
||||||
|
|
|
@ -414,7 +414,7 @@ local vector org;
|
||||||
other.flags = other.flags - FL_ONGROUND;
|
other.flags = other.flags - FL_ONGROUND;
|
||||||
other.velocity = v_forward * 300;
|
other.velocity = v_forward * 300;
|
||||||
}
|
}
|
||||||
other.flags = other.flags - other.flags & FL_ONGROUND;
|
other.flags &= ~FL_ONGROUND;
|
||||||
};
|
};
|
||||||
|
|
||||||
/*QUAKED info_teleport_destination (.5 .5 .5) (-8 -8 -8) (8 8 32)
|
/*QUAKED info_teleport_destination (.5 .5 .5) (-8 -8 -8) (8 8 32)
|
||||||
|
|
|
@ -754,7 +754,7 @@ void() W_SetCurrentAmmo =
|
||||||
{
|
{
|
||||||
player_run (); // get out of any weapon firing states
|
player_run (); // get out of any weapon firing states
|
||||||
|
|
||||||
self.items = self.items - ( self.items & (IT_SHELLS | IT_NAILS | IT_ROCKETS | IT_CELLS) );
|
self.items &= ~(IT_SHELLS | IT_NAILS | IT_ROCKETS | IT_CELLS);
|
||||||
|
|
||||||
if (self.weapon == IT_AXE)
|
if (self.weapon == IT_AXE)
|
||||||
{
|
{
|
||||||
|
@ -1028,18 +1028,12 @@ void() CheatCommand =
|
||||||
self.ammo_rockets = 100;
|
self.ammo_rockets = 100;
|
||||||
self.ammo_nails = 200;
|
self.ammo_nails = 200;
|
||||||
self.ammo_shells = 100;
|
self.ammo_shells = 100;
|
||||||
self.items = self.items |
|
self.items |= (IT_AXE | IT_SHOTGUN | IT_SUPER_SHOTGUN | IT_NAILGUN
|
||||||
IT_AXE |
|
| IT_SUPER_NAILGUN | IT_GRENADE_LAUNCHER
|
||||||
IT_SHOTGUN |
|
| IT_ROCKET_LAUNCHER | IT_KEY1 | IT_KEY2);
|
||||||
IT_SUPER_SHOTGUN |
|
|
||||||
IT_NAILGUN |
|
|
||||||
IT_SUPER_NAILGUN |
|
|
||||||
IT_GRENADE_LAUNCHER |
|
|
||||||
IT_ROCKET_LAUNCHER |
|
|
||||||
IT_KEY1 | IT_KEY2;
|
|
||||||
|
|
||||||
self.ammo_cells = 200;
|
self.ammo_cells = 200;
|
||||||
self.items = self.items | IT_LIGHTNING;
|
self.items |= IT_LIGHTNING;
|
||||||
|
|
||||||
self.weapon = IT_ROCKET_LAUNCHER;
|
self.weapon = IT_ROCKET_LAUNCHER;
|
||||||
self.impulse = 0;
|
self.impulse = 0;
|
||||||
|
@ -1212,7 +1206,7 @@ void() QuadCheat =
|
||||||
return;
|
return;
|
||||||
self.super_time = 1;
|
self.super_time = 1;
|
||||||
self.super_damage_finished = time + 30;
|
self.super_damage_finished = time + 30;
|
||||||
self.items = self.items | IT_QUAD;
|
self.items |= IT_QUAD;
|
||||||
dprint ("quad cheat\n");
|
dprint ("quad cheat\n");
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -194,7 +194,7 @@ void() Wiz_FastFire =
|
||||||
|
|
||||||
if (self.owner.health > 0)
|
if (self.owner.health > 0)
|
||||||
{
|
{
|
||||||
self.owner.effects = self.owner.effects | EF_MUZZLEFLASH;
|
self.owner.effects |= EF_MUZZLEFLASH;
|
||||||
|
|
||||||
makevectors (self.enemy.angles);
|
makevectors (self.enemy.angles);
|
||||||
dst = self.enemy.origin - 13*self.movedir;
|
dst = self.enemy.origin - 13*self.movedir;
|
||||||
|
@ -327,7 +327,7 @@ void() wiz_death1 =[ $death1, wiz_death2 ] {
|
||||||
self.velocity_x = -200 + 400*random();
|
self.velocity_x = -200 + 400*random();
|
||||||
self.velocity_y = -200 + 400*random();
|
self.velocity_y = -200 + 400*random();
|
||||||
self.velocity_z = 100 + 100*random();
|
self.velocity_z = 100 + 100*random();
|
||||||
self.flags = self.flags - (self.flags & FL_ONGROUND);
|
self.flags &= ~FL_ONGROUND;
|
||||||
sound (self, CHAN_VOICE, "wizard/wdeath.wav", 1, ATTN_NORM);
|
sound (self, CHAN_VOICE, "wizard/wdeath.wav", 1, ATTN_NORM);
|
||||||
};
|
};
|
||||||
void() wiz_death2 =[ $death2, wiz_death3 ] {};
|
void() wiz_death2 =[ $death2, wiz_death3 ] {};
|
||||||
|
|
Loading…
Reference in a new issue