Team Fortress 2 Source Code as on 22/4/2020
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

109 lines
3.2 KiB

  1. //========= Copyright Valve Corporation, All rights reserved. ============//
  2. //
  3. // Purpose:
  4. //
  5. // $NoKeywords: $
  6. //=============================================================================//
  7. #ifndef GLOBALSTATE_H
  8. #define GLOBALSTATE_H
  9. #ifdef _WIN32
  10. #pragma once
  11. #endif
  12. typedef enum { GLOBAL_OFF = 0, GLOBAL_ON = 1, GLOBAL_DEAD = 2 } GLOBALESTATE;
  13. void GlobalEntity_SetState( int globalIndex, GLOBALESTATE state );
  14. void GlobalEntity_SetMap( int globalIndex, string_t mapname );
  15. int GlobalEntity_Add( const char *pGlobalname, const char *pMapName, GLOBALESTATE state );
  16. int GlobalEntity_GetIndex( const char *pGlobalname );
  17. GLOBALESTATE GlobalEntity_GetState( int globalIndex );
  18. const char *GlobalEntity_GetMap( int globalIndex );
  19. const char *GlobalEntity_GetName( int globalIndex );
  20. int GlobalEntity_GetCounter( int globalIndex );
  21. void GlobalEntity_SetCounter( int globalIndex, int counter );
  22. int GlobalEntity_AddToCounter( int globalIndex, int delta );
  23. int GlobalEntity_GetNumGlobals( void );
  24. void GlobalEntity_EnableStateUpdates( bool bEnable );
  25. inline int GlobalEntity_Add( string_t globalname, string_t mapName, GLOBALESTATE state )
  26. {
  27. return GlobalEntity_Add( STRING(globalname), STRING(mapName), state );
  28. }
  29. inline int GlobalEntity_GetIndex( string_t globalname )
  30. {
  31. return GlobalEntity_GetIndex( STRING(globalname) );
  32. }
  33. inline int GlobalEntity_IsInTable( string_t globalname )
  34. {
  35. return GlobalEntity_GetIndex( STRING(globalname) ) >= 0 ? true : false;
  36. }
  37. inline int GlobalEntity_IsInTable( const char *pGlobalname )
  38. {
  39. return GlobalEntity_GetIndex( pGlobalname ) >= 0 ? true : false;
  40. }
  41. inline void GlobalEntity_SetState( string_t globalname, GLOBALESTATE state )
  42. {
  43. GlobalEntity_SetState( GlobalEntity_GetIndex( globalname ), state );
  44. }
  45. inline void GlobalEntity_SetMap( string_t globalname, string_t mapname )
  46. {
  47. GlobalEntity_SetMap( GlobalEntity_GetIndex( globalname ), mapname );
  48. }
  49. inline GLOBALESTATE GlobalEntity_GetState( string_t globalname )
  50. {
  51. return GlobalEntity_GetState( GlobalEntity_GetIndex( globalname ) );
  52. }
  53. inline GLOBALESTATE GlobalEntity_GetState( const char *pGlobalName )
  54. {
  55. return GlobalEntity_GetState( GlobalEntity_GetIndex( pGlobalName ) );
  56. }
  57. inline int GlobalEntity_GetCounter( string_t globalname )
  58. {
  59. return GlobalEntity_GetCounter( GlobalEntity_GetIndex( globalname ) );
  60. }
  61. inline int GlobalEntity_GetCounter( const char *pGlobalName )
  62. {
  63. return GlobalEntity_GetCounter( GlobalEntity_GetIndex( pGlobalName ) );
  64. }
  65. inline void GlobalEntity_SetCounter( string_t globalname, int counter )
  66. {
  67. GlobalEntity_SetCounter( GlobalEntity_GetIndex( globalname ), counter );
  68. }
  69. inline void GlobalEntity_SetCounter( const char *pGlobalName, int counter )
  70. {
  71. GlobalEntity_SetCounter( GlobalEntity_GetIndex( pGlobalName ), counter );
  72. }
  73. inline int GlobalEntity_AddToCounter( string_t globalname, int delta )
  74. {
  75. return GlobalEntity_AddToCounter( GlobalEntity_GetIndex( globalname ), delta );
  76. }
  77. inline int GlobalEntity_AddToCounter( const char *pGlobalName, int delta )
  78. {
  79. return GlobalEntity_AddToCounter( GlobalEntity_GetIndex( pGlobalName ), delta );
  80. }
  81. inline GLOBALESTATE GlobalEntity_GetStateByIndex( int iIndex )
  82. {
  83. return GlobalEntity_GetState( iIndex );
  84. }
  85. void ResetGlobalState( void );
  86. #endif // GLOBALSTATE_H