Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 | 14x 32x 32x 4x 28x 28x 14x 63x 14x 32x 14x 63x 14x 12x 14x 22x 14x 4098x 14x 4151x 14x 4099x 14x 10x 10x 2x 2x 8x 8x 2x 2x 6x 6x 2x 2x 4x 4x 3x 1x | import type { ScriptNormalized } from "shared/lib/entities/entitiesTypes";
import { Variable } from "shared/lib/resources/types";
type VariablesLookup = { [name: string]: Variable | undefined };
/******************************************************************************
* Custom Event Variables
*/
export const customEventVariableName = (
variable: string,
customEvent: ScriptNormalized,
): string => {
const customEventVariable = customEvent.variables[`V${variable}`];
if (customEventVariable) {
return customEventVariable.name;
}
const letter = String.fromCharCode(
"A".charCodeAt(0) + parseInt(variable, 10),
);
return `Variable ${letter}`;
};
export const customEventVariableCode = (variable: string) => {
return `V${variable}`;
};
/******************************************************************************
* Local Variables
*/
export const localVariableName = (
variable: string,
entityId: string,
variablesLookup: VariablesLookup,
) => {
return (
variablesLookup[`${entityId}__L${variable}`]?.name || `Local ${variable}`
);
};
export const localVariableCode = (variable: string) => {
return `L${variable}`;
};
/******************************************************************************
* Temp Variables
*/
export const tempVariableName = (variable: string) => {
return `Temp ${variable}`;
};
export const tempVariableCode = (variable: string) => {
return `T${variable}`;
};
/******************************************************************************
* Global Variables
*/
export const globalVariableName = (
variable: string,
variablesLookup: VariablesLookup,
) => {
return variablesLookup[variable]?.name || globalVariableDefaultName(variable);
};
export const globalVariableDefaultName = (variable: string) => {
return `Variable ${variable}`;
};
export const globalVariableCode = (variable: string) => {
return variable.padStart(2, "0");
};
/******************************************************************************
* Next Variable ID
*/
export const getNextVariableId = (variable: string): string => {
const localMatch = variable.match(/^L([0-5])$/);
if (localMatch) {
const nextNumber = Number(localMatch[1]) + 1;
return nextNumber > 5 ? "0" : `L${nextNumber}`;
}
const argsMatch = variable.match(/^V([0-9])$/);
if (argsMatch) {
const nextNumber = Number(argsMatch[1]) + 1;
return nextNumber > 9 ? "0" : `V${nextNumber}`;
}
const tempMatch = variable.match(/^T([0-1])$/);
if (tempMatch) {
const nextNumber = Number(tempMatch[1]) + 1;
return nextNumber > 1 ? "0" : `T${nextNumber}`;
}
const numberMatch = variable.match(/^\d+$/);
if (numberMatch) {
return String(Number(variable) + 1);
}
return "0";
};
|