DOTA2中文API

0.欢迎志同道合的朋友加入阿哈利姆魔法隐修议会 QQ群号:283355127 邮箱:zhuzes@gmail.com
1.翻译自DOTA2英文API
2.DOTA2内包含大量的专业术语,身为翻译者并不精通,可能会造成翻译错误,一切以原版为准。
3.大多数函数未经测试,翻译表现与实际表现可能有出入。
4.有一小部分函数并未翻译,欢迎补充。
5.对本API有补充或者修改的内容,请发送Email至margaret4@126.com,cloudmonkeypeng@live.com

Entities CEntities实例
ConVars ConVars实例
PlayerResource CDOTA_PlyaerResource实例
ParticleManager CDOTA_PlayerResource实例
HeroList 英雄列表实例
CreateParticle int CreateParticle( string particleName, int ParticleAttach, EntityowningEntity)
效果:生成新的粒子效果
传入参数
particleName:粒子名,ParticleAttach:粒子附着点,EntityowningEntity:附着实例
返回值:
int类型: 粒子ID
CreateParticleForPlayer int CreateParticleForPlayer( string particleName, int ParticleAttach,Entity owningEntity, Player viewingPlayer) 效果:创建针对特定玩家的粒子效果
传入参数:
particleName:粒子名,ParticleAttach:粒子附着点,owningEntity:附着实例,viewingPlayer:看到这个效果的玩家
返回值:
int类型: 粒子ID
SetParticleControl void SetParticleControl( int particleId, int controlIndex, vector controlData) 效果:设置控制点数据以控制粒子效果
传入参数:
particleId:粒子ID,controlIndex:控制点索引,controlData:控制点数据
返回值:无
ReleaseParticleIndex void ReleaseParticleIndex( int particleId ) 效果:释放指定编号的粒子特效
传入参数:
particleId:粒子ID
返回值:无
State_Get GameState State_Get() 效果:获得当前规则的状态
传入参数:无
返回值:
GameState: 规则状态
GetGameTime float GetGameTime() 效果:获取调用时候的游戏时间
传入参数:无
返回值:
float类型: 从地图运行起逝去的秒数
GetDifficulty int GetDifficulty() 效果:获得自定游戏模式的难度
传入参数:无
返回值:
int类型: 自定游戏模式的难度
Defeated void Defeated() 效果:拆毁遗迹(游戏失败)
传入参数:无
返回值:无
ResetDefeated void ResetDefeated() 效果:拆毁遗迹后重新开始
传入参数:无
返回值:无
SetGameWinner void SetGameWinner(int team) 效果:使一个特定队伍胜利
传入参数:
team:队伍
返回值:无
MakeTeamLose void MakeTeamLose(int team) 效果:使一个特定队伍失败
传入参数:
team:队伍
返回值:无
GetDroppedItem Item GetDroppedItem( int dropIndex) 效果:取得指定顺序的掉落物品
传入参数:
dropIndex:掉落物品的索引
返回值:
Item:掉落物品
NumDroppedItems int NumDroppedItems() 效果:取得正在地面上掉落物品的数量
传入参数:
dropIndex:掉落物品的索引
返回值:
int类型:正在地面上掉落物品的数量
SendCustomMessage void SendCustomMessage( string stringText, int, int ) 效果:向某个队伍发送一个字符串(后两个参数未知,待定)
传入参数:
stringText:发送的文本信息
返回值:无
SetHeroRespawnEnabled void SetHeroRespawnEnabled( bool canRespawn ) 效果:设置控制正常dota英雄重生规则是否生效
传入参数:
canRespawn:是否可以重生(传入true或false)
返回值:无
Playtesting_UpdateCustomKeyValues void Playtesting_UpdateCustomKeyValues() 效果:将磁盘中最新的自定义英雄,单位和技能关键值读入内存(应该是初始化读入英雄数据,类似DOTA1中的召唤师技能预读)
传入参数:无
返回值:无
ResetToHeroSelection void ResetToHeroSelection() 效果:在英雄选择时重新开始
传入参数:无
返回值:无
SetTreeRegrowTime void SetTreeRegrowTime( float seconds) 效果:以秒为单位设定树的重生时间
传入参数:
seconds:秒数
返回值:无
SetHeroSelectionTime void SetHeroSelectionTime( float seconds) 效果:设定玩家选择英雄的时间
传入参数:
seconds:秒数
返回值:无
SetPreGameTime void SetPreGameTime( float seconds) 效果:设定玩家再选择英雄之后和游戏开始前之间的时间
传入参数:
seconds:秒数
返回值:无
SetPostGameTime void SetPostGameTime( float seconds) 效果:设定游戏结束后到服务器断开连接前的时间
传入参数:
seconds:秒数
返回值:无
SetRuneSpawnTime void SetRuneSpawnTime( float seconds) 效果:设置符文刷新时间
传入参数:
seconds:秒数
返回值:无
SetSameHeroSelectionEnabled void SetSameHeroSelectionEnabled( bool enabled) 效果:当设置为真时,玩家能够重新选择同样的英雄
传入参数:
enabled:布尔值
返回值:无
SetUseUniversalShopMode void SetUseUniversalShopMode( bool enabled) 效果:当设置为真时,在商店范围内的所有物品都可购买
传入参数:
enabled:布尔值
返回值:无
SetOverlayHealthBarUnit void SetOverlayHealthBarUnit( Unit unit, int style) 效果:设置生命槽上显示单位的生命值
传入参数:
Unitunit:单位实体,style:单位类型
返回值:无
SetCreepMinimapIconScale void SetCreepMinimapIconScale( float creepScale) 效果:设置普通单位图标在小地图上的大小
传入参数:
creepScale:单位大小值
返回值:无
SetRuneMinimapIconScale void SetRuneMinimapIconScale( float runeScale) 效果:设置符文图标在小地图上的大小
传入参数:
runeScale:符文大小值
返回值:无
SetSafeToLeave void SetSafeToLeave( bool safeToLeave) 效果:标记此游戏可以安全退出
传入参数:
safeToLeave:是否可以安全退出(true或false)
返回值:无
First Entity First() 效果:从实体双向链表之上开始迭代(获取链表头结点)
传入参数:无
返回值:
Entity:链表内的实体
Next Entity Next( Entity startFrom) 效果:参照前面获取的实体继续迭代双向链表
传入参数:无
返回值:
Entity:链表内的下一个实体
CreateByClassname Entity CreateByClassname( string className) 效果:用类名称来创建实体
传入参数:
className:实体名称
返回值:
Entity:创建的实体
FindByName Entity FindByName( Entity startFrom, string entName) 效果:通过类名称来查找实体。(如果startFrom是空则返回查找到的第一个,如果不为空则返回startFrom后的一个)
传入参数:
startFrom:开始查找的实体,entName:查找到这个实体名称结束
返回值:无
FindAllByName table FindAllByName( string name) 效果:通过名字查找实体;返回一个所有找到的数列
传入参数:
name:实体名称
返回值:无
FindInSphere Entity FindInSphere( Entity startFrom, vector origin, float radius) 效果:在有效范围内查找实体(如果startFrom是空则返回查找到的第一个,如果不为空则返回startFrom后的一个)
传入参数:
startFrom:开始查找的实体,origin:原点矢量,radius:范围值
返回值:
Entity:查找到的实体
FindAllInSphere table FindAllInSphere( vector origin, float radius) 效果:在有效范围内查找实体
传入参数:
origin:原点矢量,radius:有效范围
返回值:包含有效范围内所有实体的表
FindByTarget Entity FindByTarget( Entity startFrom, string targetName) 通过目标名称查找实体(如果startFrom是空则返回查找到的第一个,如果不为空则返回startFrom后的一个)
传入参数:
startFrom:开始查找的实体,targetName:开始查找的实体名称
返回值:
Entity:实体
FindAllByTarget table FindAllByTarget(string targetName) 效果:通过目标名称查找实体
传入参数:
targetName:目标名称
返回值:
table:查找到包含该名称的所有实体的表
FindByModel Entity FindByModel( Entity startFrom, string modelName) 效果:通过模型名称查找实体。(如果startFrom是空则返回查找到的第一个,如果不为空则返回startFrom后的一个)
传入参数:
startFrom:开始查找的实体,modelName:模型名
返回值:
Entity:模型实体
FindAllByModel table FindAllByModel( string modelName) 效果:通过模型名称来查找实体
传入参数:
modelName:模型名称
返回值:
table:包含该模型名所有模型实体的表
FindByNameNearest Entity FindByNameNearest( string entityName, vector origin, float radius ) 效果:查找最接近一个指针的实体
传入参数:
entityName:实体名称,origin:原点矢量,radius:有效范围
返回值:
Entity:第一个查找到的实体
FindByNameWithin Entity FindByNameWithin( Entity startFrom, string entityName, vector origin, float radius) 效果:在有效范围内查找实体。(如果startFrom是空则返回查找到的第一个,如果不为空则返回startFrom后的一个)
传入参数:
startFrom:开始查找的实体,entityName:实体名称
返回值:
Entity:有效范围内第一个查找到的实体
FindAllByNameWithin table FindAllByNameWithin( string entityName, vector origin, float radius) 效果:在有效范围内查找实体
传入参数:
entityName:实体名称,origin:原点矢量,radius:有效范围
返回值:
table:包含有效范围内查找到的所有实体的表
FindByClassnameNearest Entity FindByClassnameNearest( string className, vector origin, float radius) 效果:通过最接近一个指针的类名来查找实体
传入参数:
className:类名,origin:原点矢量,radius:有效范围
返回值:
Entity:查找到的实体
FindByClassnameWithin Entity FindByClassnameWithin( Entity startFrom, string className, vector origin, float radius) 效果:在有效范围内查找实体(如果startFrom是空则返回查找到的第一个,如果不为空则返回startFrom后的一个)
传入参数:
startFrom:开始查找的实体,className:类名,,origin:原点矢量,radius:有效范围
返回值:
Entity:查找到的实体
FindAllByClassnameWithin table FindAllByClassnameWithin( string className, vector origin, float radius) 效果:在有效范围内查找实体
传入参数:
startFrom:开始查找的实体,className:类名,,origin:原点矢量,radius:有效范围
返回值:
table:包含所有查找到的实体的表
GetHero Hero GetHero( int heroId) 效果:获得在英雄列表中的第N个英雄
传入参数:
heroId:英雄ID
返回值:
Hero:英雄实体
GetHeroCount int GetHeroCount() 效果:返回世界中英雄的数量
传入参数:无
返回值:
int类型:英雄个数
GetAllHeroes table GetAllHeroes() 效果:返回所有在世界中的英雄
传入参数:无
返回值:
table:包含所有英雄的实体的表
GetFloat float GetFloat( string varName) 效果:以浮点类型返回控制台变量
传入参数:
varName:控制台变量名
返回值:
float类型:以浮点类型返回控制台变量
SetFloat void SetFloat( string varName, float value) 效果:如果存在的话,设定指定控制台变量为浮点类型
传入参数:
varName:控制台变量名,value:改变量的float值
返回值:无
GetStr string GetStr( string varName) 效果:以字符串返回控制台变量,如果没有此控制台变量则返回为空
传入参数:
varName:控制台变量名
返回值:
字符串类型:以字符串形式返回控制台变量
GetBool bool GetBool( string varName) 效果:以布尔类型返回控制台变量,如果没有此控制台变量则返回为空
传入参数:
varName:控制台变量名
返回值:
字符串类型:以布尔类型形式返回控制台变量
SetBool void SetBool( string varName, bool value) 效果:如果存在的话,设一个控制台变量为布尔类型
传入参数:
varName:控制台变量名,value:保存的布尔值
返回值:无
RegisterCommand void RegisterCommand( string varName, function func, string helpText, int flags) 效果:注册一个控制台命令
传入参数:
varName:控制台变量名,func:要注册的函数,helpText:函数说明文本,flags:标志(作用未知)
返回值:无
RegisterConvar void RegisterConvar( string name, string default, string helpText, int flags) 效果:注册一个新的控制台命令
传入参数:
varName:控制台名,default:默认值(作用不明,猜测为默认路径?),helpText:说明文本,flags:标志(作用未知)
返回值:无
GetCommandClient Player GetCommandClient() 效果:返回使用控制台命令的玩家
传入参数:无
返回值:
Player:使用控制台的玩家实体
ConnectOutput void ConnectOutput( string, string ) 效果:增加一个输入/输出连接,以便在特定的时候指定的函数
传入参数:
等待试用(猜测:第一个为IO连接名,第二个为函数名)
返回值:无
DisconnectOutput void DisconnectOutput( string, string ) 效果:从一个输入/输出借鉴中移除一个代码函数
传入参数:
等待试用(猜测:第一个为IO连接名,第二个为函数名)
返回值:无
GetHealth int GetHealth() 效果:获得生命值
传入参数:无
返回值:
int类型:当前生命值
SetHealth void SetHealth( int hp) 效果:设置生命值
传入参数:
hp:生命值
返回值:无
GetMaxHealth int GetMaxHealth() 效果:获得最大生命值
传入参数:无
返回值:
int类型:最大生命值
SetMaxHealth void SetMaxHealth( int hp) 效果:设置最大生命值
传入参数:
hp:最大生命值
返回值:无
IsAlive bool IsAlive() 效果:是否存活
传入参数:无
返回值:
布尔类型:true 或 false
Remove void Remove() 效果:移除(在实体内调用该方法删除该实体)
传入参数:无
返回值:无
SetModel void SetModel( string modelName) 效果:根据模型名设置模型(在实体内调用该方法设置该实体的模型)
传入参数:
modelName:模型名
返回值:无
GetModelName string GetModelName() 效果:获得模型名(在实体内调用该方法获得该实体模型的名字)
传入参数:无
返回值:
字符串:模型名
EmitSound void EmitSound( string soundName) 效果:播放声音(调用该方法播放声音)
传入参数:
soundName:声音文件的名字
返回值:无
EmitSoundParams void EmitSoundParams( string soundName, int pitch, float volume) 效果:播放并修改声音(可以把这个方法当成柯南的蝴蝶结)
传入参数:
soundName:必须大于0,声音文件的名字,pitch:必须大于0,音阶(这个比较专业个人理解可能有误),volume:音量大小
返回值:无
StopSound void StopSound( string soundName) 效果:停止一个实体发出的声音
传入参数:无
返回值:无
PrecacheSoundScript void PrecacheSoundScript( string soundName) 效果:为接下来的播放先缓存一个声音
传入参数:
soundName:声音名称
返回值:无
GetSoundDuration float GetSoundDuration( string soundName, string actorModelname) 效果:返回声音播放时间(需要声音名、或者角色模型名称(可选)
传入参数:
soundName:声音名称,actorModelname:角色模型名
返回值:无
GetClassname string GetClassname() 效果:获得当前实体的类名
传入参数:无
返回值:
字符串类型:类名
GetName string GetName() 效果:坐等测试......
传入参数:无
返回值:
字符串类型:名字
GetName string GetName() 效果:获取被移除的(唯一,相当于WE编辑器中的最后一个被移除)装饰物实体的名字
传入参数:无
返回值:
字符串类型:装饰品名称
GetOrigin vector GetOrigin() 效果:实体在链表中的矢量
传入参数:无
返回值:
vector:链表中的矢量
SetAbsOrigin void SetAbsOrigin( vector vec) 效果:设置起始点
传入参数:
vec:链表中的矢量
返回值:无
SetOrigin void SetOrigin( vector vec) 效果:设置矢量(不推荐新手使用)
传入参数:
vec:矢量
返回值:无
GetForwardVector vector GetForwardVector() 效果:获得实体的正前方矢量
传入参数:无
返回值:
vec:矢量
GetLeftVector vector GetLeftVector() 效果:获得实体的左方矢量
传入参数:无
返回值:
vec:矢量
GetUpVector vector GetUpVector() 效果:获得实体的上方矢量
传入参数:无
返回值:
vec:矢量
SetForwardVector void SetForwardVector( vector forward) 效果:设置实体的方向来决定正前方的矢量
传入参数:
vec:链表中的矢量
返回值:无
GetVelocity vector GetVelocity() 效果:获得单位的速率矢量
传入参数:无
返回值:
vec:矢量
SetVelocity void SetVelocity( vector velocity) 效果:设置单位的速率矢量
传入参数:
vec:链表中的矢量
返回值:无
SetAngularVelocity void SetAngularVelocity( float pitch, float yaw, float roll) 效果:设置单位的速率矢量
传入参数:
pitch:y轴值,yaw:z轴值,roll:x轴值
返回值:无
GetAngularVelocity vector GetAngularVelocity() 效果:获得单位的速率矢量
传入参数:无
返回值:
vector:矢量
GetCenter vector GetCenter() 效果:获得模型中心的矢量的绝对坐标
传入参数:无
返回值:
vector:矢量
EyePosition vector EyePosition() 效果:取得眼部位置的矢量的绝对坐标
传入参数:无
返回值:
vector:矢量
SetAngles void SetAngles( float pitch, float yaw, float roll) 效果:设定实体的x、y和z坐标值
传入参数:pitch:y轴值,yaw:z轴值,roll:x轴值
返回值:无
GetAngles vector GetAngles() 效果:获得实体的x、y和z坐标值
传入参数:无
返回值:
vector:矢量
SetSize void SetSize( vector, vector ) 效果:未知作用,等待测试
传入参数:
参数为矢量,来源作用未知
返回值:无
GetBoundingMins vector GetBoundingMins() 效果:获得以物体为中心的最小矢量
传入参数:无
返回值:
vector:矢量
GetBoundingMaxs vector GetBoundingMaxs() 效果:获得以物体为中心的最大矢量
传入参数:无
返回值:
vector:矢量
Destroy void Destroy() 效果:销毁(WE里俗称排泄,删掉这个实体)
传入参数:无
返回值:无
SetOwner void SetOwner( Entity parent) 效果:设置实体的父级。这样并不会使玩家控制实体
传入参数:
parent:父类实体
返回值:无
GetTeam int GetTeam() 效果:获得该实体所在组
传入参数:无
返回值:
int类型:该实体所在组的值
SetTeam void SetTeam( int team) 效果:设置该实体所在组
传入参数:
team:该实体所在组的值
返回值:无
GetMoveParent Entity GetMoveParent() 效果:在数据结构中,检索到的实体的父节点
传入参数:
team:该实体所在组的值
返回值:
Entity:该实体的父级实体
GetRootMoveParent GetRootMoveParent() 效果:在数据结构中的根节点
传入参数:无
返回值:
Entity:该实体的父级实体
FirstMoveChild Entity FirstMoveChild() 效果:在数据结构中,该节点的第一个子节点
传入参数:无
返回值:
Entity:该实体的第一个子节点实体
NextMovePeer Entity NextMovePeer() 效果:在数据结构中,该节点的下一个子节点(在遍历中使用,用于第一子节点后)
传入参数:无
返回值:
Entity:该实体的下一个子节点实体
__KeyValueFromString bool __KeyValueFromString( string, string ) 效果:等待测试(猜测为在第一个变量中,查找是否有第二变量的关键字)
传入参数:第一个String被查找值,第二哥String搜索值
返回值:
布尔类型:是否包含
__KeyValueFromFloat bool __KeyValueFromFloat( string, float ) 效果:等待测试(猜测为在第一个变量中,查找是否有第二变量的关键字)
传入参数:第一个String被查找值,第二哥float搜索值
返回值:
布尔类型:是否包含
__KeyValueFromInt bool __KeyValueFromInt( string, int ) 效果:等待测试(猜测为在第一个变量中,查找是否有第二变量的关键字)
传入参数:第一个String被查找值,第二哥int搜索值
返回值:
布尔类型:是否包含
__KeyValueFromVector bool __KeyValueFromVector( string, vector ) 效果:等待测试(猜测为在第一个变量中,查找是否有第二变量的关键字)
传入参数:第一个String被查找值,第二哥vector搜索值
返回值:
布尔类型:是否包含
Trigger void Trigger() 效果:响应该实体的触发事件(被触发时调用)
传入参数:无
返回值:无
ValidateScriptScope bool ValidateScriptScope() 效果:确认实体的在该范围内有效
传入参数:无
返回值:
布尔类型:是否有效
GetScriptScope hscript GetScriptScope() 效果:获取有效脚本
传入参数:无
返回值:
hscript:获得脚本
GetScriptId string GetScriptId() 效果:获得脚本的ID
传入参数:无
返回值:
string:脚本ID(注意是一个String类型的ID)
GetOwner Entity GetOwner() 效果:获得此实体的所有者
传入参数:无
返回值:
Entity:该实体的所有者实体
entindex int entindex() 效果:获得实体索引(未测试)
传入参数:无
返回值:
int:该实体的索引
SetHasRepicked void SetHasRepicked( int playerId) 效果:标记重新选择的玩家英雄
传入参数:
playerId:玩家ID
返回值:无
HasRepicked bool HasRepicked( int playerId) 效果:如果玩家重新选择了英雄,则返回真(注意重选的时候记得调用标记方法)
传入参数:
playerId:玩家ID
返回值:
布尔类型:true或false
SetHasRandomed void SetHasRandomed( int playerId) 效果:标记随机选择的玩家英雄
传入参数:
playerId:玩家ID
返回值:无
HasRandomed bool HasRandomed( int playerId) 效果:如果玩家随机选择了英雄,则返回真(注意重选的时候记得调用标记方法)
传入参数:
playerId:玩家ID
返回值:
布尔类型:true或false
IsValidTeamPlayerID bool IsValidTeamPlayerID( int playerId) 效果:判断是否是有效的队伍
传入参数:
playerId:玩家ID
返回值:
布尔类型:true或false
SetGameWinner bool IsValidTeamPlayer( int playerId) 效果:判断玩家是否在有效的队伍内
playerId:玩家ID
返回值:
布尔类型:true或false
IsValidPlayerID bool IsValidPlayerID( int playerId)) 效果:是否是有效的玩家ID
playerId:玩家ID
返回值:
布尔类型:true或false
IsValidPlayer bool IsValidPlayer( int playerId)) 效果:是否是有效的玩家
playerId:玩家ID
返回值:
布尔类型:true或false
GetLevel int GetLevel( int playerId) 效果:获得等级
playerId:玩家ID
返回值:
int类型:玩家等级
IncrementKills void IncrementKills( int playerId, int kills) 效果:增加玩家杀人数
传入参数:
playerId:玩家ID,kills:杀人数
返回值:无
IncrementAssists void IncrementAssists( int playerId) 效果:增加玩家助攻数
传入参数:
playerId:玩家ID
返回值:无
IncrementDeaths void IncrementDeaths( int playerId) 效果:增加玩家死亡数
传入参数:
playerId:玩家ID
返回值:无
GetKills int GetKills( int playerId) 效果:获得玩家杀人数
传入参数:
playerId:玩家ID
返回值:
int类型:玩家杀人数
GetAssists int GetAssists( int playerId) 效果:获得玩家助攻数
传入参数:
playerId:玩家ID
返回值:
int类型:玩家助攻数
GetDeaths int GetDeaths( int playerId) 效果:获得玩家死亡数
传入参数:
playerId:玩家ID
返回值:
int类型:玩家死亡数
GetStuns float GetStuns( int playerId) 效果:获得玩家眩晕剩余时间
传入参数:
playerId:玩家ID
返回值:
float类型:玩家眩晕剩余时间
GetHealing float GetHealing( int playerId) 效果:获得玩家剩余生命值
传入参数:
playerId:玩家ID
返回值:
float类型:玩家剩余生命值
GetTowerKills int GetTowerKills( int playerId) 效果:获得玩家拆塔数量
传入参数:
playerId:玩家ID
返回值:
int类型:获得玩家拆塔数量
GetRoshanKills int GetRoshanKills( int playerId) 效果:获得玩家Roshan击杀次数
传入参数:
playerId:玩家ID
返回值:
int类型:玩家Roshan击杀次数
GetTeamKills int GetTeamKills( int playerId) 效果:获得玩家队伍击杀次数(求测试,获得该玩家所在队伍的总体击杀数)
传入参数:
playerId:玩家ID
返回值:
int类型:获得玩家队伍击杀次数(求测试,获得该玩家所在队伍的总体击杀数)
IncrementStreak void IncrementStreak( int playerId) 效果:增加该玩家连续击杀数
传入参数:
playerId:玩家ID
返回值:无
ClearStreak void ClearStreak( int playerId) 效果:清除该玩家连续击杀数
传入参数:
playerId:玩家ID
返回值:无
GetStreak int ModifyGold( int playerId, int goldAmt, bool reliable, int ) 效果:修改玩家金钱
传入参数:
playerId:玩家ID,goldAmt:金钱数量,reliable:死亡是否掉落,最后一个参数未知
返回值:
int类型:未知作用,求测试(预测返回玩家金钱)
SetGold void SetGold( int playerId, int goldAmt, bool reliable) 效果:修改设置玩家金钱
playerId:玩家ID,goldAmt:金钱数量,reliable:死亡是否掉落
返回值:无
SpendGold void SpendGold( int playerId, int amt, int ) 效果:设置玩家已经花费的金钱
传入参数:
playerId:玩家ID,amt:花费的钱,最后一个参数未知
返回值:无
GetGold int GetGold( int playerId) 效果:获得该玩家金钱
传入参数:
playerId:玩家ID
返回值:
int类型:玩家金钱
GetReliableGold int GetReliableGold( int playerId) 效果:获得该玩家可死亡掉落的金钱
传入参数:
playerId:玩家ID
返回值:
int类型:该玩家可死亡掉落的金钱
GetUnreliableGold int GetUnreliableGold( int playerId) 效果:获得该玩家不会因死亡掉落的金钱
传入参数:
playerId:玩家ID
返回值:
int类型:该玩家不会因死亡掉落的金钱
ResetTotalEarnedGold void ResetTotalEarnedGold( int playerId) 效果:设置玩家总共获得的金钱
传入参数:
playerId:玩家ID
返回值:无
ResetTotalEarnedGold int GetTotalEarnedGold( int playerId) 效果:获得玩家总共获得的金钱
传入参数:
playerId:玩家ID
返回值:
int类型:该玩家总共获得的金钱
GetTotalGoldSpent int GetTotalGoldSpent( int playerId) 效果:获得玩家总共消费的金钱
传入参数:
playerId:玩家ID
返回值:
int类型:该玩家总共消费的金钱
AddGoldSpentOnSupport void AddGoldSpentOnSupport( int, int ) 效果:增加玩家可用金额
传入参数:
第一个参数预计为playerId:玩家ID,第一个参数预计为amt:可用金额
返回值:无
GetGoldSpentOnSupport int GetGoldSpentOnSupport( int playerId) 效果:获得玩家可用金额
传入参数:
playerId:玩家ID
返回值:
int类型:玩家可用金额
GetGoldSpentOnConsumables int GetGoldSpentOnConsumables( int playerId) 效果:获得玩家在消费品上花费的钱
传入参数:
playerId:玩家ID
返回值:
int类型:玩家在消费品上花费的钱
GetGoldSpentOnItems int GetGoldSpentOnItems( int playerId) 效果:获得玩家在购买装备上花费的钱
传入参数:
playerId:玩家ID
返回值:
int类型:玩家在购买装备上花费的钱
GetGoldLostToDeath int GetGoldLostToDeath( int playerId) 效果:获得玩家在因死亡掉落的钱
传入参数:
playerId:玩家ID
返回值:
int类型:玩家在因死亡掉落的钱
GetGoldSpentOnBuybacks int GetGoldSpentOnBuybacks( int playerId) 效果:获得玩家在买活上花费的钱
传入参数:
playerId:玩家ID
返回值:
int类型:玩家在买活上花费的钱
GetGoldPerMin float GetGoldPerMin( int playerId) 效果:玩家每分钟获得的钱
传入参数:
playerId:玩家ID
返回值:
float类型:玩家每分钟获得的钱
GetXPPerMin float GetXPPerMin( int playerId) 效果:等待测试,玩家每分钟获得的经验(总感觉方法名不对,应该是GetEXPPerMin)
传入参数:
playerId:玩家ID
返回值:
float类型:玩家每分钟获得的经验
GetAegisPickups int GetAegisPickups( int playerId) 效果:获得玩家战斗系统镜头(不知道是何作用)
传入参数:
playerId:玩家ID
返回值:
int类型:未知
AddAegisPickup void AddAegisPickup( int playerId) 效果:增加玩家战斗系统镜头(不知道是何作用)
传入参数:
playerId:玩家ID
返回值:无
GetRunePickups int GetRunePickups( int playerId) 效果:获得符文镜头(不知道是何作用)
传入参数:
playerId:玩家ID
返回值:
int类型:未知
AddRunePickup void AddRunePickup( int playerId) 效果:增加符文镜头(不知道是何作用)
传入参数:
playerId:玩家ID
返回值:无
GetNumConsumablesPurchased int GetNumConsumablesPurchased( intplayerId ) 效果:获得玩家已购买的消费品的数量
传入参数:
playerId:玩家ID
返回值:
int类型:玩家已购买的消费品的数量
GetNumItemsPurchased int GetNumItemsPurchased( int playerId) 效果:获得玩家已购买的装备的数量
传入参数:
playerId:玩家ID
返回值:
int类型:玩家已购买的装备的数量
GetTimeOfLastItemPurchase float GetTimeOfLastItemPurchase( int playerId) 效果:获得玩家已购买的装备的数量
传入参数:
playerId:玩家ID
返回值:
float类型:玩家已购买的装备的数量
GetTimeOfLastConsumablePurchase float GetTimeOfLastConsumablePurchase( int playerId) 效果:获得玩家最后一次购买消费品的时间
传入参数:
playerId:玩家ID
返回值:
float类型:玩家最后一次购买消费品的时间
GetTimeOfLastDeath float GetTimeOfLastDeath( int playerId) 效果:获得玩家最后一次死亡时间
传入参数:
playerId:玩家ID
返回值:
float类型:玩家最后一次死亡时间
GetRespawnSeconds int GetRespawnSeconds( int playerId) 效果:获得玩家复活倒计时
传入参数:
playerId:玩家ID
返回值:
int类型:玩家复活倒计时
GetRespawnSeconds void IncrementTotalEarnedXP( int playerId, int amt) 效果:增加玩家获得的总共经验数
传入参数:
playerId:玩家ID,amt:经验数
返回值:无
GetTotalEarnedXP int GetTotalEarnedXP( int playerId) 效果:增加玩家获得的总共经验数
传入参数:
playerId:玩家ID
int类型:玩家获得的总共经验数
AddClaimedFarm void AddClaimedFarm( int playerId, float farm) 效果:增加工资(求测试)
传入参数:
playerId:玩家ID,farm:工资数量
返回值:无
GetClaimedFarm float GetClaimedFarm( int playerId) 效果:获得玩家工资
传入参数:
playerId:玩家ID,farm:工资数量
返回值:
int类型:玩家工资
GetRawPlayerDamage int GetRawPlayerDamage( int playerId) 效果:获得玩家受到的伤害
传入参数:
playerId:玩家ID
返回值:
int类型:玩家受到的伤害
GetRawPlayerDamage void ClearRawPlayerDamageMatrix( int playerId) 效果:清除玩家受到的伤害矩阵
传入参数:
playerId:玩家ID
返回值:无
ClearKillsMatrix void ClearKillsMatrix( int playerId) 效果:清除玩家杀人矩阵
传入参数:
playerId:玩家ID
返回值:无
GetTowerDamageTaken int GetTowerDamageTaken( int playerId) 效果:获得塔的伤害
传入参数:
playerId:玩家ID
返回值:
int类型:塔的伤害
GetCreepDamageTaken int GetCreepDamageTaken( int playerId) 效果:获得小兵的伤害
传入参数:
playerId:玩家ID
返回值:
int类型:小兵的伤害
GetHeroDamageTaken int GetHeroDamageTaken( int playerId) 效果:获得英雄的伤害
传入参数:
playerId:玩家ID
返回值:
int类型:英雄的伤害
GetHeroDamageTaken int GetDamageDoneToHero( int playerId, int heroId) 效果:获得该玩家对英雄的伤害
传入参数:
playerId:玩家ID,heroId:英雄ID
返回值:
int类型:该玩家对英雄的伤害
GetKillsDoneToHero int GetKillsDoneToHero( int playerId, int heroId) 效果:获得该玩家对某个英雄的击杀次数
传入参数:
playerId:玩家ID,heroId:英雄ID
返回值:
int类型:获得该玩家对某个英雄的击杀次数
GetSelectedHeroName string GetSelectedHeroName( int playerId) 效果:获得该玩家选择的英雄名
传入参数:
playerId:玩家ID
返回值:
字符串类型:该玩家选择的英雄名
GetSelectedHeroID int GetSelectedHeroID( int playerId) 效果:获得该玩家选择的英雄ID
传入参数:
playerId:玩家ID
返回值:
int类型:该玩家选择的英雄ID
IsHeroSelected bool IsHeroSelected( string heroName) 效果:该名称的英雄是否已被选择
传入参数:
heroName:英雄名称
返回值:
布尔类型:true或false
WhoSelectedHero int WhoSelectedHero( string heroName) 效果:根据英雄名返回选择该英雄的玩家ID
传入参数:
heroName:英雄名称
返回值:
int类型:玩家ID
GetSelectedHeroEntity Entity GetSelectedHeroEntity( int playerId) 效果:根据英雄名返回选择该英雄的实体
传入参数:
playerId:玩家ID
返回值:
Entity:选择该英雄的实体
HasSelectedHero bool HasSelectedHero( int playerId) 效果:该玩家是否已经选择了英雄
传入参数:
playerId:玩家ID
返回值:
布尔类型:true 或 false
GetPlayer Player GetPlayer( int playerId) 效果:根据玩家ID,获得玩家实体
传入参数:
playerId:玩家ID
返回值:
Player:玩家实体
GetNthPlayerIDOnTeam int GetNthPlayerIDOnTeam( int index, int team) 效果:在队伍内获得第index个玩家的ID
传入参数:
index:索引,team:队伍
返回值:
int类型:玩家ID
IncrementLastHits void IncrementLastHits( int playerId) 效果:增加最后攻击该单位的玩家ID
传入参数:
playerId:玩家ID
返回值:无
GetLastHits int GetLastHits( int playerId) 效果:获得该单位的最后攻击玩家ID
传入参数:
playerId:玩家ID
返回值:
int类型:玩家ID
IncrementGoldBagsCollected void IncrementGoldBagsCollected( int playerId) 效果:增加玩家收集到的金袋(冥魂之夜活动专用)
传入参数:
playerId:玩家ID
返回值:无
GetGoldBagsCollected int GetGoldBagsCollected( int playerId) 效果:获得玩家收集到的金袋个数(冥魂之夜活动专用)
传入参数:
playerId:玩家ID
返回值:
int类型:玩家收集到的金袋个数
IncrementLastHitStreak void IncrementLastHitStreak( int playerId) 效果:增加击杀数量(冥魂之夜活动专用)
传入参数:
playerId:玩家ID
返回值:无
ClearLastHitStreak void ClearLastHitStreak( int playerId) 效果:清除击杀数量(冥魂之夜活动专用)
传入参数:
playerId:玩家ID
返回值:无
GetLastHitStreak int GetLastHitStreak( int playerId) 效果:获得玩家的最后击杀数(冥魂之夜活动专用)
传入参数:
playerId:玩家ID
返回值:
int类型:玩家的最后击杀数
IncrementLastHitMultikill void IncrementLastHitMultikill( int playerId) 效果:设置玩家的最后连杀数
传入参数:
playerId:玩家ID
返回值:无
ClearLastHitMultikill void ClearLastHitMultikill( int playerId) 效果:清除玩家的最后连杀数
传入参数:
playerId:玩家ID
返回值:无
GetLastHitMultikill int GetLastHitMultikill( int playerId) 效果:清除玩家的最后连杀数
传入参数:
playerId:玩家ID
返回值:
int类型:玩家的最后连杀数
IncrementNearbyCreepDeaths void IncrementNearbyCreepDeaths( int playerId) 效果:增加玩家最近击杀的小兵数量
传入参数:
playerId:玩家ID
返回值:
int类型:玩家最近击杀的小兵数量
IncrementNearbyCreepDeaths void IncrementDenies( int playerId) 效果:增加玩家反补数量
传入参数:
playerId:玩家ID
返回值:无
GetDenies int GetDenies( int playerId) 效果:获得玩家反补数量
传入参数:
playerId:玩家ID
返回值:
int类型:玩家反补数量
IncrementClaimedMisses void IncrementClaimedMisses( int playerId) 效果:增加该玩家的丢失数量(冥魂之夜活动,逃跑的怪数量?)
传入参数:
playerId:玩家ID
返回值:无
GetClaimedMisses int GetClaimedMisses( int playerId) 效果:增加该玩家的丢失数量(冥魂之夜活动,逃跑的怪数量?)
传入参数:
playerId:玩家ID
返回值:
int类型:该玩家的丢失数量
IncrementClaimedDenies void IncrementClaimedDenies( int playerId) 效果:增加玩家反补的数量(冥魂之夜活动,逃跑的怪数量?)
传入参数:
playerId:玩家ID
返回值:无
GetClaimedDenies int GetClaimedDenies( int playerId ) 效果:获得该玩家的反补数量(冥魂之夜活动,逃跑的怪数量?)
传入参数:
playerId:玩家ID
返回值:
int类型:该玩家的反补数量
IncrementMisses void IncrementMisses( int playerId) 效果:不懂。。。。求测试
传入参数:
playerId:玩家ID
返回值:无
GetMisses int GetMisses( int playerId) 效果:不懂。。。。求测试
传入参数:
playerId:玩家ID
返回值:
int类型:不懂。。。。
UpdateTeamSlot void UpdateTeamSlot( int playerId, int slot) 效果:更新该玩家队伍视角
传入参数:
playerId:玩家ID
返回值:无
GetTeam int GetTeam( int playerId) 效果:根据队伍id
传入参数:
playerId:玩家ID
返回值:
int类型:队伍ID
IsBroadcaster bool IsBroadcaster( int playerId) 效果:判断该玩家是否为广播员
传入参数:
playerId:玩家ID
返回值:
布尔类型:true 或 false
GetBroadcasterChannel uint GetBroadcasterChannel( int playerId) 效果:获取改玩家的广播频道
传入参数:
playerId:玩家ID
返回值:
uint:广播频道实体
GetBroadcasterChannelSlot uint GetBroadcasterChannelSlot( int playerId) 效果:获取改玩家的广播视角
传入参数:
playerId:玩家ID
返回值:
uint:广播视角
GetSteamAccountID uint GetSteamAccountID( int playerId) 效果:根据玩家编号获得该用户的steamID
传入参数:
playerId:玩家ID
返回值:
uint:steam账号ID(不清楚为什么不直接返回String或者int,难道拿到的是steam账号实体)
IsFakeClient bool IsFakeClient( int playerId) 效果:判断该玩家是否是虚拟客户端
传入参数:
playerId:玩家ID
返回值:
布尔类型:true 或 false
HaveAllPlayersJoined bool HaveAllPlayersJoined() 效果:所有玩家是否加入
传入参数:无
返回值:
布尔类型:true 或 false
GetPlayerLoadedCompletely bool GetPlayerLoadedCompletely( int playerId) 效果:所有玩家是否载入完成
传入参数:
playerId:玩家ID
返回值:
布尔类型:true 或 false
SetPlayerReservedState void SetPlayerReservedState( int playerId, bool reserved) 效果:所有玩家是否载入完成
传入参数:
playerId:玩家ID
返回值:
布尔类型:true 或 false
GetPlayerReservedState bool GetPlayerReservedState( int playerId) 效果:判断玩家是否是保留玩家(断线玩家重连调用)
传入参数:
playerId:玩家ID
返回值:
布尔类型:true 或 false
GetConnectionState unknown_variant_type GetConnectionState( int playerId) 效果:获得玩家的连接状态
传入参数:
playerId:玩家ID
返回值:
未知变量类型
HeroLevelUp void HeroLevelUp( int playerId) 效果:英雄升级
传入参数:
playerId:玩家ID
返回值:无
HeroLevelUp void HeroLevelUp( int playerId) 效果:英雄升级
传入参数:
playerId:玩家ID
返回值:无
SetLastBuybackTime void SetLastBuybackTime( int playerId, int time) 效果:设置最后购买时间
传入参数:
playerId:玩家ID,time:时间
返回值:无
GetPlayerName string GetPlayerName( int playerId) 效果:获得玩家名
传入参数:
playerId:玩家ID
返回值:
字符串类型:玩家名
GetUnitShareMaskForPlayer int GetUnitShareMaskForPlayer( int playerId, int otherPlayerId) 效果:获得玩家单位共享列表
传入参数:
playerId:玩家ID,otherPlayerId:另一个玩家ID
返回值:
int类型:应该是列表的ID或者索引中的一个
IsHeroSharedWithPlayerID bool IsHeroSharedWithPlayerID( int playerId, int otherPlayerId) 效果:判断是否对另一个玩家共享英雄
传入参数:
playerId:共享玩家ID,otherPlayerId:被共享的玩家ID
返回值:
布尔类型:true 或 false
AreUnitsSharedWithPlayerID bool AreUnitsSharedWithPlayerID( int playerId, int otherPlayerId) 效果:判断是否对另一个玩家共享单位
传入参数:
playerId:共享玩家ID,otherPlayerId:被共享的玩家ID
返回值:
布尔类型:true 或 false
IsDisableHelpSetForPlayerID bool IsDisableHelpSetForPlayerID( int playerId, int otherPlayerId) 效果:判断是否禁止对另一个玩家使用
传入参数:
playerId:共享玩家ID,otherPlayerId:被共享的玩家ID
返回值:
布尔类型:true 或 false
SetUnitShareMaskForPlayer void SetUnitShareMaskForPlayer( int, int, int, bool ) 效果:对某玩家共享控制单位列表
传入参数:
猜测:第一个为playerId:共享玩家ID,第二个为otherPlayerId:被共享的玩家ID,第三个为maskID或者maskIndex:列表的ID或索引,第四个为isShared:是否共享
返回值:无
GetNumCouriersForTeam int GetNumCouriersForTeam( int team) 效果:获得队伍信使ID
传入参数:
team:队伍索引
返回值:无
GetNthCourierForTeam hscript GetNthCourierForTeam( int index, int team) 效果:获得队伍的第N个信使
传入参数:
index: 就是N,第几个,team:队伍索引
返回值:
hscript:脚本实体
SetBuybackCooldownTime void SetBuybackCooldownTime( int playerId, float cooldown) 效果:设置玩家买活时间
传入参数:
playerId: 玩家ID,cooldown:设置买活时间
返回值:无
SetBuybackGoldLimitTime void SetBuybackGoldLimitTime( int playerId, float buybackGold) 效果:设置玩家买活金钱
传入参数:
playerId: 玩家ID,buybackGold:设置买活钱
返回值:无
ResetBuybackCostTime void ResetBuybackCostTime( int playerId) 效果:重置买活花费时间
传入参数:
playerId: 玩家ID
返回值:无
BeginThink bool BeginThink( string thinkName, function func, float intervalInSeconds) 效果:开启AI思考(使用一个函数和区间来启用行为回调)
传入参数:
thinkName:AI名,func:匿名方法,intervalInSeconds:回调时间
返回值:
布尔类型:true或false
EndThink void EndThink( string thinkName ) 效果:关闭AI思考
传入参数:
thinkName:AI名
返回值:无
SetAlwaysShowPlayerInventory void SetAlwaysShowPlayerInventory( bool alwaysShow) 效果:无视被选择的单位,显示玩家英雄的物品栏
传入参数:
alwaysShow:是否一直显示
返回值:无
SetGoldSoundDisabled void SetGoldSoundDisabled( bool playSound) 效果: 使用一个布尔值来开启或关闭获得黄金的声音
传入参数:
playSound:是否开启
返回值:无
SetRecommendedItemsDisabled void SetRecommendedItemsDisabled( bool disableRecItems) 效果: 使用一个布尔值开启或关闭推荐物品表
传入参数:
disableRecItems:是否开启推荐物品表
返回值:无
SetCameraDistanceOverride void SetCameraDistanceOverride( float cameraDistance) 效果: 设置不同的摄像机距离,dota2默认是1134
传入参数:
cameraDistance:摄像机举例
返回值:无
SetOverrideSelectionEntity void SetOverrideSelectionEntity( Unit unit) 效果:设置一个默认选择实体的覆盖,而不是每个玩家的英雄
传入参数:
Unit:默认实体
返回值:无
SetRemoveIllusionsOnDeath void SetRemoveIllusionsOnDeath( bool removeIllusions) 效果: 使幻象死亡时能够被迅速移除,而不是在附近待几秒钟
传入参数:
removeIllusions:是否溢出幻象
返回值:无
ClientLoadGridNav void ClientLoadGridNav() 效果: 客户端加载网格坐标(gridnav 理解不能,暂时写网格坐标,如有更好答案请反馈)信息。客户端利用该信息辨别可以放置建筑的位置
传入参数:无
返回值:无
LookupAttachment int LookupAttachment( string attachmentName ) 效果:根据名称获得附件ID
传入参数:
attachmentName:名称
返回值:
int类型:附件ID
GetAttachmentOrigin vector GetAttachmentOrigin( int attachmentId ) 效果: 获得附件的原始矢量
传入参数:
attachmentId:附件ID
返回值:
vector类型:附件的原始矢量
GetAttachmentAngles vector GetAttachmentAngles( int attachmentId) 效果:取得附件的id的角度作为p,y,r三个坐标(注:并不是X,Y,Z--p:y轴值,y:z轴值,r:x轴值,骚年希望你没晕,听我说完,p代表pitch是指俯仰通俗来说是高度,y代表yaw是指偏航就是左右转向,r代表roll横滚)
传入参数:
attachmentId:附件ID
返回值:
vector类型:坐标矢量
GetAttachmentOrigin vector GetAttachmentOrigin( int attachmentId ) 效果: 获得附件的原始矢量
传入参数:
attachmentId:附件ID
返回值:
vector类型:附件的原始矢量
IsSequenceFinished bool IsSequenceFinished() 效果: 询问主序列是否播放完毕
传入参数:无
返回值:
布尔类型:true 或 false
SetBodygroup void SetBodygroup( int, int ) 效果: 设置主体
传入参数:
有待测试
返回值:无
SetModelScale SetModelScale( float scale, float fadeTimeSeconds) 效果: 设置模型尺寸
传入参数:
有待测试
返回值:无
GetCurrentScene hscript GetCurrentScene() 效果:返回最后激活的场景实体的实例(如果有的话)
传入参数:无
返回值:
hscript类型:该脚本实体
GetSceneByIndex hscript GetSceneByIndex( int ) 效果:根据索引返回场景实体的实例
传入参数:
scene的索引
返回值:
hscript类型:该脚本实体
IsCreature bool IsCreature() 效果:判断此NpC是否为生物)
传入参数:无
返回值:
布尔类型:true或false
IsHero bool IsHero() 效果: 判断是否为是英雄(包括幻象)
传入参数:无
返回值:
布尔类型:true或false
IsRealHero bool IsRealHero() 效果: 判断此英雄是否为真
传入参数:无
返回值:
布尔类型:true或false
IsTower bool IsTower() 效果: 判断这是否为一个塔
传入参数:无
返回值:
布尔类型:true或false
IsAlive bool IsAlive() 效果:判断单位是否存活
传入参数:无
返回值:
布尔类型:true或false
IsMechanical bool IsMechanical() 效果:判断该单位是否为机械单位
传入参数:无
返回值:
布尔类型:true或false
IsPhantom bool IsPhantom() 效果: 判断该单位是否为虚无状态
传入参数:无
返回值:
布尔类型:true或false
SetInitialGoalEntity void SetInitialGoalEntity( Entity goalEntity) 效果:设置NpC初路径点
传入参数:
goalEntity:路径点实体
返回值:无
GetInitialGoalEntity Entity GetInitialGoalEntity() 效果:返回改NPC的初路径点
传入参数:
goalEntity:路径点实体
返回值:
布尔类型:true或false
SetMustReachEachGoalEntity void SetMustReachEachGoalEntity( bool mustReach) 效果: 设定改NPC是否需要到达每一个路径点,而不可以抄近路
传入参数:
mustReach:是否抄近路
返回值:无
GetMustReachEachGoalEntity bool GetMustReachEachGoalEntity() 效果: 获得NPC是否需要到达每一个路径点的布尔值
传入参数:
goalEntity:路径点实体
返回值:
布尔类型:true或false
AddNewModifier void AddNewModifier( Unit caster, Ability optionalSrcAbility, string modifierName, table modifierData) 效果:给这个单位添加一个修改器
传入参数:
caster:单位,optionalSrcAbility:可选择的标准技能,modifierName:修改器名,modifierData:修改器数据
返回值:无
HasModifier bool HasModifier( string modifierName) 效果: 检查该单位是否已有修改器
传入参数:
modifierName:修改器名
返回值:
布尔类型:true或false
RemoveModifierByName void RemoveModifierByName( string modifierName) 效果: 移除一个修改器
传入参数:
modifierName:修改器名
返回值:无
RemoveModifierByNameAndCaster void RemoveModifierByNameAndCaster( string name, Unit caster) 效果: 移除某个安装的修改器
传入参数:
name:修改器名,caster:单位
返回值:无
AddItem void AddItem( Item itemName) 效果: 把物品加入到单位的物品栏中
传入参数:
itemName:物品名
返回值:无
AddAbility void AddAbility( string abilityName) 效果: 通过名字给一个单位添加技能
传入参数:
abilityName:技能名
返回值:无
RemoveAbility void RemoveAbility( string abilityName) 效果: 根据技能名从实体中移除技能
传入参数:
abilityName:技能名
返回值:无
HasAbility bool HasAbility( string abilityName) 效果:用名字检查一个单位是否有该技能
传入参数:
abilityName:技能名
返回值:
布尔类型:true或false
FindAbilityByName hscript FindAbilityByName( string abilityName) 效果:使用技能名称检索一个技能
传入参数:
abilityName:技能名
返回值:
hscript类型:技能脚本
GetGoldBounty int GetGoldBounty() 效果:获得该单位的金钱奖励
传入参数:无
返回值:
int类型:该单位的金钱奖励
SetDeathXP void SetDeathXP( int xpBounty) 效果:设置该单位的击杀经验奖励
传入参数:
xpBounty:经验数
返回值:无
GetDeathXP int GetGoldBounty() 效果:获得该单位的金钱奖励
传入参数:无
返回值:
int类型:该单位的金钱奖励
GetDeathXP int GetDeathXP() 效果:获得该单位的击杀经验奖励
传入参数:无
返回值:
int类型:该单位的击杀经验奖励
GetUnitName string GetUnitName() 效果: 获得该单位名字
传入参数:无
返回值:
字符串类型:该单位名字
GetTeamNumber int GetTeamNumber() 效果: 获得该单位队伍数字
传入参数:无
返回值:
int类型:该单位队伍数字
GetPlayerOwner hscript GetPlayerOwner() 效果:返回拥有此单位的玩家
传入参数:无
返回值:
hscript:玩家脚本实体
SetMaximumGoldBounty void SetMaximumGoldBounty( int goldBounty) 效果:设置杀死该单位最大金钱奖励(赏金)
传入参数:
goldBounty:金钱奖励数
返回值:无
SetMinimumGoldBounty void SetMinimumGoldBounty( int goldBounty) 效果:设置杀死该单位最小金钱奖励
传入参数:
goldBounty:金钱奖励数
返回值:无
GetTotalPurchasedUpgradeGoldCost int GetTotalPurchasedUpgradeGoldCost() 效果: 获得升级技能所花金钱
传入参数:
返回值:
int类型:升级技能所花金钱
ForceKill void ForceKill( bool playAegisLines) 效果:立刻杀死该单位
传入参数:
playAegisLines:作用未知等待测试(预测true为自杀?)
返回值:无
GetBaseDamageMin int GetBaseDamageMin() 效果:获得该单位最小攻击伤害数值
传入参数:无
返回值:
int类型:获得该单位最小攻击伤害数值
GetBaseDamageMax int GetBaseDamageMax() 效果:获得该单位最大攻击伤害数值
传入参数:无
返回值:
int类型:获得该单位最大攻击伤害数值
Heal void Heal( int amount, Unit source) 效果:治愈该单位
传入参数:
amount:治愈量大小,source:被治愈的单位
返回值:无
GetMaxHealth int GetMaxHealth() 效果: 获得该单位的最大生命上限
传入参数:无
返回值:
int类型:该单位的最大生命上限
GetHealthPercent int GetHealthPercent() 效果: 获得该单位的生命值的百分比
传入参数:无
返回值:
int类型:该单位的生命值的百分比
SetMana void SetMana( float mana) 效果: 设置该单位魔法值
传入参数:
mana:魔法值
返回值:无
GetMaxMana float GetMaxMana() 效果: 获得该单位最大魔法值
传入参数:无
返回值:
float类型:该单位最大魔法值
RespawnUnit void RespawnUnit() 效果: 如果可以的话,复活目标单位
传入参数:无
返回值:无
GetLevel int GetLevel() 效果: 返回单位等级
传入参数:无
返回值:
int类型:单位等级
GetItemInSlot hscript GetItemInSlot( int slotId) 效果: 返回物品栏中第N个物品(索引从0开始)
传入参数:
slotId:物品栏中的索引
返回值:
hscript类型:物品脚本
CastAbilityOnTarget void CastAbilityOnTarget( Unit target, Ability ability, int ) 效果: 施放指定目标技能
传入参数:
target:目标单位,ability:技能,第三个参数可以是0或-1,但作用未知(可能是用于判断是否可以点地释放的)
返回值:无
CastAbilityNoTarget void CastAbilityNoTarget( Ability ability, int ) 效果: 施放无目标技能,第三个参数可以是0或-1
传入参数:
ability:技能,第三个参数可以是0或-1,但作用未知(可能是用于判断是否可以点地释放的)
返回值:无
SetOriginalModel void SetOriginalModel( string originalModel) 效果: 设置单位的初始模型,生效时将会改变模型视图(类似于变身技能吧)
传入参数:
originalModel:模型名
返回值:无
AddNoDraw void AddNoDraw() 效果:添加不可选取标记
传入参数:无
返回值:无
RemoveNoDraw void RemoveNoDraw() 效果:移除不可选取标记
传入参数:无
返回值:无
GetPlayerOwnerID int GetPlayerOwnerID() 效果:获得该单位所有者的游戏ID
传入参数:无
返回值:
int类型:单位所有者的游戏ID
IsRangedAttacker bool IsRangedAttacker() 效果:判断该单位是否为范围攻击
传入参数:无
返回值:
布尔类型:true 或 false
GetInvulnCount int GetInvulnCount() 效果:获得一个建筑的无敌时间
传入参数:无
返回值:
int: 无敌时间
SetInvulnCount void SetInvulnCount( int ) 效果:设置一个建筑的无敌时间
传入参数:
int 无敌时间
返回值:无
CreatureLevelUp void CreatureLevelUp( int numLevels) 效果: 给该生物以特定数字升级
传入参数:
numLevels:等级
返回值:无
AddItemDrop void AddItemDrop( PhysicalItem item) 效果: 为该单位添加特定的掉落物品
传入参数:
item:物品
返回值:无
SetChampion void SetChampion( bool champion) 效果: 设置该单位精英
传入参数:
champion:是否是精英
返回值:无
IsChampion bool IsChampion() 效果:判断该单位是否为精英
传入参数:
attachmentName:名称
返回值:
布尔类型:true 或 false
SetHPGain void SetHPGain( int hpPerLevel) 效果: 设置每级生命上限增加量
传入参数:
hpPerLevel:HP增加量
返回值:无
SetManaGain void SetManaGain( int manaPerLevel) 效果: 设置每级魔法上限增加量
传入参数:
hpPerLevel:魔法增加量
返回值:无
SetHPRegenGain void SetHPRegenGain( float regenPerLevel) 效果: 设置每级生命回复量
传入参数:
regenPerLevel:生命回复量
返回值:无
SetManaRegenGain void SetManaRegenGain( float manaRegenGain) 效果: 设置每级魔法回复量
传入参数:
regenPerLevel:魔法回复量
返回值:无
SetDamageGain void SetDamageGain( int damageGain) 效果:设置该生物每级伤害增加
传入参数:
damageGain:伤害增加量
返回值:无
SetArmorGain void SetArmorGain( float armorGain) 效果: 设置该生物每级护甲增加
传入参数:
armorGain:护甲增加量
返回值:无
SetMagicResistanceGain void SetMagicResistanceGain( float magicResistGain) 效果: 设置该生物每级魔抗增加
传入参数:
magicResistGain:魔抗增加量
返回值:无
SetDisableResistanceGain void SetDisableResistanceGain( float disableResist) 效果:设置disable resitance(可能为残废抗性?)类似上面的魔抗(待测试)
传入参数:
disableResist:增加量
返回值:无
SetAttackTimeGain void SetAttackTimeGain( float attackSpeedGain) 效果:设置每级攻击速度增加
传入参数:
attackSpeedGain:攻击速度增加量
返回值:无
SetMoveSpeedGain void SetMoveSpeedGain( int moveSpeedGain) 效果:设置每级移动速度增加
传入参数:
moveSpeedGain:移动速度增加量
返回值:无
SetBountyGain void SetBountyGain( int bountyGain) 效果: 设置每级金钱奖励增加
传入参数:
bountyGain:金钱奖励增加量
返回值:无
SetXPGain void SetXPGain( int xpGain) 效果:设置每级经验奖励增加
传入参数:
xpGain:经验奖励增加量
返回值:无
ModifyGold int ModifyGold( int goldAmmount, bool reliable, int ) 效果: 给该英雄一定金钱
传入参数:
goldAmmount:钱的数量,reliable:是否为可靠的(死亡掉落),最后一个参数猜测为英雄ID或玩家ID中的一个等待测试
返回值:
int类型:作用未知
GetGold int GetGold() 效果:返回该玩家拥有的金钱量
传入参数:无
返回值:
int类型:玩家拥有金钱量
SetGold void SetGold( int goldAmmount, bool reliable) 效果:设置该玩家的金钱量
传入参数:
goldAmmount:金钱量,reliable:是否死亡掉落
返回值:无
GetCurrentXP int GetCurrentXP() 效果:获得玩家当前经验值
传入参数:无
返回值:
int类型:玩家当前经验值
GetPlayerID int GetPlayerID() 效果:返回拥有该英雄的玩家ID
传入参数:无
返回值:
int类型:拥有该英雄的玩家ID
RespawnHero void RespawnHero( bool buyback, bool, bool ) 效果:复活该英雄
传入参数:
buyback:是否买活,剩余2个参数未知,坐等测试
返回值:无
GetAbilityName string GetAbilityName() 效果:返回技能名称
传入参数:无
返回值:
字符串类型:技能名称
GetSpecialValueFor variant GetSpecialValueFor( string specialValue) 效果:从该技能当前等级的特殊值块中获得值。该技能必须有一个关键值中定义的特殊技能值块
传入参数:
specialValue:特殊值
返回值:
variant类型:获得的值
GetCastRange int GetCastRange() 效果: 获得技能范围
传入参数:无
返回值:
int类型:技能范围
IsFullyCastable bool IsFullyCastable() 效果: 返回该技能是否可以释放
传入参数:无
返回值:
布尔类型:true 或 false
IsChanneling bool IsChanneling() 效果: 返回改技能是否正在准备中
传入参数:无
返回值:
布尔类型:true 或 false
IsInAbilityPhase bool IsInAbilityPhase() 效果: 返回该技能是否在释放中
传入参数:无
返回值:
布尔类型:true 或 false
GetCooldown float GetCooldown( int level) 效果: 获得该技能特定等级的冷却时间,而不是剩余冷却时间
传入参数:
level:技能等级
返回值:
float类型:技能特定等级的冷却时间
GetCooldown float GetCooldown( int level) 效果: 获得该技能特定等级的冷却时间,而不是剩余冷却时间
传入参数:
level:技能等级
返回值:
float类型:技能特定等级的冷却时间
MarkAbilityButtonDirty void MarkAbilityButtonDirty() 效果:标记该技能按钮需要刷新
传入参数:无
返回值:无
SetLevel void SetLevel( int abilityLevel) 效果:设置技能等级
传入参数:
abilityLevel:技能等级
返回值:无
SetTextReplaceValue void SetTextReplaceValue( int questText, int value) 效果:设置任务
传入参数:
questText:任务文本,value:任务值
返回值:
字符串类型:技能名称
CompleteQuest void CompleteQuest() 效果:标记该任务完成
传入参数:无
返回值:无
SetTextReplaceString void SetTextReplaceString( string replace ) 效果:设置该任务覆盖文本
传入参数:无
返回值:无
SetPurchaseTime void SetPurchaseTime( float purchaseTime) 效果:设置物品购买间隔
传入参数:
purchaseTime:间隔时间
返回值:无
GetPurchaseTime float GetPurchaseTime() 效果:获取物品购买间隔
传入参数:无
返回值:
float类型:物品购买间隔
SetTextReplaceString void SetTextReplaceString( string replace ) 效果:设置该任务覆盖文本
传入参数:无
返回值:无
SetPurchaser void SetPurchaser(Unit unit ) 效果: 设置该物品的购买者记录
传入参数:
unit:购买单位
返回值:无
GetInitialCharges int GetInitialCharges() 效果: 获取该物品初始可用次数
传入参数:无
返回值:
int:可用次数
GetCurrentCharges int GetCurrentCharges() 效果: 获取该物品当前可用次数
传入参数:无
返回值:
int:可用次数
SetCurrentCharges void SetCurrentCharges( int charges) 效果: 设置该物品当前可用次数
传入参数:
charges:可用次数
返回值:无
GetPurchaser Unit GetPurchaser() 效果:获取该物品的购买者
传入参数:无
返回值:
Unit:购买者实体
Think void Think() 效果:预测是提供给AI的,方便AI使用物品
传入参数:无
返回值:无
IsPermanent bool IsPermanent() 效果:判断是否为永久物品
传入参数:无
返回值:
布尔类型:true 或 false
StacksWithOtherOwners bool StacksWithOtherOwners() 效果:未知函数(堆栈有关?)
传入参数:无
返回值:
布尔类型:true 或 false
SetStacksWithOtherOwners void SetStacksWithOtherOwners( bool stacks) 效果:未知函数(堆栈有关?)
传入参数:
stacks:true 或 false
返回值:无
GetShareability int GetShareability() 效果: 返回物品共享类型
传入参数:无
返回值:
int类型:物品共享类型
GetCost int GetCost() 效果: 返回物品价格
传入参数:无
返回值:
int类型:物品价格
GetContainer hscript GetContainer() 效果:获得物品容器
传入参数:无
返回值:
hscript类型:物品实体
GetCreationTime float GetCreationTime() 效果:返回物品创建时的游戏时间
传入参数:无
返回值:
float类型:物品创建时的游戏时间
GetContainedItem Item GetContainedItem() 效果:返回包含的物品
传入参数:无
返回值:
Item:物品
SetContainedItem void SetContainedItem( Item item) 效果:设置物品购买间隔
传入参数:
item:物品
返回值:无
GetPlayerID int GetPlayerID() 效果:获得玩家ID。注意当玩家没有选择队伍时为-1
传入参数:无
返回值:
int类型:玩家ID
ReplaceHeroWith hscript ReplaceHeroWith( string heroClassName, int gold, int XP) 效果:用新的具有特定类、金钱和经验的替代玩家的英雄
传入参数:
heroClassName:英雄类型,gold:金钱,XP:经验
返回值:
hscript类型:英雄脚本
GetAssignedHero hscript GetAssignedHero() 效果:获得玩家的英雄
传入参数:无
返回值:
hscript类型:英雄脚本
SetKillCamUnit void SetKillCamUnit( hscript camUnit) 效果:为这个英雄设置击杀回放单位
传入参数:
camUnit:回放单位
返回值:无
SetMusicStatus void SetMusicStatus( int nMusicStatus, float flIntensity) 效果:设置玩家的音乐状态,注意只能在dota_music_battle_enable关掉时使用
传入参数:
nMusicStatus:音乐状态,flIntensity:音量?
返回值:无
GetFov int GetFov() 效果:以整型获得摄像机当前视角
传入参数:无
返回值:
int类型:当前视角
SetFov void SetFov( int degrees, float rate) 效果:设置摄像机视角
传入参数:
degrees:摄像机的视角,rate:视角的变化率
返回值:无
ScreenFade void ScreenFade( int, int, int, int, float, float, int ) 效果:设置屏幕淡入(出)效果
传入参数:
猜测第一个为跳转时间(秒为单位),第2个用于确定淡出还是淡入,第3个为跳转到图片的时间, 第4个为图片ID或索引中的一个,第5个为颜色值RGB,第6个为透明度,第7个为快速或者缓慢
返回值:无
Enable void Enable() 效果: 启用相机
传入参数:无
返回值:无
GetFov int GetFov() 效果:以整型获得摄像机当前视角
传入参数:无
返回值:
int类型:当前视角
SetFov void SetFov( int degrees, float rate) 效果:设置摄像机视角
传入参数:
degrees:摄像机的视角,rate:视角的变化率
返回值:无
ScreenFade void ScreenFade( int, int, int, int, float, float, int ) 效果:设置屏幕淡入(出)效果
传入参数:
猜测第一个为跳转时间(秒为单位),第2个用于确定淡出还是淡入,第3个为跳转到图片的时间, 第4个为图片ID或索引中的一个,第5个为颜色值RGB,第6个为透明度,第7个为快速或者缓慢
返回值:无
Enable void Enable() 效果: 启用相机
传入参数:无
返回值:无
SetLinearAttenuation void SetLinearAttenuation( float attenuation) 效果: 设置光线线性衰减
传入参数:
attenuation:衰减值
返回值:无
SetQuadraticAttenuation void SetQuadraticAttenuation( float attenuation) 效果:设置光线二次衰减
传入参数:
attenuation:衰减值
返回值:无
SetNearRange void SetNearRange( float nearRange) 效果:设置光线最小范围
传入参数:
nearRange:范围值
返回值:无
SetFarRange void SetFarRange( float farRange) 效果:设置光线最大范围
传入参数:
nearRange:范围值
返回值:无
SetVolumetrics void SetVolumetrics( bool on, float intensity, float noise, int planes, float planeOffset) 效果: 启/关闭体积光效
传入参数:
on:开启或关闭,intensity:光强度,noise:光噪声,planes:所处的平面,planeOffset:平面衰减?
返回值:无
SpawnEntity void SpawnEntity() 效果:在创建点创建一个实体
传入参数:无
返回值:无
SpawnEntityAtEntityOrigin void SpawnEntityAtEntityOrigin( Entity entity) 效果: 在特定实体实例的位置创建一个实体
传入参数:
entity:实体
返回值:无
SpawnEntityAtNamedEntityOrigin void SpawnEntityAtNamedEntityOrigin( string entityName) 效果: 在一个命名了的实体位置创建一个实体
传入参数:
entityName:实体名
返回值:无
SpawnEntityAtLocation void SpawnEntityAtLocation( vector location, vector orientation) 效果: 以特定的位置和方向(欧拉角)创建一个实体
传入参数:
location:位置,orientation:方向
返回值:无
RandomInt int RandomInt( int min, int max) 效果:在范围内获得一个随机整型
传入参数:
min:最小值,max:最大值
返回值:
int类型:随机整数
RandomFloat float RandomFloat( float min, float max) 效果:在范围内获得一个浮点整型
传入参数:
min:最小值,max:最大值
返回值:
float类型:随机浮点整
RandomVector vector RandomVector( float distance) 效果: 在范围内获得一个随机矢量
传入参数:
distance:目标
返回值:
vector类型:随机矢量
RollPercentage bool RollPercentage( int percent) 效果:在1-100滚动一个数,如果小于等于一个特定的数,则返回真
传入参数:
percent:界定百分比
返回值:
布尔类型:true 或 flase
DoIncludeScript bool DoIncludeScript( string scriptName, hscript ) 效果:执行一个脚本
传入参数:
scriptName:脚本名
返回值:
布尔类型:脚本实体
ShowMessage void ShowMessage( string message) 效果:在所有客户端上打印一个hud信息。此函数似乎无效
传入参数:
message:信息文本
返回值:无
GetMapName string GetMapName() 效果: 获得地图名称
传入参数:
message:信息文本
返回值:
字符串类型:地图名
SendToConsole void SendToConsole( string conCommand) 效果: 发送一个字符串到控制台作为客户命令
传入参数:
conCommand:命令
返回值:无
SendToServerConsole void SendToServerConsole( string conCommand) 效果:发送一个字符串作为服务器命令
传入参数:
conCommand:命令
返回值:无
PrintLinkedConsoleMessage void PrintLinkedConsoleMessage( string message, string conCommand) 效果:用相关的控制台命令打印控制台消息
传入参数:
message:信息,conCommand:命令
返回值:无
InitLogFile void InitLogFile( string fileName, string log) 效果:如果文件不存在则在给出的目录中创建,如果存在则不做任何事情
传入参数:
fileName:文件名,log:日志
返回值:无
AppendToLogFile void AppendToLogFile( string message, string log) 效果:为登陆文件附上一个字符串
传入参数:
message:信息,log:日志
返回值:无
GetWorldMinX float GetWorldMinX() 效果: 获得世界的最小X值
传入参数:无
返回值:
float类型:世界的最小X值
GetWorldMinY float GetWorldMinY() 效果: 获得世界的最小Y值
传入参数:无
返回值:
float类型:世界的最小Y值
GetWorldMaxX float GetWorldMaxX() 效果: 获得世界的最大X值
传入参数:无
返回值:
float类型:世界的最大X值
GetWorldMaxY float GetWorldMaxY() 效果: 获得世界的最大Y值
传入参数:无
返回值:
float类型:世界的最大Y值
Time float Time() 效果:获得当前服务器时间
传入参数:无
返回值:
float类型:前服务器时间
GetSystemTime string GetSystemTime() 效果: 获得当前真实时间
传入参数:无
返回值:
字符串类型:当前真实时间
GetSystemDate string GetSystemDate() 效果: 获得当前真实日期
传入参数:无
返回值:
字符串类型:当前当前真实日期
UTIL_RemoveImmediate void UTIL_RemoveImmediate(Entity entity) 效果:立刻移除指定实体
传入参数:
entity:实体
返回值:无
DoEntFire void DoEntFire( string target, string action, string value, float delay, Entity activator, hscript ) 效果:生成实体的输入/输出事件
传入参数:
target:目标,action:动作,value:值,delay:延时,activator:实体,hscript:运行脚本
返回值:无
EntFireByHandle void EntFireByHandle( Entity entity, string target, string value, float delay, Entity activator, hscript ) 效果:生成实体的输入/输出事件(handle)
传入参数:
entity:实体,target:目标,value:值,delay:延时,activator:实体,hscript:运行脚本
返回值:无
IsValidEntity bool IsValidEntity( Entity entity) 效果: 检查指定hscript是否为有效实体
传入参数:
entity:实体
返回值:
布尔类型:true 或 flase
IsMarkedForDeletion bool IsMarkedForDeletion( Entity entity) 效果: 如果实体有效并被标记为删除则返回为真
传入参数:
entity:实体
返回值:
布尔类型:true 或 flase
DoUniqueString string DoUniqueString( string uniqueString) 效果:生成在该代码中绝对唯一的字符串,通过任选的根字符串(参数)。可以用于不确定表中哪些关键字已被占用时像该表中添加数据。
传入参数:
uniqueString:唯一
返回值:
字符串类型:添加后的关键字
ListenToGameEvent void ListenToGameEvent( string eventName, function listener, table luaOwner) 效果: 使用脚本为游戏时间注册一个监听器
传入参数:
eventName:事件名,listener:监听函数,luaOwner:lua脚本表
返回值:无
FireGameEvent void FireGameEvent( string eventName, table params) 效果:触发游戏事件
传入参数:
eventName:事件名,params:表
返回值:无
FireGameEventLocal void FireGameEventLocal( string eventName, table params) 效果:触发不对客户播放的情况下启动事件
传入参数:
eventName:事件名,params:表
返回值:无
PauseGame void PauseGame( bool pause) 效果:暂停或解除暂停
传入参数:
pause:是否暂停
返回值:无
EntIndexToHScript Entity EntityEntIndexToHScript( int entIndex) 效果:将一个实体索引变成脚本代表实体脚本的实例
传入参数:
entIndex:是否暂停
返回值:
Entity:脚本实体
PlayerInstanceFromIndex Player PlayerInstanceFromIndex( int playerIndex) 效果:根据索引获得一个玩家的脚本实例
传入参数:
playerIndex:玩家索引
返回值:
Player:玩家实体
GetListenServerHost Player GetListenServerHost() 效果:在监听主机获得区域玩家
传入参数:无
返回值:
Player:玩家实体
ScreenShake void ScreenShake( vector center, float aplitude, float frequency, float duration, float radius, int shakeStatus, bool airShake) 效果:使用下列参数开始屏幕震动
传入参数:
center:中心矢量, aplitude:高度, frequency:频率, duration:持续时间, radius:震动半径, shakeStatus:SHAKE_START = 0(开始)SHAKE_STOP = 1(停止), airShake:是否空中震动
返回值:无
SpawnEntityFromTable bool SpawnEntityFromTable( string className, table spawnTable, Entity owner, function spawnCallback, hscript ) 效果:部署表中实体。最后一个参数似乎无效,也许是玩家所有者?
传入参数:
className:类名, spawnTable:重生表, spawnCallback:重生回调函数, hscript:脚本
返回值:
布尔类型:true 或 flase
SpawnEntityGroupFromTable bool SpawnEntityGroupFromTable( hscript, bool, hscript ) 效果:部署表中实体组。
传入参数:
有待考证
返回值:
布尔类型:true 或 flase
PrecacheEntityFromTable bool PrecacheEntityFromTable( table keyValues ) 效果:从关键字值预载一个实体。
传入参数:
keyValues:关键值
返回值:
布尔类型:true 或 flase
VectorToAngles qangle VectorToAngles( vector ) 效果:为矢量获得qangles(angle为角度)
传入参数:
需要获得角度的矢量
返回值:
qangle类型:矢量的角度
RotatePosition vector RotatePosition( vector vec, qangle angle, vector origin) 效果:围绕一个点旋转矢量
传入参数:
vec:旋转矢量,angle:旋转角度,origin:旋转点
返回值:
vector类型:预测为旋转后的矢量
RotateOrientation qangle RotateOrientation( qangle an1, qangle ang2) 效果: 获得两个角之间的差值
传入参数:
an1:第一个角,ang2:第二个角
返回值:
qangle类型:角度差异
RotationDelta qangle RotationDelta( qangle ang1, qangle ang2) 效果:旋转增量
传入参数:
an1:第一个角,ang2:第二个角
返回值:
qangle类型:待测试
EmitSoundOn void EmitSoundOn( string soundName, Entity entity) 效果:在实体上播放命名的声音
传入参数:
soundName:声音名,entity:实体
返回值:无
EmitSoundOnClient void EmitSoundOnClient( string soundName, Player listeningPlayer) 效果:只为该玩家播放声音
传入参数:
soundName:声音名,listeningPlayer:听到声音的玩家
返回值:无
EmitGlobalSound void EmitGlobalSound( string soundName) 效果:为所有玩家播放命名的音乐
传入参数:
soundName:声音名
返回值:无
StopSoundOn void StopSoundOn( string soundName, hscript ) 效果:停止实例播放命名的音乐
传入参数:
soundName:声音名,第二个参数为脚本含义未知
返回值:无
GetPhysVelocity vector GetPhysVelocity( Entity object) 效果:为VPHYS或者普通物体获得速度
传入参数:
object:物体实体
返回值:
vector:速度矢量
GetPhysAngularVelocity vector GetPhysAngularVelocity(Entity object) 效果:为VPHYS或者普通物体获得角速度
传入参数:
object:物体实体
返回值:
vector:角速度矢量
Say void Say( Player from, string text, bool team) 效果:让实体说话(字符串框显示?),布尔值为是否只有团队可见。第一个参数可以为nil(未知广播者)
传入参数:
object:物体实体
返回值:无
AddThinkToEnt void AddThinkToEnt( Entity entity, string functionName) 效果:给物体的C++ AI表(?)添加绑定AI函数
传入参数:
entity:实体,functionName:方法名
返回值:无
LoadKeyValues variant LoadKeyValues( string file) 效果:从特定关键值文本文件创建表
传入参数:
file:文件名?
返回值:
variant:变量
LoadKeyValuesFromString variant LoadKeyValuesFromString( string kvString) 效果:从特定关键值字符串创建表
传入参数:
kvString:key名
返回值:
variant:变量
DebugDrawScreenTextLine void DebugDrawScreenTextLine( float x, float y, int lineOffset, string text, int r, int g, int b, int a, float duration) 效果:使用行偏移绘制文本
传入参数:
x:X轴位置,y:Y轴位置,lineOffset:排列方式?,text:文本,r:rgb颜色的R值,g:rgb颜色的G值,b:rgb颜色的B值,a:透明度,duration:持续时间
返回值:无
DebugDrawText void DebugDrawText( vector origin, string text, bool useViewCheck, float duration) 效果:使用行偏移绘制文本
传入参数:
origin:初始未知,text:文本,useViewCheck:是否使用视频检查,duration:持续时间
返回值:无
DebugDrawBox void DebugDrawBox( vector origin, vector min, vector max, int r, int g, int b, int a, float duration) 效果:绘制调试覆盖箱
传入参数:
origin:初始位置,min:最小偏移量,max:最大偏移量,r:rgb颜色的R值,g:rgb颜色的G值,b:rgb颜色的B值,a:透明度,duration:持续时间
返回值:无
DebugDrawLine void DebugDrawLine( vector start, vector end, int r, int g, int b, bool zTest, float duration) 效果:绘制调试覆盖线
传入参数:
start:初始位置,end:结束位置,r:rgb颜色的R值,g:rgb颜色的G值,b:rgb颜色的B值,zTest:作用待定,duration:持续时间
返回值:无
DebugDrawCircle void DebugDrawCircle( vector center, vector radius, vector rgb, float a, bool ztest, float duration) 效果: 绘制调试圈
传入参数:
center:圆心,radius:半径,rgb:rgb颜色,a:透明度,zTest:作用待定,duration:持续时间
返回值:无
DebugDrawLine_vCol void DebugDrawLine_vCol( vector start, vector end, vector rgb, float a, bool ztest, float duration) 效果: 使用color vec 绘制调试线
传入参数:
start:开始位置,end:结束位置,rgb:rgb颜色,a:透明度,zTest:作用待定,duration:持续时间
返回值:无
DebugDrawBoxDirection void DebugDrawBoxDirection( vector center, vector min, vector max, vector forward, vector rgb, float a, float duration) 效果: 绘制调试行进框
传入参数:
center:中心位置,min:最小偏移量,max:最大偏移量,forward:前方,rgb:rgb颜色,a:透明度,zTest:作用待定,duration:持续时间
返回值:无
DebugDrawClear void DebugDrawClear() 效果: 尝试清除所有调试覆盖信息
传入参数:无
返回值:无
GetFrameCount int GetFrameCount() 效果: 返回引擎当前帧计数
传入参数:无
返回值:
int类型:当前帧计数
IsDedicatedServer bool IsDedicatedServer() 效果:如果是个专门服务器则 返回为真
传入参数:无
返回值:
布尔类型:true 或 false
CreateUnitByName hscript CreateUnitByName( string name, vector origin, bool findOpenSpot, hscript, hscript, int team) 效果:用dota_npc_units.txt的名字创建单位
传入参数:
name:名字,origin:初始点,findOpenSpot:是否查找开启点,hscript:未知,hscript:未知,team:队伍
返回值:无
CreateHeroForPlayer hscript CreateHeroForPlayer( string heroName, Player owningPlayer) 效果:用dota_npc_units.txt名字创建英雄,并设为玩家控制的英雄
传入参数:
heroName:英雄名字,owningPlayer:拥有玩家
返回值:
hscript:脚本实体
CreateItem hscript CreateItem( string itemName, Unit owningUnit,Unit unitToGetOrigin) 效果: 创建dota物品
传入参数:
itemName:物品名字,owningUnit:拥有单位,unitToGetOrigin:获得单位初始点
返回值:
hscript:脚本实体
CreateItemOnPosition PhysicalItem CreateItemOnPosition( vector position ) 效果: 在指定地点创建物理物品
传入参数:
position:位置
返回值:
hscript:脚本实体
FindClearSpaceForUnit void FindClearSpaceForUnit(Unit npc, vector origin, bool ) 效果: 将一个单位置于为占据的某个位置
传入参数:
npc:NPC实体,origin:初始化,待定
返回值:无
FindUnitsInRadius table FindUnitsInRadius( int targetTeam, vector position,Entity ent, float radius, int targetTypeTeam, inttargetTypeUnit, int x, int y, bool ) 效果:在给定范围内寻找具有指定布尔值的单位。第三个参数实体似乎总是空,最后三个似乎是 0,0,false
传入参数:
targetTeam:目标队伍,position:目标点,ent:目标实体,radius:半径,targetTypeTeam:目标队伍类型,x:X轴位置,y:Y轴位置,最后一个参数未知
返回值:无
PrecacheUnit void PrecacheUnit( string unitName) 效果: 为一个单位预载所有资源
传入参数:
unitName:单位名
返回值:无
GetFrostyPointsForRound int GetFrostyPointsForRound( int playerId, int difficulty, int roundNumber) 效果: 获得玩家该回合得分
传入参数:
playerId:玩家ID,difficulty:难度,roundNumber:回合编号
返回值:待定
GetGoldFrostyPointsForRound int GetGoldFrostyPointsForRound( int playerId, int difficulty, int roundNumber ) 效果: 获得玩家该回合金钱
传入参数:
playerId:玩家ID,difficulty:难度,roundNumber:回合编号
返回值:待定
GetFrostyBoostAmount float GetFrostyBoostAmount( int playerId, int roundNumber) 效果: 获得玩家该回合得分增加总量
传入参数:
playerId:玩家ID,roundNumber:回合编号
返回值:待定
GetGoldFrostyBoostAmount float GetGoldFrostyBoostAmount( int playerId, int roundNumber) 效果: 获得玩家该回合金钱增加总量
传入参数:
playerId:玩家ID,roundNumber:回合编号
返回值:待定
SendFrostyPointsMessageToGC void SendFrostyPointsMessageToGC( table data) 效果:发送总得分信息给GC
传入参数:
data:表数据
返回值:无
SendFrostivusTimeElapsedToGC void SendFrostivusTimeElapsedToGC() 效果:发送游戏逝去时间给GC
传入参数:无
返回值:无
ExecuteOrderFromTable void ExecuteOrderFromTable( table ) 效果:从代码表中发出指令。
传入参数:
table:代码表的结构包括{ int UnitIndex, int OrderType, vector Position, bool Queue, int AbilityIndex, int TargetIndex } unitindex是发布命令的单位,ordertype是关联的枚举类型,当ordertyoe需要指定位置(移动,施放点目标技能等) 时需要position,当技能应该在当先命令之后执行时使用queue,如果ordertype是技能需要abilityindex,如果ordertype是目标施法技能需要targetindex
返回值:无