static Float:gametime = get_gametime() // 取得现在时间 (单位为秒 if ( gametime > user_time[id] + cdtime ) // 计算时间差 user_time[id] = gametime // 更新用户CD开始时间 else // CD中...
下面是引用 i-c0112 于 2011-01-15 20:51 发表的 : 用set_task就可以啦...甚至连变数都可以省了
下面是引用 z1022001 于 2011-01-16 01:37 发表的 : 也可以用 get_gametime 比较简单 get_gametime 和 set_task 的时间不太一样 不过没超过30秒应该是看不出误差的... 复制程式 static Float:gametime = get_gametime() // 取得现在时间 (单位为秒 if ( gametime > user_time[id] + cdtime ) // 计算时间差 user_time[id] = gametime // 更新用户CD开始时间 else // CD中...
下面是引用 zdt 于 2011-01-16 13:00 发表的 : 详细点~~~
下面是引用 zdt 于 2011-01-16 12:58 发表的 : 什么是set_task
下面是引用 i-c0112 于 2011-01-16 14:04 发表的 : 已经够详细了吧= =" 不就是用变数纪录最后一次技能施放时间...再下次使用技能时判断距离上次施放时间是否大于CD时间 看一看amxmodx.inc
static Float:gametime = get_gametime() // 取得现在时间 (单位为秒 if ( gametime > user_time[id] + cdtime ) // 计算时间差 , 用户CD开始时间+CD秒数 (得到结束时间) 是否小于现在时间 { user_time[id] = gametime // 更新用户CD开始时间 //允许使用技能 } else { // CD中... // 不允许使用技能 }
set_task(15.0,"MyFunction", id) public MyFunction( id ) { client_print( id, print_center, "ID : %d",id ) }
下面是引用 z1022001 于 2011-01-16 18:36 发表的 : [code] static Float:gametime = get_gametime() // 取得现在时间 (单位为秒 if ( gametime > user_time[id] + cdtime ) // 计算时间差 , 用户CD开始时间+CD秒数 (得到结束时间) 是否小于现在时间 { .......
下面是引用 zdt 于 2011-01-16 18:43 发表的 : 其实有没有一定要放在那两段东西之间呀??