From 2526751db18950c95e53b3f41840cc964ebea28f Mon Sep 17 00:00:00 2001 From: Marco Cawthorne Date: Wed, 10 Aug 2022 16:11:28 -0700 Subject: [PATCH] Clean up some areas where float logic happens to prepare for the compiler flag 'assumeint' --- base/src/client/progs.src | 3 ++- base/src/menu/progs.src | 1 + base/src/server/progs.src | 3 ++- base/src/shared/player.qc | 35 ++++++--------------------- src/botlib/route.qc | 4 +-- src/client/NSInteractiveSurface.qc | 4 +-- src/client/NSView.qc | 6 ++--- src/client/entry.qc | 8 +++--- src/gs-entbase/client/defs.h | 2 +- src/gs-entbase/shared/func_monitor.qc | 4 +-- src/menu-fn/progs.src | 1 + src/menu-fn/w_3dview.qc | 2 +- src/menu-vgui/progs.src | 3 ++- src/plugins/banner.src | 3 ++- src/plugins/chatfilter.src | 3 ++- src/plugins/chatsounds.src | 3 ++- src/plugins/connectsounds.src | 3 ++- src/plugins/ircbridge.src | 3 ++- src/plugins/voxannouncer.src | 3 ++- src/shared/NSEntity.qc | 4 +-- src/shared/NSIO.qc | 4 +-- src/shared/NSMonster.qc | 6 ++--- src/shared/NSSurfacePropEntity.qc | 4 +-- src/shared/NSTalkMonster.qc | 6 ++--- src/shared/defs.h | 10 ++++---- src/shared/math.qc | 2 +- src/vgui/ui_tabview.qc | 2 +- 27 files changed, 61 insertions(+), 71 deletions(-) diff --git a/base/src/client/progs.src b/base/src/client/progs.src index a6b92e41..34cd4e72 100644 --- a/base/src/client/progs.src +++ b/base/src/client/progs.src @@ -1,4 +1,5 @@ -#pragma target fte +#pragma target fte_5768 +//#pragma flag enable assumeint #pragma progs_dat "../../csprogs.dat" #define CSQC diff --git a/base/src/menu/progs.src b/base/src/menu/progs.src index 5022c0f0..953b5b87 100644 --- a/base/src/menu/progs.src +++ b/base/src/menu/progs.src @@ -1,4 +1,5 @@ #pragma target fte_5768 +//#pragma flag enable assumeint #pragma progs_dat "../../menu.dat" #define MENU #define GAME_DIR "base" diff --git a/base/src/server/progs.src b/base/src/server/progs.src index 249c1f94..4d7f4662 100644 --- a/base/src/server/progs.src +++ b/base/src/server/progs.src @@ -1,4 +1,5 @@ -#pragma target fte +#pragma target fte_5768 +//#pragma flag enable assumeint #pragma progs_dat "../../progs.dat" #define QWSSQC diff --git a/base/src/shared/player.qc b/base/src/shared/player.qc index 22998eb0..6593e083 100644 --- a/base/src/shared/player.qc +++ b/base/src/shared/player.qc @@ -17,29 +17,14 @@ /* all potential SendFlags bits we can possibly send */ enumflags { - PLAYER_KEEPALIVE, - PLAYER_MODELINDEX, - PLAYER_ORIGIN, - PLAYER_ORIGIN_Z, - PLAYER_ANGLES_X, - PLAYER_ANGLES_Y, - PLAYER_COLORMAP, - PLAYER_VELOCITY, - PLAYER_VELOCITY_Z, - PLAYER_FLAGS, - PLAYER_WEAPON, - PLAYER_ITEMS, - PLAYER_HEALTH, - PLAYER_ARMOR, - PLAYER_MOVETYPE, - PLAYER_VIEWOFS, - PLAYER_UNUSED1, - PLAYER_UNUSED2, - PLAYER_UNUSED3, - PLAYER_UNUSED4, + PLAYER_AMMO1 = PLAYER_CUSTOMFIELDSTART, + PLAYER_AMMO2, + PLAYER_AMMO3, PLAYER_UNUSED5, PLAYER_UNUSED6, - PLAYER_UNUSED7 + PLAYER_UNUSED7, + PLAYER_UNUSED7, + PLAYER_UNUSED8 }; class player:NSClientPlayer @@ -120,13 +105,7 @@ player::SendEntity(entity ePEnt, float fChanged) if (!GetModelindex() && ePEnt != this) return (0); - /* other players don't need to know about these attributes */ - if (ePEnt != self) { - fChanged &= ~PLAYER_ITEMS; - fChanged &= ~PLAYER_HEALTH; - fChanged &= ~PLAYER_ARMOR; - fChanged &= ~PLAYER_VIEWOFS; - } + fChanged = OptimiseChangedFlags(ePEnt, fChanged); WriteByte(MSG_ENTITY, ENT_PLAYER); WriteFloat(MSG_ENTITY, fChanged); diff --git a/src/botlib/route.qc b/src/botlib/route.qc index 392c006d..d0b5ab30 100644 --- a/src/botlib/route.qc +++ b/src/botlib/route.qc @@ -24,7 +24,7 @@ int Route_RoundDistance(float flDist) { - float r = fabs(flDist) % 2; + float r = fabs(flDist) % 2.0f; if (r == 0) return (flDist); @@ -32,7 +32,7 @@ Route_RoundDistance(float flDist) if (flDist < 0) return -(fabs(flDist) - r); else - return (flDist + 2 - r); + return (flDist + 2.0f - r); } diff --git a/src/client/NSInteractiveSurface.qc b/src/client/NSInteractiveSurface.qc index 8ea3bef9..aa0b2eb3 100644 --- a/src/client/NSInteractiveSurface.qc +++ b/src/client/NSInteractiveSurface.qc @@ -180,9 +180,9 @@ NSInteractiveSurface::RenderScene(void) clearscene(); - setviewprop(VF_RT_DESTCOLOUR, m_strSurfaceMat, 1, m_vecUIRes); + setviewprop(VF_RT_DESTCOLOUR, m_strSurfaceMat, (float)1, m_vecUIRes); setviewprop(VF_SIZE, m_vecUIRes); - setviewprop(VF_DRAWENGINESBAR, 0); + setviewprop(VF_DRAWENGINESBAR, (float)0); setviewprop(VF_ORIGIN, [0,0,0]); setviewprop(VF_ANGLES, [0,0,0]); setviewprop(VF_AFOV, 90.0f); diff --git a/src/client/NSView.qc b/src/client/NSView.qc index 73885949..4baad343 100644 --- a/src/client/NSView.qc +++ b/src/client/NSView.qc @@ -17,9 +17,9 @@ void NSView::SetupView(void) { - setproperty(VF_DRAWENGINESBAR, 0); - setproperty(VF_DRAWCROSSHAIR, 0); - setproperty(VF_DRAWWORLD, 1); + setproperty(VF_DRAWENGINESBAR, (float)0); + setproperty(VF_DRAWCROSSHAIR, (float)0); + setproperty(VF_DRAWWORLD, (float)1); setproperty(VF_ACTIVESEAT, (float)m_iSeat); setproperty(VF_MIN, m_vecPosition); setproperty(VF_SIZE, m_vecSize); diff --git a/src/client/entry.qc b/src/client/entry.qc index c36c9a23..6d8fd8ca 100644 --- a/src/client/entry.qc +++ b/src/client/entry.qc @@ -245,16 +245,16 @@ CSQC_UpdateView(float w, float h, float focus) /* this is running whenever we're doing 'buildcubemaps' */ if (g_iCubeProcess == TRUE) { - setproperty(VF_DRAWENGINESBAR, 0); - setproperty(VF_DRAWCROSSHAIR, 0); - setproperty(VF_DRAWWORLD, 1); + setproperty(VF_DRAWENGINESBAR, (float)0); + setproperty(VF_DRAWCROSSHAIR, (float)0); + setproperty(VF_DRAWWORLD, (float)1); setproperty(VF_MIN, [0,0]); setproperty(VF_VIEWENTITY, player_localentnum); setproperty(VF_ORIGIN, g_vecCubePos); setproperty(VF_ANGLES, [0,0,0]); setproperty(VF_SIZE_X, g_dCubeSize); setproperty(VF_SIZE_Y, g_dCubeSize); - setproperty(VF_AFOV, 90); + setproperty(VF_AFOV, 90.0f); CSQC_RenderScene(); } else { /* now render each player seat */ diff --git a/src/gs-entbase/client/defs.h b/src/gs-entbase/client/defs.h index 93217e64..9854fd5e 100644 --- a/src/gs-entbase/client/defs.h +++ b/src/gs-entbase/client/defs.h @@ -17,7 +17,7 @@ vector g_vecSunDir; /* TODO: Find a better way to figure out what's a NSEntity at heart */ -.float isCSQC; +.bool isCSQC; /* things we don't have in CSQC normally and oughta be global */ .string target; diff --git a/src/gs-entbase/shared/func_monitor.qc b/src/gs-entbase/shared/func_monitor.qc index 3ce5a113..72f509f5 100644 --- a/src/gs-entbase/shared/func_monitor.qc +++ b/src/gs-entbase/shared/func_monitor.qc @@ -45,9 +45,9 @@ RenderTarget_Monitor_Update(void) } clearscene(); - setviewprop(VF_RT_DESTCOLOUR, "base", 1, g_iRenderTargetSize); + setviewprop(VF_RT_DESTCOLOUR, "base", (float)1, g_iRenderTargetSize); setviewprop(VF_SIZE, g_iRenderTargetSize); - setviewprop(VF_DRAWENGINESBAR, 0); + setviewprop(VF_DRAWENGINESBAR, (float)0); setviewprop(VF_ORIGIN, g_vecRenderTargetPos); setviewprop(VF_ANGLES, g_vecRenderTargetAngles); setviewprop(VF_AFOV, g_flRenderTargetFOV); diff --git a/src/menu-fn/progs.src b/src/menu-fn/progs.src index 6479e740..0b66c3a2 100644 --- a/src/menu-fn/progs.src +++ b/src/menu-fn/progs.src @@ -1,4 +1,5 @@ #pragma target fte_5768 +//#pragma flag enable assumeint #pragma progs_dat "../../platform/menu.dat" #define MENU diff --git a/src/menu-fn/w_3dview.qc b/src/menu-fn/w_3dview.qc index 25cf0469..11f8d060 100644 --- a/src/menu-fn/w_3dview.qc +++ b/src/menu-fn/w_3dview.qc @@ -111,7 +111,7 @@ CUI3DView::Draw(void) clearscene(); setproperty(VF_VIEWPORT, [m_x + g_menuofs[0],m_y + g_menuofs[1]], m_vecSize); - setproperty(VF_AFOV, 90); + setproperty(VF_AFOV, 90.0f); setproperty(VF_ORIGIN, m_vec3DPos); setproperty(VF_ANGLES, m_vec3DAngles); diff --git a/src/menu-vgui/progs.src b/src/menu-vgui/progs.src index d3e64c37..0b66c3a2 100644 --- a/src/menu-vgui/progs.src +++ b/src/menu-vgui/progs.src @@ -1,4 +1,5 @@ -#pragma target fte +#pragma target fte_5768 +//#pragma flag enable assumeint #pragma progs_dat "../../platform/menu.dat" #define MENU diff --git a/src/plugins/banner.src b/src/plugins/banner.src index a150fa6d..a7211a5f 100755 --- a/src/plugins/banner.src +++ b/src/plugins/banner.src @@ -1,4 +1,5 @@ -#pragma target fte +#pragma target fte_5768 +//#pragma flag enable assumeint #pragma PROGS_DAT "../../platform/plugins/banner.dat" #define QWSSQC diff --git a/src/plugins/chatfilter.src b/src/plugins/chatfilter.src index 9ca94a99..f732b5b4 100755 --- a/src/plugins/chatfilter.src +++ b/src/plugins/chatfilter.src @@ -1,4 +1,5 @@ -#pragma target fte +#pragma target fte_5768 +//#pragma flag enable assumeint #pragma PROGS_DAT "../../platform/plugins/chatfilter.dat" #define QWSSQC diff --git a/src/plugins/chatsounds.src b/src/plugins/chatsounds.src index 36288859..f8469f5d 100644 --- a/src/plugins/chatsounds.src +++ b/src/plugins/chatsounds.src @@ -1,4 +1,5 @@ -#pragma target fte +#pragma target fte_5768 +//#pragma flag enable assumeint #pragma PROGS_DAT "../../platform/plugins/chatsounds.dat" #define QWSSQC diff --git a/src/plugins/connectsounds.src b/src/plugins/connectsounds.src index 91a0f337..7c54b35a 100755 --- a/src/plugins/connectsounds.src +++ b/src/plugins/connectsounds.src @@ -1,4 +1,5 @@ -#pragma target fte +#pragma target fte_5768 +//#pragma flag enable assumeint #pragma PROGS_DAT "../../platform/plugins/connectsounds.dat" #define QWSSQC diff --git a/src/plugins/ircbridge.src b/src/plugins/ircbridge.src index d930c905..6156540b 100755 --- a/src/plugins/ircbridge.src +++ b/src/plugins/ircbridge.src @@ -1,4 +1,5 @@ -#pragma target fte +#pragma target fte_5768 +//#pragma flag enable assumeint #pragma PROGS_DAT "../../platform/plugins/ircbridge.dat" #define QWSSQC diff --git a/src/plugins/voxannouncer.src b/src/plugins/voxannouncer.src index 71f67e26..f1e348a4 100755 --- a/src/plugins/voxannouncer.src +++ b/src/plugins/voxannouncer.src @@ -1,4 +1,5 @@ -#pragma target fte +#pragma target fte_5768 +//#pragma flag enable assumeint #pragma PROGS_DAT "../../platform/plugins/voxannouncer.dat" #define QWSSQC diff --git a/src/shared/NSEntity.qc b/src/shared/NSEntity.qc index c746e59c..4174988f 100644 --- a/src/shared/NSEntity.qc +++ b/src/shared/NSEntity.qc @@ -302,7 +302,7 @@ NSEntity::ReceiveEntity(float flNew, float flChanged) READENTITY_COORD(maxs[1], BASEFL_CHANGED_SIZE) READENTITY_COORD(maxs[2], BASEFL_CHANGED_SIZE) READENTITY_BYTE(frame, BASEFL_CHANGED_FRAME) - READENTITY_BYTE(skin, BASEFL_CHANGED_SKIN) + READENTITY_FLOAT(skin, BASEFL_CHANGED_SKIN) READENTITY_FLOAT(effects, BASEFL_CHANGED_EFFECTS) READENTITY_FLOAT(scale, BASEFL_CHANGED_SCALE) READENTITY_COORD(velocity[0], BASEFL_CHANGED_VELOCITY_X) @@ -382,7 +382,7 @@ NSEntity::SendEntity(entity ePEnt, float flChanged) SENDENTITY_COORD(maxs[1], BASEFL_CHANGED_SIZE) SENDENTITY_COORD(maxs[2], BASEFL_CHANGED_SIZE) SENDENTITY_BYTE(frame, BASEFL_CHANGED_FRAME) - SENDENTITY_BYTE(skin, BASEFL_CHANGED_SKIN) + SENDENTITY_FLOAT(skin, BASEFL_CHANGED_SKIN) SENDENTITY_FLOAT(effects, BASEFL_CHANGED_EFFECTS) SENDENTITY_FLOAT(scale, BASEFL_CHANGED_SCALE) SENDENTITY_COORD(velocity[0], BASEFL_CHANGED_VELOCITY_X) diff --git a/src/shared/NSIO.qc b/src/shared/NSIO.qc index fa473a61..70b9a16b 100644 --- a/src/shared/NSIO.qc +++ b/src/shared/NSIO.qc @@ -199,7 +199,7 @@ void NSIO::SaveBool(float handle, string key, bool value) { //if (value) - fputs(handle, sprintf("%S \"%f\"\n", key, value)); + fputs(handle, sprintf("%S \"%d\"\n", key, value)); } void NSIO::SaveFloat(float handle, string key, float value) @@ -234,7 +234,7 @@ NSIO::SaveEntity(float handle, string key, entity targ) fputs(handle, sprintf("%S \"%f\"\n", key, value)); } -float +bool NSIO::ReadBool(string strValue) { if (strValue && strValue != "") diff --git a/src/shared/NSMonster.qc b/src/shared/NSMonster.qc index 8d7aea67..f05d206c 100644 --- a/src/shared/NSMonster.qc +++ b/src/shared/NSMonster.qc @@ -940,7 +940,7 @@ NSMonster::SendEntity(entity ePEnt, float flChanged) SENDENTITY_COORD(maxs[1], MONFL_CHANGED_SIZE) SENDENTITY_COORD(maxs[2], MONFL_CHANGED_SIZE) SENDENTITY_BYTE(frame, MONFL_CHANGED_FRAME) - SENDENTITY_BYTE(skin, MONFL_CHANGED_SKIN) + SENDENTITY_FLOAT(skin, MONFL_CHANGED_SKIN) SENDENTITY_FLOAT(effects, MONFL_CHANGED_EFFECTS) SENDENTITY_BYTE(m_iBody, MONFL_CHANGED_BODY) SENDENTITY_FLOAT(scale, MONFL_CHANGED_SCALE) @@ -1012,7 +1012,7 @@ NSMonster::ReceiveEntity(float flNew, float flChanged) READENTITY_COORD(maxs[1], MONFL_CHANGED_SIZE) READENTITY_COORD(maxs[2], MONFL_CHANGED_SIZE) READENTITY_BYTE(frame, MONFL_CHANGED_FRAME) - READENTITY_BYTE(skin, MONFL_CHANGED_SKIN) + READENTITY_FLOAT(skin, MONFL_CHANGED_SKIN) READENTITY_FLOAT(effects, MONFL_CHANGED_EFFECTS) READENTITY_BYTE(m_iBody, MONFL_CHANGED_BODY) READENTITY_FLOAT(scale, MONFL_CHANGED_SCALE) @@ -1042,7 +1042,7 @@ NSMonster::ReceiveEntity(float flNew, float flChanged) #ifdef CLIENT void -NSMonster_ReadEntity(float new) +NSMonster_ReadEntity(bool new) { NSMonster me = (NSMonster)self; if (new) { diff --git a/src/shared/NSSurfacePropEntity.qc b/src/shared/NSSurfacePropEntity.qc index 0aebb7f9..1f29fc10 100644 --- a/src/shared/NSSurfacePropEntity.qc +++ b/src/shared/NSSurfacePropEntity.qc @@ -264,7 +264,7 @@ NSSurfacePropEntity::SendEntity(entity ePEnt, float flChanged) SENDENTITY_COORD(maxs[1], SRFENT_CHANGED_SIZE) SENDENTITY_COORD(maxs[2], SRFENT_CHANGED_SIZE) SENDENTITY_BYTE(frame, SRFENT_CHANGED_FRAME) - SENDENTITY_BYTE(skin, SRFENT_CHANGED_SKIN) + SENDENTITY_FLOAT(skin, SRFENT_CHANGED_SKIN) SENDENTITY_FLOAT(effects, SRFENT_CHANGED_EFFECTS) SENDENTITY_BYTE(m_iBody, SRFENT_CHANGED_BODY) SENDENTITY_FLOAT(scale, SRFENT_CHANGED_SCALE) @@ -313,7 +313,7 @@ NSSurfacePropEntity::ReceiveEntity(float flNew, float flChanged) READENTITY_COORD(maxs[1], SRFENT_CHANGED_SIZE) READENTITY_COORD(maxs[2], SRFENT_CHANGED_SIZE) READENTITY_BYTE(frame, SRFENT_CHANGED_FRAME) - READENTITY_BYTE(skin, SRFENT_CHANGED_SKIN) + READENTITY_FLOAT(skin, SRFENT_CHANGED_SKIN) READENTITY_FLOAT(effects, SRFENT_CHANGED_EFFECTS) READENTITY_BYTE(m_iBody, SRFENT_CHANGED_BODY) READENTITY_FLOAT(scale, SRFENT_CHANGED_SCALE) diff --git a/src/shared/NSTalkMonster.qc b/src/shared/NSTalkMonster.qc index 29c04848..e16faaeb 100644 --- a/src/shared/NSTalkMonster.qc +++ b/src/shared/NSTalkMonster.qc @@ -671,7 +671,7 @@ NSTalkMonster::SendEntity(entity ePEnt, float flChanged) SENDENTITY_COORD(maxs[1], MONFL_CHANGED_SIZE) SENDENTITY_COORD(maxs[2], MONFL_CHANGED_SIZE) SENDENTITY_BYTE(frame, MONFL_CHANGED_FRAME) - SENDENTITY_BYTE(skin, MONFL_CHANGED_SKIN) + SENDENTITY_FLOAT(skin, MONFL_CHANGED_SKIN) SENDENTITY_FLOAT(effects, MONFL_CHANGED_EFFECTS) SENDENTITY_BYTE(m_iBody, MONFL_CHANGED_BODY) SENDENTITY_FLOAT(scale, MONFL_CHANGED_SCALE) @@ -831,7 +831,7 @@ NSTalkMonster::ReceiveEntity(float flNew, float flChanged) READENTITY_COORD(maxs[1], MONFL_CHANGED_SIZE) READENTITY_COORD(maxs[2], MONFL_CHANGED_SIZE) READENTITY_BYTE(frame, MONFL_CHANGED_FRAME) - READENTITY_BYTE(skin, MONFL_CHANGED_SKIN) + READENTITY_FLOAT(skin, MONFL_CHANGED_SKIN) READENTITY_FLOAT(effects, MONFL_CHANGED_EFFECTS) READENTITY_BYTE(m_iBody, MONFL_CHANGED_BODY) READENTITY_FLOAT(scale, MONFL_CHANGED_SCALE) @@ -888,7 +888,7 @@ NSTalkMonster_ParseSentence(void) #ifdef CLIENT void -NSTalkMonster_ReadEntity(float new) +NSTalkMonster_ReadEntity(bool new) { NSTalkMonster me = (NSTalkMonster)self; if (new) { diff --git a/src/shared/defs.h b/src/shared/defs.h index 4b60435b..a58fbba1 100644 --- a/src/shared/defs.h +++ b/src/shared/defs.h @@ -188,11 +188,11 @@ noref float input_sequence; float pseudorandom() { - float seed = (float)input_sequence % 5; - seed += (float)input_sequence % 8; - seed += (float)input_sequence % 4; - seed += (float)input_sequence % 13; - seed += (float)input_sequence % 70; + float seed = (float)input_sequence % 5.0f; + seed += (float)input_sequence % 8.0f; + seed += (float)input_sequence % 4.0f; + seed += (float)input_sequence % 13.0f; + seed += (float)input_sequence % 70.0f; /* like the engine its random(), never return 0, never return 1 */ return bound(0.01, (seed) / 100.0f, 0.99f); diff --git a/src/shared/math.qc b/src/shared/math.qc index cc5ae53f..c85f6031 100644 --- a/src/shared/math.qc +++ b/src/shared/math.qc @@ -18,7 +18,7 @@ float Math_LerpAngle(float fStart, float fEnd, float fAmount) { - float shortest_angle = ((((fEnd - fStart) % 360) + 540) % 360) - 180; + float shortest_angle = ((((fEnd - fStart) % 360.0f) + 540.0f) % 360.0f) - 180.0f; return shortest_angle * fAmount; } diff --git a/src/vgui/ui_tabview.qc b/src/vgui/ui_tabview.qc index 88b2f856..bb61c8d0 100644 --- a/src/vgui/ui_tabview.qc +++ b/src/vgui/ui_tabview.qc @@ -28,7 +28,7 @@ class CUITabView:CUIWidget virtual void(vector) SetSize; virtual vector() GetSize; virtual void(string) SetTitle; - virtual float(float, float, float, float) Input; + virtual bool(float, float, float, float) Input; }; void CUITabView::CUITabView(void)