廣告廣告
  加入我的最愛 設為首頁 風格修改
首頁 首尾
 手機版   訂閱   地圖  簡體 
您是第 5999 個閱讀者
 
<<   1   2   3  下頁 >>(共 3 頁)
發表文章 發表投票 回覆文章
  可列印版   加為IE收藏   收藏主題   上一主題 | 下一主題   
calove00
個人文章 個人相簿 個人日記 個人地圖
小人物
級別: 小人物 該用戶目前不上站
推文 x171 鮮花 x99
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片
推文 x0
[1.6] [AMXX]return問題
有時看到有些amxx是這的

public function(id)
{
 return xxxxxxxx(id)
}

xxxxx(id)

那兒其實是怎麼才會觸發...

我不用上這..

但看別的有用...

想知道表情


獻花 x0 回到頂端 [樓 主] From:香港有線寬頻 | Posted:2010-04-07 11:31 |
Abcdzxc555
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x71 鮮花 x83
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

return XXXXXX(id)?? 有這樣的指令嗎表情
應該是
return PLUGIN_CONTINUE;等等的吧 表情


獻花 x0 回到頂端 [1 樓] From:香港網上行 | Posted:2010-04-07 12:24 |
lkh1018
數位造型
個人文章 個人相簿 個人日記 個人地圖
路人甲
級別: 路人甲 該用戶目前不上站
推文 x0 鮮花 x2
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

return XXXXXX(id)?? 有這樣的指令嗎
有!!

例如
public event_ResetHUD(id) {
  if(is_user_alive(id))
    return function2(id)
  if(is_user_bot(id))
    return function3(id)
  return function4(id)
}

function2(id) {
  ...
  ...
  ...
  return PLUGIN_CONTINUE
}

function3(id) {
  ...
  ...
  ...
  return PLUGIN_HANDLED
}

function4(id) {
  ...
  ...
  ...
  return PLUGIN_HANDLED_MAIN
}

例如ResetHUD這event被觸法
而那人是在生的, 就會跑到function2(id),
而function2(id)最後是return plugin_continue,
那function1(id)那裡的function2(id)的value就是plugin_continue
那function1(id)最後return的就是plugin_continue

所以這段編碼就是,
而那人是在生的, 就return plugin_continue
而那人是死亡又是bot的, 就return plugin_handled
而其餘的, 就return plugin_handled_main


獻花 x0 回到頂端 [2 樓] From:香港特別行政區 | Posted:2010-04-07 13:22 |
chuchung712 會員卡
個人頭像
個人文章 個人相簿 個人日記 個人地圖
特殊貢獻獎 社區建設獎 優秀管理員勳章 特殊貢獻獎-2
知名人士
級別: 知名人士 該用戶目前不上站
推文 x774 鮮花 x1169
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

下面是引用 lkh1018 於 2010-04-07 13:22 發表的 : 到引言文
return XXXXXX(id)?? 有這樣的指令嗎
有!!
例如
public event_ResetHUD(id) {
  if(is_user_alive(id))
.......

我想問問
return PLUGIN_CONTINUE
return PLUGIN_HANDLED
這兩個有啥分別?
return 0 啊, 1啊, -1啊又怎樣用?
感謝~


沒有理想的世界
獻花 x0 回到頂端 [3 樓] From:香港有線寬頻 | Posted:2010-04-07 17:28 |
a7811311622 手機
個人頭像
個人文章 個人相簿 個人日記 個人地圖
特殊貢獻獎 優秀管理員勳章 社區建設獎
頭銜:我…在工作了…我…在工作了…
版主
級別: 版主 該用戶目前不上站
版區: CS提問區
推文 x771 鮮花 x2152
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

下面是引用 chuchung712 於 2010-04-07 17:28 發表的 : 到引言文

我想問問
return PLUGIN_CONTINUE
return PLUGIN_HANDLED
這兩個有啥分別?
return 0 啊, 1啊, -1啊又怎樣用?
感謝~

比較簡單的說法是:
PLUGIN_CONTINUE:可能只跳過程式裡面的其中幾段
PLUGIN_HANDLED:整段程式直接跳過
這要有例子才比較好講解…表情


尚無簽名,歡迎 [新增個性化簽名]
獻花 x0 回到頂端 [4 樓] From:台灣教育部 | Posted:2010-04-07 17:45 |
chuchung712 會員卡
個人頭像
個人文章 個人相簿 個人日記 個人地圖
特殊貢獻獎 社區建設獎 優秀管理員勳章 特殊貢獻獎-2
知名人士
級別: 知名人士 該用戶目前不上站
推文 x774 鮮花 x1169
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

下面是引用 a7811311622 於 2010-04-07 17:45 發表的 : 到引言文

比較簡單的說法是:
PLUGIN_CONTINUE:可能只跳過程式裡面的其中幾段
PLUGIN_HANDLED:整段程式直接跳過
這要有例子才比較好講解…表情

這是AlliedModders的黃金AK插件中的其中一部分 @@
複製程式
public checkWeapon(id) 
{ 
 new plrClip, plrAmmo, plrWeap[32] 
 new plrWeapId 
  
 plrWeapId = get_user_weapon(id, plrClip , plrAmmo) 
  
 if (plrWeapId == CSW_AK47 && g_HasAk[id]) 
 { 
  checkModel(id) 
 } 
 else 
 { 
  return PLUGIN_CONTINUE
 } 
  
 if (plrClip == 0 && get_pcvar_num(cvar_uclip)) 
 { 
  // If the user is out of ammo.. 
  get_weaponname(plrWeapId, plrWeap, 31) 
  // Get the name of their weapon 
  give_item(id, plrWeap) 
  engclient_cmd(id, plrWeap) 
  engclient_cmd(id, plrWeap) 
  engclient_cmd(id, plrWeap) 
 } 
 return PLUGIN_HANDLED
}


沒有理想的世界
獻花 x0 回到頂端 [5 樓] From:香港有線寬頻 | Posted:2010-04-07 18:38 |
a7811311622 手機
個人頭像
個人文章 個人相簿 個人日記 個人地圖
特殊貢獻獎 優秀管理員勳章 社區建設獎
頭銜:我…在工作了…我…在工作了…
版主
級別: 版主 該用戶目前不上站
版區: CS提問區
推文 x771 鮮花 x2152
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

下面是引用 chuchung712 於 2010-04-07 18:38 發表的 : 到引言文

這是AlliedModders的黃金AK插件中的其中一部分 @@

複製程式
public checkWeapon(id) 
{ 
 new plrClip, plrAmmo, plrWeap[32] 
.......[/quote] 
[code] 
public checkWeapon(id)  
{  
 new plrClip, plrAmmo, plrWeap[32]  
 new plrWeapId  
   
 plrWeapId = get_user_weapon(id, plrClip , plrAmmo)  
   
 if (plrWeapId == CSW_AK47 && g_HasAk[id])  
 {  
  checkModel(id)  
 }  
 else  
 {  
  return PLUGIN_CONTINUE 
  /* 
  這段回傳的結果是脫離「public checkWeapon(id)」這段假設,
  如果條件符合,則從這段開始往下的內容就不會判斷和執行
  */ 
 }  
   
 if (plrClip == 0 && get_pcvar_num(cvar_uclip))  
 {  
  // If the user is out of ammo..  
  get_weaponname(plrWeapId, plrWeap, 31)  
  // Get the name of their weapon  
  give_item(id, plrWeap)  
  engclient_cmd(id, plrWeap)  
  engclient_cmd(id, plrWeap)  
  engclient_cmd(id, plrWeap)  
 }  
 return PLUGIN_HANDLED // 單純讓上面的「return PLUGIN_CONTINUE」有回傳值罷了… 
} 


[ 此文章被a7811311622在2010-04-07 21:06重新編輯 ]


尚無簽名,歡迎 [新增個性化簽名]
獻花 x0 回到頂端 [6 樓] From:台灣教育部 | Posted:2010-04-07 18:58 |
chuchung712 會員卡
個人頭像
個人文章 個人相簿 個人日記 個人地圖
特殊貢獻獎 社區建設獎 優秀管理員勳章 特殊貢獻獎-2
知名人士
級別: 知名人士 該用戶目前不上站
推文 x774 鮮花 x1169
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

下面是引用 a7811311622 於 2010-04-07 18:58 發表的 : 到引言文

[code]public checkWeapon(id)
{
 new plrClip, plrAmmo, plrWeap[32]
.......

開始明白了...
但如果if 裡有continue呢?
還有return 0, -1, 1是什麼意思...
謝 


沒有理想的世界
獻花 x1 回到頂端 [7 樓] From:香港有線寬頻 | Posted:2010-04-07 20:30 |
a7811311622 手機
個人頭像
個人文章 個人相簿 個人日記 個人地圖
特殊貢獻獎 優秀管理員勳章 社區建設獎
頭銜:我…在工作了…我…在工作了…
版主
級別: 版主 該用戶目前不上站
版區: CS提問區
推文 x771 鮮花 x2152
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

下面是引用 chuchung712 於 2010-04-07 20:30 發表的 : 到引言文

開始明白了...
但如果if 裡有continue呢?
還有return 0, -1, 1是什麼意思...
謝 

後來發現我上面說錯了…(最近上課學JAVA後搞亂了…)
continue其實和PLUGIN_CONTINUE是一樣的用意,
至於return 0,1 其實就等於PLUGIN_CONTINUE和PLUGIN_HANDLED
這在<amxconst.inc>裡面有說明,
不過我倒是沒看過return -1 的說…保守猜測成回傳空值(null)好了…


尚無簽名,歡迎 [新增個性化簽名]
獻花 x1 回到頂端 [8 樓] From:台灣教育部 | Posted:2010-04-07 21:05 |
chuchung712 會員卡
個人頭像
個人文章 個人相簿 個人日記 個人地圖
特殊貢獻獎 社區建設獎 優秀管理員勳章 特殊貢獻獎-2
知名人士
級別: 知名人士 該用戶目前不上站
推文 x774 鮮花 x1169
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

下面是引用 a7811311622 於 2010-04-07 21:05 發表的 : 到引言文

後來發現我上面說錯了…(最近上課學JAVA後搞亂了…)
continue其實和PLUGIN_CONTINUE是一樣的用意,
至於return 0,1 其實就等於PLUGIN_CONTINUE和PLUGIN_HANDLED
這在<amxconst.inc>裡面有說明,
不過我倒是沒看過return -1 的說…保守猜測成回傳空值(null)好了…

恩...
發現了
複製程式
#define PLUGIN_CONTINUE  0 /* Results returned by public functions */
#define PLUGIN_HANDLED  1 /* stop other plugins */
#define PLUGIN_HANDLED_MAIN 2 /* to use in client_command(), continue all plugins but stop the command */
再問一個問題
if 裡面可以有 PLUGIN_HANDLED 的嗎?
反之 public 裡, if 外面可以有 PLUGIN_CONTINUE 嗎?


沒有理想的世界
獻花 x0 回到頂端 [9 樓] From:香港有線寬頻 | Posted:2010-04-08 11:09 |

<<   1   2   3  下頁 >>(共 3 頁)
首頁  發表文章 發表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.055265 second(s),query:16 Gzip disabled
本站由 瀛睿律師事務所 擔任常年法律顧問 | 免責聲明 | 本網站已依台灣網站內容分級規定處理 | 連絡我們 | 訪客留言