Update Player Skills

Ka0rX 2022-10-03 15:31:50 +00:00
parent dc1bba9430
commit c95e5a4c3f

@ -1,46 +1,26 @@
Skills are amazing and unique abilities that players can use to defeat
their enemies or buff their party mates fighting and surviving. Skills
are either **passive** i.e always active, in which case they don't need
to be bound to take effect, or **active**. Active skills must be bound
and cast in order to be used.
Skills are amazing and unique abilities that players can use to defeat their enemies or buff their party mates fighting and surviving. Skills are either **passive** i.e always active, in which case they don't need to be bound to take effect, or **active**. Active skills must be bound and cast in order to be used.
Upgrading a skill
-----------------
## Upgrading a skill
Upgrading a skill **increases its power**. Players can choose the skill
they would like to upgrade based on their play style and skill path they
decided to follow. Upgrading a skill takes **one skill point** which are
earned when leveling up. You can upgrade your skills in the skill GUI
(`/skills`).
![](https://i.imgur.com/KigoNHh.gif)
Select the skill you'd like to upgrade by clicking on it, once it's selected
it will change the GUI name. You can then upgrade the selected skill by clicking on the
correspondng item. On the upgrade item column, you can see how powerful the
spell would be with a higher level.
Upgrading a skill **increases its power**. Players can choose the skill they would like to upgrade based on their play style and skill path they decided to follow. Upgrading a skill takes **one skill point** which are earned when leveling up. You can upgrade your skills in the skill GUI (`/skills`). ![](https://i.imgur.com/KigoNHh.gif) Select the skill you'd like to upgrade by clicking on it, once it's selected it will change the GUI name. You can then upgrade the selected skill by clicking on the correspondng item. On the upgrade item column, you can see how powerful the spell would be with a higher level.
Binding active skills
---------------------
## Binding active skills
You have 6 skill slots which you can use to bind **active** skills to
certain keybinds, therefore you can't have more than 6 active skills
bound at a time. You may bind skills using the skill GUI, available
using `/skills`. You can see your current bound active
skills using the item at the right side of the GUI. You can then bind the
selected skill to a specific slot by clicking
the corresponding item. As soon as you click it, it will update and
display the newest skill. If slot X is unused, skills bound onto other
skill slots will automatically refill empty slots so **lower keybinds
are always used**.
You have 6 skill slots which you can use to bind **active** skills to certain keybinds, therefore you can't have more than 6 active skills bound at a time. You may bind skills using the skill GUI, available using `/skills`. You can see your current bound active skills using the item at the right side of the GUI. You can then bind the selected skill to a specific slot by clicking the corresponding item. As soon as you click it, it will update and display the newest skill. If slot X is unused, skills bound onto other skill slots will automatically refill empty slots so **lower keybinds are always used**.
![](https://i.imgur.com/JFhRDZz.gif)
**Once your skills are upgraded and bound, you may
[cast](Skill Casting) them.**
**Once your skills are upgraded and bound, you may** [**cast**](Skill%20Casting) **them.**
## Binding passive skills
Binding passive skills works like active skill binding. The passive skills can be triggered only if they are bound in the `\skills` GUI.
## Skill Folder
The `/skills` folder houses all of the skills that come with the plugin. Most skills are hardcoded into the plugin jar. If you do not want to use a skill, simply do not assign it to a class. Each skill has its **own YML file** where you can edit the lore and how it looks in the /skills menu. It is best to only edit the plain words, and not try and mess with the value placeholders.
At this current time, there is no "create your own skill" system, **but we have decided the coolest thing to do is to allow MythicMobs/SkillAPI skills to become MMOCore skills. You will be able to utilize the default skills that we have and continue to add, while creating hundreds of your own skills through MythicMobs syntax.**
At this current time, there is no "create your own skill" system, **but we have decided the coolest thing to do is to allow MythicMobs/SkillAPI skills to become MMOCore skills. You will be able to utilize the default skills that we have and continue to add, while creating hundreds of your own skills through MythicMobs syntax.**
More information below.
@ -82,12 +62,15 @@ The `material` option determines what icon will display in the player's skill li
![](https://i.imgur.com/PhIpbOr.png)
## Binding MythicMobs skills to MMOCore skills
Since MMOCore 1.9 custom skills are handled within MythicLib, please refer to [this wiki page](https://www.gitlab.com/phoenix-dvpmt/mythiclib/-/wikis/Custom%20Skills).
### Making a passive skill
If you want to make a passive skill (using MythicMobs or SkillAPI) all you have to do is add `passive-type: TYPE` to your skill YML file in the '/skills' folder. Adding a passive type to your skill will prevent it from being bound and will automatically cast during specific events, depending on the passive type specified. You can see all Trigger Types on [this](https://gitlab.com/phoenix-dvpmt/mythiclib/-/wikis/Custom%20Skills#trigger-types) page.
## Editing the skill menu
```
# GUI display name
name: 'Selected Skill: &6{skill}'
@ -185,10 +168,10 @@ items:
- '&7Costs 1 skill point.'
- ''
- '&eCurrent Skill Points: {skill_points}'
```
First of all you can edit the general GUI settings like its name and slots.
```
name: Your Skills
slots: 45
@ -197,6 +180,7 @@ slots: 45
Notice how the config sections that fall under the `items` section share very similar properties: `name` (the item display name), `lore` (the item description/lore), `item` (the item material), `slots` (where the item is placed in the inventory, it can be a list) and `function` (what the item does). These can (and should) all be edited to your needs.
### Editing Item Slots
If you want to have your item displayed on multiple slots, use something like
```
@ -214,15 +198,17 @@ slot: 1
```
### Item Functions
`function` is the most confusing option when editing MMOCore custom GUIs. This option dictates how the item behaves when clicked, and what placeholders to parse in the item lore. Let's go over all the items in the GUI specifically.
`next` and `previous` are the easiest ones, these are the items used for pagination.
`skill` is the item displayed for every skill available to the player. Its lore is a bit complicated
- The line starting with {unlocked} only displays if the player has unlocked the skill
- The line starting with {locked} only displays if the player has NOT unlocked the skill yet
- The line starting with {max_level} displays when the player has reached the max skill level
- {lore} pastes the entire skill description (see [this](Player Skills#example-skill))
- {lore} pastes the entire skill description (see [this](Player%20Skills#example-skill))
![image](uploads/2bfb6008eff5bb8e0f4d9222a18fd22d/image.png)