⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ranmu-daofa.c

📁 C实现的MUD,对大家基本入门网络游戏很有帮助!
💻 C
字号:
#include <ansi.h>inherit SKILL; mapping *action = ({([      "action" : "$N面带微笑,一招「烈火烧身」,举$w对着$n连砍了八八六十四刀,刀气纵横,迅雷不可挡",        "dodge" : 1,        "attack": 31,        "force" : 231,        "damage": 294,        "parry" : 2,        "lvl"   : 0,        "damage_type": "割伤"]),([      "action": "$N仰天长笑,施展出一招「天火燎原」,顿时幻出数柄$w同时斩向$n",        "dodge" : 12,        "attack": 37,        "force" : 263,        "damage": 251,        "parry" : 3,        "lvl"   : 30,        "damage_type": "割伤"]),([      "action": "$N腾身飞跃,越过$n头顶,一招「烈焰焚心」,手中$w直劈而下,斩向$n$l",        "dodge" : 9,        "attack": 31,        "force" : 251,        "damage": 389,        "parry" : 4,        "lvl"   : 100,        "damage_type": "割伤"]),([      "action" : "$N运起内功一招「点木生火」,$w上带着无比劲气,划了一个大弧,从上而下劈向$n的$l",        "dodge" : 16,        "attack": 28,        "force" : 242,        "damage": 307,        "parry" : 7,        "lvl"   : 120,        "damage_type": "割伤"]),([      "action": "$N手臂一沉,一招「张弓望月」,双手持$w划出一道雪亮刀光,接着拦腰反切,砍向$n的$l",        "dodge" : 11,        "attack": 33,        "force" : 263,        "damage": 309,        "parry" : 9,        "lvl"   : 140,        "damage_type": "割伤"]),([      "action": "$N挥舞$w上劈下撩,左挡右开,使出一招「烈火腾云」,卷起阵阵刀风,齐齐罩向$n",        "dodge" : 17,        "attack": 31,        "force" : 289,        "damage": 337,        "parry" : 13,        "lvl"   : 160,        "damage_type": "割伤"]),([      "action": "$N一招「火中取栗」,左脚跃步落地,手中$w单刀往前,挟着炙热的风声劈向$n的$l",        "dodge" : 13,        "attack": 41,        "force" : 323,        "damage": 361,        "parry" : 4,        "lvl"   : 180,        "damage_type": "割伤"]),([      "action": "$N腾空而起,半空中一招「玉石俱焚」,手中$w挥出满天流光般的刀影,向$n的全身卷去",        "dodge" : 11,        "attack": 34,        "force" : 302,        "damage": 389,        "parry" : 7,        "lvl"   : 200,        "damage_type": "割伤"]),});int valid_enable(string usage) { return  (usage =="parry")|| (usage =="blade"); }int valid_learn(object me){        object weapon;        if (! objectp(weapon = me->query_temp("weapon")) ||            (string)weapon->query("skill_type") != "blade")                return notify_fail("你必须先找一把刀才能练燃木刀法。\n");        if ((int)me->query("max_neili") < 1000)                return notify_fail("你的内力不足,没有办法练燃木刀法,多练些内力再来吧。\n");        if ((int)me->query_skill("force") < 150)                return notify_fail("你的内功火候太浅,没有办法练燃木刀法。\n");        if ((int)me->query_skill("blade", 1) < 100)                return notify_fail("你的基本刀法火候太浅,没有办法练燃木刀法。\n");         if((int)me->query_skill("xiuluo-dao",1) <120)      		return notify_fail("你的修罗刀火候不足,难以领悟燃木刀法。\n");         if((int)me->query_skill("jingang-quan",1) <120)      		return notify_fail("你的大金刚拳不足,难以领悟燃木刀法。\n");         if((int)me->query_skill("banruo-zhang",1) <120)      		return notify_fail("你的般若掌不足,难以领悟燃木刀法。\n");        if ((int)me->query_skill("blade", 1)+100 < (int)me->query_skill("ranmu-daofa", 1))                return notify_fail("你的基本刀法水平还不够,无法领会更高深的燃木刀法。\n");         if ((int)me->query_skill("yijinjing", 1) < 160)                return notify_fail("你的易筋经内功火候太浅。\n");        return 1;}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;        level = (int) me->query_skill("ranmu-daofa", 1);        if (random(me->query_skill("ranmu-daofa", 1)) > 120 &&             me->query_skill("force") > 100 &&             me->query("neili") > 1000 &&             random(10) > 6)        {                me->add("neili", -20);                return ([                "action": HIR "$N" HIR "忽然高宣一声佛号,身体急速"                          "旋转,遍体通红,袈裟鼓起。刹那间手中" +                           me->query_temp("weapon")->query("name")                          + HIR "一道火光闪过,迸\n出一股灼热的气流,"                          "袭向$n" HIR "!" NOR,                "dodge" : 11,                "attack": 66,                "force" : 599,                "damage": 599,                "parry" : 7,                "damage_type": "割伤"]);        }        for(i = sizeof(action); i > 0; i--)                if(level > action[i-1]["lvl"])                        return action[NewRandom(i, 20, level/5)];}int practice_skill(object me){        object weapon;        if (! objectp(weapon = me->query_temp("weapon")) ||            (string)weapon->query("skill_type") != "blade")                return notify_fail("你使用的武器不对。\n");        if ((int)me->query("qi") < 80)                return notify_fail("你的体力不够练燃木刀法。\n");        if ((int)me->query("neili") < 90)                return notify_fail("你的内力不够练燃木刀法。\n");         if ((int)me->query_skill("yijinjing", 1) < 160)                return notify_fail("你的易筋经内功火候太浅。\n");         if((int)me->query_skill("xiuluo-dao",1) <120)      		return notify_fail("你的修罗刀火候不足,难以领悟燃木刀法。\n");         if((int)me->query_skill("jingang-quan",1) <120)      		return notify_fail("你的大金刚拳不足,难以领悟燃木刀法。\n");         if((int)me->query_skill("banruo-zhang",1) <120)      		return notify_fail("你的般若掌不足,难以领悟燃木刀法。\n");        me->receive_damage("qi", 75);        me->add("neili", -85);        return 1;}string perform_action_file(string action){        return __DIR__"ranmu-daofa/" + action;}mixed hit_ob(object me, object victim, int damage_bonus, int factor){if (damage_bonus <10) damage_bonus=10;      if( random(me->query_skill("ranmu-daofa",1)) > 100 ) {	  victim->receive_wound("qi", (damage_bonus)/2);        return HIM "$n被刀风扫中,感觉伤口烧了起来!\n" NOR;}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -