protected override void _Input(BspEntityOutput output) { switch (output.TargetInput.ToLower()) { case "press": Press(); break; } }
protected override void _Input(BspEntityOutput output) { if (string.Equals(output.TargetInput, "open", StringComparison.OrdinalIgnoreCase)) { Open(); } else if (string.Equals(output.TargetInput, "close", StringComparison.OrdinalIgnoreCase)) { Close(); } }
protected void Fire(string outputName) { foreach (var prop in Entity.PropertyNames) { if (prop.StartsWith(outputName, StringComparison.OrdinalIgnoreCase)) { var output = BspEntityOutput.Parse(outputName, Entity.GetRawPropertyValue(prop)); var target = FindBspEntity(output.TargetEntity); if (target) { target.Input(output); } } } }
protected override void _Input(BspEntityOutput output) { switch (output.TargetInput.ToLower()) { case "toggle": Toggle(); break; case "open": Open(); break; case "close": Close(); break; } }
protected override void _Input(BspEntityOutput output) { switch (output.TargetInput.ToLower()) { case "add": if (int.TryParse(output.Parameter, out int amountToAdd)) { Add(amountToAdd); } break; case "subtract": if (int.TryParse(output.Parameter, out int amountToSubtract)) { Subtract(amountToSubtract); } break; } }
public void Input(BspEntityOutput output) { if (output.Delay > 0) { _pendingOutputs.Add(output); return; } switch (output.TargetInput.ToLower()) { case "enable": EntityEnabled = true; break; case "disable": EntityEnabled = false; break; } _Input(output); }
public static BspEntityOutput Parse(string myOutput, string input) { try { var split = input.Split(','); var result = new BspEntityOutput() { MyOutput = myOutput, TargetEntity = split[0].Trim(), TargetInput = split[1].Trim(), Parameter = split[2].Trim() }; float.TryParse(split[3], out result.Delay); bool.TryParse(split[4], out result.OnlyOnce); return(result); } catch (Exception e) { Debug.LogError(e); return(new BspEntityOutput()); } }
protected virtual void _Input(BspEntityOutput output) { }