Hallo,
wenn ich ein Skript-Timer fur das Skript x mit z.B. IPS_SetScriptTimer(x, 20) aktiviere, dann im Skript selbst den Timer wieder mit IPS_SetScriptTimer(x, 0) deaktiviere bleibt der Wert 20 im Timer stehen, er wird nur deaktiviert.
Versuche ich dann mit (IPS_GetScriptTimer(x) == 0) zu prüfen ob der Timer aktiv ist klappt das natürlich nicht, da IPS_GetScriptTimer(x) 20 zurück gibt.
Ist das Bug oder Feature?
Falls es ein Feature ist, würde ich mich über einige Hintergrundinformationen sehr freuen.
Zur Zeit behelfe ich mir mit folgender Funktion:
function GetScriptTimerActive($SkriptID) {
$ScriptTimerID = IPS_GetObjectIDByName('ScriptTimer', $SkriptID);
if ($ScriptTimerID) {
$ScriptTimer = IPS_GetEvent($ScriptTimerID);
return $ScriptTimer['EventStatus'];
}
return false;
}
Beste Grüße,
thelis