This commit is contained in:
2024-08-05 12:06:10 +02:00
parent d41fefe098
commit 7259b53176
9 changed files with 61 additions and 31 deletions

35
package-lock.json generated
View File

@@ -8,7 +8,7 @@
"name": "scripting-starter", "name": "scripting-starter",
"version": "0.1.0", "version": "0.1.0",
"dependencies": { "dependencies": {
"@minecraft/server": "1.11.0", "@minecraft/server": "^1.12.0-beta.1.21.0-stable",
"decode-uri-component": "^0.2.2" "decode-uri-component": "^0.2.2"
}, },
"devDependencies": { "devDependencies": {
@@ -92,9 +92,9 @@
"integrity": "sha512-stbUtINCXbcLNRlGNVX68xRC6ZYq3k3CYmfptwrCcPBEUjVOpVkSj3H4Y0qiSYB+1rVWv7DgiP7Uf9++50Ne5g==" "integrity": "sha512-stbUtINCXbcLNRlGNVX68xRC6ZYq3k3CYmfptwrCcPBEUjVOpVkSj3H4Y0qiSYB+1rVWv7DgiP7Uf9++50Ne5g=="
}, },
"node_modules/@minecraft/server": { "node_modules/@minecraft/server": {
"version": "1.11.0", "version": "1.12.0-beta.1.21.0-stable",
"resolved": "https://registry.npmjs.org/@minecraft/server/-/server-1.11.0.tgz", "resolved": "https://registry.npmjs.org/@minecraft/server/-/server-1.12.0-beta.1.21.0-stable.tgz",
"integrity": "sha512-sVTKkAR7fgcgRrBrl+QiqlwiL07JTCSRbwSLpkmsPDvgfhH4bQsdPXC8fWZGRxwKikC4/oBxGq5j6pJp87yF6Q==", "integrity": "sha512-Dkn+H+q/tKZOmjoKDSF9gVXtcc2hn92EvwgkFG0JMxwYYI77gjn8UqYR4I3eZdlM0TJsY0MlyF8IIvRDywJkGA==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@minecraft/common": "^1.1.0" "@minecraft/common": "^1.1.0"
@@ -109,6 +109,16 @@
"@minecraft/server": "^1.2.0" "@minecraft/server": "^1.2.0"
} }
}, },
"node_modules/@minecraft/server-ui/node_modules/@minecraft/server": {
"version": "1.11.0",
"resolved": "https://registry.npmjs.org/@minecraft/server/-/server-1.11.0.tgz",
"integrity": "sha512-sVTKkAR7fgcgRrBrl+QiqlwiL07JTCSRbwSLpkmsPDvgfhH4bQsdPXC8fWZGRxwKikC4/oBxGq5j6pJp87yF6Q==",
"dev": true,
"license": "MIT",
"dependencies": {
"@minecraft/common": "^1.1.0"
}
},
"node_modules/@nodelib/fs.scandir": { "node_modules/@nodelib/fs.scandir": {
"version": "2.1.5", "version": "2.1.5",
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
@@ -5312,9 +5322,9 @@
"integrity": "sha512-stbUtINCXbcLNRlGNVX68xRC6ZYq3k3CYmfptwrCcPBEUjVOpVkSj3H4Y0qiSYB+1rVWv7DgiP7Uf9++50Ne5g==" "integrity": "sha512-stbUtINCXbcLNRlGNVX68xRC6ZYq3k3CYmfptwrCcPBEUjVOpVkSj3H4Y0qiSYB+1rVWv7DgiP7Uf9++50Ne5g=="
}, },
"@minecraft/server": { "@minecraft/server": {
"version": "1.11.0", "version": "1.12.0-beta.1.21.0-stable",
"resolved": "https://registry.npmjs.org/@minecraft/server/-/server-1.11.0.tgz", "resolved": "https://registry.npmjs.org/@minecraft/server/-/server-1.12.0-beta.1.21.0-stable.tgz",
"integrity": "sha512-sVTKkAR7fgcgRrBrl+QiqlwiL07JTCSRbwSLpkmsPDvgfhH4bQsdPXC8fWZGRxwKikC4/oBxGq5j6pJp87yF6Q==", "integrity": "sha512-Dkn+H+q/tKZOmjoKDSF9gVXtcc2hn92EvwgkFG0JMxwYYI77gjn8UqYR4I3eZdlM0TJsY0MlyF8IIvRDywJkGA==",
"requires": { "requires": {
"@minecraft/common": "^1.1.0" "@minecraft/common": "^1.1.0"
} }
@@ -5326,6 +5336,17 @@
"dev": true, "dev": true,
"requires": { "requires": {
"@minecraft/server": "^1.2.0" "@minecraft/server": "^1.2.0"
},
"dependencies": {
"@minecraft/server": {
"version": "1.11.0",
"resolved": "https://registry.npmjs.org/@minecraft/server/-/server-1.11.0.tgz",
"integrity": "sha512-sVTKkAR7fgcgRrBrl+QiqlwiL07JTCSRbwSLpkmsPDvgfhH4bQsdPXC8fWZGRxwKikC4/oBxGq5j6pJp87yF6Q==",
"dev": true,
"requires": {
"@minecraft/common": "^1.1.0"
}
}
} }
}, },
"@nodelib/fs.scandir": { "@nodelib/fs.scandir": {

View File

@@ -23,7 +23,7 @@
"enablemcpreviewloopback": "CheckNetIsolation.exe LoopbackExempt -a -p=S-1-15-2-424268864-5579737-879501358-346833251-474568803-887069379-4040235476" "enablemcpreviewloopback": "CheckNetIsolation.exe LoopbackExempt -a -p=S-1-15-2-424268864-5579737-879501358-346833251-474568803-887069379-4040235476"
}, },
"dependencies": { "dependencies": {
"@minecraft/server": "1.11.0", "@minecraft/server": "^1.12.0-beta.1.21.0-stable",
"decode-uri-component": "^0.2.2" "decode-uri-component": "^0.2.2"
} }
} }

View File

@@ -3,7 +3,7 @@ import { Trigger } from "./trigger";
import { import {
Block, Block,
ChatSendAfterEvent, ChatSendAfterEvent,
Color, PaletteColor,
EntityInventoryComponent, EntityInventoryComponent,
ItemStack, ItemStack,
ItemUseOnBeforeEvent, ItemUseOnBeforeEvent,
@@ -41,9 +41,10 @@ export class Maker {
if (event.message === "!TWand") { if (event.message === "!TWand") {
const item = new ItemStack("minecraft:stick"); const item = new ItemStack("minecraft:stick");
item.nameTag = "MakeTrigger"; item.nameTag = "MakeTrigger";
((event.sender as Player).getComponent("inventory") as EntityInventoryComponent).container.addItem(item); ((event.sender as Player).getComponent("inventory") as EntityInventoryComponent).container!.addItem(item);
world.sendMessage("Thou shall have the Powah"); world.sendMessage("Thou shall have the Powah");
} }
if (event.message === "!deleteCurrentTrigger") { if (event.message === "!deleteCurrentTrigger") {
let currentTriggerdTrigger = this.manager let currentTriggerdTrigger = this.manager
.GetTriggers() .GetTriggers()
@@ -111,7 +112,7 @@ export class Maker {
} }
} }
DrawLine(pos1: Vector3, pos2: Vector3, color: Color): void { DrawLine(pos1: Vector3, pos2: Vector3, color: PaletteColor): void {
if (pos1 != null && pos2 != null) { if (pos1 != null && pos2 != null) {
//draw a line with particles //draw a line with particles
const xStep = pos2.x - pos1.x; const xStep = pos2.x - pos1.x;
@@ -127,16 +128,22 @@ export class Maker {
//make the ends and starts a different color //make the ends and starts a different color
let map = new MolangVariableMap(); let map = new MolangVariableMap();
if (i == 0 || i == steps) { if (i == 0 || i == steps) {
map = map.setColorRGB("variable.color", { red: 0, green: 255, blue: 0, alpha: 1.0 }); map.setColorRGB("variable.color", { red: 0, green: 255, blue: 0 });
const particleData = new MolangVariableMap().setColorRGB("variable.color", { const particleData: MolangVariableMap = new MolangVariableMap();
particleData.setColorRGB("variable.color", {
red: 0, red: 0,
green: 1, green: 1,
blue: 0, blue: 0,
alpha: 1,
}); });
spawnParticle(vector3(x, y + 0.1, z), "codecosmos:point", particleData); spawnParticle(vector3(x, y + 0.1, z), "codecosmos:point", particleData);
} else { } else {
const particleData = new MolangVariableMap().setColorRGB("variable.color", color); map.setColorRGB("variable.color", { red: 0, green: 255, blue: 0 });
const particleData: MolangVariableMap = new MolangVariableMap();
particleData.setColorRGB("variable.color", {
red: 1,
green: 1,
blue: 1,
});
spawnParticle(vector3(x, y + 0.1, z), "codecosmos:point", particleData); spawnParticle(vector3(x, y + 0.1, z), "codecosmos:point", particleData);
} }
} }
@@ -178,10 +185,7 @@ export class Maker {
const p8 = trigger.point2; const p8 = trigger.point2;
//is there a player inside this trigger //is there a player inside this trigger
const color = trigger.IsAnyPlayerInside() const color = trigger.IsAnyPlayerInside() ? PaletteColor.Red : PaletteColor.White;
? { red: 1, green: 0, blue: 0, alpha: 1.0 }
: { red: 1, green: 1, blue: 1, alpha: 1.0 };
this.DrawLine(p1, p2, color); this.DrawLine(p1, p2, color);
this.DrawLine(p2, p4, color); this.DrawLine(p2, p4, color);
this.DrawLine(p4, p3, color); this.DrawLine(p4, p3, color);

View File

@@ -1,4 +1,4 @@
import { BlockType, MinecraftBlockTypes, Vector3, World } from "@minecraft/server"; import { BlockType, Vector3, World } from "@minecraft/server";
export type blockCondition = { export type blockCondition = {
block: BlockType; block: BlockType;

View File

@@ -1,4 +1,4 @@
import { Vector3, World, system } from "@minecraft/server"; import { ChatSendAfterEvent, Vector3, World, system } from "@minecraft/server";
class Store { class Store {
type: StoreType; type: StoreType;

View File

@@ -1,4 +1,4 @@
import { Entity, MinecraftEntityTypes, Vector3, world } from "@minecraft/server"; import { Entity, Vector3, world } from "@minecraft/server";
import { Vector3ToString, vector3 } from "./vectorUtils"; import { Vector3ToString, vector3 } from "./vectorUtils";
import { mindKeeper } from "../../main"; import { mindKeeper } from "../../main";
function teleportAgent(position: Vector3) { function teleportAgent(position: Vector3) {

View File

@@ -37,11 +37,11 @@ function rotate(pos: Vector3, angle: number) {
return vector3(newX, pos.y, newZ); return vector3(newX, pos.y, newZ);
} }
const particleData = new MolangVariableMap().setColorRGB("variable.color", { const particleData = new MolangVariableMap();
particleData.setColorRGB("variable.color", {
red: 1, red: 1,
green: 1, green: 1,
blue: 1, blue: 1,
alpha: 1,
}); });
function drawArrow(offsetPos: Vector3) { function drawArrow(offsetPos: Vector3) {

View File

@@ -1,4 +1,4 @@
import { BlockType, MinecraftBlockTypes, Vector3, world } from "@minecraft/server"; import { BlockType, BlockVolume, MinecraftBlockTypes, Vector3, world } from "@minecraft/server";
type Wall = { type Wall = {
startPos: Vector3; startPos: Vector3;
@@ -6,11 +6,13 @@ type Wall = {
}; };
function clearWall(wall: Wall) { function clearWall(wall: Wall) {
world.getDimension("overworld").fillBlocks(wall.startPos, wall.endPos, MinecraftBlockTypes.air); let volume: BlockVolume = new BlockVolume(wall.startPos, wall.endPos);
world.getDimension("overworld").fillBlocks(volume, MinecraftBlockTypes.air);
} }
function fillWall(wall: Wall, block: BlockType) { function fillWall(wall: Wall, block: BlockType) {
world.getDimension("overworld").fillBlocks(wall.startPos, wall.endPos, block); let volume: BlockVolume = new BlockVolume(wall.startPos, wall.endPos);
world.getDimension("overworld").fillBlocks(volume, block);
} }
function startLevel(commandBlockPos: Vector3) { function startLevel(commandBlockPos: Vector3) {

View File

@@ -1,12 +1,14 @@
import { import {
world, world,
system, system,
MinecraftBlockTypes,
Vector3, Vector3,
MolangVariableMap, MolangVariableMap,
ChatSendAfterEvent, ChatSendAfterEvent,
Dimension, Dimension,
TicksPerSecond, TicksPerSecond,
BlockVolumeBase,
CompoundBlockVolume,
BlockVolume,
} from "@minecraft/server"; } from "@minecraft/server";
import { Mindkeeper, StoreType } from "./Commandeer/mindKeeper"; import { Mindkeeper, StoreType } from "./Commandeer/mindKeeper";
import Pupeteer from "./Commandeer/pupeteer"; import Pupeteer from "./Commandeer/pupeteer";
@@ -138,7 +140,8 @@ async function lightUpPath() {
let pos2 = vector3(2468, 9, 105); let pos2 = vector3(2468, 9, 105);
for (let z = pos2.z; z >= pos1.z; z--) { for (let z = pos2.z; z >= pos1.z; z--) {
overworld.fillBlocks(vector3(pos1.x, pos1.y, z), vector3(pos1.x + 1, pos1.y, z), MinecraftBlockTypes.redstoneBlock); let volume: BlockVolume = new BlockVolume(vector3(pos1.x, pos1.y, z), vector3(pos1.x + 1, pos1.y, z));
overworld.fillBlocks(volume, MinecraftBlockTypes.redstoneBlock);
await delay(4); await delay(4);
} }
// let pos2 = vector3(2468, 9, 105); // let pos2 = vector3(2468, 9, 105);
@@ -146,12 +149,12 @@ async function lightUpPath() {
//iojediojaiw //iojediojaiw
world.afterEvents.worldInitialize.subscribe(({ propertyRegistry }) => { world.afterEvents.worldInitialize.subscribe(() => {
mindKeeper.registerStore(CURRENT_LEVEL, StoreType.number); mindKeeper.registerStore(CURRENT_LEVEL, StoreType.number);
mindKeeper.registerStore(AGENT_ID, StoreType.string); mindKeeper.registerStore(AGENT_ID, StoreType.string);
// mindKeeper.set("ShowTriggers", true); // mindKeeper.set("ShowTriggers", true);
triggerManager.RegisterStores(); triggerManager.RegisterStores();
mindKeeper.registerToWorld(propertyRegistry); mindKeeper.registerToWorld();
triggerManager.Load(); triggerManager.Load();
// loadCommands(); // loadCommands();