Avatar Editor Utils
A collection of promise-based methods to simplify working with Roblox Avatar Editor Service, Humanoid Descriptions, and Web APIs.
Installation
For Studio Users
You can find a model in my profile. Unfortunately, I can't provide the link here.
For Rojo Users
- Place the
AEServerandAEClientfolders inside yourServerandClientdirectories. - Place the
PromiseandSignalmodules insideReplicatedStorage.
Usage
The function names are self-explanatory. Ensure you perform type checking before calling the functions. Pass nil for any parameters you don't use.
Example
local Main = require(ReplicatedStorage.MainModule)
Players.PlayerAdded:Connect(function(player)
Main:GetUserInventoryAsync(player.UserId, nil):andThen(function(response)
print("User Inventory:", response)
return Main:GetItemsByCategory("1", nil, nil, nil, nil)
end):andThen(function(items)
print("Items by Category:", items)
end):catch(function(error)
warn("Error:", error)
end)
end)
Available Methods
Client Methods
GetItemDetailsAsync(Item, ItemType)GetUserInventoryAsync(AssetTypes)GetOutfitsAsync(OutfitSource, OutfitType)GetBatchItemDetailsAsync(IDs, ItemType)CreateOutfit(HumanoidDescription, RigType)
Server Methods
GetHumanoidDescriptionFromUserId(Id)GetHumanoidDescriptionFromUsername(PlayerName)MorphFromPlayerIdAsync(PlayerToBeMorphed, PlayerToMorphId)RemovePlayerAccessories(Player)RemoveModelAccessories(Model)AddPlayerAccessory(Player, Accessory)AddModelAccessory(Model, Accessory)GetCharacterAppearanceInfoAsync(Id)GetPlayerGears(Id)GetUserInventoryAsync(Id, Cursor)CheckIfUserOwnsItem(Id, ItemId)GetItemsByCategory(Category, Subcategory, SalesTypeFilter, Cursor, SortType, CreatorName)GetRolimonsLimitedsInfos()GetCurrentOutfit(Player)SaveCurrentOutfit(Player, OutfitName)LoadSavedOutfit(Player, OutfitId)
Contributing
For major changes, please open an issue first to discuss what you would like to change. Pull requests are welcome!
Please ensure that you update tests as appropriate.
License
This project is licensed under the MIT License.