nineMinecraft is a joke site.
nineMinecraft is in no way affiliated with Modrinth or 9minecraft. (And frankly, who wants to be affiliated with the latter?)

Back on Track

Changelog

🚀 Back on Track:

This is the first update since May and I hope to bring more frequent updates, school and real life had been holding me back a bit but I think I've found a good balance to continue making Lusk better and better, expect more updates in the next months!

"Essentially, this is the best Lusk's ever been." - JakeGBLP

❗ Breaking Changes:

A lot of things have been removed in this update, mainly hardcoded stuff that i internally referred to as "aliases", this is because they are tough to maintain, i might add them back in the future but for now be on the lookout for errors, always test your code on a development server first.

⛏️ What Changed:

Each addition is paired with a working example, but for most elements multiple patterns are available, consider checking the documentation for more info.

➕ Added:

  • Events:

    • Player - on Block Harvest: on block harvest:, on harvest:
    • Armor Stand - on Manipulate: on armor stand chest slot change:

    This event has a lot of customization, it allows you to choose the interactions and which slots are being changed, check the documentation to know more.

  • Types:

    • ArmorStandInteraction: change, swap, retrieve, place
    • BlockFace: south face, up face, south east face etc...
    • ItemRarity: common, uncommon, rare, epic

    This replaces the old system from Paper.

    • VoxelShape: The voxel shape of a block.
  • Conditions:

    • CondEntityStanding: if player is standing:
    • CondVindicatorJohnny: if {_vindicator} is johnny:
    • CondTridentCollided: if event-projectile has collided:
    • CondTridentEnchanted: if event-projectile is enchanted:
    • CondTridentLoyal: if event-projectile is loyal:
    • CondBlockFaceCartesian: if {_blockface} is cartesian:
    • CondEntityCanSit: if victim can sit:
    • CondBoundingBoxWithin: `if {_location} is within bounding box {_boundingBox}
    • CondEntityRoaring: if {_enderDragon}, {_ravager} and {_someOtherEntity} are roaring:
  • Expressions:

    • ExprRarity: set item rarity of tool of player to epic
    • ExprRarityColor: broadcat rarity color of item rarity of dragon egg
    • ExprVindicatorJohnny: set whether or not {_vindicator} is johnny to true
    • ExprTridentLoyalty: set loyalty level of event-projectile to 4
    • ExprFoxTrustedPlayers: broadcast first trusted player of {_fox}
    • ExprBlockFaceModXYZ: broadcast mod-y of {_blockfaces::*}
    • ExprBlockFaceVector: broadcast vector direction of west face
    • ExprBlockFaceOpposite: broadcast opposite blockface of {_storedBlockfaces::*}
    • ExprBlockFaceBetween: set {_between} to face from {_block} to block below player
    • ExprBoundingBoxOf: broadcast bounding box of event-block
    • ExprBoundingBoxesOfVoxelShape: broadcast bounding boxes of {_voxelShape}
    • ExprNewBoundingBox: set {_box} to a new bounding box, set {_boundingBox} to bounding box from {_loc1} to {_loc2}
    • ExprVoxelShapeOf: broadcast voxel shape of target block
  • Sections:

    • SecEvtDeath: run on death of {_player}:, when {_wolf} dies:
    • SecEvtJump: execute on {_player} jump:, when {_wolf} jumps:
    • SecEvtBreak: execute on mine of {_block}:, when {_block} gets broken:

🔃 Changes:

  • ExprUsedTool:
    • Fixed possible errors due to missing methods in older versions.
    • Now works in the Elytra Boost event.
    • Now allows you to get either the hand or the item in that hand ( the used item ).
    • Improved Pattern.
  • Block Faces:
    • Each block face will only have "face" as a suffix for parity with skBee, Ex: south face, up face
  • ExprFoxProperties:
    • Added the sleeping property.
    • Greatly improved the description, which now explains which properties can be set on which platform.
  • CondEntityAwake -> CondEntitySleeping:
    • Improved pattern to allow "asleep" and "sleeping".
  • Changed EffPass's documentation name from Pass to Do Nothing....
  • Made Brewing Stand - on Brew's description more intuitive.
  • Added strict keyword to ExprCases and expanded the description to explain in.
  • Equipment Slots now require the word slot at the end., in other words, they must be suffixed by it.
  • Versions can now be parsed and aren't required to be wrapped in a string: send version 1.20.6
  • Fixed malformed pattern in the Campfire - on Start event.
  • Fixed use of deprecated method in the Entity - on Attack Push event.
  • Fixed ExprBestEquipmentSlot's register method being the exact same as another totally different element (fixed this oversight).
  • Improved some patterns here and there.
  • Improved Sections
  • Stored Bounding Boxes are now persistent across restarts.
  • CondServerAllows can now be used to check if the server allows any of the following: nether, end, flight.
  • CondCharged now has better checks for crossbows (chances are it didn't work before).
  • All classinfos should now have aliases.

➖ Removed:

  • The old item/enchantment rarity system, now rarities are their own object and enchantments don't have a rarity of their own.
  • Beacon Elements.

These are BREAKING CHANGES!

  • CondAxeable
  • CondPathable
  • CondStrippable
  • CondTillable
  • CondShearable
  • CondSittable (somewhat replaced by CondEntityCanSit)
  • CondWaxable
  • CondCompostable
  • EvtBlockPath
  • EvtBlockStrip
  • EvtBlockTill
  • ExprAxeables
  • ExprPathable(s)
  • ExprStrippables
  • ExprTillables
  • ExprWaxables
  • ExprShearables
  • ExprSittables
  • ExprCompostables
  • ExprCompostChance

⚠️ The following elements are deprecated when using Skript 2.9 or newer

  • CondBellResonating
  • CondBellRinging
  • Bell - on Resonate
  • Bell - on Ring
  • ExprBellResonatingTime
  • ExprBellShakingTime

EffRingBell is not being deprecated due to Skript's own version of this effect using Direction and Lusk's using blockfaces, so both can be used in different situations.

⚙️ Internal Changes:

  • Renamed CondCanBreatheUnderwater to CondEntityBreatheUnderwater.
  • Moved ExprFireballItem to fireball package.
  • Tests wooo @Pikachu920
  • Internal Skript version is 2.9.
  • CondCanBeEnchanted negation is now on a separate pattern.
  • CondCanBeEnchanted now takes itemtypes instead of itemstacks.
  • The Equipment Slot classinfo now uses the EnumWrapper class.
  • Added missing aliases and removed pointless aliases.
  • Renamed Comparators.java to VersionComparators.java for more clarity.
  • Due to the massive amount of removals most utility classes are now much smaller.
  • Removed some trailing spaces.
  • Replaced deprecated URL stuff in the UpdateChecker.
  • Fixed version lang issue.
  • Moved some method around in the main class.
  • Added MIT license, wooo
  • Improved build.gradle by a LOT.
  • Added a method to check if a block break event will drops items.
  • Switched to the new internal Skript comparator system.

✅ Summary:

  • Trident API: 100%
  • BlockFace API: 100%
  • Fox API: 100%
  • Vindicator API: 100%
  • EquipmentSlot API: 90%
  • BoundingBox API: 10%

Full Changelog: https://github.com/JakeGBLP/Lusk/comp

Files

Lusk-1.2.jar(586.15 KiB) Primary Download

External resources


Project members

Lusk

Lusk

Organization


Technical information

License
MIT
Project ID