/**
 * @file  CommandIntegerRange.hpp
 * @note  This Header is auto generated by LiteLoaderBDS Toolchain.
 *
 */
#pragma once
#include "../Global.h"

class CommandIntegerRange {

#define AFTER_EXTRA
public:
    int min, max;
    bool inverted;

    CommandIntegerRange(){
        this->min = std::numeric_limits<int>::min();
        this->max = std::numeric_limits<int>::max();
        this->inverted = 0;
    }
    CommandIntegerRange(int minVal,int maxVal,bool invert){
        this->min = minVal;
        this->max = maxVal;
        this->inverted = invert;
    };
    bool isWithinRange(int value) const{
        bool temp = false;
        if(this->min <= value)
            temp = this->max >= value;
        return temp != this->inverted;
    };

#undef AFTER_EXTRA
#ifndef DISABLE_CONSTRUCTOR_PREVENTION_COMMANDINTEGERRANGE
public:
    class CommandIntegerRange& operator=(class CommandIntegerRange const &) = delete;
    CommandIntegerRange(class CommandIntegerRange const &) = delete;
#endif

public:
    /**
     * @symbol ??0CommandIntegerRange@@QEAA@XZ
     * @hash   -2077189482
     */
    //MCAPI CommandIntegerRange();
    /**
     * @symbol ??0CommandIntegerRange@@QEAA@HH_N@Z
     * @hash   -697074593
     */
    //MCAPI CommandIntegerRange(int, int, bool);
    /**
     * @symbol ?isWithinRange@CommandIntegerRange@@QEBA_NH@Z
     * @hash   1413957599
     */
    //MCAPI bool isWithinRange(int) const;

};