normen2 发表于 2007-6-22 23:09:04

开个新贴讨论下,本想写个盲狙训练场,结果烂尾了。

首先感谢Rulzy版主的大力支持,最近给我指点了不少的脚本窍门,但是自己水平有限,挺好的一个构思,实现了一小步的时候发现犯了大错误。
截获右键点击事件,然后判断枪支,当是awp时候,丢弃这个事件,awp就不开镜了
public client_PreThink(id)
{
        new ammo, clip
        new curewpn = get_user_weapon(id, clip, ammo)
        new button = entity_get_int(id, EV_INT_button)
        if (button & IN_ATTACK2 && curewpn == weapon_awp) {
                button &= ~IN_ATTACK2
                entity_set_int(id, EV_INT_button, button)
        }
        return PLUGIN_CONTINUE
}
问题是,当AWP不开镜时候,那的确是盲狙,可我忽略了一点,高手的所谓盲狙是指闪狙-----左右键一起按。真正的盲狙,完全不开镜时候,子弹的着弹点并不一定是准心,天上地下哪里都有,试验时候,隔得稍微远点,2个人站立不动,打完30发子弹,双方毫发未损,真败了!
看来得想办法把右键屏蔽后,把左键截获成先发送一个右键,短暂的延迟内再发送一个左键,然后还要发送2次Q键,否则在开枪之后,如果不按任何键,awp会默认成开火之前的状态,因为之前发送过一次右键,所以awp会自动处于开镜状态,那肯定不是我们想要的。以上是我的思路,请高手赐教,到底怎么样发送左右键组合,并且开火后返回全屏状态不开镜。
页: [1]
查看完整版本: 开个新贴讨论下,本想写个盲狙训练场,结果烂尾了。