📄 weituo-chu.c
字号:
#include <ansi.h>inherit SKILL; mapping *action = ({(["action":"$N跃在半空,一招「仙鹤展翅入灵山」,手中$w已化成无数棍影,令$n眼花缭乱,不知所措,连连倒退", "force" : 180, "dodge" : 20, "parry" : 20, "damage": 220, "lvl" : 0, "skill_name" : "仙鹤展翅入灵山", "damage_type":"挫伤"]),(["action":"$N挺$w将$n的招式架住,顺势一招「玉马衔环拜仙宫」,$w上下左右飞快搅动,身随棍走,向$n压了下来", "force" : 200, "dodge" : 10, "parry" : 15, "damage": 230, "lvl" : 30, "skill_name" : "玉马衔环拜仙宫", "damage_type":"挫伤"]),(["action":"$N一招「鸣鹿踏蹄觅仙草」,屈膝俯身,手中$w连点$n下盘,却未等招数用老,猛的一提,向$n的胸腹间戳去", "force" : 220, "dodge" : 15, "parry" : 20, "damage": 240, "lvl" : 60, "skill_name" : "鸣鹿踏蹄觅仙草", "damage_type":"挫伤"]),(["action":"$N突然滚到在地,$n错愕间,一招「金鲤跃水潜天池」,竟从$n的裆下窜过,更不回头,$w反手扫向$n的$l", "force" : 240, "dodge" : 20, "parry" : 25, "damage": 260, "lvl" : 80, "skill_name" : "金鲤跃水潜天池", "damage_type":"挫伤"]),(["action":"$N一招「灵猿献果赴蓬莱」,身形如电,绕着$n飞快奔跑,手中$w一招快似一招,刹那间向$n连打出十六棍", "force" : 280, "dodge" : 30, "parry" : 30, "damage": 280, "lvl" : 100, "skill_name" : "灵猿献果赴蓬莱", "damage_type":"挫伤"]),(["action":"$N大踏步上前,劲贯双臂,手中$w大开大阖,呼呼风声中一招「飞鹰盘旋扫乾坤」扫向$n的腰间", "force" : 260, "dodge" : 30, "parry" : 40, "damage": 300, "lvl" : 120, "skill_name" : "飞鹰盘旋扫乾坤", "damage_type":"挫伤"]),(["action":"$N大喝一声,一招「天龙出水腾宇宙」,$w脱手飞出,夹着劲风射向$n的前心,随即抢到$n的身后,伸手又把$w抄在手中", "force" : 300, "dodge" : 20, "parry" : 30, "damage": 280, "lvl" : 130, "skill_name" : "天龙出水腾宇宙", "damage_type":"挫伤"]),(["action":"$N双目圆睁,口中默诵真言,一招「白象卷云憾天柱」,$w似有千斤,缓缓举起,又缓缓向$n的当头砸落", "force" : 350, "dodge" : 20, "parry" : 30, "damage": 400, "lvl" : 150, "skill_name" : "白象卷云憾天柱", "damage_type":"挫伤"]),}); int valid_enable(string usage) { return (usage == "club") || (usage =="parry"); } int valid_learn(object me){ mapping fam = me->query("family"); if ((int)me->query("max_neili") < 1500) return notify_fail("你的内力不够。\n"); if ((int)me->query_skill("yijinjing", 1) < 160) return notify_fail("你的易筋经内功火候太浅。\n"); if((int)me->query_skill("zui-gun",1) <120) return notify_fail("你的醉棍火候不足,难以领悟韦陀杵。\n"); if((int)me->query_skill("zui-gun",1) <120) return notify_fail("你的醉棍火候不足,难以领悟韦陀杵。\n"); if((int)me->query_skill("longzhua-gong",1) <120) return notify_fail("你的龙爪功不足,难以领悟韦陀杵。\n"); if((int)me->query_skill("weituo-gun",1) <120) return notify_fail("你的韦驮棍不足,难以领悟韦陀杵。\n"); return 1;} string perform_action_file(string action){ return __DIR__"weituo-chu/" + action;}string query_skill_name(int level){ int i; for(i = sizeof(action)-1; i >= 0; i--) if(level >= action[i]["lvl"]) return action[i]["skill_name"];}mapping query_action(object me, object weapon){ int i, level, lvl; object target; mapping pre; string *skill, a, b; level = (int) me->query_skill("weituo-chu",1); lvl = (int)me->query_skill("longzhua-gong", 1); if ( level >= 200 && lvl >= 200 && random(level) > lvl / 2 && objectp(target = me->select_opponent()) && objectp(weapon = me->query_temp("weapon")) && me->query_skill_mapped("claw") == "longzhua-gong" && me->query_skill_prepared("claw") == "longzhua-gong" && me->query("neili") > 300 && me->query("jing") > 100 ) { pre = me->query_skill_prepare(); skill = keys(pre); for (i=0; i<sizeof(skill); i++){ if(skill[i]=="claw") continue; a = skill[i]; b = pre[skill[i]]; me->prepare_skill(skill[i]); } weapon->unequip(); COMBAT_D->do_attack(me, target, me->query_temp("weapon"), 2); COMBAT_D->do_attack(me, target, me->query_temp("weapon"), 2); weapon->wield(); me->prepare_skill(a,b); me->add("neili", -25); } for(i = sizeof(action); i > 0; i--) if(level >= action[i-1]["lvl"]) return action[NewRandom(i, 20, level/5)];} mixed hit_ob(object me, object victim, int damage_bonus, int factor){if (damage_bonus <10) damage_bonus=10; if( random(me->query_skill("weituo-chu",1)) > 100 ) { victim->receive_wound("qi", (damage_bonus)/2); return HIR "$n被棍风的巨力打中,发出一阵骨碎的声音!\n" NOR;}}int practice_skill(object me){ object weapon; if((int)me->query_skill("zui-gun",1) <=120) return notify_fail("你的醉棍火候不足,难以领悟韦陀杵。\n"); if((int)me->query_skill("longzhua-gong",1) <=120) return notify_fail("你的龙爪功不足,难以领悟韦陀杵。\n"); if((int)me->query_skill("weituo-gun",1) <=120) return notify_fail("你的韦驮棍不足,难以领悟韦陀杵。\n"); if (!objectp(weapon = me->query_temp("weapon")) || (string)weapon->query("skill_type") != "club") return notify_fail("你使用的武器不对。\n"); if ((int)me->query("jing") < 70) return notify_fail("你的体力不够练韦陀棍。\n"); if ((int)me->query("neili") < 40) return notify_fail("你的内力不够练韦陀棍。\n"); me->receive_damage("jing", 30); if((int)me->query_skill("weituo-chu",1)> 200) me->add("neili",-10); return 1;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -