jmc
jmc copied to clipboard
A compiler for JMC (JavaScript-like Minecraft Function), a mcfunction extension language for making Minecraft Datapack
## Describe the bug The `Timer.add()` allows the user to add multiple timers to a single entity, which causes buggy and unintended behavior.  In `__load__.mcfunction`:  In `__private__/timer_add/main.mcfunction`: ...
Allow the function to only be called from the same class.
## Describe the bug Switch statements that use an anonymous function (specifically with curly brackets) within a case will prevent any subsequent cases from being compiled. Since it needs curly...
## Describe the bug Creating a new macro factory using `#define` that has more than one parameter will produce commands that have their arguments concatenated together instead of being separated...
## Describe the bug [A clear and concise description of what the bug is.] When using `#define`, defining another macro factory in terms of `EVAL` expressions results in a parsing...
## Description Allows you to pass arrow functions as parameters to lazy functions and then call them from inside.
## Describe the bug Item.give(...); puts its nbts in old format ## To Reproduce 1. write proper Item.create() and Item.give() 2. compile ## Expected behavior nbt should be put in...
https://discord.com/channels/942403801745342545/1144143628571246622/1212346062107451443
## JMC.log(message: string) Prints the given string into the compiler console. Useful for todo / fixme reminders. ## Parameters - message: The message to print into console ### Compliation _[sic]_...
## Description Code like `uuid:@s ??= @s::UUID[0];` should be supported, and would compile to ```mcfunction execute unless score @s uuid = @s uuid store result score @s uuid run data...