Bendercraft / spigot-bending

Minecraft plugin that allows players to bend elements as in the series
Other
14 stars 7 forks source link

ToggleAffinity pour Drainbend #82

Closed ghost closed 8 years ago

ghost commented 8 years ago

Hello ! Un simple problème, on ne peut pas toggle l'affinité Drainbend, du coup ça va peut-être être ennuyeux pour le probend non ? Il faudrait tester si le joueur a toggle son affinité dans canDrainBend(), un peu comme cela :

public static boolean canDrainBend(Player player) {
        if (player == null) {
            return false;
        }

        BendingPlayer bender = BendingPlayer.getBendingPlayer(player);
        if (bender == null || !bender.hasAffinity(BendingAffinity.DRAIN) || EntityTools.getToggledAffinities().contains(player.getUniqueId())) {
            return false;
        }

        return true;
    }

Et il faudrait aussi changer EntityTools.java, canPlantBend() deviendrait :

public static boolean canPlantbend(Player player) {
        BendingPlayer bPlayer = BendingPlayer.getBendingPlayer(player);
        if (bPlayer == null) {
            return false;
        }
        if (EntityTools.isSpecialized(player, BendingAffinity.DRAIN) && !getToggledAffinities().contains(player.getUniqueId())) {
            return true;
        }
        return false;
    }
Koudja commented 8 years ago

Yop, merci : bde4aa6

Il existe une fonction renvoyant un booléen pour savoir si une affinité est active ou non, il est préférable de l'utiliser plutôt que de reproduire le fonctionnement. Concernant le plantbend, il est préférable de juste le rediriger vers le drainbend, car ils faisaient le même check.

ghost commented 8 years ago

Ah je n'avais pas vu cette fonction ^^ Ok pour le plantbend, merci de m'avoir répondu ! :D