switch tf

This commit is contained in:
TotallyNotElite 2018-07-30 12:32:13 +02:00
parent 5a9b482519
commit 0249521086
2 changed files with 40 additions and 18 deletions

View File

@ -968,8 +968,6 @@ bool LineIntersectsBox(Vector &bmin, Vector &bmax, Vector &lmin, Vector &lmax)
return true;
}
// TODO add bison and grapple hook
// TODO FIX this function
bool GetProjectileData(CachedEntity *weapon, float &speed, float &gravity)
{
float rspeed, rgrav;
@ -982,16 +980,20 @@ bool GetProjectileData(CachedEntity *weapon, float &speed, float &gravity)
rgrav = 0.0f;
typedef float(GetProjectileData)(IClientEntity *);
int classid = weapon->m_iClassID();
if (classid == CL_CLASS(CTFRocketLauncher_DirectHit))
switch (weapon->m_iClassID())
{
case CL_CLASS(CTFRocketLauncher_DirectHit):
{
rspeed = 1980.0f;
break;
}
else if (classid == CL_CLASS(CTFRocketLauncher))
case CL_CLASS(CTFRocketLauncher):
{
rspeed = 1100.0f;
break;
}
else if (classid == CL_CLASS(CTFGrenadeLauncher))
case CL_CLASS(CTFGrenadeLauncher):
{
IF_GAME(IsTF2())
{
@ -1003,8 +1005,9 @@ bool GetProjectileData(CachedEntity *weapon, float &speed, float &gravity)
rspeed = 1100.0f;
rgrav = 0.5f;
}
break;
}
else if (classid == CL_CLASS(CTFPipebombLauncher))
case CL_CLASS(CTFPipebombLauncher):
{
float chargebegin = *((float *) ((unsigned) RAW_ENT(LOCAL_W) + 3152));
float chargetime = g_GlobalVars->curtime - chargebegin;
@ -1012,8 +1015,9 @@ bool GetProjectileData(CachedEntity *weapon, float &speed, float &gravity)
(fminf(fmaxf(chargetime / 4.0f, 0.0f), 1.0f) * 1500.0f) + 900.0f;
rgrav =
(fminf(fmaxf(chargetime / 4.0f, 0.0f), 1.0f) * -0.70000001f) + 0.5f;
break;
}
else if (classid == CL_CLASS(CTFCompoundBow))
case CL_CLASS(CTFCompoundBow):
{
float chargetime =
g_GlobalVars->curtime - CE_FLOAT(weapon, netvar.flChargeBeginTime);
@ -1022,41 +1026,60 @@ bool GetProjectileData(CachedEntity *weapon, float &speed, float &gravity)
rgrav = (float) ((float) (fminf(fmaxf(chargetime, 0.0), 1.0) *
-0.40000001) +
0.5);
break;
}
else if (classid == CL_CLASS(CTFBat_Wood))
case CL_CLASS(CTFBat_Wood):
{
rspeed = 3000.0f;
rgrav = 0.5f;
break;
}
else if (classid == CL_CLASS(CTFFlareGun))
case CL_CLASS(CTFFlareGun):
{
rspeed = 2000.0f;
rgrav = 0.25f;
break;
}
else if (classid == CL_CLASS(CTFSyringeGun))
case CL_CLASS(CTFSyringeGun):
{
rgrav = 0.2f;
rspeed = 990.0f;
break;
}
else if (classid == CL_CLASS(CTFCrossbow))
case CL_CLASS(CTFCrossbow):
{
rgrav = 0.2f;
rspeed = 2400.0f;
break;
}
else if (classid == CL_CLASS(CTFShotgunBuildingRescue))
case CL_CLASS(CTFShotgunBuildingRescue):
{
rgrav = 0.2f;
rspeed = 2400.0f;
break;
}
else if (classid == CL_CLASS(CTFDRGPomson))
case CL_CLASS(CTFDRGPomson):
{
rspeed = 1200.0f;
break;
}
else if (classid == CL_CLASS(CTFWeaponFlameBall))
case CL_CLASS(CTFWeaponFlameBall):
{
// ??
rspeed = 2500.0f;
rspeed = 3000.0f;
break;
}
case CL_CLASS(CTFRaygun):
{
rspeed = 1200.0f;
break;
}
case CL_CLASS(CTFGrapplingHook):
{
rspeed = 1500.0f;
break;
}
}
speed = rspeed;
gravity = rgrav;
return (rspeed || rgrav);

View File

@ -70,7 +70,6 @@ void AddCenterString(const std::string &string, const rgba_t &color)
++center_strings_count;
}
// TODO globals
int draw::width = 0;
int draw::height = 0;
float draw::fov = 90.0f;