Skip to content

Commit

Permalink
Corpses: Ensure frame1time is reset whenever we inherit someones corpse.
Browse files Browse the repository at this point in the history
Items: Ensure we re-adjust our position post-spawn so we don't fall through
yet-to-spawn geometry.
Delete a whole bunch of now unused code.
  • Loading branch information
eukara committed Mar 2, 2024
1 parent c3975f5 commit f3596f2
Show file tree
Hide file tree
Showing 63 changed files with 218 additions and 3,774 deletions.
4 changes: 2 additions & 2 deletions src/client/game_event.qc
Expand Up @@ -46,14 +46,14 @@ ClientGame_EventParse(float fHeader)
float fTeam = readbyte();
string sMessage = readstring();

CSQC_Parse_Print(sprintf("%s: %s", getplayerkeyvalue(fSender, "name"), sMessage), PRINT_CHAT);
CSQC_Parse_Print(Util_ChatFormat(fSender, 0, sMessage), PRINT_CHAT);
break;
case EV_CHAT_TEAM:
float fSender2 = readbyte();
float fTeam2 = readbyte();
string sMessage2 = readstring();

CSQC_Parse_Print(sprintf("[TEAM] %s: %s", getplayerkeyvalue(fSender2, "name"), sMessage2), PRINT_CHAT);
CSQC_Parse_Print(Util_ChatFormat(fSender2, fTeam2, sMessage2), PRINT_CHAT);
break;
case EV_VIEWMODEL:
View_PlayAnimation(readbyte());
Expand Down
6 changes: 3 additions & 3 deletions src/client/hud_sprite.qc
Expand Up @@ -38,7 +38,7 @@ HLSprite_Init(void)
hudFile = fopen("sprites/hud.txt", FILE_READ);

if (hudFile < 0) {
error("hud.txt was not found.");
NSError("Missing file sprites/hud.txt");
return;
}

Expand Down Expand Up @@ -91,7 +91,7 @@ HLSprite_Init(void)
i++;
}

print(sprintf("initialized %i HL sprites.\n", spriteCount));
NSLog("...initialized %i HL sprites.", spriteCount);
}

void
Expand All @@ -102,7 +102,7 @@ HLSprite_Draw_RGBA(string spriteName, vector spritePos, vector spriteColor, floa
spriteNum = (int)hash_get(g_hashhlsprite, spriteName, -1i);

if (spriteNum == -1i) {
print(sprintf("cannot draw sprite %S!\n", spriteName));
NSError("Cannot draw sprite %S!", spriteName);
return;
}

Expand Down
21 changes: 11 additions & 10 deletions src/client/hud_weaponselect.qc
Expand Up @@ -14,6 +14,8 @@
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/

void View_ForceChange(player pl, int targetWeapon);

vector g_vecHUDNums[6] =
{
[168 / 256, 72 / 128],
Expand Down Expand Up @@ -52,9 +54,10 @@ HUD_DrawWeaponSelect_Forward(void)

if (pSeat->m_flHUDWeaponSelectTime < time) {
pSeat->m_iHUDWeaponSelected = pl.activeweapon;
Sound_Play(pSeat->m_ePlayer, CHAN_ITEM, "Player.WeaponSelectionOpen");
pl.StartSoundDef("Player.WeaponSelectionOpen", CHAN_ITEM, false);
} else {
Sound_Play(pSeat->m_ePlayer, CHAN_ITEM, "Player.WeaponSelectionMoveSlot");
pl.StartSoundDef("Player.WeaponSelectionMoveSlot", CHAN_ITEM, false);

pSeat->m_iHUDWeaponSelected--;
if (pSeat->m_iHUDWeaponSelected <= 0) {
pSeat->m_iHUDWeaponSelected = g_weapons.length - 1;
Expand Down Expand Up @@ -83,9 +86,10 @@ HUD_DrawWeaponSelect_Back(void)

if (pSeat->m_flHUDWeaponSelectTime < time) {
pSeat->m_iHUDWeaponSelected = pl.activeweapon;
Sound_Play(pSeat->m_ePlayer, CHAN_ITEM, "Player.WeaponSelectionOpen");
pl.StartSoundDef("Player.WeaponSelectionOpen", CHAN_ITEM, false);
} else {
Sound_Play(pSeat->m_ePlayer, CHAN_ITEM, "Player.WeaponSelectionMoveSlot");
pl.StartSoundDef("Player.WeaponSelectionMoveSlot", CHAN_ITEM, false);

pSeat->m_iHUDWeaponSelected++;
if (pSeat->m_iHUDWeaponSelected >= g_weapons.length) {
pSeat->m_iHUDWeaponSelected = 1;
Expand All @@ -101,9 +105,6 @@ HUD_DrawWeaponSelect_Back(void)
HUD_DrawWeaponSelect_Back();
}

void
View_ForceChange(player pl, int targetWeapon);

void
HUD_DrawWeaponSelect_Trigger(void)
{
Expand Down Expand Up @@ -166,9 +167,9 @@ HUD_SlotSelect(int slot)
}

if (pSeat->m_flHUDWeaponSelectTime < time) {
Sound_Play(pSeat->m_ePlayer, CHAN_ITEM, "Player.WeaponSelectionOpen");
pl.StartSoundDef("Player.WeaponSelectionOpen", CHAN_ITEM, false);
} else {
Sound_Play(pSeat->m_ePlayer, CHAN_ITEM, "Player.WeaponSelectionMoveSlot");
pl.StartSoundDef("Player WeaponSelectionMoveSlot", CHAN_ITEM, false);
}

/* weren't in that slot? select the first one then */
Expand Down Expand Up @@ -211,7 +212,7 @@ HUD_DrawWeaponSelect(void)
}
if (pSeat->m_flHUDWeaponSelectTime < time) {
if (pSeat->m_iHUDWeaponSelected) {
Sound_Play(pSeat->m_ePlayer, CHAN_ITEM, "Player.WeaponSelectionClose");
pl.StartSoundDef("Player WeaponSelectionClose", CHAN_ITEM, false);
pSeat->m_iHUDWeaponSelected = 0;
}
return;
Expand Down
9 changes: 8 additions & 1 deletion src/server/ammo.qc
Expand Up @@ -46,6 +46,13 @@ item_ammo::Touch(entity eToucher)
void
item_ammo::Respawn(void)
{
static void AdjustSpawnPos(void) {
RestoreAngles();
SetOrigin(GetSpawnOrigin());
DropToFloor();
SetMovetype(MOVETYPE_TOSS);
}

SetSolid(SOLID_TRIGGER);
SetMovetype(MOVETYPE_TOSS);
SetOrigin(GetSpawnOrigin());
Expand All @@ -57,7 +64,7 @@ item_ammo::Respawn(void)
if (real_owner && time > 30.0f)
Sound_Play(this, CHAN_ITEM, "ammo.respawn");

droptofloor();
ScheduleThink(AdjustSpawnPos, 0.0f);
}

void
Expand Down
39 changes: 25 additions & 14 deletions src/server/item_suit.qc
Expand Up @@ -45,17 +45,19 @@ item_suit::Touch(entity eToucher)
}

player pl = (player)other;

if (pl.g_items & ITEM_SUIT) {
return;
}

Logging_Pickup(other, this, __NULL__);
sound(other, CHAN_ITEM, "fvox/bell.wav", 1, ATTN_NORM);
sound(other, CHAN_VOICE, "fvox/hev_logon.wav", 1, ATTN_NORM);
StartSound("fvox/bell.wav", CHAN_ITEM, 0, true);
StartSound("fvox/hev_logon.wav", CHAN_VOICE, 0, true);

pl.g_items |= ITEM_SUIT;
m_iValue = TRUE;

if (!target) {
if (HasTriggerTarget() == false) {
UseOutput(other, m_strOnPlayerTouch);
} else {
UseTargets(other, TRIG_TOGGLE, m_flDelay);
Expand All @@ -72,36 +74,45 @@ item_suit::Touch(entity eToucher)
void
item_suit::Respawn(void)
{
/* we need to delay the DropToFloor() by at least a frame.
otherwise they may just fall through an entity (func_wall, func_train etc.)
that came after this entity in the lump. */
static void AdjustSpawnPos(void) {
RestoreAngles();
SetOrigin(GetSpawnOrigin());
DropToFloor();
SetMovetype(MOVETYPE_TOSS);
}

if (cvar_string("fs_game") == "bshift") {
Destroy();
return;
}

SetSolid(SOLID_TRIGGER);
SetMovetype(MOVETYPE_TOSS);
SetOrigin(GetSpawnOrigin());
SetMovetype(MOVETYPE_TOSS);
SetModel(GetSpawnModel());
SetSize(VEC_HULL_MIN + [0,0,36], VEC_HULL_MAX + [0,0,36]);
m_iValue = FALSE;

ReleaseThink();

if (!real_owner && time > 30.0f)
Sound_Play(this, CHAN_ITEM, "item.respawn");
if (!real_owner && time > 30.0f) {
StartSoundDef("item.respawn", CHAN_ITEM, true);
}

DropToFloor();
ScheduleThink(AdjustSpawnPos, 0.0f);
}

void
item_suit::SpawnKey(string strKey, string strValue)
item_suit::SpawnKey(string keyName, string setValue)
{
switch (strKey) {
switch (keyName) {
case "OnPlayerTouch":
strValue = strreplace(",", ",_", strValue);
m_strOnPlayerTouch = strcat(m_strOnPlayerTouch, ",_", strValue);
setValue = strreplace(",", ",_", setValue);
m_strOnPlayerTouch = strcat(m_strOnPlayerTouch, ",_", setValue);
break;
default:
super::SpawnKey(strKey, strValue);
super::SpawnKey(keyName, setValue);
break;
}
}
Expand Down
121 changes: 0 additions & 121 deletions src/server/monster_alien_controller.qc

This file was deleted.

0 comments on commit f3596f2

Please sign in to comment.