From 7bd9aab7534b9a8efe1e6b58a8592442312d2139 Mon Sep 17 00:00:00 2001 From: tankefugl Date: Fri, 25 Nov 2005 04:19:57 +0000 Subject: [PATCH] - Reverted quake style jumping because of prediction errors. - +attack2 is now +moveability. - Switched the onos attacks charge and devour. - Alien movement abilities invoked by +moveability now disable according to weapon availability. - Changed the charge speed calculations. (Incomplete.) git-svn-id: https://unknownworlds.svn.cloudforge.com/ns1@364 67975925-1194-0748-b3d5-c16f83f1a3a1 --- dev/3.2-movements/Balance.txt | 2 +- dev/3.2-movements/source/cl_dll/ammo.cpp | 5 ++ dev/3.2-movements/source/cl_dll/input.cpp | 4 +- dev/3.2-movements/source/dlls/weapons.cpp | 4 ++ dev/3.2-movements/source/mod/AvHHud.h | 1 + dev/3.2-movements/source/mod/AvHHudRender.cpp | 22 +++++++ dev/3.2-movements/source/mod/AvHItemInfo.cpp | 16 +++--- .../source/pm_shared/pm_shared.cpp | 54 ++++++++++++------ dev/3.2-movements/sprites/charge_tint.spr | Bin 0 -> 66366 bytes 9 files changed, 79 insertions(+), 29 deletions(-) create mode 100644 dev/3.2-movements/sprites/charge_tint.spr diff --git a/dev/3.2-movements/Balance.txt b/dev/3.2-movements/Balance.txt index 374b9d95..9b074038 100644 --- a/dev/3.2-movements/Balance.txt +++ b/dev/3.2-movements/Balance.txt @@ -357,7 +357,7 @@ #define kChargeMaxPushbackForce 100.0 #define kChargePushbackRadius 100.0 #define kChargeSpeed 1.00 -#define kChargeThresholdTime 0.50 +#define kChargeThresholdTime 0.75 #define kChargingEnergyScalar 2.80 #define kClawsEnergyCost 0.07 #define kClawsROF 0.90 diff --git a/dev/3.2-movements/source/cl_dll/ammo.cpp b/dev/3.2-movements/source/cl_dll/ammo.cpp index f60cd534..6479f6a8 100644 --- a/dev/3.2-movements/source/cl_dll/ammo.cpp +++ b/dev/3.2-movements/source/cl_dll/ammo.cpp @@ -41,6 +41,8 @@ WeaponsResource gWR; int g_weaponselect = 0; +extern bool gCanMove; + //Equivalent to DECLARE_COMMAND(lastinv,LastInv) except we use gWR instead of gHud void __CmdFunc_LastInv(void) { gWR.UserCmd_LastInv(); } @@ -737,6 +739,9 @@ int CHudAmmo::MsgFunc_CurWeapon(const char *pszName, int iSize, void *pbuf ) if( !bIsCurrent ) { return 1; } + if (iId == 22 || iId == 11 || iId == 21) + gCanMove = pWeapon->iEnabled; + m_pWeapon = pWeapon; if ( !(gHUD.m_iHideHUDDisplay & ( HIDEHUD_WEAPONS | HIDEHUD_ALL )) ) diff --git a/dev/3.2-movements/source/cl_dll/input.cpp b/dev/3.2-movements/source/cl_dll/input.cpp index 97d8fdaa..7b41e41f 100644 --- a/dev/3.2-movements/source/cl_dll/input.cpp +++ b/dev/3.2-movements/source/cl_dll/input.cpp @@ -1503,8 +1503,8 @@ void InitInput (void) gEngfuncs.pfnAddCommand ("-speed", IN_SpeedUp); gEngfuncs.pfnAddCommand ("+attack", IN_AttackDown); gEngfuncs.pfnAddCommand ("-attack", IN_AttackUp); - gEngfuncs.pfnAddCommand ("+attack2", IN_Attack2Down); - gEngfuncs.pfnAddCommand ("-attack2", IN_Attack2Up); + gEngfuncs.pfnAddCommand ("+moveability", IN_Attack2Down); + gEngfuncs.pfnAddCommand ("-moveability", IN_Attack2Up); gEngfuncs.pfnAddCommand ("+use", IN_UseDown); gEngfuncs.pfnAddCommand ("-use", IN_UseUp); gEngfuncs.pfnAddCommand ("+jump", IN_JumpDown); diff --git a/dev/3.2-movements/source/dlls/weapons.cpp b/dev/3.2-movements/source/dlls/weapons.cpp index c0842dd2..1968df55 100644 --- a/dev/3.2-movements/source/dlls/weapons.cpp +++ b/dev/3.2-movements/source/dlls/weapons.cpp @@ -127,6 +127,7 @@ MULTIDAMAGE gMultiDamage; #define TRACER_FREQ 4 // Tracers fire every fourth bullet +extern bool gCanMove[]; //========================================================= // MaxAmmoCarry - pass in a name and this function will tell @@ -1171,6 +1172,9 @@ int CBasePlayerWeapon::UpdateClientData( CBasePlayer *pPlayer ) bSend = TRUE; } + if (m_iId == 22 || m_iId == 11 || m_iId == 21) + gCanMove[pPlayer->entindex() - 1] = m_iEnabled; + if ( bSend ) { NetMsg_CurWeapon( pPlayer->pev, state, m_iId, m_iClip ); diff --git a/dev/3.2-movements/source/mod/AvHHud.h b/dev/3.2-movements/source/mod/AvHHud.h index e6180915..016bcf9e 100644 --- a/dev/3.2-movements/source/mod/AvHHud.h +++ b/dev/3.2-movements/source/mod/AvHHud.h @@ -702,6 +702,7 @@ private: HSPRITE mAlienUIEnergySprite; HSPRITE mBlackSprite; + HSPRITE mChargeSprite; HSPRITE mMembraneSprite; HSPRITE mDigestingSprite; diff --git a/dev/3.2-movements/source/mod/AvHHudRender.cpp b/dev/3.2-movements/source/mod/AvHHudRender.cpp index 447693c6..43861239 100644 --- a/dev/3.2-movements/source/mod/AvHHudRender.cpp +++ b/dev/3.2-movements/source/mod/AvHHudRender.cpp @@ -3650,8 +3650,27 @@ void AvHHud::RenderAlienMovementUIEffect() if (isMoving && (iuser3 == AVH_USER3_ALIEN_PLAYER5)) { + float alpha = 1.0f; float theChargeThresholdTime = (float)BALANCE_VAR(kChargeThresholdTime); float factor = min(this->mMovementTimer / theChargeThresholdTime, 1.0f); + +// if (this->mMovementTimer > 0.0f) +// { +// alpha = min(this->mMovementTimer / theChargeThresholdTime, 1.0f); +// +// AvHSpriteSetColor(1, 1, 1, alpha); +// AvHSpriteSetRenderMode(kRenderTransAlpha); +// +// int theWidth = ScreenWidth(); +// int theHeight = ScreenHeight(); +// +// int theX = mViewport[0]; +// int theY = mViewport[1]; +// int theY1 = mViewport[1]; +// int theY2 = mViewport[3]; +// +// AvHSpriteDraw(mChargeSprite, 0, theX, theY, theX + theWidth, theY + theHeight, 0, 0, 1, 1); +// } } if (isMoving && (iuser3 == AVH_USER3_ALIEN_PLAYER1)) { @@ -4305,6 +4324,9 @@ void AvHHud::VidInit(void) // black sprite this->mBlackSprite = Safe_SPR_Load("sprites/black.spr"); + + // charge sprite + this->mChargeSprite = Safe_SPR_Load("sprites/charge_tint.spr"); // Load background for topdown mode this->mBackgroundSprite = Safe_SPR_Load(kTopDownBGSprite); diff --git a/dev/3.2-movements/source/mod/AvHItemInfo.cpp b/dev/3.2-movements/source/mod/AvHItemInfo.cpp index c9010887..4af20a52 100644 --- a/dev/3.2-movements/source/mod/AvHItemInfo.cpp +++ b/dev/3.2-movements/source/mod/AvHItemInfo.cpp @@ -899,8 +899,8 @@ int AvHDivineWind::iItemSlot(void) int AvHCharge::GetItemInfo(ItemInfo *p) const { - p->iSlot = AVH_FOURTH_SLOT; - p->iPosition = 6; + p->iSlot = AVH_SECOND_SLOT; //AVH_FOURTH_SLOT; + p->iPosition = 5; p->pszName = STRING(pev->classname); p->pszAmmo1 = NULL; @@ -908,7 +908,7 @@ int AvHCharge::GetItemInfo(ItemInfo *p) const p->pszAmmo2 = NULL; p->iMaxAmmo2 = BALANCE_VAR(kChargeDamage); p->iMaxClip = WEAPON_NOCLIP; - p->iFlags = ITEM_FLAG_NOAUTOSWITCHEMPTY | ITEM_FLAG_NOAUTORELOAD | ONE_HIVE_REQUIRED | TWO_HIVES_REQUIRED | THREE_HIVES_REQUIRED; + p->iFlags = ITEM_FLAG_NOAUTOSWITCHEMPTY | ITEM_FLAG_NOAUTORELOAD | ONE_HIVE_REQUIRED; // | TWO_HIVES_REQUIRED | THREE_HIVES_REQUIRED; p->iId = AVH_ABILITY_CHARGE; p->iWeight = kDefaultPrimaryWeaponWeight; @@ -917,7 +917,7 @@ int AvHCharge::GetItemInfo(ItemInfo *p) const int AvHCharge::iItemSlot(void) { - return AVH_FOURTH_SLOT + 1; + return AVH_SECOND_SLOT + 1; } int AvHStomp::GetItemInfo(ItemInfo *p) const @@ -946,8 +946,8 @@ int AvHStomp::iItemSlot(void) int AvHDevour::GetItemInfo(ItemInfo *p) const { - p->iSlot = AVH_SECOND_SLOT; - p->iPosition = 5; + p->iSlot = AVH_FOURTH_SLOT; //AVH_SECOND_SLOT; + p->iPosition = 6; p->pszName = STRING(pev->classname); p->pszAmmo1 = NULL; @@ -955,7 +955,7 @@ int AvHDevour::GetItemInfo(ItemInfo *p) const p->pszAmmo2 = NULL; p->iMaxAmmo2 = BALANCE_VAR(kDevourDamage); p->iMaxClip = WEAPON_NOCLIP; - p->iFlags = ITEM_FLAG_NOAUTOSWITCHEMPTY | ITEM_FLAG_NOAUTORELOAD | ONE_HIVE_REQUIRED; + p->iFlags = ITEM_FLAG_NOAUTOSWITCHEMPTY | ITEM_FLAG_NOAUTORELOAD | ONE_HIVE_REQUIRED | TWO_HIVES_REQUIRED | THREE_HIVES_REQUIRED; p->iId = AVH_WEAPON_DEVOUR; p->iWeight = kDefaultPrimaryWeaponWeight; @@ -964,7 +964,7 @@ int AvHDevour::GetItemInfo(ItemInfo *p) const int AvHDevour::iItemSlot(void) { - return AVH_SECOND_SLOT + 1; + return AVH_FOURTH_SLOT + 1; } diff --git a/dev/3.2-movements/source/pm_shared/pm_shared.cpp b/dev/3.2-movements/source/pm_shared/pm_shared.cpp index a334b3fa..3186615f 100644 --- a/dev/3.2-movements/source/pm_shared/pm_shared.cpp +++ b/dev/3.2-movements/source/pm_shared/pm_shared.cpp @@ -311,6 +311,11 @@ int g_onladder[MAX_CLIENTS]; bool gIsJetpacking[MAX_CLIENTS]; bool gCanJump[MAX_CLIENTS]; +#ifdef AVH_SERVER +bool gCanMove[MAX_CLIENTS]; +#else +bool gCanMove; +#endif // Borrowed from Quake1. @@ -4601,22 +4606,28 @@ bool PM_ChargeMove() if (pmove->onground != -1) { vec3_t forward; + vec3_t sideways; float length = pmove->maxspeed * (1.0f + (float)BALANCE_VAR(kChargeSpeed) * pmove->fuser4 / theChargeThresholdTime); VectorCopy(pmove->forward, forward); + VectorScale(forward, -1 * DotProduct(forward, pmove->velocity), forward); + VectorAdd(pmove->velocity, forward, sideways); + //VectorScale(sideways, 1.5f, sideways); + + VectorCopy(pmove->forward, forward); + forward[2] = 0.0f; VectorNormalize(forward); VectorScale(forward, length, forward); - float boostfactor = DotProduct(forward, pmove->velocity) / (length * length); - VectorScale(forward, (1.0f - boostfactor), forward); - VectorAdd(forward, pmove->velocity, pmove->velocity); + VectorAdd(forward, sideways, pmove->velocity); + //VectorCopy(forward, pmove->velocity); + + // pmove->velocity[2] = 0.0f; + float velocity = Length(pmove->velocity); - float maxvel = (pmove->maxspeed * (1.0f + (float)BALANCE_VAR(kChargeSpeed)) * 1.6f); + float maxvel = (pmove->maxspeed * (1.0f + theChargeSpeed)); if (velocity > maxvel) - { - VectorNormalize(pmove->velocity); - VectorScale(pmove->velocity, maxvel, pmove->velocity); - } + VectorScale(pmove->velocity, maxvel / velocity, pmove->velocity); } return true; @@ -4688,23 +4699,30 @@ void PM_AlienAbilities() } // Movement abilities + + bool canmove = false; +#ifdef AVH_SERVER + canmove = gCanMove[pmove->player_index]; +#else + canmove = gCanMove; +#endif bool success = false; if ((pmove->cmd.buttons & IN_ATTACK2) && (AvHGetIsAlien(pmove->iuser3))) { switch (pmove->iuser3) { case AVH_USER3_ALIEN_PLAYER1: - success = PM_LeapMove(); + success = canmove && PM_LeapMove(); break; case AVH_USER3_ALIEN_PLAYER3: pmove->cmd.buttons |= IN_JUMP; success = PM_FlapMove(); break; case AVH_USER3_ALIEN_PLAYER4: - success = PM_BlinkMove(); + success = canmove && PM_BlinkMove(); break; case AVH_USER3_ALIEN_PLAYER5: - success = PM_ChargeMove(); + success = canmove && PM_ChargeMove(); break; default: { @@ -5197,10 +5215,10 @@ void PM_Jump (void) qboolean cansuperjump = false; - if ((pmove->cmd.buttons & IN_JUMP) && !(pmove->oldbuttons & IN_JUMP)) - { - gCanJump[pmove->player_index] = true; - } +// if ((pmove->cmd.buttons & IN_JUMP) && !(pmove->oldbuttons & IN_JUMP)) +// { +// gCanJump[pmove->player_index] = true; +// } if (pmove->dead || GetHasUpgrade(pmove->iuser4, MASK_ENSNARED)) { @@ -5321,8 +5339,8 @@ void PM_Jump (void) // if ( pmove->oldbuttons & IN_JUMP && (pmove->velocity[0] == 0 || !theIsAlien || pmove->iuser3 == AVH_USER3_ALIEN_PLAYER3) ) //return; // don't pogo stick -// if ( pmove->oldbuttons & IN_JUMP ) - if (gCanJump[pmove->player_index] == false) + if ( pmove->oldbuttons & IN_JUMP ) +// if (gCanJump[pmove->player_index] == false) return; // don't pogo stick // In the air now. @@ -5371,7 +5389,7 @@ void PM_Jump (void) { pmove->velocity[2] = sqrt(2 * 800 * 45.0); // Flag that we jumped. - gCanJump[pmove->player_index] = false; + // gCanJump[pmove->player_index] = false; } pmove->oldbuttons |= IN_JUMP; // don't jump again until released diff --git a/dev/3.2-movements/sprites/charge_tint.spr b/dev/3.2-movements/sprites/charge_tint.spr new file mode 100644 index 0000000000000000000000000000000000000000..b03a014373328c83007f7ab92251698a01954b9e GIT binary patch literal 66366 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