作者hlead (希多)
看板mud_sanc
標題[問題] 閃躲設定。
時間Sat Jul 16 17:08:48 2011
我發現角色的 TEMP DATA 裡面完全沒 "sneak" 耶!
莫名失效 or 設不上去?
改完/adm/daemons/fight_d.c看起來沒啥問題阿orz
可是好像就是不會執行到sneak_defance()的樣子。
以下是程式段:
if(!userp(tar))
u=1;
if(u)
{
msg=dodge_defance(tar,me,hitr,u,type,damage);
if(msg=="ERROR") msg=shield_defance(tar,me,hitr,u,type);
if(msg=="ERROR") msg=parry_defance(tar,me,hitr,u,type,damage);
}
else
{
switch(guild)
{
case "thief":
{
msg=sneak_defance(tar,me,(hitr/2),u,type);
然後:
// 盜賊閃躲,新增殘影效果 by Norr in 2011/07/16
string sneak_defance(object tar,object me,int hitr,int u,string type)
{
mixed mod;
int sk_waver;
//sneak mod {(固定值,random用值,上限值,必定成功閃躲率});
if(!mod=tar->query_temp("sneak"))
{
BASE_DEF->sneak(tar);
return "ERROR";
}
if(sk_waver=tar->query("skill/waver"))
if(sk_waver > 99 && mod[3] > random(500))
return ",但是$O的身影瞬間逃至10里之外,而眼前的身形漸漸模糊!";
if(mod[0]+random(mod[1]) > (hitr/2+random(hitr)))
return ",但是被$O用盜賊的獨特步伐避開了!";
return "ERROR"; // 完全失敗
}
我call /d/skill/basesk.c;sneak;norr會設置上去。
可是不知道上面為啥會有問題。...
--
Norr@Sanc
風,吹散了一切煩惱,只留下平靜的思考。
雨,淋落了一切紛亂,只剩下無比的快樂。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.117.46.189
※ 編輯: hlead 來自: 122.117.46.189 (07/16 17:12)
→ laechan :某些怪物沒有 temp_data 07/16 20:44
→ laechan :不給的原因是1)節省mapping 2)怪物不太需要用到 07/16 20:44
→ hlead :是玩家都沒有...avert..還是玩家檔案是另一個? 07/16 20:55
→ laechan :grep /adm/daemons 下的 basesk 看看 07/16 21:02
→ hlead :#define BASE_DEF "/d/skill/basesk.c" 07/16 21:05
→ hlead :這有改過了@@重點是好像沒啥用..根本不會執行。 07/16 21:05
→ hlead :new_defance()在哪阿? 07/16 22:51
→ laechan :/adm/simul_efun/new_defance.c 07/17 10:05
→ hlead :痾...好吧..又沒權限 07/17 10:27
→ hlead :所以這檔案能改嗎?... 07/17 10:30