作者laechan (揮淚斬馬雲)
看板mud_sanc
標題[閒聊] 20190722修改事項
時間Mon Jul 22 09:37:20 2019
趁現在有一點空。
一、/d/spell/spell_d.c 修改
新增一個 mapping user_spells 資料及 user_spells 函數。
user_spells 函數的寫法很簡單
int user_spells(object ppl,object tar)
{
string names;
if(!ppl || !tar) return 1;
// 用玩家id當key
names=ppl->query("name");
// 初始化
if(!user_spells) user_spells=([]);
// 所接的目標是攻擊對象物件
// 接物件的好處是用 file_name 就能判斷攻擊的是不是同一隻
// 以及當怪物死掉時物件自然變 0
else if(!user_spells[names]) user_spells[names]=tar;
else if(file_name(tar)==file_name(user_spells[names]))
return 1;
return 0;
}
二、/d/spell/fire.c、ice.c、mixed.c 修改
上面一、的修改後的前期測試用。
比方以 fire spell 來說,當你對某隻怪物「第一次」施展
火系法術時,會看到底下的東西
你詠唱著召喚精靈的咒語...
燃燒的精靈 吞噬所有東西的精靈 伊芙利特啊!
回應我的召喚 在火燄之中展現您的無窮之力!
你以制約的力量,在熊熊的烈燄中召喚出了炎之王伊芙利特...
你道:兇猛的火燄之王啊!以地獄之火燒盡眼前的一切事物吧!
你開始唸起古老的咒文:
~ 20 ~ ~ ~ 火系法術 ~
但是當你「又對這隻怪」施展火系法術時,就只會看到底下
的東西
你開始唸起古老的咒文:
~ 20 ~ ~ ~ 火系法術 ~
這樣理論上我們的訊息就可以寫得很華麗,因為只有對某一隻
怪物第一次施展這樣的 spell 攻擊時,會看到華麗的敘述,施
展第二次以上時就不會再出現,直到你攻擊新的怪物為止。
所以如果你是房間內多隻怪,你每次 spell 目標都接不同隻,
那你每一次就會看到完整訊息----等於未改之前的樣子。
以上的修改將觀察一段時間(玩家有問題請回報),若沒啥問題就
會擴展到所有的 spell 及所有的特攻。
三、
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.33.66.104 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/mud_sanc/M.1563759444.A.E71.html
※ 編輯: laechan (114.33.66.104 臺灣), 07/22/2019 14:32:14
1F:→ laechan : 啊,忘記更新,已update,順便觀察debug.log是否增加 07/22 16:47