mud_sanc 板


LINE

※ 引述《amosdeus (幽素)》之铭言: : int i,r,j,l,time; : object ppl,ob=this_object(),room; : mixed usr; : ppl = this_player(); : room = environment(ob); // 加底下这个判断 if(userp(room)) return 1; : usr = all_inventory(room); : //usr = ppl->query_temp("ats"); : r = random(3); : time = query("S_R/time"); //移除计时 : if(!ob) time = time / 2; //使用者不在时间减少 : if( time < 1) : { : write(CYN"运转四时剑阵的已经能源消耗完毕,剑阵一并崩然溃散。\n"NOR); : remove(); : } : else : set("S_R/time",time-1); 这个判断可以往前挪. 另外 remove() 下方要 return 1; 因为 ob=this_object(), 若 ob->remove() 程式就应停止 : foreach(ob in usr) : { : if(userp(ob)) : { : if(!ob) continue; : if(ob->query("no_attack")) continue; : if(!ob->query("ats")) continue; 要知道玩家有无攻击对象, 有两种判断方式 if(ob->query_attackers()) 代表若 ob 有攻击对象 if(ob->query_current_attacker()) 代表若 ob「有正要攻击的那个对象」 一般用第一个就行了。直接读玩家的 ats 跟使用函数读法的差异, 在於 ats 有可能为 ({ 0 }) 这样的东西 = 实际上攻击的对象已经 消失, 使用函数读取时它判断到 ({ 0 }) 会先移除. : switch(r) : { : case 0: : ppl->shut(HIM"\n\n$N【春之迷蒙】->$O"NOR,11111,11111,({"dam","physics",2}),ob); : break; : case 1: : ppl->shut(HIM"\n\n$N【夏之骄蹇】->$O"NOR,11111,11111,({"dam","physics",2}),ob); : break; : case 2: : ppl->shut(HIM"\n\n$N【秋之累绶】->$O"NOR,11111,11111,({"dam","physics",2}),ob); : break; : case 3: : ppl->shut(HIM"\n\n$N【冬之离葬】->$O"NOR,11111,11111,({"dam","physics",2}),ob); : break; : } : } : else : i++; : } : if(i==sizeof(usr)) : { : delete("callouting"); : remove_call_out("room_check_poison"); : return 1; : } : call_out("room_check_poison",2); //两回合攻击一次 : return 1; : } : int disband(string str) : { : object ppl = this_player(); : if(!str || str == "" ) return notify_fail("什麽?\n"NOR); : if(str!="range") return notify_fail("你是要解除剑阵吗?(disband range)\n"NOR); : if((string)ppl->query("name")!=query("name")) : return notify_fail("你并不能控制这座剑阵。\n"NOR); : command("drop all"); //drop没反应 要改别的方式 : write("你解除四时剑阵了.\n"); : remove(); : return 1; : } : 问题一: : 请问要怎样让 剑阵 在每一次 call_out("room_check_poison",2); : 都能读取到 使用者 正在攻击的敌人 ppl->query_temp("ats"); : 让 ppl->shut(HIM"\n\n$N【春之迷蒙】->$O"................ : 能够使用; : 或者是 让 剑阵 读取到 使用者 的攻击敌人参数 : 然後再用直接扣血的方式(但是要做抗性判断,跟属性闪避的判断) : 还要考虑玩家先布下剑阵时在进行战斗。 : 问题二: : //增加剑法类的攻击威力。 : //从slash的指令或是剑法的技能档增加读取到剑阵便增加攻击力 : slash的档案可以在哪里看到,另一个构思中的技能:飞剑 也用得到 /cmds/std/_slash.c 以及 /d/slash/*.c slash指令已经cp 一份到你的目录 ~plain/_slash.c, /d/slash 则应该有对你开放可读权限. 因为你的剑阵是实体物品,只要设定特殊 id 跟参数, 就可以用 present 的方式去 check. : 飞剑的攻击与数量: : 一: : 只招换出一只 飞剑 增加攻击次数一 : 比如 "四时剑法" 攻击次数为四,在读取到飞剑参数後攻击加一,变 : 成攻击次数为五。 这个就依剑法的不同,自行决定做法即可。个人比较建议先让 所有剑法都先 inherit 同一个 /d/slash 下的样本继承档 (该样本继承档则 inherit DAEMON;) 这样你做相关修改才会比较方便. 不然根据经验, 要一个一个 改技能档, 容易有出错的风险. : 二: : 可由 "剑士之心" 或是 "气劲(air)" 除於三千最多能,同时有三把飞 : 剑(这部分由撰写者决定)。 : 这里的原则是一的情况下可以达到原攻击的八九成,二的情况下飞剑只 : 数多攻击力就要下降。 : 直接从指令作修改比较快,修改剑类技能就比较麻烦也占记忆体。 : 以上 谢谢 : Plain@Sanc 重点在於你构想中的「多一剑」的实际执行形式为何,例如「 若大剑技+飞剑」时又是怎样的呈现方式? 如果是我的话在不改技能档的情况下只改指令档也是可以的. // _slash.c 已经先 call 剑法去施展出攻击了 if(ob=present(特殊id,所处环境)) if(ob->query(特殊参数)) 或 if(ob->check_剑阵_是可运作中的()) ob->ppl_is_slashing(ppl,玩家施展的剑法,几级,攻击对象是谁); return 1; // ob档 int ppl_is_slashing(object ppl,string skillname,int lv,object tar) { switch(skillname) { case "4-season slash": ppl->shut(四时相关叙述,伤害,命中,({xx}),tar); break; case "crack slash": ... . . . } } 这应该是不必动到技能档本身的比较简易的修改方式。 Belldandy. --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.253.168.79
1F:推 justinj :看到这个....原来ghost的招式还是会有问题...amem 06/12 08:46
2F:→ hlead :改以上写法在侧看看吧..avert 06/12 09:20
3F:推 justinj :norr你少改一只....封魔的devil.c 06/13 20:26
4F:→ hlead :有改道吧? 06/15 00:09







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Tech_Job站内搜寻

TOP