source-sdk-2013-mapbase/sp/src/game/shared/baseplayer_shared.h
Blixibon c5f3fa0778 Mapbase v3.0
- Overhauled matcher system and added expanded wildcard support, meaning "text", "te?t", "blah_test", etc. are now supported instead of only trailing *
- Added support for regular expression matching
- Added the missing matrixinvert.h file, which prevented programmers from compiling vbsp
- Fixed env_global_light brightness
- Added info_player_view_proxy, an entity which mimics a player's view (created for script_intro)
- New UnZoomWithRate and SetZoomRate inputs on env_zoom
- New "Don't change target's angles" flag on logic_measure_movement
- Fixed logic_measure_movement not using ignore origin flags correctly
- Fixed filter_damage_mod secondary filter not recognizing mode correctly
- Fixed DisableGeigerCounter causing NPCs to ignore player, and possibly fixed other adverse effects in similar code
- Added SetEntityName input for setting an entity's targetname
- Added "SetTarget" support to point_posecontroller
- Added "sk_alyx_health" convar for adjustable npc_alyx health, restored/fixed "sk_barney_health" for adjustable npc_barney health
- Added ignore flags and several direction-related inputs to math_vector
- Added pose parameter stuff to logic_modelinfo
- Fixed ChangeWeapon not changing during combat
- Fixed holster/unholster on NPCs without holster/unholster animations
- Fixed func_tank and other "player in the way" code ignoring notarget
- Added SetPoseParameter input to animating entities
- Introduced an experimental chapter system which allows for custom chapter title/restriction management
- Added SetChapterTitle input to worldspawn for dynamic title changing
- Fixed func_tankairboatgun damage credit, added ability to use its damage keyvalues
- Fixed mapbase_rpc_enabled not actually affecting RPC
- Moved some newly found Combine soldier grenade code to ai_grenade for other grenade users
- Fixed some problems with the new shared activities
- Restored an old Mapbase entity as "prop_interactable", an entity which contains all of the functionality of a func_button/func_door in a prop entity
- Added env_microphone pitch scale for scaling the pitch of transmitted sounds
- Added experimental, long-overdue code for scenes to be able to access !target#'s and other scene-related names through AI_INPUT
- Added "mat_specular_disable_on_missing", which "disables" specular reflections when the cubemap texture is missing
- Fixed $envmapmasktransform and $bumptransform on VertexLitGeneric and related shaders
- Areaportal leaks now stop compilation in leaktest
- Replaced "-nodefaultcubemap" with "-defaultcubemap" as the shader changes allow maps to compile without default cubemaps by default with little effect
2020-02-05 19:08:49 +00:00

79 lines
2.3 KiB
C

//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================//
#ifndef BASEPLAYER_SHARED_H
#define BASEPLAYER_SHARED_H
#ifdef _WIN32
#pragma once
#endif
// PlayerUse defines
#define PLAYER_USE_RADIUS 80.f
#define CONE_45_DEGREES 0.707f
#define CONE_15_DEGREES 0.9659258f
#define CONE_90_DEGREES 0
#define TRAIN_ACTIVE 0x80
#define TRAIN_NEW 0xc0
#define TRAIN_OFF 0x00
#define TRAIN_NEUTRAL 0x01
#define TRAIN_SLOW 0x02
#define TRAIN_MEDIUM 0x03
#define TRAIN_FAST 0x04
#define TRAIN_BACK 0x05
// entity messages
#define PLAY_PLAYER_JINGLE 1
#define UPDATE_PLAYER_RADAR 2
#define DEATH_ANIMATION_TIME 3.0f
typedef struct
{
Vector m_vecAutoAimDir; // The direction autoaim wishes to point.
Vector m_vecAutoAimPoint; // The point (world space) that autoaim is aiming at.
EHANDLE m_hAutoAimEntity; // The entity that autoaim is aiming at.
bool m_bAutoAimAssisting; // If this is true, autoaim is aiming at the target. If false, the player is naturally aiming.
bool m_bOnTargetNatural;
float m_fScale;
float m_fMaxDist;
} autoaim_params_t;
enum stepsoundtimes_t
{
STEPSOUNDTIME_NORMAL = 0,
STEPSOUNDTIME_ON_LADDER,
STEPSOUNDTIME_WATER_KNEE,
STEPSOUNDTIME_WATER_FOOT,
};
void CopySoundNameWithModifierToken( char *pchDest, const char *pchSource, int nMaxLenInChars, const char *pchToken );
#ifdef MAPBASE
// Internal player spawnflags.
// These are only meant to be used internally or accessed via logic_playerproxy.
// I'm sure this isn't a bad idea whatsoever...
//
// They start at 16 because some NPC spawnflags (e.g. Wait Till Seen)
// used in places with both NPCs and players don't check whether the target is a NPC or a player.
// Spawnflags are also transmitted to the client and use a special network proxy to get around this without having to transmit unused bits.
// Be sure to update the SendPropInt() entry for m_spawnflags in player.cpp when you add any new spawnflags!
#define SF_PLAYER_NO_GEIGER (1 << 16)
#define SF_PLAYER_HIDE_SQUAD_HUD (1 << 17)
#define SF_PLAYER_SUPPRESS_FIRING (1 << 18)
#endif
// Shared header file for players
#if defined( CLIENT_DLL )
#define CBasePlayer C_BasePlayer
#include "c_baseplayer.h"
#else
#include "player.h"
#endif
#endif // BASEPLAYER_SHARED_H