作者giant70.bbs@ptt.cc (劉伯溫) 看板: mud
標題[心得] 亂世群雄技能 taiji-dao
時間批踢踢實業 (2008/08/31 Sun 14:15:47)
// taiji-dao.c 太極刀
#include <ansi.h>
inherit SKILL;
mapping *action = ({
([ "action" : HIM"$N"HIW"手中$w"HIW"斜指,一招"HIB"「停車問路」"HIW",反身一頓,一刀向"HIC"$n"HIW"的"HIY"$l"HIW"撩去"NOR,
"force" : 120,
"dodge" : -10,
"parry" : 5,
"damage" : 70,
"damage_type" : "割傷"
]),
([ "action" : HIW"$N"HIG"一招"HIW"「童子掛畫」"HIG",左右腿虛點,$w"HIG"一提一收,平刃揮向"HIW"$n"HIG"的頸部"NOR,
"force" : 130,
"dodge" : -10,
"parry" : 10,
"damage" : 50,
"damage_type" : "割傷"
]),
([ "action" : HIW"$N"HIM"展身虛步,提腰躍落,一招"HIY"「推窗望月」"HIM",刀鋒一卷,攔腰斬向"HIW"$n"NOR,
"force" : 140,
"dodge" : -5,
"parry" : 5,
"damage" : 85,
"damage_type" : "割傷"
]),
([ "action" : HIB"$N"HIW"一招"HIC"「開門見山」"HIW",$w"HIW"大開大闔,自上而下劃出一個大弧,筆直劈向"HIY"$n"NOR,
"force" : 160,
"dodge" : 5,
"parry" : 5,
"damage" : 60,
"damage_type" : "割傷"
]),
([ "action" : HIW"$N"HIR"手中$w"HIR"一沉,一招"HIW"「"HIB"臨溪觀魚"HIW"」"HIR",雙手持刃攔腰反切,砍向"HIW"$n"HIR"的胸口"NOR,
"force" : 180,
"dodge" : 10,
"parry" : 5,
"damage" : 65,
"damage_type" : "割傷"
]),
([ "action" : "$N"HIY"揮舞$w"HIY",使出一招"HIC"「張弓望的」"HIY",上劈下撩,左擋右開,齊齊罩向"HIW"$n"NOR,
"force" : 210,
"dodge" : 15,
"parry" : 15,
"damage" : 95,
"damage_type" : "割傷"
]),
([ "action" : HIM"$N"HIW"一招"HIM"「風送輕舟」"HIW",左腳躍步落地,$w"HIW"順勢往前,挾風聲劈向"HIM"$n"HIW"的"HIG"$l"NOR,
"force" : 240,
"dodge" : 5,
"parry" : 15,
"damage" : 80,
"damage_type" : "割傷"
]),
([ "action" : HIW"$N"HIW"盤身駐地,一招"HIB"「川流不息」"HIW",揮出一片流光般的刀影,向"HIC"$n"HIW"的全身湧去"NOR,
"force" : 280,
"dodge" : 20,
"parry" : 10,
"damage" : 60,
"damage_type" : "割傷"
]),
});
int valid_enable(string usage) { return (usage == "blade") || (usage == "parry"); }
int valid_learn(object me)
{
if ((int)me->query("max_force") < 100)
return notify_fail("你的內力不夠。\n");
if ((int)me->query_skill("taiji-shengong", 1) < 20)
return notify_fail("你的太極神功\火候太淺。\n");
if ((int)me->query_skill("taiji-quan", 1) < 20)
return notify_fail("你的太極拳火候太淺。\n");
return 1;
}
mapping query_action(object me, object weapon)
{
int zhaoshu, level;
zhaoshu = sizeof(action)-1;
level = (int) me->query_skill("taiji-dao",1);
if (level < 60 )
zhaoshu--;
if (level < 55 )
zhaoshu--;
if (level < 50 )
zhaoshu--;
if (level < 40 )
zhaoshu--;
if (level < 30 )
zhaoshu--;
if (level < 20 )
zhaoshu--;
if (level < 10 )
zhaoshu--;
return action[random(zhaoshu)];
}
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("kee") < 50)
return notify_fail("你的體力不夠練太極刀法。\n");
me->receive_damage("force", 30);
return 1;
}
string color()
{
return HIW"太"NOR""WHT"極"HIM"刀"NOR;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.31.141.177