Skip to content

Releases: TheComputerGeek2/MagicSpells

untagged-2cdca0d7883926b8f17c

03 Jul 04:56

Choose a tag to compare

Fixes for data spell on older versions

untagged-90540261a30d19074589: Adding instant.BlockBeamSpell from ChronoKeeper!

02 Jul 22:53

Choose a tag to compare

Produces a beam of blocks supported by armor stands, functions similarly to the beam spell.

Accepts an option called block-type which defaults to iron_block and sets what type of block the beam should be made of.

Accepts an option called max-distance of type float which defaults to 20.
This controls how far the beam may reach.

Accepts an option called hit-radius of type float which defaults to 1.
This controls the range from the center of the beam line from which an entity may be hit.

Accepts an option called remove-delay of type integer, which is the number of ticks before an armor stand should be removed.

Accepts an option called interval of type float which defaults to 1.
This controls how far apart the armor stands are.

Accepts an option called y-offset of type float which defaults to 0.5
This offsets the starting location of the beam.

Accepts an option called rotation-x of type float which defaults to 0.
This offsets the x rotation of the blocks displayed in the beam.

Accepts an option called rotation-y of type float which defaults to 0.
This offsets the y rotation of the blocks displayed in the beam.

Accepts an option called small of type boolean which defaults to false.
When set to true, the armor stands used will be smaller.

Accepts an option called spell of type string which defaults to an empty string. This option controls what spell the beam should cast on its targets.

Accepts an option called use-hp-fix of type boolean which defaults to false. Setting this to true sets the armor stand's hp to a large value as a workaround for an issue relating to the beam being cast in the same location multiple times and armor stands disappearing, if this issue occurs for you, set this option to true.

untagged-8b6ec268fb7c0f653856: Added targeted.EntitySilenceSpell

02 Jul 22:22

Choose a tag to compare

This spell controls the "silent" flag on living entities which may suppress sounds they usually make.
There is an option called target-state which accepts a target boolean state and defaults to toggle.

Added targeted.SlimeSizeSpell
This spell is for changing the size of slimes.
It accepts an option called size which accepts a variable mod format (operation along with integer or variable name)
It accepts an option called min-size which accepts an integer and the minimum allowed value is 0. This is the minimum value to set a slime to.
It accepts an integer called max-size which defaults to 20 and is the maximum size a slime may be set to. If the maximum size is smaller than the minimum size, it is set to be equal to the minimum size.

untagged-ee08a403238372c60cea: Added targeted.CollisionSpell

02 Jul 04:59

Choose a tag to compare

This spell is for setting if an entity collides with others.
It has an option called target-state which accepts a TargetBooleanValue and defaults to toggle

Added targeted.CustomNameVisibilitySpell
This spell is for setting if the custom name on an entity is visible normally.
Accepts an option called target-state which accepts a TargetBooleanValue and defaults to toggle.

More information about this format may be found in the MagicSpells Config Objects file.

untagged-6ae807495b7939678ece: Implement ArgPlayerName and ArgPlayerUuid

01 Jul 05:34

Choose a tag to compare

Make better use of Java 8 in BuffManager

Extract TargetBooleanState from GlideSpell for reuse elsewhere.

Added targeted.FlySpell
This spell serves to set if the target is flying.
It accepts a string in the same format of the glide spell. The option to set is target-state and defaults to "toggle"

untagged-84b0fe7b8083f2bbdb72

27 Jun 02:48

Choose a tag to compare

Avoid using entity.getLocation as much since it makes use of defensiv…

untagged-023ee66c4152fac9debd: NoCheatPlus integration

20 Jun 02:54

Choose a tag to compare

PainSpell now has basic exemptions for NCP!
There is a new option in the general config called allow-anticheat-integrations which defaults to false for now. If you set it to true, MagicSpells will attempt to provide exemptions for spell casting from anticheat processing. This is currently in early development and is not implemented for all spells yet.

Cleanup

Precompile patterns which get used frequently, this should provide a little performance boost.

untagged-583cc75d410f49208864: Optimizations

18 Jun 05:42

Choose a tag to compare

Precompile colors pattern for conjure firework spell
Precompile delay pattern for TargetedMultiSpell
Precompile delay patterns for MultiSpell
Precompile use specifier matcher pattern for TomeSpell
Precompile patterns for ScrollSpell
Precompile pattern for ImbueSpell
Precompile patterns used in the cast command
Precompile patterns for MagicItemNameResolver

Documents

Started adding notes to methods about what kind of information they provide at various logging levels.
Updated the usage listings of the effect positions.

untagged-d2b137c610551cbda8f6: Add new conditions

16 Jun 07:05

Choose a tag to compare

HasItemPrecise, referenceable as hasitemprecise
This condition functions just like the hasitem condition, but requires a predefined item and matches all aspects other than item count.

WearingPrecise, referenceable as wearingprecise
This condition functions just like the wearing condition, but with the same differences listed above.

HoldingPrecise, referencable as holdingprecise
This is the picky equivalent of the holding condition.

untagged-90dda814ecc3a5f0fd26: Added 2 new options to buff spells:

17 Jun 00:44

Choose a tag to compare

spell-on-use-increment which accepts the internal name of a spell. If defined, this will be cast each time the use counter is incremented through expected methods. Technical note: it runs just before the usage is incremented.

spell-on-cost which accepts the internal name of a spell. If defined, it will cast just before the usage cost charge is processed, even if there is nothing set for the usage cost itself.

Other Changes:
Cleanup, minor optimizations.
Started building with NoCheatPlus.
Introduced framework of exemption assistants (not yet being used, still wip).
Fixed the VariableCastSpell not applying formatting and variables to str-doesnt-contain-spell.
Precompiled coordinate matching pattern for GateSpell to improve performance.