Lua Hook
always
assist
attack
attack2
bombdefuse
bombexplode
bombplant
break
build
buildattempt
buy
clientdata
collect
die
dominate
drop
endround
flagcapture
flagtake
flashlight
hit
hitzone
hostagerescue
httpdata
join
key
kill
leave
log
mapchange
menu
minute
move
movetile
ms100
name
objectdamage
objectkill
objectupgrade
parse
projectile
radio
rcon
reload
say
sayteam
second
select
serveraction
shieldhit
shutdown
spawn
specswitch
spray
startround
startround_prespawn
suicide
team
trigger
triggerentity
turretscan
use
usebutton
vipescape
vote
walkover
Lua 命令
addbind
addhook
ai_aim
ai_attack
ai_build
ai_buy
ai_debug
ai_drop
ai_findtarget
ai_freeline
ai_goto
ai_iattack
ai_move
ai_radio
ai_reload
ai_respawn
ai_rotate
ai_say
ai_sayteam
ai_selectweapon
ai_spray
ai_use
checksumfile
checksumstring
closehostage
closeitems
closeobjects
entity
entitylist
freehook
freeimage
freetimer
funcs
game
hostage
image
imagealpha
imageblend
imagecolor
imageframe
imagehitzone
imagepos
imagescale
inentityzone
item
itemtype
map
menu
msg
msg2
object
objectat
objecttype
parse
player
playerammo
playerweapons
print
projectile
projectilelist
randomentity
randomhostage
reqcld
reqhttp
setentityaistate
sethookstate
stats
steamstats
tile
timer
tween_alpha
tween_animate
tween_color
tween_frame
tween_move
tween_rotate
tween_rotateconstantly
tween_scale
vars

addhook

分类

玩家

参数

    hook : 要加载的hook

说明

把lua函数"func"链接给hook"hook".CS2D总会在此hook关联的事件触发时呼出lua函数。
你可以为每一个hook添加无限个不同函数,但注意这可以会对游戏体验造成负面影响。
hook参数
CS2D会为大多数与Hook连接的函数传递参数。这些参数取决于使用的hook并且包含着关于刚才触发的hook事件
。如果你想使用这些参数的值,你必须在你添加进hook的那个函数内定义。要不然他们就不会在你的脚本里有用。你只需要添加那些你用得着的参数,但他们其实和在hook里定义的一样多。所以如果只想要其中一个,你也得把别的都定义了。
hook的返回值
一些hook函数可以拥有返回值。这返回值随着CS2D所反应的方式而改动。
啥也没返回就像返回0,""或者nil值。
当啥也不返回时CS2D就会正常反映(就和没有lua脚本驱动一样)
在大多场合下你可以在hook所连接的函数内内通过返回1来跳过CS2D的实际操作。通过阅读hook介绍来学习更多可能的返回值。
hook优先级(可选)
优先级旨在有多个函数与一个hook连接时才重要!
默认为0,越高数字=越高优先级,反之亦然(可以为负)。
拥有最高优先级的函数会最后执行。CS2D只会拿走最后函数的返回值(如果有)。其他的全部忽略。这是因为CS2D一次只能一个个执行,因此他只能处理一个返回值,即使有多个函数。
大多数场合下你可以省略优先级参数(毕竟可选)。
栗子:如果玩家说了啥,就显示一个自定义消息。返回1就可以抑制住一般聊天的输出。
addhook("say","mySayFunc")
function mySayFunc(playerId,chatMessage)
msg(player(playerId,"name").." just said "..chatMessage)
return 1
end

注意:hook func参数必须为字符串!别忘了他们周围的双引号或单引号。
请只使用文字,别在addhook呼出中添加函数参数或者别的什么。

对的
addhook("leave","myleavehook")

错的
addhook("leave(id,reason)","myleavehook(id,reason)")
错的
addhook(leave,myleavehook)

修改词条 删除词条