Skip to content

Commit df0c60a

Browse files
committed
namespace sv, cl, ui #64
1 parent 9b4ef2b commit df0c60a

File tree

461 files changed

+8240
-6105
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

461 files changed

+8240
-6105
lines changed

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,8 @@ set(XASH_BUILD_COMMIT "${CMAKE_BUILD_POSTFIX}")
6464
set(SDL_SHARED true)
6565
set(XASH_LIBDL true)
6666

67-
ADD_SUBDIRECTORY(dlls)
6867
ADD_SUBDIRECTORY(cl_dll)
68+
ADD_SUBDIRECTORY(dlls)
6969
ADD_SUBDIRECTORY(mainui_cpp)
7070
ADD_SUBDIRECTORY(engine)
7171
ADD_SUBDIRECTORY(game_launch)

cl_dll/CMakeLists.txt

Lines changed: 75 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ set (CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} ")
4040

4141
#find_package(SDL2 REQUIRED)
4242

43-
set (CLDLL_LIBRARY client)
43+
set (CLIENT_LIBRARY client)
4444

4545
#--------------
4646
# USER DEFINES \
@@ -60,15 +60,71 @@ file (GLOB WEAPONEVENT_SRCS
6060
./events/event_*.cpp
6161
)
6262

63-
file (GLOB CLWEAPON_SRCS
63+
set (CLWEAPON_SRCS
6464
./com_weapons.cpp
6565
./cs_wpn/cs_baseentity.cpp
6666
./cs_wpn/cs_weapons.cpp
6767
./cs_wpn/bte_weapons.cpp
68-
../dlls/wpn_shared/wpn_*.cpp
69-
../dlls/wpn_shared/knife_*.cpp
7068
)
7169

70+
set (HLWPN_SRCS
71+
../dlls/wpn_shared/wpn_ak47.cpp
72+
../dlls/wpn_shared/wpn_aug.cpp
73+
../dlls/wpn_shared/wpn_awp.cpp
74+
../dlls/wpn_shared/wpn_c4.cpp
75+
../dlls/wpn_shared/wpn_deagle.cpp
76+
../dlls/wpn_shared/wpn_elite.cpp
77+
../dlls/wpn_shared/wpn_famas.cpp
78+
../dlls/wpn_shared/wpn_fiveseven.cpp
79+
../dlls/wpn_shared/wpn_flashbang.cpp
80+
../dlls/wpn_shared/wpn_g3sg1.cpp
81+
../dlls/wpn_shared/wpn_galil.cpp
82+
../dlls/wpn_shared/wpn_glock18.cpp
83+
../dlls/wpn_shared/wpn_hegrenade.cpp
84+
../dlls/wpn_shared/wpn_knife.cpp
85+
../dlls/wpn_shared/wpn_m249.cpp
86+
../dlls/wpn_shared/wpn_m3.cpp
87+
../dlls/wpn_shared/wpn_m4a1.cpp
88+
../dlls/wpn_shared/wpn_mac10.cpp
89+
../dlls/wpn_shared/wpn_mp5navy.cpp
90+
../dlls/wpn_shared/wpn_p228.cpp
91+
../dlls/wpn_shared/wpn_p90.cpp
92+
../dlls/wpn_shared/wpn_scout.cpp
93+
../dlls/wpn_shared/wpn_sg550.cpp
94+
../dlls/wpn_shared/wpn_sg552.cpp
95+
../dlls/wpn_shared/wpn_smokegrenade.cpp
96+
../dlls/wpn_shared/wpn_tmp.cpp
97+
../dlls/wpn_shared/wpn_ump45.cpp
98+
../dlls/wpn_shared/wpn_usp.cpp
99+
../dlls/wpn_shared/wpn_xm1014.cpp
100+
../dlls/wpn_shared/knife_zombi.cpp
101+
../dlls/wpn_shared/wpn_ak47l.cpp
102+
../dlls/wpn_shared/wpn_mp7a1d.cpp
103+
../dlls/wpn_shared/wpn_deagled.cpp
104+
../dlls/wpn_shared/wpn_as50.cpp
105+
../dlls/wpn_shared/wpn_cannon.cpp
106+
../dlls/wpn_shared/wpn_infinity.cpp
107+
../dlls/wpn_shared/wpn_k1a.cpp
108+
../dlls/wpn_shared/wpn_kriss.cpp
109+
../dlls/wpn_shared/wpn_m95.cpp
110+
../dlls/wpn_shared/wpn_m1887.cpp
111+
../dlls/wpn_shared/wpn_scarh.cpp
112+
../dlls/wpn_shared/wpn_scarl.cpp
113+
../dlls/wpn_shared/wpn_tar21.cpp
114+
../dlls/wpn_shared/wpn_thompson.cpp
115+
../dlls/wpn_shared/wpn_wa2000.cpp
116+
../dlls/wpn_shared/wpn_xm8c.cpp
117+
../dlls/wpn_shared/wpn_xm8s.cpp
118+
../dlls/wpn_shared/knife_skullaxe.cpp
119+
../dlls/wpn_shared/wpn_gungnir.cpp
120+
../dlls/wpn_shared/wpn_mg3.cpp
121+
../dlls/wpn_shared/wpn_mp7a1c.cpp
122+
../dlls/wpn_shared/wpn_mp7a1p.cpp
123+
../dlls/wpn_shared/wpn_infinitys.cpp
124+
../dlls/wpn_shared/wpn_m14ebr.cpp
125+
../dlls/wpn_shared/wpn_infinityex2.cpp
126+
)
127+
72128
set (HUD_SRCS
73129
./hud/ammo.cpp
74130
./hud/ammo_secondary.cpp
@@ -127,10 +183,10 @@ set (STUDIORENDER_SRCS
127183

128184
)
129185

130-
set (PLAYERMOVE_SRCS
131-
../pm_shared/pm_debug.c
132-
../pm_shared/pm_math.c
133-
../pm_shared/pm_shared.c
186+
set(PM_SRCS
187+
../pm_shared/pm_shared.cpp
188+
../pm_shared/pm_debug.cpp
189+
../pm_shared/pm_math.cpp
134190
)
135191

136192
set (CLDLL_SOURCES
@@ -151,10 +207,11 @@ set (CLDLL_SOURCES
151207
./calcscreen.cpp
152208
./input_touch.cpp
153209

154-
${PLAYERMOVE_SRCS}
210+
${PM_SRCS}
155211
${HUD_SRCS}
156212
${WEAPONEVENT_SRCS}
157213
${CLWEAPON_SRCS}
214+
${HLWPN_SRCS}
158215
${STUDIORENDER_SRCS}
159216
)
160217

@@ -172,9 +229,9 @@ include_directories (
172229
)
173230

174231
if(XASH_STATIC_GAMELIB)
175-
add_library (${CLDLL_LIBRARY} STATIC ${CLDLL_SOURCES})
232+
add_library (${CLIENT_LIBRARY} STATIC ${CLDLL_SOURCES})
176233
else()
177-
add_library (${CLDLL_LIBRARY} SHARED ${CLDLL_SOURCES})
234+
add_library (${CLIENT_LIBRARY} SHARED ${CLDLL_SOURCES})
178235
endif()
179236

180237
if(APPLE OR ANDROID)
@@ -209,25 +266,25 @@ add_definitions( -D_CS16CLIENT_ENABLE_GSRC_SUPPORT
209266
-D_CS16CLIENT_ALLOW_SPECIAL_SCRIPTING
210267
)
211268

212-
target_link_libraries( ${CLDLL_LIBRARY} ${CMAKE_DL_LIBS} )
269+
target_link_libraries( ${CLIENT_LIBRARY} ${CMAKE_DL_LIBS} )
213270

214271
if(ANDROID OR IOS)
215-
set_target_properties(${CLDLL_LIBRARY} PROPERTIES
272+
set_target_properties(${CLIENT_LIBRARY} PROPERTIES
216273
OUTPUT_NAME ${CLIENT_LIBRARY_NAME})
217274
else()
218-
set_target_properties(${CLDLL_LIBRARY} PROPERTIES
275+
set_target_properties(${CLIENT_LIBRARY} PROPERTIES
219276
PREFIX "" OUTPUT_NAME ${CLIENT_LIBRARY_NAME})
220277
endif()
221278

222279
if(XASH_64BIT AND NOT ANDROID AND NOT IOS)
223-
get_target_property(CLIENT_LIBRARY_NAME ${CLDLL_LIBRARY} OUTPUT_NAME)
280+
get_target_property(CLIENT_LIBRARY_NAME ${CLIENT_LIBRARY} OUTPUT_NAME)
224281
if(NOT CLIENT_LIBRARY_NAME)
225-
set(CLIENT_LIBRARY_NAME ${CLDLL_LIBRARY})
282+
set(CLIENT_LIBRARY_NAME ${CLIENT_LIBRARY})
226283
endif()
227-
set_target_properties(${CLDLL_LIBRARY} PROPERTIES
284+
set_target_properties(${CLIENT_LIBRARY} PROPERTIES
228285
OUTPUT_NAME ${CLIENT_LIBRARY_NAME}64)
229286
endif()
230287

231288
if(NOT XASH_STATIC_GAMELIB)
232-
install( TARGETS ${CLDLL_LIBRARY} DESTINATION ${CMAKE_INSTALL_PREFIX}/${GAMEDIR}/${CLIENT_INSTALL_DIR} )
289+
install( TARGETS ${CLIENT_LIBRARY} DESTINATION ${CMAKE_INSTALL_PREFIX}/${GAMEDIR}/${CLIENT_INSTALL_DIR} )
233290
endif()

cl_dll/cdll_int.cpp

Lines changed: 112 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,16 @@
3333
#include "ref_params.h"
3434
#include "cl_entity.h"
3535
#include "cdll_exp.h"
36+
#include "events.h"
3637

3738
extern "C"
3839
{
3940
#include "pmtrace.h"
4041
#include "pm_shared.h"
4142
}
4243

44+
using namespace cl;
45+
4346
cl_enginefunc_t gEngfuncs = { };
4447
render_api_t gRenderAPI = { };
4548
mobile_engfuncs_t gMobileAPI = { };
@@ -48,7 +51,6 @@ int g_iXash = 0; // indicates a buildnum
4851
int g_iMobileAPIVersion = 0;
4952

5053
void InitInput (void);
51-
void Game_HookEvents( void );
5254
void IN_Commands( void );
5355
void Input_Shutdown (void);
5456

@@ -386,6 +388,7 @@ For GoldSrc CS1.6 with VGUI2 to export client funcs.
386388
No need for Xash3D.
387389
========================
388390
*/
391+
#ifndef XASH_STATIC_GAMELIB
389392
extern "C" void DLLEXPORT F(void *pv) {
390393
cldll_func_t *pcldll_func = reinterpret_cast<cldll_func_t *>(pv);
391394

@@ -443,7 +446,71 @@ extern "C" void DLLEXPORT F(void *pv) {
443446
*pcldll_func = cldll_func;
444447
}
445448

446-
#ifdef XASH_STATIC_GAMELIB
449+
#else
450+
451+
void DLLEXPORT IN_MouseEvent_CL( int mstate );
452+
void DLLEXPORT IN_ActivateMouse_CL( void );
453+
void DLLEXPORT IN_DeactivateMouse_CL( void );
454+
void DLLEXPORT V_CalcRefdef_CL( struct ref_params_s *pparams );
455+
int DLLEXPORT CL_IsThirdPerson_CL( void );
456+
457+
extern "C" void DLLEXPORT F(void *pv) {
458+
cldll_func_t *pcldll_func = reinterpret_cast<cldll_func_t *>(pv);
459+
460+
static cldll_func_t cldll_func = {
461+
Initialize,
462+
HUD_Init,
463+
HUD_VidInit,
464+
HUD_Redraw,
465+
HUD_UpdateClientData,
466+
HUD_Reset,
467+
HUD_PlayerMove,
468+
HUD_PlayerMoveInit,
469+
HUD_PlayerMoveTexture,
470+
IN_ActivateMouse_CL,
471+
IN_DeactivateMouse_CL,
472+
IN_MouseEvent_CL,
473+
IN_ClearStates,
474+
IN_Accumulate,
475+
CL_CreateMove,
476+
CL_IsThirdPerson_CL,
477+
CL_CameraOffset,
478+
KB_Find,
479+
CAM_Think,
480+
V_CalcRefdef_CL,
481+
HUD_AddEntity,
482+
HUD_CreateEntities,
483+
HUD_DrawNormalTriangles,
484+
HUD_DrawTransparentTriangles,
485+
HUD_StudioEvent,
486+
HUD_PostRunCmd,
487+
HUD_Shutdown,
488+
HUD_TxferLocalOverrides,
489+
HUD_ProcessPlayerState,
490+
HUD_TxferPredictionData,
491+
Demo_ReadBuffer,
492+
HUD_ConnectionlessPacket,
493+
HUD_GetHullBounds,
494+
HUD_Frame,
495+
HUD_Key_Event,
496+
HUD_TempEntUpdate,
497+
HUD_GetUserEntity,
498+
HUD_VoiceStatus,
499+
HUD_DirectorMessage,
500+
HUD_GetStudioModelInterface,
501+
nullptr, // HUD_ChatInputPosition,
502+
nullptr, // HUD_GetPlayerTeam
503+
ClientFactory, // pfnGetClientFactory
504+
HUD_GetRenderInterface, // Xash3D pfnGetRenderInterface
505+
nullptr, // Xash3D pfnClipMoveToEntity
506+
IN_ClientTouchEvent, // SDL Xash pfnTouchEvent
507+
nullptr, // SDL Xash pfnMoveEvent
508+
nullptr // SDL Xash pfnLookEvent
509+
};
510+
511+
*pcldll_func = cldll_func;
512+
}
513+
447514
typedef struct dllexport_s
448515
{
449516
const char *name;
@@ -452,7 +519,49 @@ typedef struct dllexport_s
452519

453520
static dllexport_t switch_client_exports[] = {
454521
{ "F", (void*)F },
455-
{ NULL, NULL }
522+
{ "Initialize", (void*)Initialize },
523+
{ "HUD_VidInit", (void*)HUD_VidInit },
524+
{ "HUD_Init", (void*)HUD_Init },
525+
{ "HUD_Shutdown", (void*)HUD_Shutdown },
526+
{ "HUD_Redraw", (void*)HUD_Redraw },
527+
{ "HUD_UpdateClientData", (void*)HUD_UpdateClientData },
528+
{ "HUD_Reset", (void*)HUD_Reset },
529+
{ "HUD_PlayerMove", (void*)HUD_PlayerMove },
530+
{ "HUD_PlayerMoveInit", (void*)HUD_PlayerMoveInit },
531+
{ "HUD_PlayerMoveTexture", (void*)HUD_PlayerMoveTexture },
532+
{ "HUD_ConnectionlessPacket", (void*)HUD_ConnectionlessPacket },
533+
{ "HUD_GetHullBounds", (void*)HUD_GetHullBounds },
534+
{ "HUD_Frame", (void*)HUD_Frame },
535+
{ "HUD_PostRunCmd", (void*)HUD_PostRunCmd },
536+
{ "HUD_Key_Event", (void*)HUD_Key_Event },
537+
{ "HUD_AddEntity", (void*)HUD_AddEntity },
538+
{ "HUD_CreateEntities", (void*)HUD_CreateEntities },
539+
{ "HUD_StudioEvent", (void*)HUD_StudioEvent },
540+
{ "HUD_TxferLocalOverrides", (void*)HUD_TxferLocalOverrides },
541+
{ "HUD_ProcessPlayerState", (void*)HUD_ProcessPlayerState },
542+
{ "HUD_TxferPredictionData", (void*)HUD_TxferPredictionData },
543+
{ "HUD_TempEntUpdate", (void*)HUD_TempEntUpdate },
544+
{ "HUD_DrawNormalTriangles", (void*)HUD_DrawNormalTriangles },
545+
{ "HUD_DrawTransparentTriangles", (void*)HUD_DrawTransparentTriangles },
546+
{ "HUD_GetUserEntity", (void*)HUD_GetUserEntity },
547+
{ "Demo_ReadBuffer", (void*)Demo_ReadBuffer },
548+
{ "CAM_Think", (void*)CAM_Think },
549+
{ "CL_IsThirdPerson", (void*)CL_IsThirdPerson_CL },
550+
{ "CL_CameraOffset", (void*)CL_CameraOffset },
551+
{ "CL_CreateMove", (void*)CL_CreateMove },
552+
{ "IN_ActivateMouse", (void*)IN_ActivateMouse_CL },
553+
{ "IN_DeactivateMouse", (void*)IN_DeactivateMouse_CL },
554+
{ "IN_MouseEvent", (void*)IN_MouseEvent_CL },
555+
{ "IN_Accumulate", (void*)IN_Accumulate },
556+
{ "IN_ClearStates", (void*)IN_ClearStates },
557+
{ "V_CalcRefdef", (void*)V_CalcRefdef_CL },
558+
{ "KB_Find", (void*)KB_Find },
559+
{ "HUD_GetStudioModelInterface", (void*)HUD_GetStudioModelInterface },
560+
{ "HUD_DirectorMessage", (void*)HUD_DirectorMessage },
561+
{ "HUD_VoiceStatus", (void*)HUD_VoiceStatus },
562+
{ "IN_ClientMoveEvent", (void*)IN_ClientMoveEvent}, // Xash3D ext
563+
{ "IN_ClientLookEvent", (void*)IN_ClientLookEvent}, // Xash3D ext
564+
{ NULL, NULL },
456565
};
457566

458567
extern "C" int dll_register( const char *name, dllexport_t *exports );

cl_dll/com_weapons.cpp

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,18 @@
2424
#include "entity_state.h"
2525
#include "r_efx.h"
2626

27+
namespace cl {
28+
2729
// g_runfuncs is true if this is the first time we've "predicated" a particular movement/firing
2830
// command. If it is 1, then we should play events/sounds etc., otherwise, we just will be
2931
// updating state info, but not firing events
3032
int g_runfuncs = 0;
3133

34+
3235
// During our weapon prediction processing, we'll need to reference some data that is part of
3336
// the final state passed into the postthink functionality. We'll set this pointer and then
3437
// reset it to NULL as appropriate
35-
struct local_state_s *g_finalstate = NULL;
38+
local_state_t *g_finalstate = NULL;
3639

3740
/*
3841
====================
@@ -47,7 +50,7 @@ void COM_Log( char *pszFile, char *fmt, ...)
4750
char string[1024];
4851
FILE *fp;
4952
const char *pfilename;
50-
53+
5154
if ( !pszFile )
5255
{
5356
pfilename = "c:\\hllog.txt";
@@ -157,6 +160,8 @@ void HUD_PlaybackEvent( int flags, const edict_t *pInvoker, unsigned short event
157160
bparam1, bparam2 );
158161
}
159162

163+
164+
160165
/*
161166
=====================
162167
UTIL_WeaponTimeBase
@@ -171,7 +176,7 @@ inline float UTIL_WeaponTimeBase( void )
171176
}
172177

173178

174-
static unsigned int glSeed = 0;
179+
static unsigned int glSeed = 0;
175180

176181
unsigned int seed_table[ 256 ] =
177182
{
@@ -193,13 +198,13 @@ unsigned int seed_table[ 256 ] =
193198
25678, 18555, 13256, 23316, 22407, 16727, 991, 9236, 5373, 29402, 6117, 15241, 27715, 19291, 19888, 19847
194199
};
195200

196-
unsigned int U_Random( void )
197-
{
198-
glSeed *= 69069;
201+
unsigned int U_Random( void )
202+
{
203+
glSeed *= 69069;
199204
glSeed += seed_table[ glSeed & 0xff ];
200-
201-
return ( ++glSeed & 0x0fffffff );
202-
}
205+
206+
return ( ++glSeed & 0x0fffffff );
207+
}
203208

204209
void U_Srand( unsigned int seed )
205210
{
@@ -267,3 +272,6 @@ float UTIL_SharedRandomFloat( unsigned int seed, float low, float high )
267272
return (low + offset * range );
268273
}
269274
}
275+
276+
277+
}

0 commit comments

Comments
 (0)