{
    name: "stall",
    duration: 2,
    counterMax: 729,
    onStart() {
        this.effectState.counter = 3;
    },
    onStallMove(pokemon) {
        const counter = this.effectState.counter || 1;
        this.debug("Success chance: " + Math.round(100 / counter) + "%");

        const success = counter === 1;

        if (!success) {
            delete pokemon.volatiles["stall"];
        }
        return success;
    },
    onRestart() {
        if (this.effectState.counter < this.effect.counterMax) {
            this.effectState.counter *= 3;
        }
        this.effectState.duration = 2;
    }
}
