[闲聊] 20190722修改事项

楼主: laechan (挥泪斩马云)   2019-07-22 09:37:20
趁现在有一点空。
一、/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 目标都接不同只,
那你每一次就会看到完整讯息

Links booklink

Contact Us: admin [ a t ] ucptt.com