chuchung712
|
分享:
▲
▼
下面是引用 a7811311622 於 2010-04-08 14:00 發表的 :
有時候還是打完整會比較妥當…你是用在哪裡…? public Death public NewRound public fw_PlayerPreThink 這3個 ====================================== 複製程式
stock fm_give_item(index, const item[])
{
if (!equal(item, "weapon_", 7) && !equal(item, "ammo_", 5) && !equal(item, "item_", 5) && !equal(item, "tf_weapon_", 10))
return 0;
new ent = fm_create_entity(item);
if (!pev_valid(ent))
return 0;
new Float:origin[3];
pev(index, pev_origin, origin);
set_pev(ent, pev_origin, origin);
set_pev(ent, pev_spawnflags, pev(ent, pev_spawnflags) | SF_NORESPAWN);
dllfunc(DLLFunc_Spawn, ent);
new save = pev(ent, pev_solid);
dllfunc(DLLFunc_Touch, ent, index);
if (pev(ent, pev_solid) != save)
return ent;
engfunc(EngFunc_RemoveEntity, ent);
return -1;
} 發現有 return -1 了 = = 下面是引用 森之千手 於 2010-04-08 14:04 發表的 : 請問什麼時候會用? 可以不用嗎? 發現你的武器製作是沒有return PLUGIN_XXX 的 = =" 都是return 就算了 下面是引用 a7811311622 於 2010-04-08 14:08 發表的 :
如果你全部都是以「正向」思考的話應該是不會用到… return大概都是用在「反向」思考吧…(應該…) 不寫return都有這效果?
|
沒有理想的世界
|
x0
[21 樓]
From:香港有線寬頻 | Posted:2010-04-08 16:40 |
|
|
a7811311622
我…在工作了…
級別: 版主
版區: CS提問區
x771
x2152
|
分享:
▲
▼
下面是引用 chuchung712 於 2010-04-08 16:40 發表的 : 發現有 return -1 了 = =
複製程式
stock fm_give_item(index, const item[])
{
if (!equal(item, "weapon_", 7) && !equal(item, "ammo_", 5) && !equal(item, "item_", 5) && !equal(item, "tf_weapon_", 10))
return 0; // 回傳數值0 = 跳脫這個stock
new ent = fm_create_entity(item);
if (!pev_valid(ent))
return 0; // 同上
new Float:origin[3];
pev(index, pev_origin, origin);
set_pev(ent, pev_origin, origin);
set_pev(ent, pev_spawnflags, pev(ent, pev_spawnflags) | SF_NORESPAWN);
dllfunc(DLLFunc_Spawn, ent);
new save = pev(ent, pev_solid);
dllfunc(DLLFunc_Touch, ent, index);
if (pev(ent, pev_solid) != save)
return ent; // 回傳ent的數值
engfunc(EngFunc_RemoveEntity, ent);
return -1; // 讓上面的return有回傳值(猜測)
/*
Java或C語法如果return後面有數值的話,後面的數值型態需相同
例如上面return後面全部回傳的都是整數
*/
}
下面是引用 chuchung712 於 2010-04-08 16:40 發表的 : 不寫return都有這效果?
也是可以不用到任何return就能完成插件,就看你排版會不會混亂而已…
|
|
x0
[22 樓]
From:台灣教育部 | Posted:2010-04-08 17:19 |
|
|
a7811311622
我…在工作了…
級別: 版主
版區: CS提問區
x771
x2152
|
分享:
▲
▼
下面是引用 calove00 於 2010-04-09 14:04 發表的 : 你們這班人還未弄清楚什麼是
return PLUGIN_CONTINUE return PLUGIN_HANDLED
a7811311622 你間直說錯
PLUGIN_CONTINUE:可能只跳過程式裡面的其中幾段
PLUGIN_HANDLED:整段程式直接跳過
return PLUGIN_CONTINUE 是指你那個function 可以繼續進行
return PLUGIN_HANDLED 是指這個function 停止或關閉
我所問題係
return xxxx(id)
如
return client_cmd(id, "kill")
剛才問了我的朋友
這只是一個簡化的用語
即是
複製程式
public function(id)
{
client_cmd(id, "kill")
return
}
可能只跳過程式裡面的其中幾段
錯
我比較想知道你是問誰… 我說「PLUGIN_CONTINUE」是 可能只跳過程式裡面的其中幾段…你有討論其他 可能的假設嗎? 「return PLUGIN_CONTINUE 是指你那個function 可以繼續進行 」: 你這句話錯的更離譜…在「public function(id) 」用了「return PLUGIN_CONTINUE」後 return以下的內容可是完全跳過…怎麼繼續進行? 還有… public function(id) { client_cmd(id, "kill") return } 這段後面有沒有加return根本就沒差… 而這段要呼叫就要用「function(id)」或「return function(id)」了… 居然還說簡化後是「return client_cmd(id, "kill")」…? 結論: 既然我回答就會被批評成這樣…那你直接去問你那超強的朋友就好啦…何必來發問…? 而且問的人還公然說回答的人錯…提問等於不知,而不知的人居然知道別人答錯?你哪裡不知?好心回答還被說「你們這班人」是嗎?那我以後都裝不知道好了…反正有你這高手在…我繼續研究我的插件好了…別人要怎麼回答隨便…反正你都說我錯的很離譜了…
[ 此文章被a7811311622在2010-04-09 15:10重新編輯 ]
|
|
x0
[27 樓]
From:台灣教育部 | Posted:2010-04-09 15:01 |
|
|
|