2 using System.Collections.Generic;
5 using System.Xml.Serialization;
28 get {
return _RetriggerBehaviour; }
29 set { _RetriggerBehaviour = value; }
32 private int _DurationMs = 500;
42 get {
return _DurationMs; }
43 set { _DurationMs = value; }
54 public bool Active {
get;
private set; }
62 public override void Trigger(Table.TableElementData TableElementData)
64 if (TargetEffect != null && TableElementData.Value != 0)
68 TriggerTargetEffect(TableElementData);
69 Table.Pinball.Alarms.RegisterAlarm(DurationMs, DurationEnd, TableElementData);
72 Table.Pinball.Alarms.RegisterAlarm(DurationMs, DurationEnd, TableElementData);
78 private void DurationEnd(
object TableElementData)
81 Table.TableElementData TED = (Table.TableElementData)TableElementData;
83 TriggerTargetEffect(TED);
94 Table.Pinball.Alarms.UnregisterAlarm(DurationEnd);
Duration effect which triggers a specified target effect for a specified duration. When this effect is triggered it triggers the target effect immediately with the same data it has received. After the specified duration it calls trigger on the target effect again with data for the same table elmenet, but with the value changed to 0.
override void Trigger(Table.TableElementData TableElementData)
Triggers the DurationEffect with the given TableElementData. The duration is started, if the value portion of the TableElementData parameter is !=0. Trigger calls with a TableElement value=0 have no effect.
RetriggerBehaviourEnum
This enum describes the different retrigger behaviours for the effects. Retriggering means that a ef...
Base class for effects targeting another effect.
override void Finish()
Finishes the DurationEffect.