Extended Arrays

Alpha Toon

Civil Gamers Expert
Mar 9, 2021
464
32
91

Extended Arrays

Extended Arrays provides more functionality to the standard array by allowing you to resize your arrays to fit your data.

Installing and Usage of Extended Arrays

24
{"compiler_version":2.0}
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
  1. Copy the above code and place it into an .mscx file.
  2. In your project file, "include ExtendedArrays.mscx"
  3. Initialize the ExtendedArrays by typing "ExtendedArrays Arr = new ExtendedArrays(string type)", see example below for valid inputs

Class Functions

Function​
Description​
Usage​
ExtendedArrays(string type)The intial constructor that intializes a table based on the given type. Available inputs are "string", "number", "bool"ExtendedArrays("string") - Initializes a new empty string array
ExtendedArrays("number") - Initializes a new empty number array
ExtendedArrays("bool") - Initializes a new empty bool array
.SetStringArray(string[] arr)Sets the string array you want the class to use instead of the default empty array..SetStringArray(["Hello", "World"])
.SetNumberArray(number[] arr)Sets the number array you want the class to use instead of the default empty array..SetNumberArray([1, 2])
.SetBoolArray(bool[] arr)Sets the bool array you want the class to use instead of the default empty array..SetNumberArray(true, false)
.GetStringArray()Returns the string array.GetStringArray()
.GetNumberArray()Returns the number array.GetNumberArray()
.GetBoolArray()Returns the bool array.GetBoolArray()
.ModifyStringArray(string input, bool isAdding, bool resize)Adds or removes an input specified with or without resizing the array..ModifyStringArray("Test", true, true) - Adds Test to the array and resizes it.
.ModifyStringArray("Test", false, true) - Removes Test from the array and resizes it.
.ModifyStringArray("Test", true, false) - Overwrites the last value in array with Test and doesn't resize the array.
.ModifyStringArray("Test", false, false) - Removes Test from the array and doesn't resize the array.
.ModifyNumberArray(number input, bool isAdding, bool resize)Adds or removes an input specified with or without resizing the array..ModifyNumberArray(1, true, true) - Adds 1 to the array and resizes it.
.ModifyNumberArray(1, false, true) - Removes 1 from the array and resizes it.
.ModifyNumberArray(1, true, false) - Overwrites the last value in array with 1 and doesn't resize the array.
.ModifyNumberArray(1, false, false) - Removes 1 from the array and doesn't resize the array.
.ModifyBoolArray(bool input, bool isAdding, bool resize)
Adds or removes an input specified with or without resizing the array.
.ModifyBoolArray(false, true, true) - Adds false to the array and resizes it.
.ModifyBoolArray(false, false, true) - Removes false from the array and resizes it.
.ModifyBoolArray(false, true, false) - Overwrites the last value in array with false and doesn't resize the array.
.ModifyBoolArray(false, false, false) - Removes false from the array and doesn't resize the array.

Example Program

using System;
using Array;
using Player;
using Event;

include "ExtendedArrays.mscx";

ExtendedArrays Arr = new ExtendedArrays("string");
Arr.ModifyStringArray("STEAM_0:0:0", true, true);
Arr.ModifyStringArray("STEAM_1:1:1", true, true);

function<bool> isAuthorized (Player pPlayer) {
string[] authed_players = Arr.GetStringArray();
if (Array.Contains(authed_players, pPlayer.GetSteamID())) {
return true;
}
return false;
}

function OnPlayerStartedUsing (Player pPlayer) {
if (isAuthorized(pPlayer)) {
return;
} else {
System.Lock();
}
}
Event.AddListener("PlayerStartedUsing", "Player Auth", "OnPlayerStartedUsing");

while (true) {
Event.Process();
}
 
  • Like
Reactions: aviv248