Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Parcel sending logic #87

Closed
3 of 6 tasks
Jakubk15 opened this issue Oct 28, 2023 · 0 comments · Fixed by #91
Closed
3 of 6 tasks

Parcel sending logic #87

Jakubk15 opened this issue Oct 28, 2023 · 0 comments · Fixed by #91
Labels
🆕 feature New feature or request 🆘 help wanted Extra attention is needed 🛠️ maintainers task This task will be handled by EternalCodeTeam Maintainers, please do not PR.

Comments

@Jakubk15
Copy link
Member

Jakubk15 commented Oct 28, 2023

  • Finish ParcelItemStorageGUI requires testing
  • Touch-up other GUIs to make sure they are fully-functional
  • Finish ParcelSendingGUI and its logic (partially done)
  • Make sure the receiver can redeem the parcel
  • Update the ParcelStatus in real-time
  • Create a task system that will save parcel's remaining time in database

Potentially:

@Jakubk15 Jakubk15 added 🆕 feature New feature or request 🆘 help wanted Extra attention is needed 🛠️ maintainers task This task will be handled by EternalCodeTeam Maintainers, please do not PR. labels Oct 28, 2023
Jakubk15 added a commit that referenced this issue Sep 21, 2024
* Add ItemStorage logic

* Change default database type to SQLITE

* GH-89 Update lite commands version and all commands

* Update lite commands version and all commands. Fix issues

* Update src/main/java/com/eternalcode/parcellockers/parcel/command/ParcelCommand.java

---------

Co-authored-by: Jakubk15 <77227023+Jakubk15@users.noreply.github.com>

* Update item handling in Parcel GUI and make other code improvements. Add Optional GSON serializer.

* Update item handling in Parcel GUI and make other code improvements. Add Optional GSON serializer.

* Bump litecommands

* Bump litecommands

* Add configurable options for selected size packages in SendingGUI.

* Add ItemStorage logic

* Simplify available commands, in future LC update add optional aliases highlighted in the commands

* (WIP) Add InventoryUtil and GsonItemSerializer

* Try Base64 ItemStack serialization (WIP)

* Fix JSON serialization

* Remove parseStringList method

* Fix serialization (WIP)

* Add illegal items (Closes #70)

* Update README.md

* Add priority item selector, beautify the selected items lore

* Remove cancel button, optimize database methods, and many more...

* Fix build

* Fix ParcelListGUI and refactor code

* Fix parcel item storage GUI size

* Code-only changes

* Code-only changes, register LockerArgument

* Add parcel submit button, fix UUID filtering

* Refactor GUI packages

* Remove unused arguments. Add User domain. Use interface where possible. Add spotify completable-futures. Fix NPE issue in placeholders formatter method.

* Remove unnecessary TODO tasks. Start beautifying the PluginConfiguration

* Initialize UserRepository table, add fancy symbols to PluginConfiguration messages.

* Fix typo in PluginConfiguration

* Rearrange and cleanup code in PluginConfiguration

* Start working on introducing user-parcel tables

* Make UserRepositoryImpl less cache-dependent, fix placeholder replacement

* Huge README.md revamp

* Bump gradle and certain dependencies

* Update gradle.yml

* Minor README touchups

* Update CODEOWNERS

* Java 21 and MC 1.21 support, add ParcelContent object and its subclasses. Add update() methods

* Prepare for Java 21, update config. Refactor code, update GUIs. Adjust SQL syntax.

* Add more GUIs

* Receiver selection logic (WIP), fix SignAPI shading. Add more utility methods to the Position class. Improve UserRepository

* Rename config entry, use method references

* Refactor exception handling, better gui refreshing (WIP). Fix SkullAPI skull fetching

Shoutout to @Rollczi for the immense help! 🎉

Co-Authored-By: Norbert Dejlich <ndejlich5@gmail.com>

* Use type parameter in GuiRefresher. Change field name, create toItem() method in ParcelSendingGUI

* Move duplicate methods to ItemUtil class.

* Fix ConcurrentModificationException

* Revert GuiRefresher to previous state and rename it to PaginatedGuiRefresher

* Add "this" keywords

* Reformat code

* Adjust codestyle

* Use ExceptionHandler class, replace whenComplete with thenAccept

* Fix receiver GUI selector.

* MC 1.21 in runPaper, fix lore override bug, fix ArrayIndexOutOfBoundsException, send message to player when receiver is set.

* Use ParcelSendingGUIState to store parcel properties such as name, description, receiver

* Move close gui action to bottom

* WIP: Destination locker selection GUI

* Make ConfigItem Cloneable, fix GUI stuff

* Use states instead of fields where possible.

* Code cleanup

* Fix build

* Fix build

* Update README.md

* Update README.md

* Update README.md

* Update src/main/java/com/eternalcode/parcellockers/gui/implementation/locker/ParcelSendingGUIState.java

* Update src/main/java/com/eternalcode/parcellockers/gui/implementation/locker/ReceiverSelectionGui.java

* Update build.gradle.kts

* Apply review suggestions

* Cleanup DestinationSelectionGUI#toItem

* Don't mutate lore in config item.

* Cleanup lore

* Use #clone on ConfigItems and add config message to illegal items

---------

Co-authored-by: Rollczi <ndejlich5@gmail.com>
Co-authored-by: Michał Wojtas <80779749+CitralFlo@users.noreply.github.com>
Co-authored-by: CitralFlo <wojtas.michal90@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🆕 feature New feature or request 🆘 help wanted Extra attention is needed 🛠️ maintainers task This task will be handled by EternalCodeTeam Maintainers, please do not PR.
Projects
Status: ✅ Done
Development

Successfully merging a pull request may close this issue.

1 participant