Re: [系統] 種族進化開放及說明
看板mud_sanc (Sanctuary - 聖殿)作者laechan (揮淚斬馬雲)時間2周前 (2024/12/07 14:41)推噓0(0推 0噓 0→)留言0則, 0人參與討論串4/5 (看更多)
因為到星期五都沒生出魔女的饗宴任務,按照在 TG 說的,
接下來改採最速開放種族進化 Lv3 的做法。
/u/l/laechan/skycastle/room/skyroom.c
int jinhua_xxx(string str)
說明增加:
請注意輔助技能、法術及物品在進化期間的有效時間。
if(str!="check" && adv_level>1)
return notify_fail("jinhua: 你已經進行過兩次種族進化程序.\n");
這裡之後會改為 >2 及 "三次"
// 3.身上有進化的果實(c071(
if(ppl->query_vobjs("c071")<1)
msg+=HIR"jinhua: 你必須有進化的果實(c071)這個物品.\n"NOR;
這裡有可能改成進化 Lv2 需要 c072、Lv3 需要 c073,
3 顆 c071 是取得 1 顆 c072 的條件,3 顆 c072 是取
得 1 顆 c073 的條件,說條件是因為這不是唯一方式,
目前採最速做法所以會在近日開放取得 c072、c073 方式
> ob search c072
3 souei 蒼影(Souei:盜賊)
這個我得看是如何取得的。(但不影響開放期程)
// 4.冒險者之心(adventure heart)需達 9900
if(ppl->query("skill/adventure heart")<9900)
{
msg+=HIR"jinhua: 你的冒險者之心(adventure heart)必須"+
"練滿 9900 才能使用這個指令.\n"NOR;
線上 12x 個角色在線的情況下有 7x 角色滿足這個條件,
目前 5000 以上未滿 9000 的有以下
castar 5875
ioniq 6934
arctic 8955
amg 8572
m4 8631
我會看這五個角色的各項狀況,來評估是否調降。
// 5.種族相關 heart 需達 1000
if(i<1000)
{
msg+=HIR"jinhua: 你的"+skill_name(tmp)+"("+tmp+")必須"+
"練到 1000 才能使用這個指令.\n"NOR;
以上面五個角色來說,都有滿足這個條件。
// 6.七個屬性即時總和值需達 (10+種族進化等級)x1000
if(j<10000+adv_level*1000)
{
msg+=HIR"jinhua: 你的屬性總和需達 "+(10000+adv_level*1000)+" 以上"+
"才能使用這個指令.\n"NOR;
以上面五個角色來說,都有滿足這個條件。
// 7.技能數需達 100 以上
j=ppl->sizeof_skill();
if(j<100+adv_level*10)
{
msg+=HIR"jinhua: 你的技能數總和需達 "+(100+adv_level*10)+" 以上"+
"才能使用這個指令.\n"NOR;
以上面五個角色來說幾乎都不符合:
castar 86
ioniq 87
arctic 109
amg 51
m4 69
技能數 8x 的應該有機會短時間湊到 100 個,但 5x、6x 的
較難。
if(str=="check")
{
write(msg);
i=call_other(this_object(),"jinhua_6",ppl,names,race,adv_level,"",1);
call_other(this_object(),"jinhua_7",ppl,names,race,adv_level,"",i,1);
call_other(this_object(),"jinhua_8",ppl,names,race,adv_level,"",1);
call_other(this_object(),"jinhua_9",ppl,names,race,adv_level,"",1);
if(adv_level>0)
{
call_other(this_object(),"jinhua_9_6",ppl,names,race,adv_level,"",1);
call_other(this_object(),"jinhua_9_5",ppl,names,race,adv_level,"",1);
}
這裡我要看我當初是怎麼寫的。(待編輯)
if(adv_level>2)
return notify_fail("jinhua: 你已經進行過兩次種族進化程序.\n");
會改成 3 以及 "三次"。
i=time();
if(!wizardp(ppl) && ppl->query("record_data/next_jinhua_times")>i)
return notify_fail("jinhua: 你才剛進化過,你要等到下述時間才可再進化:\n"+
" "+ctime(i)+"\n");
CD time 86400秒可能會變更為更久一點,也可能不變更。
return notify_fail("jinhua: 有玩家正在執行進化,要先等他進化完喔.\n");
這個維持不變,我會看一下它有無 bug。
write_file("/open/wizs/log/skyroom_adv_level.txt",
sprintf("%-11s : %s : %d\n",names,ctime(i),adv_level));
這個會增加紀錄段落。
(為以後的 退化 預做準備)
ppl->vobjs("add","c071",-1);
這裡會修改。
if(ppl->query("adv_level")<1)
ppl->set("adv_level",1);
else
ppl->set("adv_level",2);
這裡會修改。
另外看起來需新增一個 int jinhua_9_7 的函數。
int jinhua_10
這裡需修改。
Laechan
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.33.120.231 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/mud_sanc/M.1733553691.A.258.html
討論串 (同標題文章)
mud_sanc 近期熱門文章
PTT遊戲區 即時熱門文章
130
225
12
49