The Meaning of Life, the Universe, and Everything.
Join Date:
2/11/2017
Posts:
662
Member Details
When working with command blocks, the conditional property is an essential feature. That is, a specific command only runs if the last command succeeded. Because functions are meant to run chains of commands, I figure they should support conditional just like the chains in the minecraft world do. It would also allow many command creations to be run completely through a data pack instead of a collection of command blocks. Also, the execute store command does not work well with data packs because it needs to interact with a block inside the actual minecraft world. Perhaps we could create virtual blocks/entities that can be targeted and used like regular entities but do not actually exist in the world.
For the conditional thing, there could be a system that utilizes the tab. If the next line starts with a tab, the chain is run in a conditional way.
Rollback Post to RevisionRollBack
Remember those versions that minecraft pranked us with? Specifically:
Minecraft 2.0
Minecraft 1.VR-Pre1
Snapshot 15w14a
Minecraft 3D
Those are still downloadable! Watch this video for 2.0:
To download the other ones you need to make a folder in the versions folder for minecraft and put the client and JSON file for the versions in there. They all need to be named the same aside from file extensions. Once you do that, you will be able to choose that version when making a new profile with the minecraft launcher.
This could all be solved with a two commands: if and unless.
The if command has a syntax of
if block <position: x y z> <tileName: Block> [data_tag] then <command: command>
if blocks <begin: x y z> <end: x y z> <destination: x y z> then <command: command>
if entity <entity: target> <entity_name> [data_tag] then <command: command>
if item <entity:target|position: x y z> <itemName: Item> [slot: int] [maxCount: int] [data_tag] then <command: command>
and, when run, runs the end command if
if block: if the block in the specified position is the specified block
if blocks: if the specified block ranges match
if entity: if the target matches the specifications
if item: if the target has the specified item in the specified slot.
If the conditions are matched and there is no end command, nothing happens and the command block outputs true.
The unless command is the same as the if command, but runs the end command if the conditions are not matched.
Many conditions can be made this way, bit certainly not all. These commands can only detect if the target selectors succeeded. If the target selectors did, but the actual commands did not, we have a problem again.
Rollback Post to RevisionRollBack
Remember those versions that minecraft pranked us with? Specifically:
Minecraft 2.0
Minecraft 1.VR-Pre1
Snapshot 15w14a
Minecraft 3D
Those are still downloadable! Watch this video for 2.0:
To download the other ones you need to make a folder in the versions folder for minecraft and put the client and JSON file for the versions in there. They all need to be named the same aside from file extensions. Once you do that, you will be able to choose that version when making a new profile with the minecraft launcher.
When working with command blocks, the conditional property is an essential feature. That is, a specific command only runs if the last command succeeded. Because functions are meant to run chains of commands, I figure they should support conditional just like the chains in the minecraft world do. It would also allow many command creations to be run completely through a data pack instead of a collection of command blocks. Also, the execute store command does not work well with data packs because it needs to interact with a block inside the actual minecraft world. Perhaps we could create virtual blocks/entities that can be targeted and used like regular entities but do not actually exist in the world.
For the conditional thing, there could be a system that utilizes the tab. If the next line starts with a tab, the chain is run in a conditional way.
Remember those versions that minecraft pranked us with? Specifically:
Those are still downloadable! Watch this video for 2.0:
https://www.youtube.com/watch?v=PQdu9LKAdIU
To download the other ones you need to make a folder in the versions folder for minecraft and put the client and JSON file for the versions in there. They all need to be named the same aside from file extensions. Once you do that, you will be able to choose that version when making a new profile with the minecraft launcher.
15w14a is on this link:
http://minecraft.gamepedia.com/15w14a
1.RV-Pre1 is here:
http://minecraft.gamepedia.com/1.RV-Pre1
Minecraft 3D is here:
https://minecraft.gamepedia.com/Java_Edition_3D_Shareware_v1.34
Full Support
There isn't much else to say
This could all be solved with a two commands: if and unless.
The if command has a syntax of
if block <position: x y z> <tileName: Block> [data_tag] then <command: command>
if blocks <begin: x y z> <end: x y z> <destination: x y z> then <command: command>
if entity <entity: target> <entity_name> [data_tag] then <command: command>
if item <entity: target|position: x y z> <itemName: Item> [slot: int] [maxCount: int] [data_tag] then <command: command>
and, when run, runs the end command if
If the conditions are matched and there is no end command, nothing happens and the command block outputs true.
The unless command is the same as the if command, but runs the end command if the conditions are not matched.
My suggestions: Enhancements - Throwable Fire Charges - On Phantoms and Elytra. Also check out The Minecraftian Language. This signature is not here to waste your space.
Many conditions can be made this way, bit certainly not all. These commands can only detect if the target selectors succeeded. If the target selectors did, but the actual commands did not, we have a problem again.
Remember those versions that minecraft pranked us with? Specifically:
Those are still downloadable! Watch this video for 2.0:
https://www.youtube.com/watch?v=PQdu9LKAdIU
To download the other ones you need to make a folder in the versions folder for minecraft and put the client and JSON file for the versions in there. They all need to be named the same aside from file extensions. Once you do that, you will be able to choose that version when making a new profile with the minecraft launcher.
15w14a is on this link:
http://minecraft.gamepedia.com/15w14a
1.RV-Pre1 is here:
http://minecraft.gamepedia.com/1.RV-Pre1
Minecraft 3D is here:
https://minecraft.gamepedia.com/Java_Edition_3D_Shareware_v1.34