init: add workspace files
This commit is contained in:
81
world/skill/shashou/chuanxinzhang.js
Normal file
81
world/skill/shashou/chuanxinzhang.js
Normal file
@@ -0,0 +1,81 @@
|
||||
this.inherits(SKILL);
|
||||
this.name = "穿心掌";
|
||||
this.id = "chuanxinzhang";
|
||||
this.grade = 2;
|
||||
this.family = FAMILIES.SHASHOU;
|
||||
|
||||
this.attack_actions = [
|
||||
"$N使出一招「破山刀」,运掌如飞,招招直打$n的$l",
|
||||
"$N使出一招「碎石手」,双掌急运内力,带着凛冽的掌风直拍$n的$l",
|
||||
"$N惨然一声长啸,一招「摄魄掌」,双掌猛然击下,直扑$n的要脉",
|
||||
"$N骨骼暴响,双臂忽然暴长数尺,一招「追魂掌」直直攻向$n的$l",
|
||||
"$N施展出一招「撩阴掌」,双掌缤纷拍出,陡然间双掌已至$n跟前"
|
||||
];
|
||||
this.desc = "杀手楼的拳脚功夫,出招阴狠毒辣";
|
||||
//"(\w+)"(.+?)"NOR"
|
||||
//<$1>$2</$1>
|
||||
this.can_enables = ["unarmed", "parry"];
|
||||
this.learn_condition = {
|
||||
max_mp: 2000,
|
||||
skill: {
|
||||
unarmed: 100
|
||||
}
|
||||
};
|
||||
this.query_enable_prop = function (lv) {
|
||||
return {
|
||||
unarmed: {
|
||||
gj: parseInt(lv * 1.2) + 20,
|
||||
bj_per: 1 + parseInt(lv / 300)
|
||||
}, parry: {
|
||||
zj: parseInt(lv * 1.2) + 20,
|
||||
dex: parseInt(lv / 7) + 2
|
||||
}
|
||||
};
|
||||
}
|
||||
this.pfm = {
|
||||
chuan:
|
||||
{
|
||||
name: "掌心雷",
|
||||
distime: 30000,
|
||||
enable_skill: "unarmed",
|
||||
weapon_type: WEAPON_TYPE.UNARMED,
|
||||
mp: 20,
|
||||
release_time: 0,
|
||||
use: function (me, target, lv) {
|
||||
|
||||
var p = 100 + parseInt(lv / 100);
|
||||
var t = 6000 + lv;
|
||||
if (t > 10000) t = 10000;
|
||||
var iscirt = false;
|
||||
me.do_attack({
|
||||
target: target,
|
||||
gj: me.gj * p / 100,
|
||||
attack_msg: "<hir>$N暗藏真气于掌心,一招「掌心雷」闪烁着雷光直贯$n</hir>",
|
||||
mz: me.mz,
|
||||
cirt: function (t, part) {
|
||||
iscirt = me.crit(t, part, me.bj);
|
||||
return iscirt;
|
||||
},
|
||||
no_weapon: true
|
||||
});
|
||||
if (iscirt) {
|
||||
target.add_status({
|
||||
id: "faint",
|
||||
is_faint: true,
|
||||
duration: t,
|
||||
no_weapon: true,
|
||||
name: "昏迷", downside: true,
|
||||
finish_msg: "<hiy>慢慢的$N又恢复了知觉...</hiy>\n",
|
||||
start_msg: "<hir>$N只觉得眼前一黑,接着什么都不知道了。</hir>\n"
|
||||
}, me);
|
||||
}
|
||||
me.end_attack(target);
|
||||
},
|
||||
query_desc: function (me, lv) {
|
||||
var p = 100 + parseInt(lv / 100);
|
||||
var t = 6 + parseInt(lv / 1000);
|
||||
if (t > 10) t = 10;
|
||||
return "对敌人造成" + p + "%攻击力的伤害,如果暴击则昏迷对方" + t + "秒";
|
||||
}
|
||||
}
|
||||
};
|
||||
53
world/skill/shashou/feidao.js
Normal file
53
world/skill/shashou/feidao.js
Normal file
@@ -0,0 +1,53 @@
|
||||
this.inherits(SKILL);
|
||||
this.name = "飞刀";
|
||||
this.id = "feidao";
|
||||
this.grade = 1;
|
||||
|
||||
this.family = FAMILIES.SHASHOU;
|
||||
|
||||
this.desc = "杀手楼的入门暗器武功";
|
||||
//<$1>$2</$1>
|
||||
//<$1>$2</$1>
|
||||
this.can_enables = ["throwing"];
|
||||
this.learn_condition = {
|
||||
max_mp: 200,
|
||||
skill: {
|
||||
throwing: 100
|
||||
}
|
||||
};
|
||||
|
||||
this.query_enable_prop = function (lv) {
|
||||
return {
|
||||
throwing: {
|
||||
gj: parseInt(lv * 1.1) + 4
|
||||
}
|
||||
};
|
||||
}
|
||||
this.pfm = {
|
||||
jiang:
|
||||
{
|
||||
name: "又见飞刀",
|
||||
distime: 4500,
|
||||
enable_skill: "throwing",
|
||||
release_time: 1000,
|
||||
mp: 20,
|
||||
use: function (me, target, lv) {
|
||||
var msg = "<hic>$N手中$T寒光一闪,幻化出一道重影射向$n</hic>";
|
||||
me.send_room(msg, target);
|
||||
for (var i = 0; i < 2; i++) {
|
||||
me.do_attack({
|
||||
target: target,
|
||||
attack_msg: "",
|
||||
gj: me.gj,
|
||||
mz: me.mz,
|
||||
no_append: true,
|
||||
is_throwing: true
|
||||
});
|
||||
}
|
||||
me.end_attack(target);
|
||||
},
|
||||
query_desc: function (me, lv) {
|
||||
return "使用连续两把飞刀攻击敌人";
|
||||
}
|
||||
}
|
||||
};
|
||||
111
world/skill/shashou/mantianhuayu.js
Normal file
111
world/skill/shashou/mantianhuayu.js
Normal file
@@ -0,0 +1,111 @@
|
||||
this.inherits(SKILL);
|
||||
this.name = "漫天花雨";
|
||||
this.id = "mantianhuayu";
|
||||
this.grade = 4;
|
||||
|
||||
this.family = FAMILIES.SHASHOU;
|
||||
this.attack_actions = [
|
||||
"$N双手一晃,一招「千变万化」,手中的$w幻出万道金光,如一条金龙般飞向$n的$l",
|
||||
"$N右手一抖,一道金光冒出,正是一招「奇诡莫测」,抢先飞向$n的$l",
|
||||
"$N突然旋身,$w在旋转中化作「银轮割风」,边缘泛着锐光,既封退路又取$l",
|
||||
"$N掌心一翻,$w悄然滑出,一招「无声夺命」,不见破空之声却已抵近$n$l",
|
||||
"$N手腕轻抖,$w骤然化作「飞星追影」,一道冷光划破虚空,直取$n$l要害",
|
||||
"$N指尖一弹,$w化作「流光穿云」,破风之声忽强忽弱,轨迹飘忽难测地缠向$n$l"
|
||||
];
|
||||
this.desc = "杀手楼的暗器武功,使用的时候如漫天星光而得名";
|
||||
//<$1>$2</$1>
|
||||
//<$1>$2</$1>
|
||||
this.can_enables = ["throwing", "sword"];
|
||||
this.learn_condition = {
|
||||
max_mp: 200,
|
||||
skill: {
|
||||
throwing: 300
|
||||
}
|
||||
};
|
||||
|
||||
this.query_prop = function (lv) {
|
||||
return {
|
||||
bj_per: 5 + parseInt(lv / 300)
|
||||
};
|
||||
}
|
||||
this.query_enable_prop = function (lv) {
|
||||
return {
|
||||
throwing: {
|
||||
gj: parseInt(lv * 1.4) + 4,
|
||||
mz: parseInt(lv * 1.4) + 4,
|
||||
mz_per: parseInt(lv / 500) + 1
|
||||
},
|
||||
sword: {
|
||||
gj: parseInt(lv * 1.4) + 4,
|
||||
mz: parseInt(lv * 1.4) + 4,
|
||||
bj_per: 8,
|
||||
}
|
||||
};
|
||||
}
|
||||
this.pfm = {
|
||||
luo:
|
||||
{
|
||||
name: "落花",
|
||||
distime: 18000,
|
||||
// enable_skill: "throwing",
|
||||
mp: 20,
|
||||
use: function (me, target, lv, type) {
|
||||
let is_throwing = type !== 'sword';
|
||||
if (is_throwing)
|
||||
me.send_room("<hiy>$N手中$T一抖,幻出万点星光,如朵朵落花般撒向$n</hiy>", target);
|
||||
else
|
||||
me.send_room("<hiy>$N手中$W一抖,幻出万点星光,如朵朵落花般撒向$n</hiy>", target);
|
||||
var count = 1 + parseInt(me.bj / 5);
|
||||
if (count > 10) count = 10;
|
||||
for (var i = 0; i < count; i++) {
|
||||
me.do_attack({
|
||||
target: target,
|
||||
attack_msg: "",
|
||||
gj: me.gj,
|
||||
mz: me.mz,
|
||||
no_append: true,
|
||||
|
||||
is_throwing: is_throwing
|
||||
});
|
||||
}
|
||||
me.end_attack(target);
|
||||
},
|
||||
query_desc: function (me, lv) {
|
||||
|
||||
return "漫天暗器攻击敌人,每5%暴击增加一次攻击,最多10次";
|
||||
}
|
||||
},
|
||||
wu:
|
||||
{
|
||||
name: "定影",
|
||||
distime: 30000,
|
||||
enable_skill: "throwing",
|
||||
mp: 20,
|
||||
release_time: 0,
|
||||
use: function (me, target, lv) {
|
||||
var time = 5000 + parseInt(lv * 10 / 3);
|
||||
if (time > 15000) time = 15000;
|
||||
|
||||
me.do_attack({
|
||||
target: target,
|
||||
gj: me.gj,
|
||||
mz: me.mz,
|
||||
attack_msg: "<hiy>$N手中青光冒出,一瞬间$T已飞向$n化作点点星光笼罩$p周身大穴!</hiy>"
|
||||
})
|
||||
var ds = 10 + parseInt(lv / 100);
|
||||
target.add_status({
|
||||
id: "rash",
|
||||
name: "定影",
|
||||
duration: time,
|
||||
is_rash: true,
|
||||
downside: true
|
||||
}, me);
|
||||
me.end_attack(target);
|
||||
},
|
||||
query_desc: function (me, lv) {
|
||||
var time = 5 + parseInt(lv / 300);
|
||||
if (time > 15) time = 15;
|
||||
return "使用暗器攻击敌人,如果命中则使敌人定身" + time + "秒";
|
||||
}
|
||||
}
|
||||
};
|
||||
110
world/skill/shashou/shashengjue.js
Normal file
110
world/skill/shashou/shashengjue.js
Normal file
@@ -0,0 +1,110 @@
|
||||
this.inherits(SKILL);
|
||||
this.name = "杀生决";
|
||||
this.id = "shashengjue";
|
||||
this.grade = 3;
|
||||
this.force_rad = 0.55;
|
||||
this.family = FAMILIES.SHASHOU;
|
||||
this.desc = "杀手楼的高级内功";
|
||||
//"(\w+)"(.+?)"NOR"
|
||||
//<$1>$2</$1>
|
||||
this.can_enables = ["force"];
|
||||
this.learn_condition = {
|
||||
skill: {
|
||||
force: 300
|
||||
}
|
||||
};
|
||||
this.query_enable_prop = function (lv) {
|
||||
return {
|
||||
force: {
|
||||
gj: lv * 1.5 + 2,
|
||||
bj_per: parseInt(lv / 300) + 1,
|
||||
limit_mp: lv * 105,
|
||||
desc: "唯一:将你内力的55%转化为气血"
|
||||
}
|
||||
};
|
||||
}
|
||||
this.pfm = {
|
||||
|
||||
|
||||
power:
|
||||
{
|
||||
name: "斩杀",
|
||||
distime: 30000,
|
||||
enable_skill: "force",
|
||||
mp: 20,
|
||||
release_time: 0,
|
||||
use: function (me, target, lv) {
|
||||
|
||||
var time = 10000 + lv * 5;
|
||||
if (time > 20000) time = 20000;
|
||||
var gj = 10 + parseInt(lv / 100);
|
||||
me.send_room("<hir>$N默运杀生决,全身黑气笼罩,仅剩双眼一片血红,有如杀神降世!\n</hir>", target);
|
||||
me.add_status({
|
||||
id: "force",
|
||||
name: "杀神",
|
||||
desc: "你的攻击增加",
|
||||
duration: time,
|
||||
prop: {
|
||||
gj_per: gj
|
||||
}
|
||||
});
|
||||
},
|
||||
query_desc: function (me, lv) {
|
||||
var gj = 10 + parseInt(lv / 100);
|
||||
|
||||
var time = 10000 + lv * 5;
|
||||
if (time > 20000) time = 20000;
|
||||
return "全力战斗," + (time / 1000) + "秒内增加自己" + gj + "%攻击力";
|
||||
}
|
||||
}, tuoli: {
|
||||
name: "隐杀",
|
||||
distime: 45000,
|
||||
enable_skill: "force",
|
||||
mp: 0,
|
||||
release_time: 0,
|
||||
no_auto: true,
|
||||
allow_busy: true,
|
||||
use: function (me, target, lv) {
|
||||
|
||||
|
||||
if (me.is_rash) return me.notify('你现在无法使用轻功身法。');
|
||||
if (!me.environment.exits)
|
||||
return me.notify('这里无法逃脱。');
|
||||
var list = Object.keys(me.environment.exits);
|
||||
// for (var dir in me.environment.exits) {
|
||||
// list.push(dir);
|
||||
// }
|
||||
if (!list.length) return me.notify('这里无法逃脱。');
|
||||
let func = YS_ROOMS[me.environment.path];
|
||||
|
||||
if (func && func(me, list) === false) return;
|
||||
|
||||
me.send_room("\n<blk>$N的身形一闪,渐渐模糊不见了。<blk>\n");
|
||||
me.end_fight();
|
||||
me.do_command("go", list.random());
|
||||
// if (!me.is_in("yz/leitai/leitai") && !me.is_in("yz/leitai/biwu")) {
|
||||
// me.end_fight();
|
||||
// }
|
||||
|
||||
},
|
||||
query_desc: function (me, lv) {
|
||||
var gj = 10 + parseInt(lv / 300);
|
||||
var nl = 3000 + lv * 4;
|
||||
if (nl > 15000) nl = 15000;
|
||||
return "脱离战斗,迅速隐入其他房间";
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
const YS_ROOMS = {
|
||||
"yz/leitai/leitai": function (me) {
|
||||
me.send_room("\n<blk>$N的身形一闪,渐渐模糊不见了。<blk>\n");
|
||||
},
|
||||
'wudao/ta': function (me, list) {
|
||||
let lv = me.query_temp('wd_level', 0);
|
||||
if (lv >= 89) {
|
||||
list.length = 1;
|
||||
list[0] = 'out';
|
||||
}
|
||||
}
|
||||
};
|
||||
31
world/skill/shashou/shashoubufa.js
Normal file
31
world/skill/shashou/shashoubufa.js
Normal file
@@ -0,0 +1,31 @@
|
||||
this.inherits(SKILL);
|
||||
this.name = "杀手步法";
|
||||
this.id = "shashoubufa";
|
||||
this.grade = 1;
|
||||
this.family = FAMILIES.SHASHOU;
|
||||
|
||||
this.dodge_actions = [
|
||||
"只见$n一招「蟾飞九天」,身体向上笔直地纵起丈余,躲过了$N这一招",
|
||||
"但是$n一个使出「蛙鸣震天」,身形飘忽,轻轻一纵,早已避开",
|
||||
"$n一招「蛙入稻田」,身行随意转,倏地往一旁挪开了三尺,避过了这一招",
|
||||
"可是$n一个「蟾蜍扑虫」,侧身一让,$N这一招扑了个空",
|
||||
"却见$n「蟾翻白肚」,足不点地,往旁窜开数尺,躲了开去",
|
||||
"$n身形一招「金蟾归月」,身形微晃,有惊无险地避开了$N这一招"
|
||||
];
|
||||
this.desc = "杀手楼的入门轻功身法";
|
||||
//"(\w+)"(.+?)"NOR"
|
||||
//<$1>$2</$1>
|
||||
this.can_enables = ["dodge"];
|
||||
this.learn_condition = {
|
||||
max_mp: 200,
|
||||
skill: {
|
||||
dodge: 50
|
||||
}
|
||||
};
|
||||
this.query_enable_prop = function (lv) {
|
||||
return {
|
||||
dodge: {
|
||||
ds: parseInt(lv ) + 100
|
||||
}
|
||||
};
|
||||
}
|
||||
24
world/skill/shashou/shashouxinfa.js
Normal file
24
world/skill/shashou/shashouxinfa.js
Normal file
@@ -0,0 +1,24 @@
|
||||
this.inherits(SKILL);
|
||||
this.name = "杀手心法";
|
||||
this.id = "shashouxinfa";
|
||||
this.grade = 1;
|
||||
this.force_rad = 0.55;
|
||||
this.desc = "杀手楼的入门心法";
|
||||
this.family = FAMILIES.SHASHOU;
|
||||
//"(\w+)"(.+?)"NOR"
|
||||
//<$1>$2</$1>
|
||||
this.can_enables = ["force"];
|
||||
this.query_enable_prop = function (lv) {
|
||||
return {
|
||||
force: {
|
||||
gj: 1 + lv,
|
||||
limit_mp: lv * 10,
|
||||
desc: "唯一:将你内力的55%转化为气血"
|
||||
}
|
||||
};
|
||||
}
|
||||
this.learn_condition = {
|
||||
skill: {
|
||||
force: 50
|
||||
}
|
||||
};
|
||||
59
world/skill/shashou/taxuexunmei.js
Normal file
59
world/skill/shashou/taxuexunmei.js
Normal file
@@ -0,0 +1,59 @@
|
||||
this.inherits(SKILL);
|
||||
this.name = "踏雪寻梅";
|
||||
this.id = "taxuexunmei";
|
||||
this.grade = 3;
|
||||
this.family = FAMILIES.SHASHOU;
|
||||
|
||||
this.dodge_actions = [
|
||||
"$n一式「华发寻春喜见梅」,身子掣忽一转,$N只觉的眼前一花,失去了目标。",
|
||||
"$n一式「一株临路雪倍堆」,双脚点地,身子突然拔高了丈许,缓缓飘落在$N身后。",
|
||||
"$n一式「凤城南陌他年忆」,身行一晃,顿时无数条身影一下子出现在$N的面前。",
|
||||
"$n一式「香杳难随驿使来」,飘然向后一退,躲开$N的凌厉攻势。"
|
||||
];
|
||||
this.desc = "踏雪寻梅是杀手楼一种特别厉害的上乘轻功,即使穿着铁鞋踩在雪上,也不会留下一点脚印。";
|
||||
//"(\w+)"(.+?)"NOR"
|
||||
//<$1>$2</$1>
|
||||
this.can_enables = ["dodge"];
|
||||
this.learn_condition = {
|
||||
max_mp: 1000,
|
||||
skill: {
|
||||
dodge: 200
|
||||
}
|
||||
};
|
||||
this.query_enable_prop = function (lv) {
|
||||
return {
|
||||
dodge: {
|
||||
ds: parseInt(lv * 1.4) + 200,
|
||||
mz: parseInt(lv * 1.4) + 200
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
this.pfm = {
|
||||
power:
|
||||
{
|
||||
name: "无痕",
|
||||
distime: 45000,
|
||||
enable_skill: "dodge",
|
||||
mp: 30,
|
||||
release_time: 0,
|
||||
no_auto: true,
|
||||
use: function (me, target, lv) {
|
||||
var gj = 3000 + lv*5;
|
||||
if (gj > 10000) gj = 10000;
|
||||
me.send_room("<hiw>$N身体急转,化为一道白光,虚幻不定的出现在$N的周围\n</hiw>", target);
|
||||
me.add_status({
|
||||
id: "dodge",
|
||||
name: "无痕",
|
||||
desc: "你无法被控制",
|
||||
duration: gj,
|
||||
ig_control: gj
|
||||
});
|
||||
},
|
||||
query_desc: function (me, lv) {
|
||||
var gj = 3 + parseInt(lv / 200);
|
||||
if (gj > 10) gj = 10;
|
||||
return gj+"秒内免疫控制";
|
||||
}
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user