引用 | 编辑
观众甲
2012-02-04 23:27 |
楼主
▼ |
||
x0
请问各位大大如果我想写 if(get_user_weapon(id) != CSW_KNIFE) { 伤害无效(类似无敌模式,但是只对某一人) } 类似cs_set_user_godmode,但是如果我真的要用这个指令码 如果一个人用KNIFE,另一个人用USP 同时攻击某个受伤者 要不然就不会受伤 要不然就USP+KNIFE的伤害 所以我希望弄到如果武器不是KNIFE的话 伤害无效 x0
|
引用 | 编辑
8106125
2012-02-05 12:29 |
3楼
▲ ▼ |
复制程式
public fw_TakeDamage(victim, inflictor, attacker, Float:damage, damage_type) { if (victim == attacker || !is_user_connected(attacker)) return HAM_IGNORED; if(get_user_weapon(attacke) != CSW_KNIFE) { damage *=0.0 SetHamParamFloat(4, damage) } return HAM_IGNORED; } 试试看这段 x1 |
引用 | 编辑
kevin961104
2012-02-05 12:40 |
4楼
▲ ▼ |
[quote]下面是引用 8106125 于 2012-02-05 12:29 发表的 :
复制程式 public fw_TakeDamage(victim, inflictor, attacker, Float:damage, damage_type) { if (victim == attacker || !is_user_connected(attacker)) return HAM_IGNORED; .......[/quote][font=verdana,][color=#659b28][backcolor=][align=left] 这位大大的好像是把攻击*0而已... 并不是无效化.. 无效化的话 复制程式 new nohurt[33] public fw_TakeDamage(victim, inflictor, attacker, Float:damage, damage_type) { if (victim == attacker || !is_user_connected(attacker)) return HAM_IGNORED; if(get_user_weapon(attacker) != CSW_KNIFE) { if(nohurt[victim]) return HAM_SUPERCEDE; } return HAM_IGNORED; } nohurt可以是你设定成某一人的ID 并使伤害无效.. x1 |
引用 | 编辑
husano896
2012-02-06 09:45 |
5楼
▲ ▼ |
下面是引用 上帝的右手^^ 于 2012-02-05 21:04 发表的 : 2/6 17:57修改:traceattack版 复制程式 #define TASK_GOTHURT CSW_KNIFE #define DOUBLE_ATTACK_TIME 0.2 //同时攻击有效的时间 new nohurt[33], Float:g_damage[33] public fw_TraceAttack(victim, attacker, Float:damage, Float:direction[3], tracehandle, damage_type) { if (victim == attacker || !is_user_connected(attacker)) return HAM_IGNORED; if (!is_user_connected(victim)) return HAM_IGNORED; switch (nohurt[victim]) { case 0: { if(get_user_weapon(attacker) == CSW_KNIFE) nohurt[victim] = 1 else if(get_user_weapon(attacker) == CSW_USP) nohurt[victim] = 2 set_task(DOUBLE_ATTACK_TIME,"remove_hurt",id+TASK_GOTHURT) g_damage[victim] += damage return HAM_SUPERCEDE; } case 1: { if(get_user_weapon(attacker) == CSW_USP) { damage +=g_damage[victim] SetHamParamFloat(3, damage) remove_hurt(id+TASK_GOTHURT) return HAM_IGNORED; } return HAM_SUPERCEDE; } case 2: { if(get_user_weapon(attacker) == CSW_KNIFE) { damage +=g_damage[victim] SetHamParamFloat(3, damage) remove_hurt(id+TASK_GOTHURT) return HAM_IGNORED; } return HAM_SUPERCEDE; } } return HAM_IGNORED; } ZBOT支援省略(炸飞 x1 |
引用 | 编辑
HiNess
2012-02-06 17:26 |
7楼
▲ ▼ |
下面是引用 上帝的右手^^ 于 2012-02-06 15:42 发表的 : |