[CSR]UnlockScripting——脚本解锁

资源 [CSR]UnlockScripting——脚本解锁 V0.1.16.40.2

登录后下载

liuxiaohua

【 Lv: 2 】
25
39
1d 3h 46m
中国
liuxiaohua 提交新资源:

[CSR]UnlockScripting——脚本解锁 - 啦啦啦,我要用addons写脚本啦~ 麻麻再也不用担心我停更了

UnlockScripting

  开源地址详见:https://github.com/zhkj-liuxiaohua/UnlockScripting

——小伙计,我觉得你很有前途,来写addons否?(试图勾引

  如题,这是一个强开Add-on js运行环境的插件。主要用于没开实验模式又没开作弊的地图但又想要加载官方Add-on js的地图。什么是官方js?这个wiki所述内容可能给我们一个解答:https://minecraft-zh.gamepedia.com/基岩版脚本文档
简而言之,就是官方支持的脚本插件了。本插件的主要功能便是解锁脚本引擎和指令作弊,使非实验模式地图非开启作弊地图也能正常使用Add-on js的内容(为什么纠结环境?因为有成就啊:evil:)。附件已附带了一个官方脚本行为记录的演示用例,自行参考开发使用即可。


食用方式...
阅读关于此资源更多信息...
 
  • 滑稽
  • 喜欢
反馈: yyq2Redbeanw

liuxiaohua

【 Lv: 2 】
25
39
1d 3h 46m
中国
ez的scriptApi、bdsx的node.js也集成并拓展了官方script...单纯官方script给地图开下实验玩法就可用awa
是的,我注意到市面上已经有不少加载器对原版js进行了功能增强,不过本插件的用意仅仅是强开实验玩法和强行解锁所有作弊指令,起个抛砖引玉的作用,旨在指导用户的原生js的开发。并不会扩充原生Add-on js或改变其行为,这样用户开发原生js时可有效保证可用性,即便本插件以后停止支持了,用户的Add-on js还是可以作用于局域网联机或领域服。
 
s
是的,我注意到市面上已经有不少加载器对原版js进行了功能增强,不过本插件的用意仅仅是强开实验玩法和强行解锁所有作弊指令,起个抛砖引玉的作用,旨在指导用户的原生js的开发。并不会扩充原生Add-on js或改变其行为,这样用户开发原生js时可有效保证可用性,即便本插件以后停止支持了,用户的Add-on js还是可以作用于局域网联机或领域服。
也许可以做到CSR集成ScriptAPI的部分功能并通过CSR调用,不如开个坑(Scriptapi在获取各类状态信息方面做得很不错的呢)
 
看了下你写的示例,
1597725748971.png
害,取维度其实有个不太完美的方法:判断基岩层,
大概是先获取player的"minecraft:tick_world",弄到tick_area,丢到getBlock方法,balabala看下面的示例
TypeScript源码:
dKLPPS.md.png


dKb3YF.md.png


dKqZtO.md.png


dKqTUK.md.png




可用的JavaScript代码(把getDimension的function抄去就行)
JavaScript:
"use strict";
var system = server.registerSystem(0, 0);
system.listenForEvent("minecraft:entity_dropped_item", ({ data: { entity } }) => {
    console.log(getDimension(entity));
});
function getDimension(targetEntity) {
    var _a, _b, _c, _d;
    const tickarea = (_a = system.getComponent(targetEntity, "minecraft:tick_world" /* TickWorld */)) === null || _a === void 0 ? void 0 : _a.data.ticking_area;
    const position = (_b = system.getComponent(targetEntity, "minecraft:position" /* Position */)) === null || _b === void 0 ? void 0 : _b.data;
    const x = position === null || position === void 0 ? void 0 : position.x, z = position === null || position === void 0 ? void 0 : position.z;
    if (tickarea === undefined || x === undefined || z == undefined)
        return;
    const bottom_bedrock = ((_c = system.getBlock(tickarea, x, 0, z)) === null || _c === void 0 ? void 0 : _c.__identifier__) == "minecraft:bedrock";
    const top_bedrock = ((_d = system.getBlock(tickarea, x, 127, z)) === null || _d === void 0 ? void 0 : _d.__identifier__) == "minecraft:bedrock";
    console.log(bottom_bedrock);
    console.log(top_bedrock);
    if (bottom_bedrock && top_bedrock)
        return "地狱";
    else if (bottom_bedrock)
        return "主世界";
    else
        return "末地";
}
 

liuxiaohua

【 Lv: 2 】
25
39
1d 3h 46m
中国
确实是不错的创意。靠block结构判断维度的话,对于空岛类特殊地形的地图可能就没辙……官方没有提供相关的属性只靠现有的api的话确实限制较大。至于和官方脚本交叉开发交互等扩展功能,目前尚没有相关计划。当然如果要做也可以做得相对简单,能实现拦截自定义广播和发送自定义广播即可与官方脚本进行交互。
 

推广

Document

新主题 新资源 新回复