@Override
	public boolean state() {
		if (this.ticksHeld == 0) {
			return false;
		}
		if (this.ticksHeld == 1) {
			return true;
		}
		if (this.ticksHeld < this.initialDelay) {
			return false;
		}
		if (this.ticksHeld == this.initialDelay) {
			return true;
		}
		if ((this.ticksHeld - this.initialDelay) % this.repeatDelay == 0) {
			return true;
		} else {
			return false;
		}
	}