Commit graph

514 commits

Author SHA1 Message Date
Nicholas Ignoffo
53b6030ba9 Run code formatter
🦀 Way is gone 🦀
2019-04-14 08:22:42 -07:00
Tobias Gremeyer
dea733a76e Fixed Sigil tooltip formatting (#1559) 2019-03-10 14:52:42 -07:00
Phil
c8b004c9b6 Added Whirlwind to the potion registry - fixing a bug where the fast miner sigil would also cause the whirlwind effect. Increased the effect of the fast miner sigil to haste 2, to correspond with what the Sanguine Scientium states. (#1552) 2019-02-28 12:13:48 -08:00
Phil
2d49fab893 Trickshot - Sentient Arrows Implementation (#1540)
* The onArrowFire event handler for LivingArmour now checks whether the arrows were fired from a sentient bow, and if they are it calls a getDuplicateArrows method in ItemSentientBow. Said method gets the will and potion types, without changing the bow's durability or consuming will or arrows.

* Extra line breaks removed
2019-02-13 16:27:41 -08:00
Phil
4a59dede53 Fixed an error where firing a tipped arrow with a sentient bow without (#1542)
demon will would still result in the effect of the tipped arrow being
multiplied.
2019-02-13 15:59:56 -08:00
Nicholas Ignoffo
83f0eefa15 Update mappings + dependencies 2019-01-31 19:10:37 -08:00
Tobias Gremeyer
1426e49164 Potion tipped & modded arrows now get the will effects applied alongside them. (#1424)
* Potion tipped arrows now get the will effects applied alongside them
 - Destructive releases a splash potion at the target location
 - potion amplifiers are increased if the potion effect is already applied by the will type (poison, levitation, slowness)

* On hold for now, I'll do the commands first (I've had enough of arrows for this week).

* Revert Sentient Bow/Arrow to handle only potion arrows and fire regular modded arrows.

* Removed last remnants of modded arrow creation code.

* arrowHit() now supports modded Arrows (onUpdate() has the issue of TNT arrows exploding indefinitely atm)

* Crashes when firing a TNT arrow from the SimplyArrows mod with destructive will infused sentient bow

* Fixed potion arrows.
Modded arrows now work fully when hitting the ground (no splash visual effect).

* Added scaling for explosive potion arrows + cleanup
2019-01-31 17:17:00 -08:00
Tobias Gremeyer
05f0bb733b Removed some redundant stuff for Bindable items, improved inheritance (#1455)
* Added explicit Tooltip for unbound items and restructured Bindable inheritance

- Added a "Item is not bound" tooltip to ItemBindableBase

- Streamlined inheritance. All Sigils now extend ItemBindableBase at some point.

- removed redundant hasTextCompound check

* Removed TextHelper usages in the affected files.

* Nobody likes tooltips.

* Forgot the translation entry.

* Reverted change
2019-01-31 17:16:02 -08:00
Tobias Gremeyer
e8eb44632d Ritual Reader Quality of Life (#1528)
* 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
2019-01-31 17:11:32 -08:00
Tobias Gremeyer
95d99c0a01 Command rework (#1434)
* 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>
2019-01-31 16:46:02 -08:00
Saurabh Totey
2a8e1f1271 Fixed Sigil of Magnetism attraction area for #1315 (#1453) 2019-01-31 16:36:55 -08:00
Tobias Gremeyer
827ee85e81 Implemented Ritual of Grounding, a Ritual to change gravity behavior (#1501)
*  Implemented Ritual of Grounding, a Ritual to change gravity behavior

[x] <- x are new potion effects
 - (NoMod) moves entities towards the ground, prevents jumping [Grounded]
 - (Raw) affects players
 - (Corrosive) disables gravity [Suspension]
 - (Destructive) increases fall damage [Heavy Heart]
 - (Steadfast) affects bosses
 - (Vengeful) stronger effects, (+Corrosive) applies levitation (+Destructive) stronger effect

 [Grounded] prevents jumping and moves entities towards the ground, higher amplifiers cause a faster descend, interesting interaction with Sigil of Air

 [Suspension] disables gravity (keeps movement)

 [Heavy Heart] increases fall height and fall damage multiplier by 1 per level.

 Fixed a possible division by 0 in RitualConder.
 Saved event entity variable in PotionEventHandlers.
 Made rune configuration more readable in RitualHarvest.

Signed-off-by: tobias <angryaeon@icloud.com>

* Fixed Ritual area

* Lists are cleared on world unload.
2019-01-31 16:33:46 -08:00
Phillip
6b25caa06d Fixing the previous PR mess. (#1467) 2019-01-31 16:28:36 -08:00
Tobias Gremeyer
05446742ef Ported RitualDismantler (#1499)
* Ported RitualDismantler

Signed-off-by: tobias <angryaeon@icloud.com>

* Added Hellfire Forge recipe

Destructive Will Crystal, Destructive Will Crystal, Ritual Diviner (default), Weak Blood Shard

Requires a minimum of 500 will and consumes 100 will to craft

* Changed costs (lazy proposal):
 - 50 LP per normal Ritual Stone
 - discount cost of 200 LP for a whole ritual (smallest ritual has 4 ritual stones)
 - 100 LP for an MRS
2019-01-31 16:25:18 -08:00
Tobias Gremeyer
399c2723d3 Capable fluid sigils (#1517)
* Inital commit.

Water Sigil can now be used as infinite water tank item to fill machines with water (as long as you have LP) (Doesn't use LP yet).

* Should now work for all fluid sigils.

* Reverted Bound tool change

* Moved the code out of the spacey loft
IDE said it's ok... or something
2019-01-20 15:24:28 -08:00
Tobias Gremeyer
c6a315a51c Fixed compile-time fatal error (#1510)
Added Creative handling
2019-01-20 15:16:22 -08:00
Tobias Gremeyer
4f04fde127 Optimized and updated Bound Tools (#1500)
Signed-off-by: tobias <angryaeon@icloud.com>
2019-01-02 21:59:46 -08:00
TeamDman
002f23c53d Changed LavaCrystal getBinding behaviour, cleaned up JEI hiding 2018-12-06 23:33:23 -08:00
TeamDman
6f8741694c Reenable tier 6 with config option
Revert of fd03265764
2018-12-06 23:33:23 -08:00
Nicholas Ignoffo
6d43e416e4 *Now* sentient repairing is proper 2018-08-26 14:05:25 -07:00
Nicholas Ignoffo
8e16e590ea Sentient tools should use the proper material and have a repair material
crystals are used to repair
2018-08-26 13:40:40 -07:00
AEon - Tobias
1f392721fa Reinstated Compression sigil. (#1374)
*  Reinstated Compression sigil.
- does not compress wooden planks into crafting tables
- searches for reversible 3x3/2x2 recipes with a single material type
- probably has a lot of redundant stuff and looks silly
- uses try/catch (might want to find a different approach, some people scoff at this)
- should probably have spent the night sleeping, I'm taking exams tomorrow and will probably sleep the whole day through.

* Learned how to properly handle the "NullPointerException"-situation.

* Update BaseCompressionHandler.java

* Update CompressionRegistry.java

* Removed (almost) all code comments (only a one-liner remains that serves as pointer to a completly commented-out class (StorageBlockCraftingRecipeAssimilator)).
Made methods and variables for long function calls to be more efficient.
Fixed an oversight that resulted in a NullPointerException after removing redundant checks that were made to prevent exactly that.

Rearranged and reformatted code.

* corrected something that could be considered a typo but was an oversight

* This should be it. An Array should be more efficient but you can correct me if I'm wrong. In either case it does what it is supposed to do.

* Fixed. Needed a seperate inventory for the reversible check (or clear the previously used one, but then I'd had to repopulate again and that would just have been messy)

* Forgot one of my lines.

* Fix and cleanup.
Could definitely clean more but that should suffice for now.
2018-08-26 13:05:30 -07:00
KohaiKhaos
81047734a6 Changed the lava, water, and void sigils to work with fluid tanks better (#1406)
* Modified sigils of lava, water, and void to interact with tanks correctly.

* Fixed up some formatting errors

* Fixed?

* Reimplemented necessary fluid code as extensible functions in ItemSigilFluidBase and made the fluid sigils draw functions from there rather than FluidUtil

* Fixed up formatting and used an actual IDE for once.
2018-08-26 12:59:41 -07:00
AEon - Tobias
753958ac9c Ritual portal delay / Bound Pickaxe fix/improvement (#1387)
* Teleportation now works similar to the Nether Portal:

if teleportation is attempted before the cooldown (10 ticks) is over, the cooldown gets reset.
This way teleportation loops are prevented.

You can now:
- Stand on a loop of permanently activated (well, constantly refreshing through a high-speed redstone clock) Teleposers, only getting teleposed once per stepping on it
- AFK in the Gate of the Fold without getting teleported constantly
- and other things, I guess.

* Bound Pickaxe AoE ability now destroys blocks properly.

closes #1001

* Streamlined bound tool harvest code.

Cleanup, duplicate code for bound tools moved as method to ItemBoundTool.sharedHarvest()

Tested aoe harvest with Stone, Dirt/Grass and Oak trees. Same result as before.

* silkTouch and fortuneLvl are now passed instead of recalculated on every block
2018-08-26 12:50:02 -07:00
AEon - Tobias
f5282bd767 Phantom bridge (#1397)
* 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
2018-08-17 18:14:41 -07:00
palaster
34cfcfedba Allows custom arrows to work with the Sentient Bow. (#1404)
- Checks if the arrow is the vanilla arrow, if it is then it continues with normal use. But, if arrow isn't the vanilla arrow it uses  their custom arrow entity.
2018-08-17 18:07:02 -07:00
AEon - Tobias
ecebe75f33 Third stage of "Dagger of Sacrifice"-glow (#1389)
* Added Soul Fray check.
Sacrificial dagger now glows even more if you're fully prepared!
Added NBT field for maximum incense altar bonus from the last incense altar the player has encountered.
(There is a case in which the dagger glows even if the player is not at maximum incense bonus:
 The player must have been at maximum incense bonus and then gone into the vincinity of a stronger incense altar.
 The maximum incense bonus data field only updates once the maximum bonus has been reached for efficiency.)

* Multiplayer fixed.

* Fixed weirdness that occurred during a phase I don't remember.
2018-08-07 17:51:46 -07:00
AEon - Tobias
2c92a9e0c1 Crossdimensional Teleposition (including entities, into unloaded chunks etc) (#1385)
* 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.
2018-08-07 17:50:56 -07:00
KohaiKhaos
ebfd8ce9a3 Several mimic fixes, with actually cleaned up commit history. (#1379)
* 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
2018-08-07 16:28:55 -07:00
AEon - Tobias
e8ad057662 Added RitualReader/Ritual Tinkerer to creative tab (#1393) 2018-08-07 16:02:22 -07:00
Arcaratus
b441e7fc1e SoulTicket internal implementation (#1372)
* 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???)
2018-08-07 15:27:12 -07:00
Nicholas Ignoffo
42c69eb557 Rework of ritual registration
Moves to annotation based registration. Configs are handled for automatically
2018-06-28 21:56:25 -07:00
Nicholas Ignoffo
c8e42e3288 Fix lava crystal not syphoning LP (#1326) 2018-06-26 17:15:45 -07:00
Nicholas Ignoffo
22e8290921 Teleposition Sigil should make sure a Teleposer is the destination (#1328) 2018-06-26 17:09:18 -07:00
Nicholas Ignoffo
86f54886c5 Mending should not work on potion flasks (#1332) 2018-06-26 16:53:16 -07:00
WayofTime
6a56a13aac Final push before 2.2.12. 2018-05-04 14:34:46 -04:00
WayofTime
383be360ff Improved collision "i.e. actually made a non-retarded position update" for the Scroll of Icarus. 2018-05-01 21:39:15 -04:00
WayofTime
3f8a455b90 Made some WIP additions to the Scroll of Icarus, allowing it to pick up mobs. Lacks costs and may break. 2018-05-01 16:29:19 -04:00
WayofTime
920d105374 Needed to be more pushy. 2018-05-01 06:51:37 -04:00
WayofTime
d29b91a106 Fixed the Fluid filters so that they now work perfectly in the routing system. 2018-04-29 09:57:29 -04:00
Nicholas Ignoffo
da8e43a8b4 Fix Blood Tank NBT transfer between item/tile form (#1283) 2018-04-24 17:06:43 -07:00
Nicholas Ignoffo
afcf1a1822 Add a recipe for the fluid filter 2018-04-21 16:53:19 -07:00
Nicholas Ignoffo
03a2904bd1 Fixed holding sigil internal interactions
It will no longer tick unbound sigils and checks binding of stored sigil
on right click..
2018-04-07 12:24:28 -07:00
Nicholas Ignoffo
a5a9224f6d Merge remote-tracking branch 'origin/1.12' into 1.12 2018-04-01 15:37:07 -07:00
WayofTime
6e7b387e6a Added additional effects to the Sentient Bow when aspected to different Will types. 2018-03-29 16:05:56 -04:00
Nicholas Ignoffo
8dce592787 Fix out of bounds on invalid enum items 2018-03-23 17:12:32 -07:00
Nicholas Ignoffo
58d9678c40 Switch some more instances of chat spam to the action bar 2018-03-23 16:50:17 -07:00
Nicholas Ignoffo
7ec27febc6 Apply same model to all alchemic vials 2018-03-23 16:42:18 -07:00
WayofTime
25f492ef65 *Hopefully* make Nut cry a bit less. 2018-03-23 13:24:33 -04:00
WayofTime
dd6b5bd3b5 Added an example item whose variants use the same textures but different colours for the layers. 2018-03-23 11:02:43 -04:00