Releases: ChatTriggers/ChatTriggers
Releases · ChatTriggers/ChatTriggers
2.0.2
Additions:
- Add newline support to
Text
(@Squagward) - New triggers:
renderPortal
,renderJumpBar
,renderChat
,renderHelmet
(@Squagward) - Add option to command trigger to override existing commands (@Debuggingss)
- Add aliases to command triggers (@Squagward)
- Add trigger methods to
KeyBind
similar toGui
(@Squagward) - Add
Chunk::getAllTileEntities
andEntity::getChunk
(@Squagward)
Fixes:
- Fix
Shape::setLine
not drawing (@Squagward) - Fix
editChat
anddeleteChat
not working correctly (@Squagward)
2.0.1
2.0.0
This is the second major version release of ChatTriggers, and includes some breaking changes. The largest addition is the inclusion of Essential, which in addition to a bunch of cosmetic and social features, will always include the latest versions of Elementa and Vigilance. These modules have already been updated on the website, and are available for module authors to start using.
Additions
- [BREAKING] Added a bunch of GL and NBT imports to
moduleProvidedLibs.js
- If your modules has these defined, it will error.
- Integrated Essential into CT
- Track hashed UUIDs on launch. These UUIDs are hashed with SHA256 and salted with your computer's username, so
it is impossible to reverse the hash. This tracking gives us nice usage statistics. - Added a bunch of
Tessellator
methods, most notablypushMatrix
andpopMatrix
- Added
Entity#{getMaxHP,distanceTo}
methods - Added
Player#asEntity
method which returns the player as a CTEntity
object - Added
FileLib.{exists,isDirectory}
- Added an optional
changelog
field tometadata.json
for authors to write a basic changelog (@Squagward) - Added
NBTTagCompound#toObject
to convert NBT to a JS object- Note that this is potentially performance-adverse, and should probably not be used in hot code
- Added
Player.getLast{X,Y,Z}
andPlayer.getRender{X,Y,Z}
methods (@kerbybit) - Added
ChatLib.addToSentMessageHistory
(@Squagward) - Added
EntityLivingBase
wrapper (@Squagward) - Added ability to clear
TabList
's header and footer (@Squagward) - Added a bunch of methods to
Gui
for handling buttons (@Squagward) - Added some more wrapper methods to
Chunk
(@Squagward) - Added methods to
ChatLib
for deleting sent messages, much like the current methods for editing sent messages - Added
TileEntity
wrapper (@Squagward) - Added a bunch of new triggers:
preItemRender
(@Squagward)renderSlotHighlight
(@Squagward)postRenderEntity
(@Debuggingss)serverConnect
/serverDisconnect
(@Squagward)guiClosed
(@Debuggingss)guiDrawBackground
(@Squagward)renderTileEntity
/postRenderTileEntity
(@Debuggingss)
Fixes
- [BREAKING] Tick trigger now correctly fires 20 times a second (it previously fired 40 times a second) (@FalseHonesty)
- The
tick
trigger is not meant for timing. If you need precise timing control, use thestep
trigger instead.
- The
- Fixed
step
not firing in certain GUIs. - Removed old Frames+ check, which caused log spam and the occasional crash
- Fixed hang on launch on Ubuntu
- Fixed
Book#{add,set}Page
crashing due to aClassCastException
(@Maxssho13) - Fixed
TabList#setFooter
setting the header (@Maxssho13) - Fixed
package{Sent,Received}
triggers not firing properly (@Maxssho13) - Fixed not firing
gameUnload
trigger during shutdown - Fixed
blockBreak
trigger not working (@Squagward) - Fixed
hitBlock
trigger always passing(0, 0, 0)
as the block's position - Fixed
ASMLib
'sinvokeJS
function accessing a non-existant property - Fixed
ASMLib
having an incorrect signature forinvokeDynamic
(@Squagward) - Fixed
Player.getSaturation
returning the player's food level - Fixed
PacketReceived/Sent
triggers being unreliable - Fixed
Display
setting it's height to an incorrect value (@Squagward) - Fixed
dropItem
trigger not firing correctly on servers - Fixed
Message
not always converting TextComponents correctly (@Squagward) - Fixed
Renderer
only drawing vertices if they were positioned counter-clockwise (@Squagward) - Fixed
Image
not deleting it's GL texture on reload, which leaked memory
Changes
- [BREAKING] Completely overhaul the
Block
API- Previously,
Block
represented both the abstract idea of a block and a particular block placed in the world. These have now been separated intoBlockType
andBlock
(which is a particularBlockType
at aBlockPos
) - Also includes more
moduleProvidedLibs.js
imports
- Previously,
- [BREAKING] The
Inventory
class is now much more null safe (@Squagward and @Debuggingss)- Some methods which returns an
Item
wrapping a nullItemStack
now simply return null
- Some methods which returns an
- [BREAKING] Commands cannot have multiple names. If you need an alias for a command, register a second command trigger
- Triggers are now internally sorted by type instead of all being in one big set, which will improve performance
- The loader now recursively searched for .jar files, meaning they can be placed in nested folders instead of having to be top level
- Updated to Kotlin 1.6 (this should improve compatibility with some other mods)
- The CT section in crashlogs now only prints the name and version
- Added some flags to
Renderer.drawPlayer
andPlayerMP.draw
to allow more fine-grained control over the player rendering - Rewrote the
/ct config
GUI to use Vigilance - The update checker will now consider patch versions
- The ChatTriggers repository now has automated CI via github actions, and publishes a built jar for every pushed commit (@DJtheRedstoner)
Rhino
- Fixed
let
/const
use in for-each loop head - Fixed
instanceof
for java classes and objects (@FalseHonesty) - Fixed
Proxy
incorrectly checking handler prototype for existence of trap methods - Fixed not being able to convert
Symbol
to object - Fixed
typeof
crashing when given aSymbol
1.3.2
1.3.1
Changed "Update Modules On Boot" to "Automatically Update Modules" in /ct settings
On top of this setting now actually working, it disables all module auto updating even on /ct load
Fixed ChatLib.getCenteredText not accounting for formatted text
Fixed Priority object in provided libs
Fixed some typos
1.3.0
Additions
- Add
packetReceived
trigger - Add
DropAction
tomoduleProvidedLibs.js
metadata.json
can now take ahelpMessage
key which is printed when a module is installed. This can be disabled in the settings.
Fixes
drawString
now completes the draw on newlines- Moved some ASM field initializations to class constructors, avoiding a Rhino bug
- Fixed function name typo:
Settings.skin.setLeftPantsLef
->Settings.skin.setLeftPantsLeg
String.prototype.addFormatting
no longer calls a nonexistent function- The
playerLeave
trigger now properly fires - Modules now auto-update correctly
Changes
- Implemented a proper
Gui.registerScrolled
method. Previously, scrolls had to be detected in theGui.registerClicked
method. This is a small breaking change, and is the reason for the minor version increment.