M4A1如可改成不能裝上消音

Home Home
引用 | 編輯 zero18
2011-01-07 13:13
樓主
推文 x0
 新手一問
請問M4A1如可改成不能裝上消音,
即是按mouse右鍵也不會裝上消音.
請大家幫忙!!!表情

獻花 x0
引用 | 編輯 kenneth111
2011-01-23 16:09
1樓
  
把mouse右鍵打爛~之後你就永遠裝不了了 表情

獻花 x0
引用 | 編輯 文♂
2011-01-23 18:49
2樓
  
下面是引用 kenneth111 於 2011-01-23 16:09 發表的 : 到引言文
把mouse右鍵打爛~之後你就永遠裝不了了 表情

打爛右鍵後狙擊槍怎麼用?

-------------------------------------------------------------------------------------------------

關消音的提示:
get_user_weapons

return

-------------------------------------------------------------------------------------------------

獻花 x0
引用 | 編輯 a7811311622
2011-01-24 16:04
3樓
  
下面是引用 文♂ 於 2011-01-23 18:49 發表的 : 到引言文


打爛右鍵後狙擊槍怎麼用?

-------------------------------------------------------------------------------------------------

關消音的提示:
get_user_weapons

return

-------------------------------------------------------------------------------------------------

為何不是「Ham_Weapon_SecondaryAttack」
或是「cs_get_weapon_silen / cs_set_weapon_silen」…?

獻花 x0
引用 | 編輯 chuchung712
2011-01-24 17:19
4樓
  
下面是引用 a7811311622 於 2011-01-24 16:04 發表的 : 到引言文
 
為何不是「Ham_Weapon_SecondaryAttack」
或是「cs_get_weapon_silen / cs_set_weapon_silen」…?
他是想設定拿m4a1時

右鍵無效吧…

(即是治標的方法?)

獻花 x0
引用 | 編輯 a7811311622
2011-01-24 18:11
5樓
  
下面是引用 chuchung712 於 2011-01-24 17:19 發表的 : 到引言文
他是想設定拿m4a1時

右鍵無效吧…

(即是治標的方法?)

都能治本吧…

用「Ham_Weapon_SecondaryAttack」的話…
只要寫個「return HAM_SUPERCEDE;」就能取消右鍵的動作了…

用「cs_get_weapon_silen / cs_set_weapon_silen」的話…
先用「cs_get_weapon_silen」判斷 true 還是 false 後…
若回傳 true 時用「cs_set_weapon_silen」和「set_pdata_float(id, 83, 0.0, 5)」…

獻花 x0
引用 | 編輯 chuchung712
2011-01-24 18:15
6樓
  
下面是引用 a7811311622 於 2011-01-24 18:11 發表的 : 到引言文
 
都能治本吧…

用「Ham_Weapon_SecondaryAttack」的話…
只要寫個「return HAM_SUPERCEDE;」就能取消右鍵的動作了…

用「cs_get_weapon_silen / cs_set_weapon_silen」的話…
先用「cs_get_weapon_silen」判斷 true 還是 false 後…
若回傳 true 時用「cs_set_weapon_silen」和「set_pdata_float(id, 83, 0.0, 5)」…
其實我都不太清楚 set_pdata_ 和 get_pdata_ @_@

獻花 x0
引用 | 編輯 a7811311622
2011-01-24 18:36
7樓
  
下面是引用 chuchung712 於 2011-01-24 18:15 發表的 : 到引言文

其實我都不太清楚 set_pdata_ 和 get_pdata_ @_@

要舉例的話…就參考ZP主插件的一些 stock 吧…
畢竟有些神奇的內容反而是要靠 (get / set)_pdata_(int / float) 這幾種來偵測和修改的…
簡單的舉例…這用個寫法的話就能讓玩家隨地都能買槍…或是偵測模組的命中範圍…之類的…

獻花 x0
引用 | 編輯 竹炭水
2011-01-28 20:40
8樓
  
去控制台打 cs_get_weapon_silen

獻花 x1
引用 | 編輯 narto2008
2011-01-29 20:29
9樓
  
右鍵無效吧

獻花 x0
引用 | 編輯 zero18
2011-01-31 18:15
10樓
  
 
下面是引用 kenneth111 於 2011-01-23 16:09 發表的: 到引言文
把mouse右鍵打爛~之後你就永遠裝不了了

啊!真好的方法!!!我怎樣也想不倒表情

獻花 x0
引用 | 編輯 zero18
2011-01-31 18:19
11樓
  
 
下面是引用 a7811311622 於 2011-01-24 18:11 發表的: 到引言文

都能治本吧…

用「Ham_Weapon_SecondaryAttack」的話…
只要寫個「return HAM_SUPERCEDE;」就能取消右鍵的動作了…

用「cs_get_weapon_silen / cs_set_weapon_silen」的話…
先用「cs_get_weapon_silen」判斷 true 還是 false 後…
若回傳 true 時用「cs_set_weapon_silen」和「set_pdata_float(id, 83, 0.0, 5)」…
請問?有沒有插件能做到?小弟只懂改插件而已...表情

獻花 x0
引用 | 編輯 zero18
2011-01-31 18:49
12樓
  
 
下面是引用 narto2008 於 2011-01-29 20:29 發表的: 到引言文
右鍵無效吧
請問如何能右鍵無效?表情

獻花 x0
引用 | 編輯 zero18
2011-01-31 19:04
13樓
  
 
下面是引用 chuchung712 於 2011-01-24 18:15 發表的: 到引言文

其實我都不太清楚 set_pdata_ 和 get_pdata_ @_@
我更不清楚吧...請高人相助表情

獻花 x0
引用 | 編輯 husano896
2011-02-02 08:21
14樓
  
複製程式
plugin_init()
{
       //這段需要用到 <amxmodx> 和 <hamsandwich>
       RegisterHam(Ham_Weapon_SecondaryAttack, "weapon_m4a1", "fw_WeapAttack2", 1)
}

public fw_WeapAttack2(weapon)
{
       //需用到<fakemeta>

       if (!pev_valid(weapon))
              return HAM_IGNORED;

       //需用到 <cstrike>

       if (cs_get_weapon_silen(weapon))
       {
              cs_set_weapon_silen(weapon,0,0)
       }

       client_print(id,print_center,"M4A1禁止裝消音器!")

       return HAM_IGNORED;
}

以上為部分重要指令~

獻花 x0
引用 | 編輯 TheStarChild
2011-02-02 08:50
15樓
  
右鍵打爛被家人"禁足"
這招高招7.7

獻花 x0
引用 | 編輯 a7811311622
2011-02-02 11:17
17樓
  
下面是引用 husano896 於 2011-02-02 08:21 發表的 : 到引言文
複製程式
 

plugin_init() 
{ 
     //這段需要用到 <amxmodx> 和 <hamsandwich> 
     RegisterHam(Ham_Weapon_SecondaryAttack, "weapon_m4a1", "fw_WeapAttack2", 1) 
} 

public fw_WeapAttack2(weapon) 
{ 
     //需用到<fakemeta> 

     if (!pev_valid(weapon)) 
           return HAM_IGNORED; 

     //需用到 <cstrike> 

     if (cs_get_weapon_silen(weapon)) 
     { 
           cs_set_weapon_silen(weapon,0,0) 
     } 

     client_print(id,print_center,"M4A1禁止裝消音器!") 

     return HAM_IGNORED; 
} 


以上為部分重要指令~

話說…那 client_print 後面的"id"沒指定成功吧…而且這樣寫…
在「cs_get_weapon_silen」還沒回傳"true"之前還是會有裝消音器的動作…
在裝消音器的動作持續時無法開火…等於只是將裝完消音後的M4A1強制變成沒裝消音而已…
這樣還需要「set_pdata_float(id, 83, 0.0, 5)」和「pev_weaponanim」來DEBUG了…

以下寫法…基本上不會有上述問題…請參考…
複製程式
#include <amxmodx>
#include <hamsandwich>
public plugin_init()
{
 register_plugin("undefined", "1.0", "MyChat:a7811311622")
 RegisterHam(Ham_Weapon_SecondaryAttack, "weapon_m4a1", "fw_SecAttack")
}
public fw_SecAttack(weapon)
{
 if (pev_valid(weapon)) return HAM_SUPERCEDE;
 
 return HAM_IGNORED;
}
不過使用「return HAM_SUPERCEDE;」時可能會讓V檔執行前一個動作…
如果覺得不正常就要再用「pev_weaponanim」DEBUG了…

獻花 x0