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

📄 qingpingsword.c

📁 C实现的MUD,对大家基本入门网络游戏很有帮助!
💻 C
字号:
// fonxansword.c

inherit SKILL;

mapping *action = ({
        ([      "action":               
"$N使一招「峰回路转」,手中$w如一条银蛇般刺向$n的$l",
                "dodge":                -20,
                "damage":               30,
                "damage_type":  "刺伤"
        ]),
        ([      "action":               
"$N使出清平剑法中的「空山鸟语」,剑光霍霍斩向$n的$l",
                "dodge":                -20,
                "damage":               30,
                "damage_type":  "割伤"
        ]),
        ([      "action":               
"$N一招「御风而行」,身形陡然滑出数尺,手中$w斩向$n的$l",
                "dodge":                -30,
                "damage":               20,
                "damage_type":  "割伤"
        ]),
        ([      "action":               
"$N手中$w中宫直进,一式「旭日东升」对准$n的$l刺出一剑",
                "dodge":                -40,
                "damage_type":  "刺伤"
        ]),
        ([      "action":               
"$N纵身一跃,手中$w一招「金光泻地」对准$n的$l斜斜刺出一剑",
                "dodge":                -40,
                "damage_type":  "刺伤"
        ]),
        ([      "action":               
"$N的$w凭空一指,一招「童子引路」刺向$n的$l",
                "dodge":                20,
                "damage":               40,
                "damage_type":  "刺伤"
        ]),
        ([      "action":               
"$N手中$w向外一分,使一招「柳暗花明」反手对准$n$l一剑刺去",
                "dodge":                -20,
                "damage":               20,
                "damage_type":  "刺伤"
        ]),
        ([      "action":               
"$N横剑上前,身形一转手中$w使一招「空谷秋虹」画出一道光弧斩向$n的$l",
                "dodge":                -30,
                "damage":               10,
                "damage_type":  "割伤"
        ]),
});

int valid_learn(object me)
{
        object ob;

        if( (int)me->query("max_neili") < 50 )
                return notify_fail("你的内力不够,没有办法练清平剑法。\n");

        if( (string)me->query_skill_mapped("force")!= "qingpingforce")
                return notify_fail("清平剑法必须配合清平派内功才能练。\n");

        if( !(ob = me->query_temp("weapon"))
        ||      (string)ob->query("skill_type") != "sword" )
                return notify_fail("你必须先找一把剑才能练剑法。\n");

        return 1;
}

int valid_enable(string usage)
{
        return usage=="sword" || usage=="parry";
}

mapping query_action(object me, object weapon)
{
        return action[random(sizeof(action))];
}

int practice_skill(object me)
{
        if( (int)me->query("jing") < 30
        ||      (int)me->query("neili") < 3 )
                return 
notify_fail("你的内力或气不够,没有办法练习清平剑法。\n");
        me->receive_damage("jing", 30);
        me->add("neili", -3);
        write("你按著所学练了一遍清平剑法。\n");
        return 1;
}

 
int effective_level() { return 15;}

string *parry_msg = ({
        "$n使出一招「凤舞九天」,手中的$v化作一条长虹,磕开了$N的$w。\n",
        "$n使出「封」字诀,将$N的$w封于丈外。\n",
        "$n使出一招「朝朝瑞雪」,手中的$v化做漫天雪影,荡开了$N的$w。\n",
        "$n手中的$v一抖,一招「旱地春雷」,向$N拿$w的手腕削去。\n",
});

string *unarmed_parry_msg = ({
        "$n将手中的$v舞得密不透风,封住了$N的攻势。\n",
        "$n反手一招「阳光普照」,整个人消失在一团剑光之中。\n",
        "$n使出一招「龙舞九天」,$v直刺$N的双手。\n",
        "$n将手中的$v化做七条剑气,迫得$N连连后退。\n",
});

string query_parry_msg(object weapon)
{
        if( weapon )
                return parry_msg[random(sizeof(parry_msg))];
        else
                return unarmed_parry_msg[random(sizeof(unarmed_parry_msg))];
}

int learn_bonus()
{
	return 20;
}
int practice_bonus()
{
	return 10;
}
int black_white_ness()
{
	return 15;
}

string perform_action_file(string action)
{
        return __DIR__"qingpingsword/" + action;
}

⌨️ 快捷键说明

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