mirror of
https://github.com/mapbase-source/source-sdk-2013.git
synced 2025-01-24 04:37:57 +03:00
Updated VScript in Mapbase (markdown)
parent
95e46bfbc7
commit
48c55b040a
@ -22,17 +22,22 @@ Mapbase's implementation of VScript does **not** use any leaked code whatsoever.
|
|||||||
|
|
||||||
* [Known incompatibilities with Valve's VScript](VScript-in-Mapbase#Known-incompatibilities-with-Valves-VScript)
|
* [Known incompatibilities with Valve's VScript](VScript-in-Mapbase#Known-incompatibilities-with-Valves-VScript)
|
||||||
* [Documentation](VScript-in-Mapbase#Documentation)
|
* [Documentation](VScript-in-Mapbase#Documentation)
|
||||||
|
* [Global Functions](VScript-in-Mapbase#Global-Functions)
|
||||||
* [New VScript Classes](VScript-in-Mapbase#New-VScript-Classes)
|
* [New VScript Classes](VScript-in-Mapbase#New-VScript-Classes)
|
||||||
* [CBaseCombatCharacter](VScript-in-Mapbase#CBaseCombatCharacter)
|
* [CBaseCombatCharacter](VScript-in-Mapbase#CBaseCombatCharacter)
|
||||||
* [CAI_BaseNPC](VScript-in-Mapbase#CAI_BaseNPC)
|
* [CAI_BaseNPC](VScript-in-Mapbase#CAI_BaseNPC)
|
||||||
* [Hooks](VScript-in-Mapbase#Hooks)
|
* [Hooks](VScript-in-Mapbase#Hooks)
|
||||||
* [CAI_BaseActor](VScript-in-Mapbase#CAI_BaseActor)
|
* [CAI_BaseActor](VScript-in-Mapbase#CAI_BaseActor)
|
||||||
* [CAI_Network](VScript-in-Mapbase#CAI_Network)
|
* [CAI_Network](VScript-in-Mapbase#CAI_Network)
|
||||||
|
* [CAI_Hint](VScript-in-Mapbase#CAI_Hint)
|
||||||
* [CAI_Expresser](VScript-in-Mapbase#CAI_Expresser)
|
* [CAI_Expresser](VScript-in-Mapbase#CAI_Expresser)
|
||||||
|
* [CGlobalState](VScript-in-Mapbase#CGlobalState)
|
||||||
|
* [CMapbaseSystem](VScript-in-Mapbase#CMapbaseSystem)
|
||||||
* [CLogicExternalData](VScript-in-Mapbase#CLogicExternalData)
|
* [CLogicExternalData](VScript-in-Mapbase#CLogicExternalData)
|
||||||
* [Modified VScript Classes](VScript-in-Mapbase#Modified-VScript-Classes)
|
* [Modified VScript Classes](VScript-in-Mapbase#Modified-VScript-Classes)
|
||||||
* [CBaseEntity](VScript-in-Mapbase#CBaseEntity)
|
* [CBaseEntity](VScript-in-Mapbase#CBaseEntity)
|
||||||
* [CBasePlayer](VScript-in-Mapbase#CBasePlayer)
|
* [CBasePlayer](VScript-in-Mapbase#CBasePlayer)
|
||||||
|
* [CScriptKeyValues](VScript-in-Mapbase#CScriptKeyValues)
|
||||||
|
|
||||||
***
|
***
|
||||||
|
|
||||||
@ -52,6 +57,15 @@ In addition to the original VScript inputs, Mapbase introduces a new `RunScriptC
|
|||||||
|
|
||||||
Other changes are documented below.
|
Other changes are documented below.
|
||||||
|
|
||||||
|
## Global Functions
|
||||||
|
These are functions that can be accessed globally and without a class.
|
||||||
|
|
||||||
|
| Signature | Description |
|
||||||
|
|:------------- | :-----|
|
||||||
|
| *handle* SpawnEntityFromKeyValues(string *className*, handle *keyValues)| Spawns an entity with the keyvalues in a CScriptKeyValues handle. |
|
||||||
|
| *handle* GameOver(string *message*, float *delay*, float *fadeTime*, float *loadTime*, int *r*, int *g*, int *b*)| Ends the game and reloads the last save. |
|
||||||
|
| *bool* MegaPhyscannonActive()| Checks if supercharged gravity gun mode is enabled. |
|
||||||
|
|
||||||
## New VScript Classes
|
## New VScript Classes
|
||||||
These are classes Mapbase exposes to VScript.
|
These are classes Mapbase exposes to VScript.
|
||||||
|
|
||||||
@ -96,6 +110,7 @@ The base class shared all NPCs derive from.
|
|||||||
| *void* SetEnemy(handle *target*)| Set the NPC's current enemy. |
|
| *void* SetEnemy(handle *target*)| Set the NPC's current enemy. |
|
||||||
| *Vector* GetEnemyLKP()| Get the last known position of the NPC's current enemy. |
|
| *Vector* GetEnemyLKP()| Get the last known position of the NPC's current enemy. |
|
||||||
| *handle* FindEnemyMemory()| Get information about the NPC's current enemy. |
|
| *handle* FindEnemyMemory()| Get information about the NPC's current enemy. |
|
||||||
|
| *string* GetHintGroup()| Get the name of the NPC's hint group. |
|
||||||
| *int* GetNPCState()| Get the NPC's current state. |
|
| *int* GetNPCState()| Get the NPC's current state. |
|
||||||
| *int* CapabilitiesGet()| Get the capabilities the NPC currently possesses. |
|
| *int* CapabilitiesGet()| Get the capabilities the NPC currently possesses. |
|
||||||
| *void* CapabilitiesAdd(int *capabilities*)| Add capabilities to the NPC. |
|
| *void* CapabilitiesAdd(int *capabilities*)| Add capabilities to the NPC. |
|
||||||
@ -125,6 +140,7 @@ The base class shared all NPCs derive from.
|
|||||||
| Signature | Description |
|
| Signature | Description |
|
||||||
|:------------- | :-----|
|
|:------------- | :-----|
|
||||||
| *variable* NPC_TranslateActivity()| Translates a requested NPC activity to another activity. The requested activity is stored as a string in `activity` and as an integer in `activity_id`. Either an activity string or an activity ID can be returned. If either -1 or "ACT_INVALID" are returned, the activity will not be translated to anything different. |
|
| *variable* NPC_TranslateActivity()| Translates a requested NPC activity to another activity. The requested activity is stored as a string in `activity` and as an integer in `activity_id`. Either an activity string or an activity ID can be returned. If either -1 or "ACT_INVALID" are returned, the activity will not be translated to anything different. |
|
||||||
|
| *variable* NPC_TranslateSchedule()| Translates a requested NPC schedule to another schedule. The requested schedule is stored as a string in `schedule` and as an integer in `schedule_id`. Either a schedule name string or a schedule ID can be returned. If either -1 or "SCHED_NONE" are returned, the schedule will not be translated to anything different. |
|
||||||
|
|
||||||
***
|
***
|
||||||
|
|
||||||
@ -155,6 +171,23 @@ The global list of AI nodes. Can be accessed through a global `AINetwork` instan
|
|||||||
|
|
||||||
***
|
***
|
||||||
|
|
||||||
|
### CAI_Hint
|
||||||
|
An entity which gives contextual pointers for NPCs.
|
||||||
|
|
||||||
|
| Signature | Description |
|
||||||
|
|:------------- | :-----|
|
||||||
|
| *int* GetHintType()| Get the hint's type ID. |
|
||||||
|
| *handle* GetUser()| Get the hint's current user. |
|
||||||
|
| *string* GetHintGroup()| Get the name of the hint's group. |
|
||||||
|
| *string* GetHintActivity()| Get the name of the hint activity. |
|
||||||
|
| *bool* IsDisabled()| Check if the hint is disabled. |
|
||||||
|
| *bool* IsLocked()| Check if the hint is locked. |
|
||||||
|
| *int* GetHintType()| Get the hint's node ID. |
|
||||||
|
| *float* Yaw()| Get the hint's yaw. |
|
||||||
|
| *Vector* GetDirection()| Get the hint's direction. |
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
### CAI_Expresser
|
### CAI_Expresser
|
||||||
Expresser class for complex speech. Typically accessed through `GetExpresser()`. Not all NPCs/players have an expresser.
|
Expresser class for complex speech. Typically accessed through `GetExpresser()`. Not all NPCs/players have an expresser.
|
||||||
|
|
||||||
@ -170,6 +203,33 @@ Expresser class for complex speech. Typically accessed through `GetExpresser()`.
|
|||||||
***
|
***
|
||||||
***
|
***
|
||||||
|
|
||||||
|
### CGlobalState
|
||||||
|
Global state system. Can be accessed through a global `Globals` instance.
|
||||||
|
|
||||||
|
| Signature | Description |
|
||||||
|
|:------------- | :-----|
|
||||||
|
| *int* GetIndex(string *globalName*)| Gets the index of the specified global name. Returns -1 if it does not exist. |
|
||||||
|
| *int* AddGlobal(string *globalName*)| Adds a new global with a specific map name and state. Returns its index. |
|
||||||
|
| *int* GetState(string *globalName*)| Gets the state of the specified global. |
|
||||||
|
| *void* SetState(string *globalName*, int *state*)| Sets the state of the specified global. |
|
||||||
|
| *int* GetCounter(string *globalName*)| Gets the counter of the specified global. |
|
||||||
|
| *void* SetCounter(string *globalName*, int *counter*)| Sets the counter of the specified global. |
|
||||||
|
| *void* AddToCounter(string *globalName*, int *counter*)| Adds to the counter of the specified global. |
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
|
### CMapbaseSystem
|
||||||
|
All-purpose Mapbase system primarily used for map-specific files. Can be accessed through a global `Mapbase` instance.
|
||||||
|
|
||||||
|
| Signature | Description |
|
||||||
|
|:------------- | :-----|
|
||||||
|
| *void* AddManifestFile(string *fileName*)| Loads a manifest file. |
|
||||||
|
| *void* LoadSoundscriptFile(string *fileName*)| Loads a custom soundscript file. |
|
||||||
|
| *void* LoadTalkerFile(string *fileName*)| Loads a custom talker file. |
|
||||||
|
| *void* LoadActbusyFile(string *fileName*)| Loads a custom actbusy file. |
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
### CLogicExternalData
|
### CLogicExternalData
|
||||||
An entity which loads keyvalues from an external data file.
|
An entity which loads keyvalues from an external data file.
|
||||||
|
|
||||||
@ -182,9 +242,13 @@ An entity which loads keyvalues from an external data file.
|
|||||||
| *void* LoadFile()| Loads external data from the external file. |
|
| *void* LoadFile()| Loads external data from the external file. |
|
||||||
| *void* SaveFile()| Saves the external data to the external file. |
|
| *void* SaveFile()| Saves the external data to the external file. |
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
## Modified VScript Classes
|
## Modified VScript Classes
|
||||||
These are classes that were already exposed to VScript, but have new features or changes included with Mapbase.
|
These are classes that were already exposed to VScript, but have new features or changes included with Mapbase.
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
### CBaseEntity
|
### CBaseEntity
|
||||||
Root class of all server-side entities.
|
Root class of all server-side entities.
|
||||||
|
|
||||||
@ -195,6 +259,8 @@ Root class of all server-side entities.
|
|||||||
| *bool* IsVisibleWithMask(Vector *target*, int *traceMask*)| Check if the specified position can be visible to this entity with a specific trace mask. |
|
| *bool* IsVisibleWithMask(Vector *target*, int *traceMask*)| Check if the specified position can be visible to this entity with a specific trace mask. |
|
||||||
| *int* Classify()| Get Class_T class ID |
|
| *int* Classify()| Get Class_T class ID |
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
### CBasePlayer
|
### CBasePlayer
|
||||||
The player entity.
|
The player entity.
|
||||||
|
|
||||||
@ -202,6 +268,8 @@ The player entity.
|
|||||||
|:------------- | :-----|
|
|:------------- | :-----|
|
||||||
| *handle* GetExpresser()| Get a handle for this player's expresser. |
|
| *handle* GetExpresser()| Get a handle for this player's expresser. |
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
### CScriptKeyValues
|
### CScriptKeyValues
|
||||||
Wrapper class over KeyValues instance.
|
Wrapper class over KeyValues instance.
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user