Files
Rex-EMoolator-docs/docs/en/reference/INTEGER.md
Patryk Gensch df6cf2f3d3
Some checks failed
docs / deploy (push) Has been cancelled
docs / build (push) Has been cancelled
Added part of docs
2026-05-19 20:51:59 +02:00

6.8 KiB

INTEGER

Signed integer number.

Fields

TOINI

BOOL TOINI

Controls whether the field's value is persisted to an INI file and restored on the next run.

VALUE

INTEGER VALUE

The current value of the variable.

Methods

ABS

INTEGER ABS(INTEGER value)

Stores the absolute value of the argument in the variable and returns it.

Parameters

  • value — the number whose absolute value will be stored.

Returns: the new value of the variable.

Examples

VARINT0^ABS(VARINT0);
I_7^ABS(ARRFLDCLONES^GET(I_FIELD_INDEX));

ADD

INTEGER ADD(INTEGER addend)

Adds the argument to the variable's current value, stores the result, and returns it.

Parameters

  • addend — the value to add.

Returns: the new value of the variable.

Examples

VARIRADIUS^ADD([VARIMENUVISIBLE*16]);
VARIKRETSTARTX^ADD(50);
VARITEMP0^ADD(VARIRADIUS);

AND

INTEGER AND(INTEGER value)

Performs a bitwise AND between the variable's current value and the argument, stores the result, and returns it.

Parameters

  • value — the value to combine with.

Returns: the new value of the variable.

Examples

VARITEMP2^AND(1);
VARITEMP1^AND(ARRMASK^GET(ARRENEMYMASK^GET(VARENEMY)));

CLAMP

INTEGER CLAMP(INTEGER rangeMin, INTEGER rangeMax)

Clamps the variable's current value to the inclusive range [rangeMin, rangeMax]. Values outside the range are pinned to its bounds.

Parameters

  • rangeMin — lower bound of the range (inclusive).
  • rangeMax — upper bound of the range (inclusive).

Returns: the new value of the variable.

Examples

VARIMENUX^CLAMP(92, 708);
I1^CLAMP(0, IMIECZMAX);
IFRAMER^CLAMP(IFRAMECENTER, IFRAMEMAX);

CLEAR

INTEGER CLEAR()

Sets the variable's value to 0 and returns it.

Returns: 0.

DEC

INTEGER DEC()

Decrements the variable's value by 1.

Returns: the new value of the variable.

Examples

VARITIMETOEXIT^DEC();
VARIWAIT^DEC();

DIV

INTEGER DIV(INTEGER divisor)

Divides the variable's current value (integer division) by the argument, stores the result, and returns it. Division by zero leaves the variable unchanged.

Parameters

  • divisor — the divisor.

Returns: the new value of the variable (or the unchanged value if divisor was 0).

Examples

VARITEMP0^DIV(2);
VARMOUSEDX^DIV(VARMOUSESPEED);

GET

INTEGER GET()

Returns the current value of the variable.

Returns: the current value of the VALUE field.

INC

INTEGER INC()

Increments the variable's value by 1.

Returns: the new value of the variable.

Examples

VARINUMITEMS^INC();
VARITUTCOUNT^INC();

LENGTH

INTEGER LENGTH(INTEGER x, INTEGER y)

Computes the Euclidean length of the vector (x, y) as sqrt(x² + y²), truncates the result to an integer, stores it, and returns it.

Parameters

  • x — the first vector component.
  • y — the second vector component.

Returns: the vector length truncated to an integer.

Examples

VARI_TMP1^LENGTH([VARI_TMPX-VARI_CARX], [VARI_TMPY-VARI_CARY]);
I3^LENGTH(I3, 600);

MOD

INTEGER MOD(INTEGER divisor)

Stores in the variable the remainder of dividing its current value by the argument. Division by zero leaves the variable unchanged.

Parameters

  • divisor — the divisor.

Returns: the new value of the variable (or the unchanged value if divisor was 0).

Examples

VARITEMP4^MOD(8);
IGC^MOD(ARLEVG^GETSIZE());

MUL

INTEGER MUL(INTEGER multiplier)

Multiplies the variable's current value by the argument, stores the result, and returns it.

Parameters

  • multiplier — the multiplier.

Returns: the new value of the variable.

Examples

VARITEMP0^MUL(34);
I1^MUL(IGRID);

NOT

INTEGER NOT()

Performs a bitwise NOT (complement) on the variable's current value, stores the result, and returns it.

Returns: the new value of the variable.

OR

INTEGER OR(INTEGER value)

Performs a bitwise OR between the variable's current value and the argument, stores the result, and returns it.

Parameters

  • value — the value to combine with.

Returns: the new value of the variable.

POWER

INTEGER POWER(INTEGER exponent)

Raises the variable's current value to the given power, rounds the result to an integer, stores it, and returns it.

Parameters

  • exponent — the exponent.

Returns: the new value of the variable.

RANDOM

INTEGER RANDOM(INTEGER bound)
INTEGER RANDOM(INTEGER min, INTEGER max)

Stores a pseudo-random number in the variable and returns it.

  • The one-argument form returns a value from [0, bound).
  • The two-argument form returns a value from [min, max] (both ends inclusive).

Parameters

  • bound — upper bound (exclusive).
  • min, max — range bounds (inclusive).

Returns: the generated random value.

Examples

VARITEMP0^RANDOM(0, 100);
VARI_TMP3^RANDOM(VARI_TMP3);

RESETINI

INTEGER RESETINI()

Resets the variable's value to the reset value defined in the object's script attributes. The engine looks up the value in the following order: DEFAULTINIT_VALUEVALUE; the first one found is used. If none of them is set, the value is reset to 0.

Returns: the new value of the variable.

SET

INTEGER SET(INTEGER value)

Sets the variable's value.

Parameters

  • value — the new value.

Returns: the new value of the variable.

Examples

G_IPAGE^SET(800);
VARITEMP1^SET($2);
ITEMP^SET(STCBAZA|SRODEK);

SUB

INTEGER SUB(INTEGER subtrahend)

Subtracts the argument from the variable's current value, stores the result, and returns it.

Parameters

  • subtrahend — the value to subtract.

Returns: the new value of the variable.

Examples

G_IPAGE^SUB(100);
VARIPRIORITY^SUB(VARIBKGOFFSETY);

SWITCH

INTEGER SWITCH(INTEGER valueA, INTEGER valueB)

If the variable's current value equals valueA, assigns valueB to it; otherwise assigns valueA. Useful for alternating between two values.

Parameters

  • valueA — the first value.
  • valueB — the second value.

Returns: the new value of the variable.

XOR

INTEGER XOR(INTEGER value)

Performs a bitwise XOR between the variable's current value and the argument, stores the result, and returns it.

Parameters

  • value — the value to combine with.

Returns: the new value of the variable.

Signals

ONCHANGED

Fired when the variable's value is changed to one different from the previous one.

ONBRUTALCHANGED

Fired on every call that sets the value, regardless of whether the new value differs from the previous one.

ONINIT

Fired when the variable is initialised.

ONSIGNAL

Fired upon receiving a signal.