9
0
mirror of https://github.com/Auxilor/EcoSkills.git synced 2026-01-03 06:12:21 +00:00

Improved API

This commit is contained in:
Auxilor
2021-10-05 09:27:16 +01:00
parent 44b39e981c
commit a49e4f2699
3 changed files with 24 additions and 11 deletions

View File

@@ -1,7 +1,7 @@
package com.willfp.ecoskills.api;
import com.willfp.ecoskills.api.modifier.ItemStatModifier;
import com.willfp.ecoskills.api.modifier.StatModifier;
import com.willfp.ecoskills.api.modifier.PlayerStatModifier;
import com.willfp.ecoskills.effects.Effect;
import com.willfp.ecoskills.skills.Skill;
import com.willfp.ecoskills.stats.Stat;
@@ -160,6 +160,15 @@ public interface EcoSkillsAPI {
ItemStatModifier getStatModifier(@NotNull ItemStack itemStack,
@NotNull NamespacedKey key);
/**
* Add a stat modifier to a player.
*
* @param player The player.
* @param modifier The modifier.
*/
void addStatModifier(@NotNull Player player,
@NotNull PlayerStatModifier modifier);
/**
* Remove a stat modifier from a player.
*
@@ -167,7 +176,7 @@ public interface EcoSkillsAPI {
* @param modifier The modifier.
*/
void removeStatModifier(@NotNull Player player,
@NotNull ItemStatModifier modifier);
@NotNull PlayerStatModifier modifier);
/**
* Get stat modifier keys on a player.
@@ -183,7 +192,7 @@ public interface EcoSkillsAPI {
* @param player The player.
* @return The modifiers.
*/
Set<StatModifier> getStatModifiers(@NotNull Player player);
Set<PlayerStatModifier> getStatModifiers(@NotNull Player player);
/**
* Get stat modifier on a player.
@@ -193,7 +202,7 @@ public interface EcoSkillsAPI {
* @return The modifier.
*/
@Nullable
StatModifier getStatModifier(@NotNull Player player,
PlayerStatModifier getStatModifier(@NotNull Player player,
@NotNull NamespacedKey key);
/**

View File

@@ -127,8 +127,8 @@ fun Player.getStatModifierKeys(): MutableSet<NamespacedKey> {
return modifiers.keys
}
fun Player.getStatModifiers(): MutableSet<StatModifier> {
val keys = HashSet<StatModifier>()
fun Player.getStatModifiers(): MutableSet<PlayerStatModifier> {
val keys = HashSet<PlayerStatModifier>()
for (modifier in this.getStatModifierKeys().stream().map { key -> this.getStatModifier(key) }) {
if (modifier != null) {
keys.add(modifier)
@@ -137,7 +137,7 @@ fun Player.getStatModifiers(): MutableSet<StatModifier> {
return keys
}
fun Player.getStatModifier(key: NamespacedKey): StatModifier? {
fun Player.getStatModifier(key: NamespacedKey): PlayerStatModifier? {
val modifiers = getModifiersTag(this)
return if (modifiers.has(key, PersistentDataType.TAG_CONTAINER)) {

View File

@@ -2,7 +2,7 @@ package com.willfp.ecoskills.api
import com.willfp.ecoskills.*
import com.willfp.ecoskills.api.modifier.ItemStatModifier
import com.willfp.ecoskills.api.modifier.StatModifier
import com.willfp.ecoskills.api.modifier.PlayerStatModifier
import com.willfp.ecoskills.effects.Effect
import com.willfp.ecoskills.skills.Skill
import com.willfp.ecoskills.stats.Stat
@@ -52,7 +52,11 @@ object EcoSkillsAPIImpl: EcoSkillsAPI {
itemStack.removeStatModifier(modifier)
}
override fun removeStatModifier(player: Player, modifier: ItemStatModifier) {
override fun addStatModifier(player: Player, modifier: PlayerStatModifier) {
player.addStatModifier(modifier)
}
override fun removeStatModifier(player: Player, modifier: PlayerStatModifier) {
player.removeStatModifier(modifier)
}
@@ -68,7 +72,7 @@ object EcoSkillsAPIImpl: EcoSkillsAPI {
return itemStack.getStatModifiers()
}
override fun getStatModifiers(player: Player): MutableSet<StatModifier> {
override fun getStatModifiers(player: Player): MutableSet<PlayerStatModifier> {
return player.getStatModifiers()
}
@@ -76,7 +80,7 @@ object EcoSkillsAPIImpl: EcoSkillsAPI {
return itemStack.getStatModifier(key)
}
override fun getStatModifier(player: Player, key: NamespacedKey): StatModifier? {
override fun getStatModifier(player: Player, key: NamespacedKey): PlayerStatModifier? {
return player.getStatModifier(key)
}