File tree 2 files changed +9
-1
lines changed 2 files changed +9
-1
lines changed Original file line number Diff line number Diff line change 2
2
3
3
void TriggerableNode::triggerAdd ()
4
4
{
5
+ if (once && trigger_counter)
6
+ return ;
5
7
if (!trigger_counter)
6
8
onTrigger ();
7
9
trigger_counter++;
8
10
}
9
11
10
12
void TriggerableNode::triggerSubstract ()
11
13
{
14
+ if (once)
15
+ return ;
12
16
trigger_counter--;
13
17
if (!trigger_counter)
14
18
onUnTrigger ();
15
19
}
16
20
17
21
void TriggerableNode::setProperty (sp::string name, sp::string value)
18
22
{
19
- LevelObject::setProperty (name, value);
23
+ if (name == " trigger_once" )
24
+ once = sp::stringutil::convert::toBool (value);
25
+ else
26
+ LevelObject::setProperty (name, value);
20
27
}
Original file line number Diff line number Diff line change @@ -25,6 +25,7 @@ class TriggerableNode : public LevelObject
25
25
private:
26
26
int trigger_counter = 0 ;
27
27
sp::string trigger_name;
28
+ bool once = false ;
28
29
};
29
30
30
31
#endif // TRIGGER_H
You can’t perform that action at this time.
0 commit comments