News

DataLanguage Plus Link to this entry.
Tags: Library, Update

The DataLanguage project has received a much-needed update to 2.3.0. Read the project page for more info.
  • Changed/Added: Allowed "multiple inheritance" and extra prototyping clauses.
  • Removed: Beginning comment from DLWriter.write().
  • Added: A proper DLStruct.toString() method.

Some Slight Refactoring Link to this entry.
Tags: Library, Update

So I may have done some slight refactoring in the Commons project, and that's going to trickle down into all of the other projects. That means all of the projects were updated, but the major changes happened in Commons:
  • Added: set(...) to Rectangle2F and Rectangle2D. No longer cares about AWT Rectangle classes. Not sure why it did in the first place.
  • Fixed: If CountMap.give(Object, int) resulted in a total of 0 in the map, it would still add the object. Now it doesn't.
  • Deprecated: The com.blackrook.commons.vector and everything in it has been deprecated, due to potential confusion with java.util.Vector and its synchronized methods. Also, "VolatileVector" is a lot to type, compared to "List".
  • Added: The com.blackrook.commons.list package, the replacement for the vector package.

Commons at 2.3 Link to this entry.
Tags: Library, Update

The Commons project has been updated to version 2.3.0. There are some minor changes and fixes, and one large (but mostly unintrusive) one.
  • Got rid of the SceneObject getUpper/Lower/X/Y/Z() functions. Debated just deprecating, but since they only had one typical equivalent value that used function calls on the same object to calculate. Adjust your code accordingly.
  • Added Common.close(Closeable).
  • Fixed: A particularly bad bug in Scene2D where Pair memory was re-used instead of re-instantiated, changing grid coordinates for all members of the Scene!
  • Changed GridMap.get(int, int) so that it returns null if a set of coordinates off the grid is entered.
  • Changed Wave: offset is a double, not float.
  • Added Wave.getSample(int).

Updates to Commons and Lang Link to this entry.
Tags: Library, Update

The Commons and Common Lang libraries were updated to version 2.2.0, and 2.0.1, respectively.

For Commons:

  • Changed internals of the abstract data structures so that repetitive gets, iterations, and other operations do not create new objects.
  • Added new interface that extends Iterator, ResettableIterator, which contains a reset() method that will set the iterator back to the beginning of the structure it was created for, as though it were just created. The general policy of reset() is that it will not create additional objects to reset itself.
  • All iterable structures now return a "ResettableIterator" class.
  • Changed Ticker: it is now very, very accurate.
  • Scene2D changed a lot. Generates no additional memory for lookups and visibility checks.
  • Added: randElement(Random, T ... objects) to RMath.
  • Fixed: SparseGridMap's get(x,y) method did not correct bounds by wrap type.
  • Added: SparseQueueGridMap.
  • Added: FloatGrid.
  • Added: AbstractVector.replace(int, T).
  • Fixed: GridMap contained its own wrapping fields which undermined its parent class's fields. These have been removed.
  • Added: Polynomial.

And one little change to Common Lang:

  • Fixed some end of block comments in Lexer not being detected.

Fixing Up Commons Link to this entry.
Tags: Library, Update

The Commons library was updated to version 2.1.0, and with that come these wonderful changes...
  • Removed update() from Scene2D.
  • Fixed a bunch of places where AbstractLinkedList could break itself.
  • Made all public entry points into Scene2D synchronized.
  • Added "package-info" files to commons packages.
  • Added Matrix4F and changed a method or two in Matrix4D.
  • Changed internal datatype for Matrix4D in order to be consistent with the other *D structures.

Ch-Ch-Ch-Changes Link to this entry.
Tags: Important, Library, New, Update

Hey, everybody. Just got done with that revamp I posted about. Half a year later and everything gets better!

The sidebar has more stuff on it than last time - mostly due to the splitting of Commons into sibling projects.

All projects have been upgraded to version 2.0, mostly due to the Commons series of libraries changing. If you need the older versions, they're under "Other Downloads" on the right. Nightly (or almost-nightly) builds of the projects are available, too - but I cannot guarantee the stability of the nightlies, programming-wise or structure-wise.

Javadocs of course have been updated as well, and can be found in pretty much the same place as last time.

Okay, that's it! Thanks for your patience!


Updates and Fixes Link to this entry.
Tags: Library, Update

After quite a long time, there have been additions and fixes to the Commons project and Doom Struct project, respectively.

Changes to Commons:

  • Added: GradientAbstract to math package for creating sampleable gradient types.
  • Changed: SortedMap now extends VectorAbstract. Because of this, the value-fetching function was changed to getValue() and U removeIndex() was changed to U removeValueAtIndex() in order to clear up ambiguities, and the protected methods swap() and compare() have been removed entirely. Naturally, this may end up breaking programs. Please update your code to the new functions.
  • Changed: SortedVector and ComparatorVector to use sort() and not its own methods. The sorting methods in those classes have been deprecated as of this version.
  • Added: RWaveTypeField: For setting/getting wave forms.
  • Changed: RColorField: The edit cells are expandable with the field's size, but not the selector button.
  • Added: VectorAbstract.sort(int startIndex, int endIndex) for sorting within a range.
  • Added: WaveUtils.createNoiseWave() for creating Noise functions.
  • Added: Rectangle2D/F to com.blackrook.math.
  • Added: coalesce(T ... objects) to Defs. Returns the first non-null object in the list.
  • Added: New constructor for Wave. Made sense to add it. You'll know it when you see it.
The changes to Doom Struct, however, are far less numerous:
  • Fixed: Saving a Doom or Strife-format Thing would fail if saved as anything other than Hexen type.
  • Fixed: Saving a Doom or Strife-format Linedef would fail if saved as anything other than Hexen type.
  • Fixed: "-" should be a valid character in entries and textures.
So, go to the Downloads section and get them!
< Previous Page Next Page >