init: add workspace files

This commit is contained in:
2026-05-26 16:41:20 +08:00
commit f4f2393f72
1041 changed files with 67405 additions and 0 deletions

View File

@@ -0,0 +1,75 @@
this.inherits(ROOM);
this.name = "兵器库"
this.desc = "这里是兵器库,到处银光闪闪,让人眼花缭乱。宝刀、宝剑、金箍棒,大刀、长剑、哨棒,短刀、短剑、短棍,各色各样的兵器应有尽有,你一时不知道挑什么好。";
this.exits = { "north": "yz/by/bingying" };
this.add_action("search", "搜索", function (me) {
if (me.query_temp("by_search")) {
if (me.equipment && me.equipment[0] && me.equipment[0].is('eq/lv1/qianjinquan')) {
me.notify("你仔细搜了一圈,发现兵器库的后墙有一个形状十分眼熟的孔洞。");
return me.send_commands('pushmen', '塞进去');
}
return me.notify("你仔细搜了下,发现这里已经已经被洗劫一空了,剩下的都是些破铜烂铁。");
}
var odds = [
{
obj: "st/xuanjing",
min: 1,
max: 10
},
{
obj: ["st/st_blu#0", "st/st_gre#0", "st/st_red#0", "st/st_yel#0"],
min: 1,
max: 3
},
{
obj: ["st/st_blu#1", "st/st_gre#1", "st/st_red#1", "st/st_yel#1"],
odds: 3000
},
{
obj: ["book/book#blade", "book/book#sword", "book/book#dodge", "book/book#parry", "book/book#force"],
odds: 5000
},
];
me.set_temp("by_search", 1, 24 * 3600000);
var items = OBJ.create_by_odds(odds);
for (var i = 0; i < items.length; i++) {
var obj = me.add_obj(items[i]);
if (obj) {
me.notify("你找到了" + items[i].unit_name() + "。");
}
}
});
this.add_action('pushmen', null, function (me) {
if (me.equipment && me.equipment[0] && me.equipment[0].is('eq/lv1/qianjinquan')) {
me.send('你将手上的' + me.equipment[0].color_name + "严丝合缝的塞入墙上的孔洞,轻轻一扭,只听到咔嚓几声,地板打开一个大洞。");
return this.add_exit('down', 'yz/by/tongdao');
}
return me.send('你要打什么?');
});
this.on_leave = function (me, dir) {
if (dir === 'down') {
me.notify('你即将离开这个副本进入公共区域,是否确认?');
me.send_commands('lkfb', '确定离开');
return false;
}
}
this.add_action('lkfb', null, function (me, par) {
WORLD.COMMANDS['cr'].enter(me, 'over');
me.moveto(ROOM.Get('yz/hy/tongdao'));
me.send('你从兵器库钻入一个狭长的甬道。');
me.enable_area();
});

View File

@@ -0,0 +1,28 @@
this.inherits(ROOM);
this.name = "兵营"
this.desc = "这里是兵营,密密麻麻到处都是官兵,有的在武将的指挥下列队操练,有的独自在练功,有的坐着、躺着正在休息。南墙下坐着主帅,不动声色地寻视着四周。看到你进来,他们全都向你包围了过来,形势看来不太妙。南边有一个<CMD cmd='look men'>门(men)</CMD>。";
this.exits = { "south": "yz/by/bingqiku", "north": "yz/by/damen" };
this.set_npc("yz/shiqingshan", ["pub/wujiang", 2]);
this.on_leave = function (me, dir) {
if (dir == "south") {
if (!this.south_open) {
me.notify("门还是关着的,你过不去。");
return false;
}
}
}
this.set_item("men", "铁门", "这是一扇极厚的铁门。", [[
"open", "打开", function (me, par) {
if (par != "men") {
return;
}
if (me.str + me.query_prop("str") < 30) {
me.send_room("$N使出吃奶的力气推向铁门半晌后瘫倒在地但是铁门还是纹丝不动。");
} else {
me.send_room("$N大喝一声使出全力推开铁门。");
this.south_open = true;
}
return true;
}
]]);

11
world/map/yz/by/damen.js Normal file
View File

@@ -0,0 +1,11 @@
this.inherits(ROOM);
this.name = "兵营大门"
this.desc = "你正站在兵营的门口,面对着一排简陋的营房,可以看到穿着制服的官兵正在操练,不时地传来呐喊声。老百姓是不允许在此观看的,你最好赶快走开。";
this.exits = { "south": "yz/by/bingying"};
this.set_npc( ["pub/bing", 2]);
this.on_leave = function (me, dir) {
if (dir === "south" && this.find_obj_bypath("pub/bing")) {
me.notify("官兵拦住了你的去路。");
return false;
}
}

View File

@@ -0,0 +1,3 @@
this.inherits(ROOM);
this.name = "地下通道"
this.desc = "兵器库通外地下的通道";