User:Alvin/Sandbox

From Valve Developer Community
< User:Alvin
Revision as of 20:01, 19 July 2011 by Alvin (talk | contribs) (→‎NPC State: new section)
Jump to navigation Jump to search

Source Engine 2009

"Garry's Mod" (Tools > Options > Edit > Add)

Game Data Files: (orangebox/bin) HalfLife2.fgd = Ep2 (HL2 as well) base.fgd cstrike.fgd = CS:S dod.fgd = DoD:S hl2mp.fgd = HL2:DM (could be needed) portal.fgd = Portal tf.fgd = TF2 (garrysmod/garrysmod) Garrysmod.fgd (optional lang.)


Default Point Entity class: info_player_start

Default SolidEntity class: func_detail

Cordon Texture: tools/toolsskybox

Game Executable Directory: $SteamUserDir\garrysmod

Game Directory: $SteamUserDir\garrysmod\garrysmod

Hammer VMF Directory: (Where you want to save and load VMF saves for Garrysmod) i use.. $SteamUserDir\garrysmod\garrysmod\maps\vmf

Now go to the last Tab, Build programs..

Game Executable: $SteamUserDir\garrysmod\hl2.exe

BSP $SteamUserDir\sourcesdk\bin\orangebox\bin\vbsp.exe

VIS $SteamUserDir\sourcesdk\bin\orangebox\bin\vvis.exe

RAD $SteamUserDir\sourcesdk\bin\orangebox\bin\vrad.exe

Place compiled maps... $SteamUserDir\garrysmod\garrysmod\maps

It will say that the changes will show when you open hammer another time but you need to restart Source SDK if you made a new config in order to see your new config in the selection menu.


Tagalog, pwede ba? :(

NPC State

//----------------------------------------------------- // // NPC State // //----------------------------------------------------- inline void SetIdealState( NPC_STATE eIdealState ); inline NPC_STATE GetIdealState(); virtual NPC_STATE SelectIdealState( void );

void SetState( NPC_STATE State ); virtual bool ShouldGoToIdleState( void ) { return ( false ); } virtual void OnStateChange( NPC_STATE OldState, NPC_STATE NewState ) {/*Base class doesn't care*/};

NPC_STATE GetState( void ) { return m_NPCState; }

AI_Efficiency_t GetEfficiency() const { return m_Efficiency; } void SetEfficiency( AI_Efficiency_t efficiency ) { m_Efficiency = efficiency; } AI_MoveEfficiency_t GetMoveEfficiency() const { return m_MoveEfficiency; } void SetMoveEfficiency( AI_MoveEfficiency_t efficiency ) { m_MoveEfficiency = efficiency; } virtual void UpdateEfficiency( bool bInPVS ); void ForceDecisionThink() { m_flNextDecisionTime = 0; SetEfficiency( AIE_NORMAL ); }

bool IsFlaggedEfficient() const { return HasSpawnFlags( SF_NPC_START_EFFICIENT ); }

AI_SleepState_t GetSleepState() const { return m_SleepState; } void SetSleepState( AI_SleepState_t sleepState ) { m_SleepState = sleepState; } void AddSleepFlags( int flags ) { m_SleepFlags |= flags; } void RemoveSleepFlags( int flags ) { m_SleepFlags &= ~flags; } bool HasSleepFlags( int flags ) { return (m_SleepFlags & flags) == flags; }

void UpdateSleepState( bool bInPVS ); virtual void Wake( bool bFireOutput = true ); void Sleep(); bool WokeThisTick() const;