terasology / inventory Goto Github PK
View Code? Open in Web Editor NEWProvides a default inventory
Provides a default inventory
So, seemingly CoreAdvancedAssets:Trunk
is an item/block that holds an inventory and thus should be able to be filled with items in a starting inventory:
{
"uri": "CoreAdvancedAssets:Trunk",
"items": [
{ "uri": "CoreAssets:Cobblestone", "quantity": 99 }
]
}
However, the item trunk.prefab
does not have an InventoryComponent
- only the trunkRegion.prefab
does. However, the inventory will be retained via RetainBlockInventory
when a trunk placed in the world is destroyed.
I don't know whether this is a restriction of the StartingInventorySystem
or due to the structure of prefabs used to build the trunk functionality. I would suspect that we may to be able to make it behave better by having another look at the prefabs, but I'm not entirely sure about this - pinging @Qwertygiy for their opinion.
Related to Terasology/CoreAdvancedAssets
In #9 I've added the capability for nested starting inventory items, which was working fine. With the changes in #13 items are only added to entites which already have an InventoryComponent
.
This breaks the player's starting inventory as added in Terasology/CoreSampleGameplay#2.
Block items created by BlockItemFactory::newInstance
will strip away all components that don't have the @AddToBlockBasedItem
annotation. As far as I can see, only DisplayNameComponent
has this annotation (from the set of our basic components).
Thus, although the block prefab contains an inventory component, it is not added to the block item upon creation.
I don't know how to "fix" this in the correct way, yet ๐
This issue was originally created by @5archoufa as MovingBlocks/Terasology#5234
The inventory could benefit from an "inventory auto-stack" feature. It allows players to quickly consolidate items of the same type in their inventory by double-clicking on an item stack, causing all similar items in the inventory to stack together or on the cursor. This feature helps in managing inventory efficiently, especially when dealing with large amounts of items.
Similar to Terasology/Health#71
The package names currently used in this module make it difficult to distinguish which classes are in this module and which are from engine or elsewhere.
Recommend all packages here descend from a single org.terasology.inventory
(or org.terasology.module.inventory
?) instead of org.terasology.logic
& rendering
.
I'm singling some of these out not just because they're not under a single package, but also because health
and inventory
packages still exist in engine, making things extra muddled.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.