diff options
| author | Markus Mittendrein <git@maxmitti.tk> | 2017-01-02 19:31:26 +0100 |
|---|---|---|
| committer | Markus Mittendrein <git@maxmitti.tk> | 2017-01-02 19:31:26 +0100 |
| commit | 23bb101d5c728b2378bdb6e816d400e88d6b3372 (patch) | |
| tree | 1637b9492cbf269d9f1e951f827bc3eaf0658c2f /Script.c | |
| download | DTEffectContext.c4d-23bb101d5c728b2378bdb6e816d400e88d6b3372.tar.gz DTEffectContext.c4d-23bb101d5c728b2378bdb6e816d400e88d6b3372.zip | |
Initial
Diffstat (limited to 'Script.c')
| -rw-r--r-- | Script.c | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/Script.c b/Script.c new file mode 100644 index 0000000..3d4acf7 --- /dev/null +++ b/Script.c @@ -0,0 +1,35 @@ +#strict 2 + +static ContextMenuEntry_Helper; +static const DT_EffectContext_Helper = CM7I; + +global func AddContextMenuEntry(callback, condition, object target) +{ + ContextMenuEntry_Helper = ContextMenuEntry_Helper || CreateObject(CM7I); + return AddEffect("IntCtxMenuEntry" , target || this, 1, 0, ContextMenuEntry_Helper, 0, callback, condition); +} + +global func RemoveContextMenuEntry(int id, object target) +{ + return RemoveEffect(0, target || this, id); +} + +func FxIntCtxMenuEntryStart(object target, int effectNumber, int temp, callback, condition) +{ + if(!temp) + { + EffectVar(0, target, effectNumber) = callback; + EffectVar(1, target, effectNumber) = condition; + } +} + +func FxIntCtxMenuEntryConditionContext(object target, int effectNumber, object menuObject, id image) +{ + return !EffectVar(1, target, effectNumber) || Call(EffectVar(1, target, effectNumber), [target, effectNumber, menuObject, image]); +} + +func FxIntCtxMenuEntryContext(object target, int effectNumber, object menuObject, id image) +{ + [Dynamischer Eintrag|Condition=FxIntCtxMenuEntryConditionContext|Image=FLNT] + return EffectVar(0, target, effectNumber) && target->Call(EffectVar(0, target, effectNumber), [target, effectNumber, menuObject, image]); +} |
