作者laechan (小太保)
看板mud_sanc
標題Re: [問題] 血肉副本
時間Thu Jul 3 22:44:34 2014
※ 引述《cheerall2001 (加油!!)》之銘言:
: 請問副本次數是以幾次為限呢??
: 因為本身是掛血肉 進進出出幾次後就不給進了 =,=
: 不曉得能否調高上限 或者改付費之類的??
可能在某一個時間區段內 3 次吧? 太久了, 忘了.
(翻程式碼中)
if(tmps[n3*2-1][1]==0)
{
if(
check_cd_times(me,tmps[n3*2-2],idata,tmps[n3*2-1][0],tmps[n3*2-1][1],t)>0)
return notify_fail("綾兒: 你還無法進入這個副本喔.\n");
questing("instance","create",tmps[n3*2-2],({files,({me}),
tmps[n3*2-1][0],tmps[n3*2-1][1]}));
}
int check_cd_times(object ob,string key_name,mapping idata,
string diff,int multi,int t)
{
string names;
int s,i,j,min_t=t;
if(!ob) return 1;
names=ob->query("name");
j=sizeof(idata[names]);
// 一定可進入
if(j<3) return 0;
.
.
if(t-min_t >
3600)
{
所以應該是一小時內只能進出三次。
當初確實是有規劃如果玩家願意付出什麼的話可以多進去一次,
但是沒有實裝咧(因為那時感覺沒啥人玩副本)。
暑假期間就 3→5 吧(至於一小時應該沒必要調吧),已實裝。
對副本有任何意見或建議都歡迎提出。
Laechan
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.165.173.180
※ 文章網址: http://webptt.com/m.aspx?n=bbs/mud_sanc/M.1404398678.A.8CD.html
1F:推 cheerall2001:我從不能進入後 等了一天還是不能進入 =,= 07/03 22:53
// /open/cmds/quest/quest_data/quest_data.c 的 instance 段
for(i=0;i<j;i++)
{
if(idata[names][i][0]==diff && idata[names][i][1]==multi)
{
s++;
if(min_t>idata[names][i][2])
min_t=idata[names][i][2];
}
}
上面的意思是說從你已進去的紀錄裡面找出「時間最小的那一個」,
也就是 min_t。比方你已進入三次了,這三次裡面最早進入的時間就
是 min_t。
if(t-min_t > 3600)
{
然後你現在想要進入副本,就拿現在的時間 - 最早的時間,有超過一
小時的話就做底下呼叫
questing("instance","instance_ob",key_name,
({
"del-ppl_instance",
names+"-"+diff+"-"+multi}));
也就是刪掉你最近幾次進入副本的紀錄。
// /std/new_ob/instance/instance_ob.c 的 instance_data 函數
case "del-ppl_instance":
if(str2)
{
string s1,s2,s3;
// names, diff, multi
if(sscanf(str2,"%s-%s-%s",s1,s2,s3)==3)
{
int i,j;
j=sizeof(ppl_instance[s1]);
for(i=0;i<j;i++)
if(ppl_instance[s1][i][0]==s1 && ppl_instance[s1][i][1]==s2)
ppl_instance[s1][i]=0;
ppl_instance[s1]-=({0});
}
else
map_delete(ppl_instance,str2);
}
else
ppl_instance=([]);
return 1;
break;
我猜是上面標綠色的部份寫錯,要比對的應該是 s2 及 s3。
已修正,可再測試。若明天該 bug 確定修正,你可以申請 bug 回報獎勵。
※ 編輯: laechan (1.165.173.180), 07/03/2014 23:15:12
※ 編輯: laechan (1.165.173.180), 07/03/2014 23:15:34
2F:推 cheerall2001:我確定之前是進入3次後到shutdown前就都無法進入了 07/03 23:25
3F:→ cheerall2001:自己有測試過3次 感謝wiz修改^_^ 07/03 23:25