Commit graph

260 commits

Author SHA1 Message Date
AEon - Tobias
7942465edc Well of Suffering item drop control (#1388)
* Added a new DamageSource for the Well of Suffering
Added an event handler for death through Well of Suffering
Added a config option to enable (true) or disable (false) Well of Suffering Mob drops.

* Moved the DamageSource creation to RitualManager
Renamed the new DamageSource to "RITUAL_DAMAGE"
DamageSource "RITUAL_DAMAGE" is now used by RitualForsakenSoul and RitualWellOfSuffering
Added death message string for "RITUAL_DAMAGE" for en_US and de_DE

* Cleanup, removed the ability to damage entities in creative mode (creative mode should be considered as having infinite health, the rituals only damage mobs anyways).

* Update GenericHandler.java
2018-08-26 12:55:23 -07:00
AEon - Tobias
92e3333701 Splash potions now throwable! (#1401) 2018-08-17 18:08:04 -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
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
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
e3d65a9e3a Rework of HUD element system
Allows configuration because that's probably a good thing. The values in
the json config are percentages of the screen.
2018-06-28 20:37:53 -07:00
Nicholas Ignoffo
47b88b95b0 Base work for ticket based syphoning
To be used for providing a history. This commit breaks any usage of the
network events.

Heads up @TeamDMan @Arcaratus
2018-06-28 18:24:17 -07:00
Nicholas Ignoffo
c8e42e3288 Fix lava crystal not syphoning LP (#1326) 2018-06-26 17:15:45 -07:00
cpw
778838e2b0 Fix light calculation to use actual visible level. Should now work on (#1295)
surface at night as well as underground. Tweak duration to reduce
flicker.
2018-05-03 19:26:28 -07:00
WayofTime
eb6b8a3aa5 Small bit of framework for Soul Breath items, plus testing with the "Scroll of Icarus". Crafting mechanic as well as refilling of its resource not implemented. 2018-04-28 21:56:57 -04:00
WayofTime
fff793ea7d Fixed the Haste sigil and "Quick Feet" so that they work with MC's new movement method.
Also added better looking potion effects for a few things
Enabled Shard of Laputa array - no book entry yet.
2018-03-30 18:01:23 -04: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
f535e331dd Removed all usages of PleaseStopUsingMe 2018-03-17 22:30:14 -07:00
Nicholas Ignoffo
77e5beb9e1 Fully remove old LogHelper usage 2018-03-17 17:18:20 -07:00
Nicholas Ignoffo
924dc7b38d Fix server crash when handling dye recipes (#1250) 2018-03-13 23:10:13 -07:00
Nicholas Ignoffo
ecb81a7017 A bit more altar cleanup 2018-03-10 00:07:19 -08:00
Nicholas Ignoffo
eada60f436 Some altar cleanup and renaming 2018-03-09 18:00:04 -08:00
Nicholas Ignoffo
b011623333 Switch ritual component gathering to a Consumer rather than direct list access 2018-03-05 00:10:30 -08:00
Nicholas Ignoffo
2b86e5c8ad More removal of BlockStack usages 2018-03-04 10:47:15 -08:00
Nicholas Ignoffo
3f5178dd6a A bit of Ritual cleanup
Slowly getting rid of these BlockStack references. Slowly moving towards
a proper "API" in our internals.
2018-03-04 09:17:24 -08:00
Nicholas Ignoffo
81ad9bf764 Cleaner fuel handling 2018-03-03 19:17:06 -08:00
Nicholas Ignoffo
f025407014 Move fuel handling to new event 2018-03-01 19:40:37 -08:00
Nicholas Ignoffo
70d98455b7 Cleaned up a lot of different inspections 2018-03-01 19:27:39 -08:00
Nicholas Ignoffo
91d7f23b4f Add API method for registering recipes at proper time
The old access to IBloodMagicRecipeRegistrar still exists, but should not
be used so mods like CraftTweaker can do their thing.

This commit also introduces @BloodMagicPlugin.Inject which will inject the
active API instance into an annotated field with the API interface as it's
type. These fields are populated during pre init.
2018-02-28 17:53:23 -08:00
Nicholas Ignoffo
2a43e53842 Rewrite IBindable to provide an object instead of storing 2 strings 2018-02-27 16:59:51 -08:00
Nicholas Ignoffo
f89b5a005a Logging for plugin gathering
Moved spammy API stuff to a separate logger
2018-02-17 09:48:17 -08:00
Nicholas Ignoffo
b29ade63f0 Logging overhaul 2018-02-16 23:48:28 -08:00
Nicholas Ignoffo
2fecb427fd Merge apibutnotreally with the main packages
Do not consider anything outside of the true API safe to use. And even then,
I'm changing things. Just wait. Please I beg you.
2018-02-15 18:49:07 -08:00
Nicholas Ignoffo
616c08094b Run formatter 2018-02-14 23:38:57 -08:00
Nicholas Ignoffo
e3cef5ee76 Add support for being in the mood to run on dedicated servers (#1211) 2018-02-07 17:02:53 -08:00
Nicholas Ignoffo
8be8cc30b9 nullcheck obtained entity entries (#1206, 1207)
No idea what's going on here but aight
2018-02-06 17:04:04 -08:00
Nicholas Ignoffo
ddaadfbe52 Swap the API packages
The new one is now built for the api jar and the old one is now internal.
It will slowly be moved around to sane places within the internal code. Most
of the features provided in the old "api" are addon specific features which
will generally rely on the main jar anyways. The new API will be specific
to compatibility features, such as blacklists, recipes, and value modification.
2018-02-05 17:04:46 -08:00
Nicholas Ignoffo
3536a25cc3 Add modid to subscriber annotations
(cherry picked from commit 7cac007)
2018-02-04 19:16:09 -08:00
Nicholas Ignoffo
8a4117106d Stop using a custom bus subscriber annotation
I'm sorry, past self, but Forge has had one since like 1.10, it's time to
move on. It's for the better.

(cherry picked from commit 9de2354)
2018-02-04 19:15:37 -08:00
Nicholas Ignoffo
d99cf77288 Move config to annotation system
All old configs must be deleted for this to work properly. Since the rest
of the update is filled with world breaking changes, this should be fine.

Also some mapping updates

(cherry picked from commit d587a8c)
2018-02-04 19:01:27 -08:00
Nicholas Ignoffo
a10b2ece9a Fixed altar detection 2017-08-16 17:29:24 -07:00
Nicholas Ignoffo
08258fd6ef Run formatter 2017-08-15 21:30:56 -07:00
Nicholas Ignoffo
348fee1e2a It compiles. Somehow. 2017-08-15 20:21:55 -07:00
Nicholas Ignoffo
554c9852e6 Move commonly used API systems to a plugin based system
Create a class that implements IBloodMagicPlugin and annotate it with
`@BloodMagicPlugin`. The `register` method will be called during init.

Currently implemented systems:
- Blacklisting
  - Teleposer
  - Teleposer (entity)
  - Transposition
  - Well of Suffering
  - Green Grove
- Setting sacrificial values
- Adding altar components
2017-08-15 18:14:28 -07:00
Nicholas Ignoffo
5fcdd978d7 this doesn't compile yet, but have something to peek at 2017-08-14 20:53:46 -07:00
Nicholas Ignoffo
c4f04b1589 Fix another null check crash (#1091) 2017-03-11 15:53:43 -08:00
Nicholas Ignoffo
333ad6a09e Fix null stacks in Utils class 2017-03-06 16:09:11 -08:00
Nicholas Ignoffo
f083e4e036 Fix Sigil of Holding (#1081) 2017-03-05 10:28:06 -08:00
Nicholas Ignoffo
91aeb4bf48 Update version + changelog 2017-02-21 16:52:39 -08:00
Nicholas Ignoffo
da1bb01ff0 Return past functionality to canCombine 2017-02-20 14:15:41 -08:00
Nicholas Ignoffo
5475549c18 More null stack fixes 2017-02-19 16:06:29 -08:00
Nicholas Ignoffo
f135dab7ba IMC API for adding new altar components (#1039)
CC @Drullkus

(cherry picked from commit 8a8bff8)
2017-02-12 01:34:51 -08:00
Nicholas Ignoffo
86ea69eaca Temporarily remove item rendering for tank fluid
You cannot bake GL stuff. This is bad. Also it got broken at one point.

I'll re-add this once I remove the need for a TESR.

(cherry picked from commit 13228f6)
2017-02-12 01:33:48 -08:00
Nicholas Ignoffo
53afcc2fb0 No-spam messages should be handled on the main thread (#1035)
(cherry picked from commit 305e001)
2017-02-12 01:31:58 -08:00