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

View File

@@ -3,7 +3,7 @@ import { Trigger } from "./trigger";
import {
Block,
ChatSendAfterEvent,
Color,
PaletteColor,
EntityInventoryComponent,
ItemStack,
ItemUseOnBeforeEvent,
@@ -41,9 +41,10 @@ export class Maker {
if (event.message === "!TWand") {
const item = new ItemStack("minecraft:stick");
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");
}
if (event.message === "!deleteCurrentTrigger") {
let currentTriggerdTrigger = this.manager
.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) {
//draw a line with particles
const xStep = pos2.x - pos1.x;
@@ -127,16 +128,22 @@ export class Maker {
//make the ends and starts a different color
let map = new MolangVariableMap();
if (i == 0 || i == steps) {
map = map.setColorRGB("variable.color", { red: 0, green: 255, blue: 0, alpha: 1.0 });
const particleData = new MolangVariableMap().setColorRGB("variable.color", {
map.setColorRGB("variable.color", { red: 0, green: 255, blue: 0 });
const particleData: MolangVariableMap = new MolangVariableMap();
particleData.setColorRGB("variable.color", {
red: 0,
green: 1,
blue: 0,
alpha: 1,
});
spawnParticle(vector3(x, y + 0.1, z), "codecosmos:point", particleData);
} 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);
}
}
@@ -178,10 +185,7 @@ export class Maker {
const p8 = trigger.point2;
//is there a player inside this trigger
const color = trigger.IsAnyPlayerInside()
? { red: 1, green: 0, blue: 0, alpha: 1.0 }
: { red: 1, green: 1, blue: 1, alpha: 1.0 };
const color = trigger.IsAnyPlayerInside() ? PaletteColor.Red : PaletteColor.White;
this.DrawLine(p1, p2, color);
this.DrawLine(p2, p4, 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 = {
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 {
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 { mindKeeper } from "../../main";
function teleportAgent(position: Vector3) {

View File

@@ -37,11 +37,11 @@ function rotate(pos: Vector3, angle: number) {
return vector3(newX, pos.y, newZ);
}
const particleData = new MolangVariableMap().setColorRGB("variable.color", {
const particleData = new MolangVariableMap();
particleData.setColorRGB("variable.color", {
red: 1,
green: 1,
blue: 1,
alpha: 1,
});
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 = {
startPos: Vector3;
@@ -6,11 +6,13 @@ type 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) {
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) {