设为首页收藏本站新闻投稿

MOD中国同盟社

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 803|回复: 13

[求助] 问两个函数的用法,看了很多例子也弄不懂,希望详解一下 [复制链接]

Rank: 7Rank: 7Rank: 7

帖子
863
精华
0
声望
2462 点
金币
584 Mold
被赞许
7 次
注册时间
2010-5-7
发表于 2010-11-29 19:01:01 |显示全部楼层
一个是FW函数的playerprethink另一个是playerprethinkpost,请详细说明一下这两个函数的用法,谢谢

使用道具 举报

Super Moderator

此人已辞职,有事找别人.

Rank: 10Rank: 10Rank: 10

帖子
2341
精华
3
声望
9852 点
金币
3913 Mold
被赞许
-37 次
注册时间
2004-7-17

Modchina元老

发表于 2010-11-29 19:54:43 |显示全部楼层
都是实时运行的函数 好像是30次/s 二者区别我不太清楚
此号待删除,不再登陆.

使用道具 举报

Rank: 7Rank: 7Rank: 7

帖子
863
精华
0
声望
2462 点
金币
584 Mold
被赞许
7 次
注册时间
2010-5-7
发表于 2010-11-29 20:08:25 |显示全部楼层
回复 2# 阿发


    就是插件运行的时候每0.5秒一次吗?可以这么说就是每0.5秒循环执行的set_task吗?

使用道具 举报

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

帖子
406
精华
0
声望
9411 点
金币
1421 Mold
被赞许
4 次
注册时间
2009-12-18
发表于 2010-11-29 21:06:08 |显示全部楼层
回复  阿发


    就是插件运行的时候每0.5秒一次吗?可以这么说就是每0.5秒循环执行的set_task吗? ...
lyynyfy 发表于 2010-11-29 20:08

我是覺得可能不只0.5秒…
因為之前使用這兩個函數的感覺…
估計運行速度至少低於0.1秒…
曾經讓這兩個函數運行過低於0.1秒的時間計算…
照樣偵測的到…
不過想在這兩個函數裡用set_task需要謹慎…
若條件假設不周詳會導致同個任務重複執行…
可能導致沒效果或是效果無限重複…
至於FM_CmdStart的運行速度似乎也和這兩個函數相同…
但是實際值個人還未經測試…

使用道具 举报

Rank: 7Rank: 7Rank: 7

帖子
863
精华
0
声望
2462 点
金币
584 Mold
被赞许
7 次
注册时间
2010-5-7
发表于 2010-11-29 21:48:52 |显示全部楼层
回复 4# a7811311622


    难道这个函数就是一直执行的一个函数,不需要任何激发条件,一旦插件载入就立即执行吗

使用道具 举报

Super Moderator

此人已辞职,有事找别人.

Rank: 10Rank: 10Rank: 10

帖子
2341
精华
3
声望
9852 点
金币
3913 Mold
被赞许
-37 次
注册时间
2004-7-17

Modchina元老

发表于 2010-11-29 21:55:36 |显示全部楼层
据Martin说 prethink每秒执行次数可达30次 每次0.03-0.04s
set_task即使延迟填0.0 最快也只能8-9次 也就是说大约每次0.11s
此号待删除,不再登陆.

使用道具 举报

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

帖子
406
精华
0
声望
9411 点
金币
1421 Mold
被赞许
4 次
注册时间
2009-12-18
发表于 2010-11-29 21:55:47 |显示全部楼层
回复  a7811311622


    难道这个函数就是一直执行的一个函数,不需要任何激发条件,一旦插件载入就立即 ...
lyynyfy 发表于 2010-11-29 21:48

是否有激發條件我不確定…
不過乍看之下的確會覺得是「無任何激發條件」…
如果你在這兩個函數的任何一個裡面不設任何條件就寫入「client_print」…
會一直輸出內容…直到你離開遊戲為止…

使用道具 举报

Super Moderator

此人已辞职,有事找别人.

Rank: 10Rank: 10Rank: 10

帖子
2341
精华
3
声望
9852 点
金币
3913 Mold
被赞许
-37 次
注册时间
2004-7-17

Modchina元老

发表于 2010-11-29 21:57:37 |显示全部楼层
实时处理的要考虑好服务器负荷 短期发送大量消息是不合适的
客户端容易因消息通道溢出而掉线
此号待删除,不再登陆.

使用道具 举报

Super Moderator

此人已辞职,有事找别人.

Rank: 10Rank: 10Rank: 10

帖子
2341
精华
3
声望
9852 点
金币
3913 Mold
被赞许
-37 次
注册时间
2004-7-17

Modchina元老

发表于 2010-11-29 22:00:37 |显示全部楼层
回复 4# a7811311622


    FM_CmdStart我还是头一次听说
set_task是很安全的 在里面发消息一般不会引起掉线 但prethink就不行 客户端接收和处理消息的能力有限

之前做过一个用spr实时显示所有玩家视线(枪线)的
此号待删除,不再登陆.

使用道具 举报

Super Moderator

此人已辞职,有事找别人.

Rank: 10Rank: 10Rank: 10

帖子
2341
精华
3
声望
9852 点
金币
3913 Mold
被赞许
-37 次
注册时间
2004-7-17

Modchina元老

发表于 2010-11-29 22:03:53 |显示全部楼层
set_task递归调用很灵活 可用来做有限状态机的状态泵
做过一个切换表情(pev_skin)的 包括眨眼 笑 痛苦等
此号待删除,不再登陆.

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

回顶部