Parcourir la source

feat(pkuxkx): 为房间物品 ID 添加自动完成

dzp il y a 2 ans
Parent
commit
8ea30d25be

+ 1 - 0
mud/pkuxkx/plugins/basic/map/__init__.tin

@@ -29,6 +29,7 @@ load-file mud/pkuxkx/plugins/basic/map/area.tin;
 load-file mud/pkuxkx/plugins/basic/map/node.tin;
 load-file mud/pkuxkx/plugins/basic/map/xiaoyao.tin;
 load-file mud/pkuxkx/plugins/basic/map/helper.tin;
+load-file mud/pkuxkx/plugins/basic/map/tab.tin;
 
 #func {basic_map.Init} {
     event.Emit map/init;

+ 40 - 0
mud/pkuxkx/plugins/basic/map/tab.tin

@@ -0,0 +1,40 @@
+#nop vim: set filetype=tt:;
+
+/*
+本文件属于 PaoTin++ 的一部分
+===========
+PaoTin++ © 2020~2023 的所有版权均由担子炮(dzp <danzipao@gmail.com>) 享有并保留一切法律权利
+你可以在遵照 GPLv3 协议的基础之上使用、修改及重新分发本程序。
+===========
+*/
+
+load-lib event;
+
+event.HandleOnce {map/init} {map/tab} {map} {map.tab-completion.init};
+
+#alias {map.tab-completion.init} {
+	event.Handle {map/GotRoomInfo} {map/tab} {map} {map.tab-completion};
+};
+
+#alias {map.tab-completion} {
+	#local idx {};
+
+	#class map.tab-completion kill;
+	#class map.tab-completion open;
+
+	#foreach {*gMapRoom[objs][]} {idx} {
+		#local obj {$gMapRoom[objs][$idx]};
+		#if { "$obj[id]" != "" } {
+			#tab $obj[id];
+		};
+	};
+
+	#local item {};
+	#foreach {$gMapRoom[items]} {item} {
+		#if { "$item" != "" } {
+			#tab $item;
+		};
+	};
+
+	#class map.tab-completion close;
+};