Commit Graph

533 Commits

Author SHA1 Message Date
BONNe 7914f315f4 Use codemc-nms repo. 2019-05-28 20:18:29 +03:00
BONNe1704 6a7b26afc0 Add missing Spigot Group Repository. 2019-05-28 16:37:16 +03:00
BONNe1704 66351b5776 Replace org.spigotmc.spigot to org.bukkit.craftbukkit dependency for Mojang Account shadowing.
Spigot close their server-side code.
2019-05-28 16:04:07 +03:00
BONNe deab2d3530 Fix failing Tests.
These tests failed because in I added Server version check in ChallengesAddon class.
2019-05-24 09:39:40 +03:00
BONNe 330034ea8e Add SIGN_MATERIAL constant in ChallengesAddon which value depends on Minecraft version.
This will allow to drop down 1.14 branch.
2019-05-20 08:28:35 +03:00
BONNe 7e04f592ad Add custom admin message that informs about non-existing challenges in current world. 2019-05-19 13:29:02 +03:00
BONNe c3f93fd797 Implement ability to select multiple Entities and Blocks in SelectBlockGUI and SelectEntityGUI. (#121)
Fix issue with unsplitted text in ManageBlocksGUI and ManageEntitiesGUI. (#121)
2019-05-18 00:01:03 +03:00
BONNe1704 413429a091 Merge remote-tracking branch 'origin/develop' into develop 2019-05-16 10:30:46 +03:00
BONNe1704 9704ed32aa Fix issue when IslandTypeChallenges required blocks were cleared if completion was uncessesfull.
The issue was that it cleared wrong map. It must clear priority queue, but cleared required elements.
2019-05-16 10:30:01 +03:00
BONNe 3521495739 Fix issue when entities has not been removed on challenge completion (#118).
I forgot to populate entity queue :(
2019-05-14 09:55:34 +03:00
BONNe 9f8bf03708 Fix wrongly display message for required money in edit challenge gui (#119)
It showed required level instead of required money in element description.
2019-05-14 09:20:17 +03:00
BONNe1704 34ed09e768 Change json adapter factory to BentoBoxTypeAdapterFactory class. 2019-05-09 16:45:53 +03:00
tastybento a25796613f Changes to fit new API for database transition. (#114)
Config files must implement the ConfigObject interface now instead of
DataObject. They no longer need to specify uniqueId.
2019-05-09 16:24:01 +03:00
BONNe1704 ff6e28b27e Init next release (for BentoBox 1.5.0) 2019-05-09 16:22:02 +03:00
BONNe1704 76b7580de3 Prepare 0.7.0 Release 2019-05-09 15:54:47 +03:00
BONNe1704 698473e747 Add Latvian lang file.
Address some eng file errors.
2019-05-09 15:50:14 +03:00
BONNe1704 9b8d7b3717 Update level addon dependency. 2019-05-09 12:34:50 +03:00
BONNe1704 218d952d92 Add es-ES.yml translation.
Thanks to SrAcosta.
2019-05-09 11:48:28 +03:00
BONNe1704 ec491284b6 Add missing Title for Choosing Game Mode gui. 2019-05-09 11:45:39 +03:00
BONNe1704 6c10fcdca9 Fix NPE when opening ChallengesGUI (#116).
Add code that removes challenges level from all its challenges, if level is deleted.
Add protection code that shows admins that something is not correct if challenge level is not in database.
2019-05-09 11:22:01 +03:00
BONNe1704 dd56842dca Merge remote-tracking branch 'origin/develop' into develop
# Conflicts:
#	src/main/java/world/bentobox/challenges/tasks/TryToComplete.java
#	src/main/resources/locales/en-US.yml
#	src/test/java/world/bentobox/challenges/tasks/TryToCompleteTest.java
2019-05-09 10:54:32 +03:00
BONNe c8088f275d
Rework TryToComplete. (#109)
* Rework TryToComplete.

Implement ability to complete challenge multiple times at once.
To do it, I split everything in checking/removing/rewarding steps.

In checking step, it calculates if it is possible to complete with minimal requirements and then calculates maximal repeating factor.
In removing step, it removes everything that is necessary.
In rewarding step, it give rewards by necessary factor (multilayer).

I rework item/block/entity removing as factors may be influenced at the last element, so I improve everything by memory usage. Create necessary sets/lists/queues for faster access to already collected items.

* Add method that returns removed items, if somehow algorithm did not manage to remove all items.
Fix issue when removeItems method did not merge ItemStacks as they had different item amount.

Return and fix TryToCompleteTest.

* Implement Multiple Challenge Completion command and GUI. (#73)

/[gamemode] challenges complete [number] allows to complete challenges [number] amount (or less if not enough items)
Via GUI users can right click on challenge and if it is repeatable, then it will open AnvilGUI that accepts only numbers as input.
2019-05-06 12:10:02 +03:00
BONNe d9486bbbdb Fix issue when Import Default Challenges Button did not work 2019-05-05 23:54:35 +03:00
BONNe f18c8d0dff Remove NBT editing via NMS.
Use Dummy Mojang profiles with custom skulls, instead of editing NBT with NMS.
This will work on all versions instead of just with correct NMS hacks.
2019-05-05 17:10:10 +03:00
BONNe f62816f9c3 Update ReadMe with newest information. 2019-05-04 19:31:01 +03:00
wellnesscookie 88e84cef2a Color extends on further locale text (#112)
* Update ReadMe.

* Remove # symbol from development build name

* Color extends on further locale text

If a Friendly Name of a challenge is colored, it's color will pass on to all words after it.
Resetting it's color and setting it back after [level] will fix this.

Not really a relevant PR, but I've asked @BONNe  on Discord if it's okay with him if I change this and he confirmed.
2019-05-04 19:01:44 +03:00
BONNe d60f20e394 Fix issue when Color codes did not work in opened Panels and Titles (#110)
These text element colors were not translated correctly.
Now it should work.
2019-05-04 11:16:41 +03:00
BONNe1704 b3ce8f52f5 Rework TryToComplete.
Implement ability to complete challenge multiple times at once.
To do it, I split everything in checking/removing/rewarding steps.

In checking step, it calculates if it is possible to complete with minimal requirements and then calculates maximal repeating factor.
In removing step, it removes everything that is necessary.
In rewarding step, it give rewards by necessary factor (multilayer).

I rework item/block/entity removing as factors may be influenced at the last element, so I improve everything by memory usage. Create necessary sets/lists/queues for faster access to already collected items.
2019-05-03 18:04:50 +03:00
BONNe c702dd492b Implement Challenge Complete method. (#15)
Method currently will be available only via /[gamemode] challenges complete <challenge_id>.
2019-05-02 00:31:36 +03:00
BONNe a2f0765de1 Add proper message when user opens challenges gui in world without a challenges. 2019-05-01 23:18:12 +03:00
BONNe ca5cfcc841 Add button in Challenges admin GUI that allows to import default challenges. 2019-05-01 23:14:41 +03:00
BONNe b24f7ebcb0 Implement title messages on first challenge/level completion (#108).
Add settings option that can enable/disable title message and its length.
Add ability to edit these settings via admin GUI.
Add ability to use some variables in title and subtitle in translation files.
2019-05-01 22:57:24 +03:00
BONNe f0b156de31 Improve addon reload method.
Now it will call also manager.reload() that clears cache and resets database links.
Improve ReloadCommand. Now it will be able to reload both ways (soft way that clears only cache, and hard way that reassigns database connection) with reload command.
2019-05-01 17:10:05 +03:00
BONNe 93da0c714c Implement ability to import/generate default.json file.
Remove old unnecessary methods.

Improve default.json challenges.
2019-05-01 12:46:54 +03:00
BONNe 0418e64125 Improve cache management.
Do not load players in memory, and unload them when they leave.
2019-04-27 00:13:02 +03:00
BONNe ae384c433d Fix crashing build. 2019-04-26 23:45:34 +03:00
BONNe ec843856cc Replace default challenge file type from YAML to JSON 2019-04-26 23:31:41 +03:00
BONNe c05015716f Enable Level and Money editing, even when required addons or plugins are not provided. 2019-04-26 21:27:52 +03:00
BONNe a41859459f Implement ability to change text via Chat instead of AnvilGUI (#97).
It was necessary as Anvil has limited char input, while chat is almost unlimited.
2019-04-26 21:20:36 +03:00
BONNe 507c68d683 Add ability to edit string messages from StringListGUI via Chat. 2019-04-26 20:59:52 +03:00
BONNe ec099cee9c Improve default challenge loading and creating.
Remove world name from challenge and challenge level ids when default file is created.
Reassign correct world name to unique id when challenges and levels are loaded.
2019-04-26 11:18:57 +03:00
BONNe1704 017147ff3f Improve and simplify default challenge data storing. 2019-04-25 18:21:10 +03:00
BONNe1704 188e86d546 Small code cleanup. 2019-04-25 11:42:04 +03:00
BONNe 5a5d2d7782 Create method that will generate default.json file from existing challenges in memory and from given world. 2019-04-25 00:48:29 +03:00
BONNe 0e89f1216d Make clone to public method. 2019-04-25 00:39:21 +03:00
BONNe e6f151ef89 Implement clone methods for Challenge and ChallengeLevel objects. 2019-04-25 00:08:13 +03:00
BONNe 5ab53d0e9d Add Potion effects to alchemist challenge 2019-04-24 21:53:45 +03:00
BONNe1704 8191b02d86 Add some more default challenges. 2019-04-24 19:04:04 +03:00
BONNe bf801a67fc Disable TryToCompleteTest as it will fail now.
Need to review and fix this test, as TryToComplete now uses Item.isSimilar() method that is not working outside bukkit environment.
2019-04-24 09:02:11 +03:00
BONNe 4b233e2246 Start to implement default challenge loading.
Work in progress.
2019-04-24 07:45:05 +03:00