mirror of
https://github.com/celisej567/source-sdk-2013.git
synced 2026-09-23 20:09:45 +03:00
Mapbase v6.0
- Fixed path_track paths saving as pointers instead of handles - Fixed player animations not falling to base class correctly - Fixed logic_externaldata creating garbage in trailing spaces - Added "SetHandModelSkin" input - Added unique colors for various types of console message, adjustable via convars - Added the ability to use map-specific weapon scripts - Added a way to display (placeholder) text entirely from Faceposer scenes - Added "autobreak" keyvalue to game_text, which automatically breaks long text into different lines - Added the ability to change a game_text's font (very limited) - Added LightToggle input to point_spotlight - Added Enable/DisableSprites on npc_manhack - Added ai_goal_police behavior from metrocops to Combine soldiers and citizens - Added func_precipitation particle rain systems from the Alien Swarm SDK - Added new func_precipitation spawnflags for controlling behavior in particle types - Added "mapbase_version" cvar which shows the version of Mapbase a mod might be running on - Fixed an oversight with NPC crouch activities which was causing npc_metropolice to stop firing in standoffs - Added toggleable patches to npc_combine AI which make soldiers less likely to stand around without shooting or rush to melee when not needed - Added key for custom logo font on env_credits scripts - Added SetSpeed and SetPushDir inputs for trigger_push - Added a bunch of I/O/KV to func_fish_pool to allow for more control over the fish - Added OnLostEnemy/Player support for npc_combine_camera - Added enhanced save/restore for the Response System, toggleable via convar - Added a convar which allows users to disable weapon autoswitching when picking up ammo - Split VScript base script into its own file - Added VScript descriptions for NPC squads and the manager class which handles them - Moved several classes, functions, etc. to the VScript library itself for future usage in other projects, like VBSP - Added VScript to VBSP with basic map file interfacing - Made some VScript documentation more clear due to deprecation of online documentation - Added VScript "hook" registration, creating a standardized system which shows up in script_help documentation - Added VScript-driven custom weapons - Added clientside VScript scopes - Added a bunch of weapon-related VScript functions - Split a bunch of cluttered VScript stuff into different files - Added VScript functions for "following" entities/bonemerging - Added VScript functions for grenades - Added a few more VScript trigger functions - Added OnDeath hook for VScript - Fixed documentation for aliased functions in VScript - Fixed $bumpmask not working on SDK_LightmappedGeneric - Made vertex blend swapping in Hammer use a constant instead of a combo (makes it easier to compile the shader, especially for $bumpmask's sake) - Fixed brush phong, etc. causing SDK_WorldVertexTransition to stop working - Added limited support for $envmapmask in the bumpmapping shader - Fixed more issues with parallax corrected cubemaps and instances - Made instance variable recursion consistent with VMFII
This commit is contained in:
@@ -283,7 +283,11 @@ bool ReadWeaponDataFromFileForSlot( IFileSystem* filesystem, const char *szWeapo
|
||||
FileWeaponInfo_t *pFileInfo = GetFileWeaponInfoFromHandle( *phandle );
|
||||
Assert( pFileInfo );
|
||||
|
||||
#ifdef MAPBASE
|
||||
if ( pFileInfo->bParsedScript && !pFileInfo->bCustom )
|
||||
#else
|
||||
if ( pFileInfo->bParsedScript )
|
||||
#endif
|
||||
return true;
|
||||
|
||||
char sz[128];
|
||||
@@ -300,6 +304,9 @@ bool ReadWeaponDataFromFileForSlot( IFileSystem* filesystem, const char *szWeapo
|
||||
if ( !pKV )
|
||||
return false;
|
||||
|
||||
#ifdef MAPBASE
|
||||
pFileInfo->bCustom = false;
|
||||
#endif
|
||||
pFileInfo->Parse( pKV, szWeaponName );
|
||||
|
||||
pKV->deleteThis();
|
||||
@@ -307,6 +314,49 @@ bool ReadWeaponDataFromFileForSlot( IFileSystem* filesystem, const char *szWeapo
|
||||
return true;
|
||||
}
|
||||
|
||||
#ifdef MAPBASE
|
||||
extern const char *g_MapName;
|
||||
|
||||
bool ReadCustomWeaponDataFromFileForSlot( IFileSystem* filesystem, const char *szWeaponName, WEAPON_FILE_INFO_HANDLE *phandle, const unsigned char *pICEKey )
|
||||
{
|
||||
if ( !phandle )
|
||||
{
|
||||
Assert( 0 );
|
||||
return false;
|
||||
}
|
||||
|
||||
*phandle = FindWeaponInfoSlot( szWeaponName );
|
||||
FileWeaponInfo_t *pFileInfo = GetFileWeaponInfoFromHandle( *phandle );
|
||||
Assert( pFileInfo );
|
||||
|
||||
// Just parse the custom script anyway even if it was already loaded. This is because after one is loaded,
|
||||
// there's no way of distinguishing between maps with no custom scripts and maps with their own new custom scripts.
|
||||
//if ( pFileInfo->bParsedScript && pFileInfo->bCustom )
|
||||
// return true;
|
||||
|
||||
char sz[128];
|
||||
Q_snprintf( sz, sizeof( sz ), "maps/%s_%s", g_MapName, szWeaponName );
|
||||
|
||||
KeyValues *pKV = ReadEncryptedKVFile( filesystem, sz, pICEKey,
|
||||
#if defined( DOD_DLL )
|
||||
true // Only read .ctx files!
|
||||
#else
|
||||
false
|
||||
#endif
|
||||
);
|
||||
|
||||
if ( !pKV )
|
||||
return false;
|
||||
|
||||
pFileInfo->bCustom = true;
|
||||
pFileInfo->Parse( pKV, szWeaponName );
|
||||
|
||||
pKV->deleteThis();
|
||||
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// FileWeaponInfo_t implementation.
|
||||
|
||||
Reference in New Issue
Block a user