Custom Particles

Custom Particles 1.3.0

Textures now work with Minecraft 1.17; also reintroduced the particle_entity entity script, which is cleaner saves on about 5 lines, but also prevents the flickering you get from having to spawn the armor stand in before adjusting it.
If you took the value from the procedure, and passed it into the teleport task over and over, the particle would descend, due to the value being mutated when going into the flag, but not reversed when coming out of it.
Added the particle_position procedure.
The original version of Custom Particles spawned the particles into the world, and while that meant it was easier to manipulate them, since the functioned like regular entities, it also meant that it was relatively heavy on the server, since the server had the overhead of keeping track of full entities for each individual particle. This new version does not use the spawn command, but rather uses fakespawn. What does this mean for you? Well, fakespawn's require players, so the spawn_particle command now takes a list of players. It also means that, since the particles are technically client side entities, they will be automatically removed on shutdown, and CAN NOT be spawned back in at the start of the server, unlike the previous particles. This is because you have to attach a player to a fakspawn, and there will never be a joined player on the very tick the server starts up. So, unlike before, you will now have to handle respawning the particles yourself on player join, or wherever you need it. As well, the particles no longer contain the same data that the server flag contained. Arguably this should be better for server performance since we're not keeping track of a duplication of data, but in practice it probably won't be super noticeable. Lastly, since the server does not keep track of the fakespawned entities, we need to at least keep track of the position of the particle entities ourselves. For convenience, I've created a teleport_particle task that you can use to teleport the particles, which will also handle the updating the position flag for you. If there is another method of movement that you want to use, make sure to manually update the particle position within the server flag. You can check the existing teleport_particle task for an example on how that works. All changes will be reflected on the description page for the script, so you can still refer to that.