Nebula

Nebula

Mod

Nebula is a Library for Spells and Mana. The Library is flexible and can be used for a lot of stuff.

Server Game MechanicsLibraryMagicManagementUtility

9,017 downloads
17 followers
Follow Save
Nebula has been archived. Nebula will not receive any further updates unless the author decides to unarchive the project.
Filter loader...
Filter versions...
Filter channels...

Nebula 7.0.0 Beta 6

  • Add CastComponents to SpellSource
  • More renaming
  • Change SpellCastHelper Generic

Nebula 7.0.0 Beta 5

  • Make SpellEffect#<init> public
  • Add Manapool Ticking
  • Remove Experimental Annotation
  • Add mana unit 'thaum' and refactor all mentions of 'mana' in unit context.
  • Rename cast method to tryCast and add new case method

Nebula 7.0.0 Beta 4

  • SpellSource#drainKilomana now takes long
  • Change creative ManaPool Priority to 1
  • Move Registries to ManaPoolType
  • Fix EntityManaPool ordering
  • Change SpellEffects slightly
  • Add /nebula extractMana
  • Supply Text to SpellFumble in all default usages.
  • New lang entries

Nebula V. 7 Beta 3

  • A spell transaction is now passed throughout the entire call chain
  • add more Documentation
  • Extract Helper method out of SpellCastHelper
  • Add Experimental SpellEffectWrapper for Transaction api
  • Bump Version to 7-beta.3

Nebula V. 7 Beta 2

This is the second beta for Nebula, a lot has changed since the latest beta. Likely more than in between any alpha previously.

A full explanation will follow when the full Release is published.

The first Beta :)

Fix Payload Registration Not Working Correct Under Circumstances.

Beta Release of Version 6. Full Changelog: https://github.com/Dev0Louis/Nebula/compare/5.1.0...6.0.0-beta.1

Now we put the version everywhere :)

What's Changed

Full Changelog: https://github.com/Dev0Louis/Nebula/compare/5.1.0...5.2.0+1.20.4

What's Changed

How did we end up here?

  • Api is now in the api package. :tada: (I know very rare)
  • Remove TickingSpell in favor of adding ticking to Spell allowing for a cleaner implementation.
  • Added SpellEntity
  • Spells are now constructed without a caster.
  • Improve network usage by NebulaSpellManager and NebulaManaManager.
  • Added isEmpty check to Spell- and ManaManagers to easily check if a Manager has been created.
  • Added SpellType.Builder#parallelCast to let spells easily control if they can be cast in parallel.
  • Added SpellType.Builder#castability so that a spellType being able to be cast can be checked without creating a Spell. (This should done instead of overriding Spell#isCastable)
  • SpellManager#isCastable should NO LONGER check for the Manager. The Managers are independent of each other now! Use SpellType#isCastable or Spell#isCastable!

Power to the Spell

  • Spell#onEnd() is called when the spell ends.
  • Spell#stop() stops the spell.
  • Spell#interrupt() interrupts the spell, indicates that the spell didn't choose to stop, but is forced by death e.g.
  • Spell#getDuration() returns the amount of ticks a spell can survive before being stopped.
  • Spell#tick() is a tick method, do I need to explain what this is for?

Now Git

Full Changelog: https://github.com/Dev0Louis/Nebula/compare/4.0.3+1.19.4...5.0.0+1.19.4

5.0.0

by Dev0Louis on Jan 24, 2024
Download

What's Changed

How did we end up here?

  • Api is now in the api package. :tada: (I know very rare)
  • Remove TickingSpell in favor of adding ticking to Spell allowing for a cleaner implementation.
  • Added SpellEntity
  • Spells are now constructed without a caster.
  • Improve network usage by NebulaSpellManager and NebulaManaManager.
  • Added isEmpty check to Spell- and ManaManagers to easily check if a Manager has been created.
  • Added SpellType.Builder#parallelCast to let spells easily control if they can be cast in parallel.
  • Added SpellType.Builder#castability so that a spellType being able to be cast can be checked without creating a Spell. (This should done instead of overriding Spell#isCastable)
  • SpellManager#isCastable should NO LONGER check for the Manager. The Managers are independent of each other now! Use SpellType#isCastable or Spell#isCastable!

Power to the Spell

  • Spell#onEnd() is called when the spell ends.
  • Spell#stop() stops the spell.
  • Spell#interrupt() interrupts the spell, indicates that the spell didn't choose to stop, but is forced by death e.g.
  • Spell#getDuration() returns the amount of ticks a spell can survive before being stopped.
  • Spell#tick() is a tick method, do I need to explain what this is for?

Now Git

Full Changelog: https://github.com/Dev0Louis/Nebula/compare/4.0.3...5.0.0


Project members

Dev0Louis

Owner

Details

Licensed MIT
Published 2 years ago
Updated 6 months ago