Howdy folks! My apologies for being rather silent as of late. As you can imagine, things have been quite busy. As many of you have already seen, we were able to get a bunch of neat Lua API additions into the Riders of Rohan expansion and will continue polishing/fleshing them out over future updates. I'm hoping to have a full documentation update out later this week and hopefully some more in-depth discussions with the recent additions.
As for the skinning side of things, I have completed and uploaded the most recent skinning pack update to go along with the expansion. You can download the update here care of our friends over at LOTROInterface.com.
For those of you who have not yet seen them, here is the brief patch-note overview of the Lua additions/changes:
- Added IsMarkupEnabled, SetMarkupEnabled to the Label class. This will allow for a limited set of HTML style tags to be used for formatting text. Tags include<b>, <i>, <u>, <p>, and a custom <rgb=#XXXXXX> tag. Make sure you close them </>.
- Added Graphic class. This class can be initialized with an asset ID or a path to a plugin asset and will then hold an instance of that resource that can be used by SetBackground on controls. Using this class allows for the caching of graphics used by plugins.
- Added GetBackground to Control. This returns a Graphic object that can be used to set the background of other controls to the same graphic.
- Added GetLanguage to Engine. This returns an enumeration value from Language that represents the supported client languages. This reflects directly what language was specified to the client to use.
- Added GetMoney, GetMoneyComponents, GetDestinyPoints to MonsterPlayerAttributes.
- Added GetStance and change event to WardenAttributes.
- Added GetTrainedGambits, GetUntrainedGambits to WardenAttributes.
- Added GetTrainedSkills, GetUntrainedSkills to LocalPlayer.
- Added Harmony to the MinstrelStance enumeration.
- Added GetWinterstormLevel, GetMasterOfTragedyLevel, GetMasterOfAllusionLevel, GetMasterOfConnocationLevel, and change events to Rune-keeperAttributes.
- Changed ItemAdded, ItemRemoved in the Wallet to include the WalletItem in the arguments class as args.Item.
- Added color constants for the standard web color set to Turbine.UI.Color.
- Added GetMount to LocalPlayer.
- Added Mount, BasicMount, and CombatMount.
- Fixed an issue where dragging the chat window over a Lua window that supported drag drop would result in the chat window disappearing and eventually a crash.
- Added Crafting classes to Lua! New classes and enumerations: CraftTier, Profession, ProfessionInfo, Recipe, RecipeIngredient, Vocation.
- Added GetVocation, GetProfessionInfo, and VocationChanged event to FreePeopleAttributes.
- Changed how events are fired from native code. The objects registered as an event handler can now be a callable table. The Turbine.Event Lua class has been updated to make use of this functionality as an example.
- Changed Control.SetBackColor so that it can accept Nil. This can be used to reset the back color so that it will be transparent again.
- Added TextChanged event to TextBox.
- Added Sort to ListBox. Takes in a function that is callback with two list items for comparison.
- Fixed a text positioning issue with Labels when they were below a minimum size.
- Added GetFilter, SetFilter to TreeView. The filter is used to filter the displayed tree nodes. The filter is a function that is called back with each treeview item.
- Added GetSortMethod, SetSortMethod to TreeView. The sort method is a function that is called back to perform node sorting.
- Added Refresh to TreeView. This will force filtering and sorting to be reapplied. Useful if you change the data the filter relies on.
- Added SelectedChanged event to TreeNode.
- Fixed an issue with constructing TreeNode hierarchies and then adding the root of that tree to a TreeView. This now works as expected.
- Added Get/Set Minimum/Maximum Width/Height/Size methods to Window. This allows constraints to be set on resizable windows. These constraints affect calls to SetSize as well.
- Added ItemInfoControl. This is similar to ItemControl only it accepts an ItemInfo object and the quantity can be specified manually. This also supports a grayed out state when SetEnabled(false) is called.
As always, if you encounter any issues/have any questions, post in these forums and I'll try to get back to you when possible. See you all on the plains of Rohan! Enjoy!