Mapbase v5.1

- Fixed a major oversight in Source 2013 which was causing some code to think all logic entities were worldspawn
- Added WIP background nodraw for point_cameras set to not draw skybox at all
- Fixed map-specific talker not flushing on restore
- Added optional HUD hint to code-based game instructor hints
- Added workaround for suspicious crashes in HL2 NPC rappelling code (reported by 1upD)
- Made antlions summoned by npc_antlionguard report as dead when removed with the "Kill" input
- Fixed math_mod not saving mod value (reported by Klems)
- Added SDK_WindowImposter, which uses the SteamPipe cubemap bug workaround and includes support for parallax corrected cubemaps
- Updated thirdpartylegalnotices.txt to mention the Squirrel API
- Fixed incorrect type checking for script instances in VScript
- Added a bunch of new misc. VScript constants
- Added a few new base VScript functions
- Added a separate "Clientside Script Language" keyvalue to worldspawn for VScript, allowing client scripts to use a different language from server scripts
- Fixed worldspawn crashing the game when running entity scripts (reported by krassell)
- Fixed manifests creating a second worldspawn, allowing them to function properly in HL2
- Added tons of remapping-related fixes for instances and manifests, including node IDs and overlay remapping
- Added a keyvalue to func_instance which allows vector axis lines to be remapped properly
- Added support for manifest root path instances in VBSP
- Added missing PrintBrushContents() contents to VBSP
- Added -nohiddenmaps parameter
- Made manifest cordon somewhat functional
This commit is contained in:
Blixibon
2020-09-23 05:03:47 +00:00
parent 5c2051864a
commit add157197f
45 changed files with 1477 additions and 71 deletions

View File

@@ -395,6 +395,7 @@ BEGIN_DATADESC( CWorld )
DEFINE_KEYFIELD( m_iszDetailSpriteMaterial, FIELD_STRING, "detailmaterial" ),
#ifdef MAPBASE_VSCRIPT
DEFINE_KEYFIELD( m_iScriptLanguage, FIELD_INTEGER, "vscriptlanguage" ),
DEFINE_KEYFIELD( m_iScriptLanguageClient, FIELD_INTEGER, "vscriptlanguage_client" ),
#endif
DEFINE_KEYFIELD( m_bColdWorld, FIELD_BOOLEAN, "coldworld" ),
@@ -421,7 +422,7 @@ IMPLEMENT_SERVERCLASS_ST(CWorld, DT_WORLD)
SendPropStringT (SENDINFO(m_iszChapterTitle) ),
#endif
#ifdef MAPBASE_VSCRIPT
SendPropInt (SENDINFO(m_iScriptLanguage), 4 ), // No SPROP_UNSIGNED to allow -1 (disabled)
SendPropInt (SENDINFO(m_iScriptLanguageClient), 4 ), // No SPROP_UNSIGNED to allow -1 (disabled)
#endif
END_SEND_TABLE()
@@ -465,7 +466,7 @@ bool CWorld::KeyValue( const char *szKeyName, const char *szValue )
extern bool g_fGameOver;
static CWorld *g_WorldEntity = NULL;
CWorld *g_WorldEntity = NULL;
CWorld* GetWorldEntity()
{
@@ -484,6 +485,7 @@ CWorld::CWorld( )
#ifdef MAPBASE_VSCRIPT
m_iScriptLanguage = SL_NONE;
m_iScriptLanguageClient = -2;
#endif
m_bColdWorld = false;
@@ -550,6 +552,14 @@ void CWorld::Spawn( void )
Precache( );
GlobalEntity_Add( "is_console", STRING(gpGlobals->mapname), ( IsConsole() ) ? GLOBAL_ON : GLOBAL_OFF );
GlobalEntity_Add( "is_pc", STRING(gpGlobals->mapname), ( !IsConsole() ) ? GLOBAL_ON : GLOBAL_OFF );
#ifdef MAPBASE_VSCRIPT
if (m_iScriptLanguageClient.Get() == -2)
{
// Clientside language should be regular language by default
m_iScriptLanguageClient.Set( m_iScriptLanguage );
}
#endif
}
static const char *g_DefaultLightstyles[] =