Initial publishing of the 1.16.3 branch of the mod. A lot of systems are missing (such as Rituals and Living Armour), but enough is present for a decent Alpha release.
* Add getMinimumOffset() and getMaximumOffset to AreaDescriptor
Add the ability to reset BlockRanges to the Ritual Tinkerer
* Added copy-constructors and functions to AreaDescriptor
Added the ability to reset BlockRanges to the Ritual Tinkerer
- Mode: Define Area, with BloodOrb in offhand & sneaking, right click on MRS
Changed "addBlockRange" and "addBlockRanges" to use .putIfAbsent
Added "setBlockRange" and "setBlockRanges" to IMasterRitualStone
- reference implementation in TileMasterRitualStone is identical to old "addBlockRange" and "addBlockRanges"
Fixed range setting for good.
Tested behavior with RitualWater.
* Minor cleanup
* Remove TODO
* Groundwork for Reader part 1
* More Ritual Reader information & more intuitive to use.
* Added `getCurrentRitual()` to `IMasterRitualStone`
RitualReader can now only be used on MRS with a set Ritual (this prevents a (caught) NPE).
* Refactored
* Added Enum
* Network part finished.
* Should be more reasonable now
* This should be good enough.
* Orb finished, needs strings
* Bind finished. Needs strings.
* Reformat & Help subcommand
* Cleanup, strings, no negative amounts
* Removed TODOs
* Added missing MaxTier check for Blood Orbs.
Added TODO: Test with custom Blood Orbs.
* Ritual commands finished.
Check for valid placement might be optimized. (TODO)
* Access modifiers, moved TODO
* Added TODOs for localized strings
* DrainUtils postponed until the necessary functionality is available with SoulTickets (telling SoulTicket network from soul ticket, a list of all registered soul tickets per network)
* Replaced all occurrences of TextHelper with TextComponentTranslation in the commands section
* - Moved Teleports.java to teleport package
- added teleposer command
- added missing strings
- cleanup
* Fixed spelling of "Successful(ly)"
* getUsage() now returns translation keys.
getInfo() is now an explicit String
ritual creation command now has proper tab completions
help is an additional argument with "-h" or "?"
cleanup
* teleposerSet final
cleanup.
* Removed ritual removal command
Signed-off-by: tobias <angryaeon@icloud.com>
* Check if the tile has a ritual first
Signed-off-by: tobias <angryaeon@icloud.com>
* A bit more optimisation
Signed-off-by: tobias <angryaeon@icloud.com>
* Cleanup part 1
Signed-off-by: tobias <angryaeon@icloud.com>
* Cleanup part 2
Signed-off-by: tobias <angryaeon@icloud.com>
* Part 3
Signed-off-by: tobias <angryaeon@icloud.com>
* Part 4
Signed-off-by: tobias <angryaeon@icloud.com>
* Updated language file to reflect cleanup & continuity changes.
Signed-off-by: tobias <angryaeon@icloud.com>
* Change to use an abstract class that gets called instead of calling super on overriden execute() for commands
Signed-off-by: tobias <angryaeon@icloud.com>
* Use player facing for ritual creation.
Signed-off-by: tobias <angryaeon@icloud.com>
* Ported Ritual of the Feathered Earth to BM2.
* Changed maximum area
* Feathered Earth Hurt timer fall damage negation based on Set part1
* Part 2, switched to handling through potions, digging into area descriptor range bug
* Fixed Ritual area
* Update gradle.properties
* Make Movement & Updraft arrays stronger by adding more of their ingredients!
Reduced base motion for Movement & Updraft arrays
* Reverted Bound Tool change
* Readability & using tailored methods
* Rework. Desyncs for no apparent reason.
Apart from that, it works.
Desyncing started after I implemented the "diagTemplate" methods.
Can definitely be optimised, some advice for that would be good (lots of duplicated code for the "templates").
* Code cleanup.
Reverted stuff that I didn't want to commit.
* Some fine tuning for speed.
playerVel is not very accurate still but this should work out for most stuff.
Might need a lot of testing.
Might still not work properly on servers.
Diagonal templates are inconsistent, need variables switched.
Will deal with that later (maybe).
In any case, this works just fine unless you're speeding diagonally.
* The occasional stuff that should not be pushed.
Meaningless whitespaces or code reformatting.
* The occasional stuff that should not be pushed.
Meaningless whitespaces or code reformatting.
Take 2.
* MERGE ME I'M AWESOME
* removed unused import
* Refactoring, adding braces, renaming constants etc etc.
done.
* take 2
* take 2
* Removed one-liners
they grew organically because I initially created every "bridge" with a unique for loop before I removed duplicate code by passing variables/ranges
they were helpful until I found good names for the variables, now they've outlived their usefulness
* tiny bit of fine tuning
* various fluff / small fixes
more fine tuning, code reformatting, meaningful variables, for loop fix (variable mismatch), shrinking a redundant method to a call to an advanced method
* AWAITING ALLOWANCE FROM BRANDON3055 (PERMISSION TO USE CODE SNIPPET FOR INTERDIMENSIONAL/CROSSDIMENSIONAL TELEPORT) COPYRIGHT ALL RIGHTS RESERVED FOR BRANDON3055 (CODE SNIPPET)
AWAITING ALLOWANCE FROM TEHNUT, WAYOFTIME TO USE FOREIGN CODE (AS IT NEEDS ALLOWANCE & POSSIBLE CREDITS)
DO NOT USE.
* Forgot something.
Requires permission from Brandon3055 (copyright on code snippet)
Requires permission from WayofTime, TehNut (because it uses foreign code that might need attribution)
Do not use.
* License permits usage.
Sorry for bothering everyone involved.
Don't merge. Teleposer broken. Teleposition sigil works though.
* IT WORKS!!!!
- re-enabled cross dimensional telepositioning
- works even if target teleposer is unloaded at the time of activation (force loads the chunk so the teleposer can be found, releases ticket when player arrives)
- entity teleposition works properly
- I'm tired and slightly insane
- nobody asked for this.
closes#973 (rewrite might still be needed though)
might be able to close the following issue:
- #1198 (improved cross dimensional teleportation code thanks to brandon3055)
* Zombies stop holding onto tickets now.
* Oversight.
* Reimplemented a lot of mimic logic and did a first run of changing how mimics store their states.
* Finished removing all metadata calls for blocks replaced by mimics.
* Update EntityMimic.java
* Update ItemBlockMimic.java
* Update TileMimic.java
* How did I even replace a semicolon with a slash.
* Changed all tabs to 4 spaces. Changed Serializer to StateUtil
* Fixed spacing again, hopefully for the last time
* Players in creative mode can now add crystals to crystal blocks by right clicking them with an item demon crystal.
Crystal block texture now updates on the next tick. The render update is only called when a new crystal has been added (by natural or unnatural means).
Adding a crystal imitates a positive result of checkAndGrowCrystal()
closes#1151
* fixed conditional to allow harvesting crystals if not in creative and holding crystal
* Fix the Blood Tank BB
* Add modid to command localizations to prevent conflicts
* Fixed the items not being drawn on the right Y-level for the Sigil of Holding HUD
Corrected localizations of other lang files
* SoulTicket internal implementation
* do what TehNut says
* implement hashCode()
* Fix toggleable sigils draining on r-click when it shouldn't
Also moved the ItemSigil and ItemSigilToggleable to the sigil package (why wasn't it there???)