📄 lonely-sword.c
字号:
// lonely-sword.c 独孤九剑#include <ansi.h>#include <combat.h>#include "/kungfu/skill/eff_msg.h";inherit SKILL; string *order = ({""HIY"", ""HIG"", ""RED"", ""MAG"", ""YEL"", ""HIC"", ""HIW"", ""HIR"",""HIB"", ""CYN"",""WHT"",""HIM"",""BLU""});string *parry_msg = ({ "却见$n踏前一步,剑式斜指你的右臂,想要使$P闪身而退。\n", "$n以攻为守,以进为退,凝神运气向$P猛攻快打地挥出方位大异的泰山「快活三」三剑。\n", "$n剑法突变,剑势伸缩不定,奔腾矫夭,逆使嵩山剑法的「天外玉龙」企图迫使$P变招。\n", "$n突然一剑点向$P的$l,虽一剑却暗藏无数后着,$P手足无措,攻势不由自主停了下来。\n" "$n不闪不避,举剑闪电般使出「叠翠浮青」反削$P的$l,想挡过你此招。\n", "$n突然使出青城派松风剑法的「鸿飞冥冥」,长剑对着$P一绞,企图突破$P的攻势。\n" "$n挺剑一招象是「白云出岫」回刺$P的$l,企图将$P的攻势化解。\n", "只见$n不退反进,身如飘风,一式「天柱云气」动向无定,挡住了$P的\n进攻。\n", "$n不退反进,使出恒山剑招「绵里藏针」,森森剑气充溢四周!架开了$P的这招\n", });mapping *action = ({([ "action" : "但见$N挺身而上,$w一旋,一招仿佛泰山剑法的"+(order[random(13)])+"「来鹤清泉」"NOR"直刺$n的$l!", "force" : 110, "dodge" : 65, "damage": 150, "lvl" : 0, "damage_type" : "刺伤"]),([ "action" : "$N奇诡地向$n挥出"+(order[random(13)])+"「泉鸣芙蓉」"NOR"、"+(order[random(13)])+"「鹤翔紫盖」"NOR"、"+(order[random(13)])+"「石廪书声」"NOR"、"+(order[random(13)])+"「天柱云气」"NOR"及"+(order[random(13)])+"「雁回祝融」"NOR"衡山五神剑!", "force" : 110, "dodge" : 60, "damage": 150, "lvl" : 7, "damage_type" : "刺伤"]),([ "action" : "$N剑随身转,续而刺出十九剑,竟然是华山"+(order[random(13)])+"「玉女十九剑」"NOR",但奇的是这十九剑便如一招,手法之快,直是匪夷所思!", "force" : 110, "dodge" : 65, "damage": 150, "lvl" : 14, "damage_type" : "刺伤"]),([ "action" : ""+(order[random(13)])+"$N剑势忽缓而不疏,剑意有余而不尽,化恒山剑法为一剑,向$n慢慢推去!", "force" : 120, "dodge" : 65, "damage": 150, "lvl" : 21, "damage_type" : "刺伤"]),([ "action" : ""+(order[random(13)])+"$N剑意突焕气象森严,便似千军万马奔驰而来,长枪大戟,黄沙千里,尽括嵩山剑势击向$n的$l!", "force" : 120, "dodge" : 80, "damage": 150, "lvl" : 28, "damage_type" : "刺伤"]),([ "action" : "却见$N身随剑走,左边一拐,右边一弯,剑招也是越转越加狠辣,竟化"+(order[random(13)])+"「泰山十八盘」"NOR"为一剑攻向$n!", "force" : 130, "dodge" : 100, "damage": 155, "lvl" : 35, "damage_type" : "刺伤"]),([ "action" : "$N剑招突变,使出衡山的"+(order[random(13)])+"「一剑落九雁」"NOR",削向$n的$l,怎知剑到中途,突然转向,大出$n意料之外!", "force" : 140, "dodge" : 100, "damage": 160, "lvl" : 42, "damage_type" : "刺伤"]),([ "action" : "$N吐气开声,一招似是"+(order[random(13)])+"「独劈华山」"NOR",手中$w向下斩落,直劈向$n的$l!", "force" : 150, "dodge" : 100, "damage": 180, "lvl" : 49, "damage_type" : "刺伤"]),([ "action" : "$N手中$w越转越快,使的居然是衡山的"+(order[random(13)])+"「百变千幻云雾十三式」"NOR",剑式有如云卷雾涌,旁观者不由得目为之眩!", "force" : 160, "dodge" : 100, "damage": 190, "lvl" : 56, "damage_type" : "刺伤"]),([ "action" : "$N含笑抱剑,气势庄严,$w轻挥,尽融"+(order[random(13)])+"「达摩剑」"NOR"为一式,闲舒地刺向$n!", "force" : 170, "dodge" : 100, "damage": 200, "lvl" : 63, "damage_type" : "刺伤"]),([ "action" : "$N举起$w运使"+(order[random(13)])+"「太极剑」"NOR"剑意,划出大大小小无数个圆圈,无穷无尽源源不绝地缠向$n!", "force" : 280, "dodge" : 100, "damage": 220, "lvl" : 70, "damage_type" : "刺伤"]),([ "action" : "$N神声凝重,$w上劈下切左右横扫,挟雷霆万钧之势逼往$n,"+(order[random(13)])+"「伏摩剑」"NOR"的剑意表露无遗!", "force" : 290, "dodge" : 105, "damage": 230, "lvl" : 77, "damage_type" : "刺伤"]),([ "action" : "却见$N突然虚步提腰,使出酷似武当"+(order[random(13)])+"「蜻蜓点水」"NOR"的一招!", "force" : 200, "dodge" : 105, "damage": 260, "lvl" : 84, "damage_type" : "刺伤"]),([ "action" : "$N运剑如风,剑光霍霍中反攻$n的$l,尝试逼$n自守,剑招似是"+(order[random(13)])+"「伏魔剑」"NOR"的"+(order[random(13)])+"「龙吞式」"NOR"。", "force" : 220, "dodge" : 100, "damage": 295, "lvl" : 91, "damage_type" : "刺伤"]),([ "action" : "$N突然运剑如狂,一手关外的"+(order[random(13)])+"「乱披风剑法」"NOR",猛然向$n周身乱刺乱削!", "force" : 240, "dodge" : 100, "damage": 320, "lvl" : 98, "damage_type" : "刺伤"]),([ "action" : "$N满场游走,东刺一剑,西刺一剑,令$n莫明其妙,分不出$N剑法的虚实!", "force" : 260, "dodge" : 100, "damage": 350, "lvl" : 105, "damage_type" : "刺伤"]),([ "action" : "$N抱剑旋身,转到$n身后,杂乱无章地向$n刺出一剑,不知使的是什么剑法!", "force" : 280, "dodge" : 100, "damage": 380, "lvl" : 112, "damage_type" : "刺伤"]),([ "action" : "$N突然一剑点向$n的$l,虽一剑却暗藏无数后着,$n手足无措,不知如何是好!", "force" : 200, "dodge" : 100, "damage": 485, "lvl" : 119, "damage_type" : "刺伤"]),([ "action" : "$N剑挟刀势,大开大阖地乱砍一通,但招招皆击在$n攻势的破绽,迫得$n不得不守!", "force" : 320, "dodge" : 100, "damage": 450, "lvl" : 126, "damage_type" : "刺伤"]),([ "action" : "$N反手横剑刺向$n的$l,这似有招似无招的一剑,威力竟然奇大,$n难以看清剑招来势!", "force" : 340, "dodge" : 105, "damage": 480, "lvl" : 133, "damage_type" : "刺伤"]),([ "action" : "$N举剑狂挥,迅速无比地点向$n的$l,却令人看不出其所用是什么招式。", "force" : 460, "dodge" : 100, "damage": 450, "lvl" : 140, "damage_type" : "刺伤"]),([ "action" : "$N随手一剑指向$n,落点正是$n的破绽所在,端的是神妙无伦,不可思议!", "force" : 480, "dodge" : 100, "damage": 450, "lvl" : 147, "damage_type" : "刺伤"]),([ "action" : "$N脸上突现笑容,似乎已看破$n的武功招式,胸有成竹地一剑刺向$n的$l!", "force" : 500, "dodge" : 100, "damage": 520, "lvl" : 154, "damage_type" : "刺伤"]),([ "action" : "$N将$w随手一摆,但见$n自己向$w撞将上来,神剑之威,实人所难测!", "force" : 600, "dodge" : 100, "damage": 665, "lvl" : 180, "damage_type" : "刺伤"]),([ "action" : HIW "但见$N手中$w" HIW "破空长吟,平平一剑刺向$n,毫无招式可言", "force" : 600, "attack": 100, "dodge" : 100, "parry" : 300, "damage": 560, "lvl" : 250, "damage_type" : "刺伤"]),([ "action" : HIW "$N揉身欺近,轻描淡写间随意刺出一剑,简单之极,无招无式", "force" : 600, "attack": 100, "dodge" : 100, "parry" : 300, "damage": 560, "lvl" : 300, "damage_type" : "刺伤"]),([ "action" : HIW "$N身法飘逸,神态怡然,剑意藏于胸中,手中$w" HIW "随意挥洒而出,独孤" "九剑已到了收发自如的境界", "force" : 600, "attack": 100, "dodge" : 100, "parry" : 300, "damage": 560, "lvl" : 350, "damage_type" : "刺伤"])});int valid_enable(string usage){ return usage=="sword" || usage=="parry";}mapping query_action(object me, object weapon){ return action[random(sizeof(action))];}string query_parry_msg(string limb){ return parry_msg[random(sizeof(parry_msg))];}int valid_learn(object me){ object ob; mapping myfam; myfam = (mapping)me->query("family"); if(!myfam || myfam["family_name"] != "华山派"|| myfam["master_id"] != "feng qingyang") return notify_fail("独孤九剑只有向风清扬老前辈学习。\n"); if( (int)me->query("max_neili") < 600 ) return notify_fail("你的内力不够,没有办法练独孤九剑。\n"); if( (int)me->query_skill("zixia-shengong",1)<100) return notify_fail("独孤九剑必须配合紫霞神功才能练习。\n"); if (((int)me->query_skill("huashan-sword", 1)+150) < (int)me->query_skill("lonely-sword", 1)) return notify_fail("你的剑宗华山剑法太低了。\n"); if (((int)me->query_skill("kuangfeng-jian", 1)+150) < (int)me->query_skill("lonely-sword", 1)) return notify_fail("你的气宗狂风快剑太低了。\n"); if (((int)me->query_skill("poyu-quan", 1)+200) < (int)me->query_skill("lonely-sword", 1)) return notify_fail("你的破玉拳太低了。\n"); if (((int)me->query_skill("hunyuan-zhang", 1)+200) < (int)me->query_skill("lonely-sword", 1)) return notify_fail("你的混元掌太低了。\n"); if (((int)me->query_skill("feiyan-huixiang", 1)+200) < (int)me->query_skill("lonely-sword", 1)) return notify_fail("你的飞燕回翔太低了。\n"); if (((int)me->query_skill("huashan-neigong", 1)+200) < (int)me->query_skill("lonely-sword", 1)) return notify_fail("你的剑宗内功太低了。\n"); if (((int)me->query_skill("zixia-shengong", 1)+200) < (int)me->query_skill("lonely-sword", 1)) return notify_fail("你的气宗内功太低了。\n"); if( !(ob = me->query_temp("weapon")) || (string)ob->query("skill_type") != "sword" ) return notify_fail("你必须先找一把剑才能练剑法。\n"); if ((int)me->query_skill("lonely-sword",1) > 120) return notify_fail("这套剑法我就教到这儿,以后就要靠你自己练了。\n"); return 1;}int practice_skill(object me){ return notify_fail("独孤九剑只能通过"+(order[random(13)])+"「总诀式」"NOR"来演练。\n");}int valid_effect(object me, object weapon, string name, int skill){}mixed hit_ob(object me, object victim, int damage_bonus, int factor, string limb){ int level, jiali, time,level2;int i, ap, dpp, dpd, dpf,lvl; object weapon,weapon2; string type, msg; weapon = me->query_temp("weapon");lvl = me->query_skill("lonely-sword", 1); if (random(me->query_skill("lonely-sword",1)) < 100 || me->query_skill("force",1) < 100 ) return 0;if (me->query_skill_mapped("force") != "zixia-shengong")return 0;if (me->query("neili") < 500)return 0;if (me->query_skill_mapped("sword") != "lonely-sword")return 0;if (me->query_skill_mapped("parry") != "lonely-sword")return 0; if (!objectp(weapon = me->query_temp("weapon")) || (string)weapon->query("skill_type") != "sword")return 0; ap = (int)me->query("combat_exp"); dpp = (int)victim->query("combat_exp"); switch(random(5)) { case 1: if (random(ap) > dpp/2 && random(lvl)> 180) { me->add("neili", -120); victim->receive_wound("qi", (damage_bonus - 30) / 2, me); return random(2) ? HIR "$N" HIR "一剑攻出,剑气横飞," + weapon->name() + HIR "时若游龙穿空,时若惊鸿渡云,却不知这普通的" "一剑之中竟蕴藏着如此威力。\n" NOR: HIR "$N" HIR "手中" + weapon->name() + HIR "犹" "如生了眼睛一般,一剑随意挥出,竟直刺向$n" HIR "小腹,看似平淡,但方位、力道却拿捏得恰倒好处。\n" NOR; } break; case 2: if (random(ap) > dpp/2 && me->query("con") >= 36 && random(lvl)> 180) { me->add("neili", -120); victim->receive_wound("qi", (damage_bonus - 30) / 2, me); return random(2) ? HIR "$N" HIR "一剑攻出,剑气横飞," + weapon->name() + HIR "时若游龙穿空,时若惊鸿渡云,却不知这普通的" "一剑之中竟蕴藏着如此威力。\n" NOR:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -