Was ist eine Workflow-Funktion? Eine Funktion, die du dir per Skript baust, um Zeit zu sparen und dir Arbeit abzunehmen. Sie kann eine bestimmte Aufgabe erledigen oder mehrere.
| Kurzer Hinweis: Workflow-Funktionen sind nicht dazu gedacht, Aktionsteile zu ersetzen. Meistens werden sie verwendet, um bei der Skripterstellung Zeit zu sparen, indem die Menge des einzugebenden Codes reduziert wird, was durch Verkürzen der einzugebenden Menge oder durch Iteration erreicht werden kann. |
Unten findest du einige Beispiele. Die vollständige Liste steht im Abschnitt Workflow-Funktionen der Seite Skriptübersicht.
| Name | Beschreibung |
|---|---|
| setCondition(cond, val, path) | Setzt oder schaltet die angegebene Bedingung um, global oder über eine direkte Verknüpfung. |
Syntax:
setCondition("condition name", boolean value or nil, path to condition)
Skripte > Definition:
function setCondition(cond, val, path)
if path ~= nil then cond = path.Conditions[cond] else cond = Conditions[cond] end -- check global or direct path
-- + --
if val == nil then -- check if condition should be toggled
if cond.Value then cond.Value = false else cond.Value = true end -- toggle condition
else
cond.Value = val -- update condition based on val (true or false)
end
end
Beispiel Nr. 1: Bedingungsbeispiel auf „true“ setzen, globaler Zugriff
setCondition("example", true)
Beispiel Nr. 2: Beispiel für eine Umschaltbedingung, Zugriffsbedingung, die zur aktuellen Szene gehört
setCondition("example", nil, game.CurrentScene)
| Name | Beschreibung |
|---|---|
| setConditions(t, val) | Geht eine Tabelle mit Bedingungen durch und setzt jeweils deren booleschen Wert. |
Syntax:
setConditions({table}, boolean value)
Skripte > Definition:
function setConditions(t, val)
for i = 1, #t do -- iterate through table stored in the t input variable
Conditions[ t[i] ].Value = val -- update all conditions listed in t variable to val
end
end
Verwendung: Alle aufgelisteten Bedingungen auf „true“ aktualisieren
setConditions({"example1", "example2", "example3"}, true)
| Name | Beschreibung |
|---|---|
| updateData(t) | Geht eine Tabelle mit verschiedenen Datentypen durch und setzt jeweils deren Wert. |
Syntax:
updateData(table)
Skripte > Definition:
function updateData(t)
for i = 1, #t do -- iterate through table stored in the t input variable
if type(t[i].val) == "boolean" then -- check if condition
Conditions[ t[i].name ].Value = t[i].val -- update condition
elseif type(t[i].val) == "number" then -- check if value (number)
Values[ t[i].name ].Int = t[i].val -- update value
elseif type(t[i].val) == "string" then -- check if value (string)
Values[ t[i].name ].String = t[i].val -- update value
end
end
end
Verwendung: Gemischte Datentypen mithilfe einer Tabelle und der Funktion aktualisieren
local tbl = {
{name = "condition_1", val = true},
{name = "condition_2", val = false},
{name = "value_1", val = 10},
{name = "value_1", val = "hello world"}
}
updateData(tbl) -- pass the tbl data through the function