Comments (12)
Note: I will start working on this soon. I was focusing on some AzSpeech problems that had occurred in the last few days.
from ueproject_elementus.
Current status:
Last changes
- Created some base classes to test the inventory fuctionality via data-driven tools: Data Tables + Data Assets;
- Adjust existing Data Assets to receive correct IDs;
- Added a testing blueprint to test the implemented functions;
How is it going?
- Items add/remove are working well;
- Didn't find a way to work with only UDataAssets, so i've created a FTableRowBase to handle the ID and the respective UDataAsset: The user can search for a UInventoryItemData by giving the Item ID;
- There's some helper functions inside the UElementusInventoryFunctions class:
a) GetItemInfoByData: Will search for a FElementusItemInfo inside the InArr by the given UInventoryItemData and return a boolean value referred to the search succession. The passed parameter ItemIndex is a int reference that will be updated with the item index if the function find a valid data;
b) GetItemInfoById: Will search for a FElementusItemInfo inside the InArr by the given Item ID (InID) and return a boolean value referred to the search succession. The passed parameter ItemIndex is a int reference that will be updated with the item index if the function find a valid data;
c) GetUniqueElementusItemById: Will search for a UInventoryItemData inside the passed InDataTable (FElementusItemRowData) using the SearchString as the target RowName.
d) SearchElementusItem: Will search for a Array of items inside the InDataTable (FElementusItemRowData) based on the given parameters.
Note:
- AElementusInventoryPackage is not yet implemented.
- I don't recommend trying to use this update as it is still in the initial work-in-progress state.
from ueproject_elementus.
Current Status:
Last Changes
- Set data-driven objects to use DataAsset;
- Adjust 'search and get' functions to use the AssetManager;
- Adjust and improve existing and new DataAssets;
- Adjust folders organization;
- Remove some unused features;
- Create new DataAssets for missing abilities;
- Set IDs for existing and new DataAssets;
How is it going?
- The item management now is based on the AssetManager: The items are UPrimaryDataAssets objects that can be loaded/unloaded at runtime using the Asset Manager.
- The search is asynchronous and based on FPrimaryAssetIDs.
from ueproject_elementus.
Current Status:
Last Changes
- Adjust inventory related functions, actors and components;
- Started working with the Inventory Package;
- Add debugging functions to test how is it going;
How is it going?
- There's some testing assets inside the plugins folder. The last one created was a Package Actor to test Add/Remove items from inventory and package and the behavior of "trade" between player and package.
from ueproject_elementus.
Current Status:
Last Changes
- Add widget to test inventory trade with a package;
- Add delegate to track inventory updates;
- Adjust folders;
- Add new helper functions;
How is it going?
- The package testing actor will open a widget when overlapped to test inventory trade between the packaged items and the player inventory.
To use the widget: Just overlap the package with the character and double-click a item in the list.
Note: not working with multiplayer, it's currently a work in progress.
from ueproject_elementus.
Current Status:
Last Changes
- Add multiplayer support
How is it going?
- Now it's working on multiplayer simulations,
from ueproject_elementus.
Current Status:
Last Changes
- Set the inventory system to use FPrimaryDataIds instead custom structures and adapted the entire code to follow this way;
- The functions used are responsible for asynchronously loading and unloading the item data at runtime;
How is it going?
- Now the system uses FPrimaryDataIds and the assets will be unloaded after every call of the created functions.
- The system will load -> store -> unload -> return the results;
from ueproject_elementus.
Current Status
Last Changes
- Added a PostEditChangePropertyfunction to check the data that was passed into the item stack
- Set a filter to log the item stack validation because the CDO is being verified too
- Added a message dialog to warn the user about the wrong item data
- Added two new functions: CanReceiveItem and CanGiveItem (currently unused)
How is it going?
- When the user try to add a item to a item stack that derives from a class different than UInventoryItemData, the system will check all items and remove them from the item stack. Also will open a message dialog and print the informations in the log.
- About the filter: For some reason, the PostEditChangeProperty was being called 3 times on every change, so i added this filter to only call if the change came from the default asset or from a world placed actor (IsSelectedInEditor() if WITH_EDITOR is true).
- The CanReceiveItem will check if the inventory owner can handle the new items (will check the weight) and and CanGiveItem will verify if the inventory owner have the passed item with the given quantity.
from ueproject_elementus.
The last commits made some changes to this repository:
- Updated the EOS SDK
- Remove the external dependency plugins from 'Plugins' folder
- Set the external dependency plugins as submodules and created repositories for each one
from ueproject_elementus.
Upcoming feature
Editor Module
from ueproject_elementus.
Last Changes
Started creating a list to show all created items in one unique windows. Will create some options to sort, filter, open items and a option to create new items directly from this window.
from ueproject_elementus.
from ueproject_elementus.
Related Issues (20)
- Move project to Unreal Engine 5.1 (Currently in Preview) HOT 2
- Blueprint Assets Issues HOT 2
- Update Modular Features Extra Actions and adapt the project to the changes HOT 1
- Check the viability and implement UMG ViewModel for attributes HOT 1
- Check the viability and implement Motion Matching for character's animation HOT 1
- Check the viability and implement Iris Replication HOT 1
- Add specific Project Settings HOT 1
- Remove MetaSounds to resolve packaging issue
- Turn Elementus Project into a Plugin to make it easier to use this project's content within other projects.
- UE5.1 Feature: UE_INLINE_GENERATED_CPP_BY_NAME
- UE5.1 Feature: IRIS Replication
- Fix View Model bindings on clients
- Add sound & effect to weapon example ability
- Fix dash direction
- Lock the character direction when aiming
- Implement Push Model based replication
- Fix: GAS lag & dynamic tags application on clients after game initialization
- Fix Explosive Effect application
- Create a separated repository for the modules
- Issue trying to initially start project HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ueproject_elementus.