mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-25 06:36:45 +01:00
PermissionWrapper WIP
This commit is contained in:
parent
29670cd66f
commit
c0685bd1eb
@ -12,6 +12,29 @@ Version 2.2.0
|
||||
Parties no longer have a cap, you can level them forever for bragging rights
|
||||
You can now specify multiple repair-items for an item (such as specifying that a wooden sword can be repaired by all types of planks)
|
||||
Repair no longer consumes materials with item lore, players are informed that they cannot repair with that material if its the only matching repair material in their inventory
|
||||
Removed the following Repair/Salvage permissions
|
||||
mcmmo.ability.repair.stonerepair
|
||||
mcmmo.ability.repair.stringrepair
|
||||
mcmmo.ability.repair.toolrepair
|
||||
mcmmo.ability.repair.woodrepair
|
||||
mcmmo.ability.repair.armorrepair
|
||||
mcmmo.ability.repair.diamondrepair
|
||||
mcmmo.ability.repair.goldrepair
|
||||
mcmmo.ability.repair.ironrepair
|
||||
mcmmo.ability.repair.leatherrepair
|
||||
mcmmo.ability.repair.othermaterialrepair
|
||||
mcmmo.ability.repair.otherrepair
|
||||
mcmmo.ability.salvage.armorsalvage
|
||||
mcmmo.ability.salvage.diamondsalvage
|
||||
mcmmo.ability.salvage.goldsalvage
|
||||
mcmmo.ability.salvage.ironsalvage
|
||||
mcmmo.ability.salvage.leathersalvage
|
||||
mcmmo.ability.salvage.othermaterialsalvage
|
||||
mcmmo.ability.salvage.othersalvage
|
||||
mcmmo.ability.salvage.stonesalvage
|
||||
mcmmo.ability.salvage.stringsalvage
|
||||
mcmmo.ability.salvage.toolsalvage
|
||||
mcmmo.ability.salvage.woodsalvage
|
||||
Added new locale string - Repair.NoBasicRepairMatsFound
|
||||
Simplified the config entries for Repairables in the Repair config
|
||||
Repairables in the repair config now use their internal registry key names instead of Bukkit material names
|
||||
|
@ -0,0 +1,32 @@
|
||||
package com.gmail.nossr50.datatypes.permissions;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
public class PermissionWrapper {
|
||||
private String permissionAddress;
|
||||
|
||||
public PermissionWrapper(String permissionAddress) {
|
||||
this.permissionAddress = permissionAddress;
|
||||
}
|
||||
|
||||
public String getPermissionAddress() {
|
||||
return permissionAddress;
|
||||
}
|
||||
|
||||
public void setPermissionAddress(String permissionAddress) {
|
||||
this.permissionAddress = permissionAddress;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if (this == o) return true;
|
||||
if (!(o instanceof PermissionWrapper)) return false;
|
||||
PermissionWrapper that = (PermissionWrapper) o;
|
||||
return getPermissionAddress().equals(that.getPermissionAddress());
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
return Objects.hash(getPermissionAddress());
|
||||
}
|
||||
}
|
@ -69,15 +69,15 @@ public class RepairManager extends SkillManager {
|
||||
}
|
||||
|
||||
// Permissions checks on material and item types
|
||||
if (!Permissions.repairMaterialType(player, repairable.getRepairItemMaterialCategory())) {
|
||||
mcMMO.getNotificationManager().sendPlayerInformation(player, NotificationType.NO_PERMISSION, "mcMMO.NoPermission");
|
||||
return;
|
||||
}
|
||||
|
||||
if (!Permissions.repairItemType(player, repairable.getRepairItemType())) {
|
||||
mcMMO.getNotificationManager().sendPlayerInformation(player, NotificationType.NO_PERMISSION, "mcMMO.NoPermission");
|
||||
return;
|
||||
}
|
||||
// if (!Permissions.repairMaterialType(player, repairable.getRepairItemMaterialCategory())) {
|
||||
// mcMMO.getNotificationManager().sendPlayerInformation(player, NotificationType.NO_PERMISSION, "mcMMO.NoPermission");
|
||||
// return;
|
||||
// }
|
||||
//
|
||||
// if (!Permissions.repairItemType(player, repairable.getRepairItemType())) {
|
||||
// mcMMO.getNotificationManager().sendPlayerInformation(player, NotificationType.NO_PERMISSION, "mcMMO.NoPermission");
|
||||
// return;
|
||||
// }
|
||||
|
||||
int skillLevel = getSkillLevel();
|
||||
int minimumRepairableLevel = repairable.getMinimumLevel();
|
||||
|
@ -1,5 +1,6 @@
|
||||
package com.gmail.nossr50.skills.repair.repairables;
|
||||
|
||||
import com.gmail.nossr50.datatypes.permissions.PermissionWrapper;
|
||||
import com.gmail.nossr50.skills.repair.RepairTransaction;
|
||||
import com.gmail.nossr50.util.nbt.RawNBT;
|
||||
import org.bukkit.Material;
|
||||
@ -13,6 +14,7 @@ public class Repairable {
|
||||
private int baseXP;
|
||||
private RawNBT rawNBT;
|
||||
private int repairCount;
|
||||
private PermissionWrapper permissionWrapper;
|
||||
|
||||
public Repairable(Material itemMaterial, RepairTransaction repairTransaction, int minimumLevel, int repairCount, int baseXP, RawNBT rawNBT) {
|
||||
this(itemMaterial.getKey().getKey(), repairTransaction, minimumLevel, repairCount, baseXP, false, rawNBT);
|
||||
@ -34,6 +36,14 @@ public class Repairable {
|
||||
this.rawNBT = rawNBT;
|
||||
}
|
||||
|
||||
public PermissionWrapper getPermissionWrapper() {
|
||||
return permissionWrapper;
|
||||
}
|
||||
|
||||
public void setPermissionWrapper(PermissionWrapper permissionWrapper) {
|
||||
this.permissionWrapper = permissionWrapper;
|
||||
}
|
||||
|
||||
public RawNBT getRawNBT() {
|
||||
return rawNBT;
|
||||
}
|
||||
|
@ -445,47 +445,14 @@ permissions:
|
||||
description: Allows access to all Repair abilities
|
||||
children:
|
||||
mcmmo.ability.repair.arcaneforging: true
|
||||
mcmmo.ability.repair.armorrepair: true
|
||||
mcmmo.ability.repair.diamondrepair: true
|
||||
mcmmo.ability.repair.goldrepair: true
|
||||
mcmmo.ability.repair.ironrepair: true
|
||||
mcmmo.ability.repair.leatherrepair: true
|
||||
mcmmo.ability.repair.othermaterialrepair: true
|
||||
mcmmo.ability.repair.otherrepair: true
|
||||
mcmmo.ability.repair.repairbonus: true
|
||||
mcmmo.ability.repair.repairmastery: true
|
||||
mcmmo.ability.repair.stonerepair: true
|
||||
mcmmo.ability.repair.stringrepair: true
|
||||
mcmmo.ability.repair.toolrepair: true
|
||||
mcmmo.ability.repair.woodrepair: true
|
||||
mcmmo.ability.repair.arcaneforging:
|
||||
description: Allows access to the Arcane Forging ability
|
||||
mcmmo.ability.repair.armorrepair:
|
||||
description: Allows ability to repair armor
|
||||
mcmmo.ability.repair.diamondrepair:
|
||||
description: Allows ability to repair Diamond tools & armor
|
||||
mcmmo.ability.repair.goldrepair:
|
||||
description: Allows ability to repair Gold tools & armor
|
||||
mcmmo.ability.repair.ironrepair:
|
||||
description: Allows ability to repair Iron tools & armor
|
||||
mcmmo.ability.repair.leatherrepair:
|
||||
description: Allows ability to repair Leather armor
|
||||
mcmmo.ability.repair.othermaterialrepair:
|
||||
description: Allows ability to repair items of material type OTHER
|
||||
mcmmo.ability.repair.otherrepair:
|
||||
description: Allows ability to repair items of type OTHER
|
||||
mcmmo.ability.repair.superrepair:
|
||||
description: Allows access to Super Repair bonus
|
||||
mcmmo.ability.repair.repairmastery:
|
||||
description: Allows access to Repair Mastery
|
||||
mcmmo.ability.repair.stonerepair:
|
||||
description: Allows ability to repair Stone tools
|
||||
mcmmo.ability.repair.stringrepair:
|
||||
description: Allows ability to repair Bow and Fishing rod
|
||||
mcmmo.ability.repair.toolrepair:
|
||||
description: Allows ability to repair tools
|
||||
mcmmo.ability.repair.woodrepair:
|
||||
description: Allows ability to repair Wood tools
|
||||
mcmmo.ability.salvage.*:
|
||||
default: false
|
||||
description: Allows access to all Salvage abilities
|
||||
@ -496,43 +463,10 @@ permissions:
|
||||
children:
|
||||
mcmmo.ability.salvage.advancedsalvage: true
|
||||
mcmmo.ability.salvage.arcanesalvage: true
|
||||
mcmmo.ability.salvage.armorsalvage: true
|
||||
mcmmo.ability.salvage.diamondsalvage: true
|
||||
mcmmo.ability.salvage.goldsalvage: true
|
||||
mcmmo.ability.salvage.ironsalvage: true
|
||||
mcmmo.ability.salvage.leathersalvage: true
|
||||
mcmmo.ability.salvage.othermaterialsalvage: true
|
||||
mcmmo.ability.salvage.othersalvage: true
|
||||
mcmmo.ability.salvage.stonesalvage: true
|
||||
mcmmo.ability.salvage.stringsalvage: true
|
||||
mcmmo.ability.salvage.toolsalvage: true
|
||||
mcmmo.ability.salvage.woodsalvage: true
|
||||
mcmmo.ability.salvage.advancedsalvage:
|
||||
description: Allows access to the Advanced Salvage ability
|
||||
mcmmo.ability.salvage.arcanesalvage:
|
||||
description: Allows access to the Arcane Salvage ability
|
||||
mcmmo.ability.salvage.armorsalvage:
|
||||
description: Allows ability to salvage armor
|
||||
mcmmo.ability.salvage.diamondsalvage:
|
||||
description: Allows ability to salvage Diamond tools & armor
|
||||
mcmmo.ability.salvage.goldsalvage:
|
||||
description: Allows ability to salvage Gold tools & armor
|
||||
mcmmo.ability.salvage.ironsalvage:
|
||||
description: Allows ability to salvage Iron tools & armor
|
||||
mcmmo.ability.salvage.leathersalvage:
|
||||
description: Allows ability to salvage Leather armor
|
||||
mcmmo.ability.salvage.othermaterialsalvage:
|
||||
description: Allows ability to salvage items of material type OTHER
|
||||
mcmmo.ability.salvage.othersalvage:
|
||||
description: Allows ability to salvage items of type OTHER
|
||||
mcmmo.ability.salvage.stonesalvage:
|
||||
description: Allows ability to salvage Stone tools
|
||||
mcmmo.ability.salvage.stringsalvage:
|
||||
description: Allows ability to salvage Bow and Fishing rod
|
||||
mcmmo.ability.salvage.toolsalvage:
|
||||
description: Allows ability to salvage tools
|
||||
mcmmo.ability.salvage.woodsalvage:
|
||||
description: Allows ability to salvage Wood tools
|
||||
mcmmo.ability.smelting.*:
|
||||
default: false
|
||||
description: Allows access to all Smelting abilities
|
||||
|
Loading…
Reference in New Issue
Block a user