Inheritance: EffectBase
Exemple #1
0
        private void AddEffectToolstripItem(object sender, EventArgs e)
        {
            HideAllDynamicMenus();
            HideAllContextMenus();

            // action owner of new effect
            ActionTemplateWrapper ownerWrapper = Data[contextDataNode.Parent.Name];
            // new node in tree
            TreeNode t = contextDataNode.Nodes.Add("NewEffect");

            workingDataNode = t;
            // get id for this new node
            t.Name = Ids.Get().ToString();
            EffectTemplate eff = new EffectTemplate();

            EffectTemplateWrapper efp = new EffectTemplateWrapper();

            efp.EffectTemplate = eff;

            // add wrapper to dictionary
            effects.Add(t.Name, efp);

            // update owner action
            List <EffectTemplate> tempList = new List <EffectTemplate>(ownerWrapper.ActionTemplate.Effects);

            tempList.Add(eff);
            ownerWrapper.ActionTemplate.Effects = tempList.ToArray();

            // update owner wrapper
            ownerWrapper.effects.Add(efp);

            ShowEP(efp);
        }
    override public void OnInspectorGUI()
    {
        EffectTemplate _target = (EffectTemplate)target;

        _target.amount = EditorGUILayout.FloatField("amount", _target.amount);
        _target.angle  = EditorGUILayout.FloatField("angle", _target.angle);
    }
Exemple #3
0
    static void Main()
    {
        ClutterRun.Init();
        Stage stage = Stage.Default;

        stage.SetSize(200, 200);

        template = new EffectTemplate(new Timeline(90, 120), Sine.Func);

        rect = new Rectangle();
        Clutter.Color rect_bg_color = new Clutter.Color(0x33, 0x22, 0x22, 0xff);
        rect.Color       = rect_bg_color;
        rect.BorderWidth = 10;

        rect.Reactive = true;
        rect.SetSize(100, 100);
        rect.AnchorPointFromGravity = Gravity.Center;
        rect.SetPosition(100, 100);
        rect.ButtonPressEvent += delegate { ScaleRect(); };

        stage.AddActor(rect);
        stage.ShowAll();

        ClutterRun.Main();
    }
 public Effect(BaseUnit owner, Unit caster, SkillCaster skillCaster, EffectTemplate template, Skill skill, DateTime time)
 {
     Owner       = owner;
     Caster      = caster;
     SkillCaster = skillCaster;
     Template    = template;
     Skill       = skill;
     StartTime   = time;
     EndTime     = DateTime.MinValue;
 }
        public EffectBase(EffectInstance effect)
        {
            this.m_id       = (short)effect.effectId;
            this.m_template = Singleton <EffectManager> .Instance.GetTemplate(this.Id);

            this.m_targets     = (SpellTargetType)effect.targetId;
            this.m_targetMask  = effect.targetMask;
            this.m_delay       = effect.delay;
            this.m_duration    = effect.duration;
            this.m_group       = effect.group;
            this.m_random      = effect.random;
            this.m_modificator = effect.modificator;
            this.m_trigger     = effect.trigger;
            this.m_hidden      = effect.visibleInTooltip;
            this.ParseRawZone(effect.rawZone);
        }
Exemple #6
0
        public EffectBase(EffectInstance effect)
        {
            m_id       = (short)effect.effectId;
            m_template = EffectManager.Instance.GetTemplate(Id);

            m_targetMask  = effect.targetMask;
            m_delay       = effect.delay;
            m_duration    = effect.duration;
            m_group       = effect.group;
            m_random      = effect.random;
            m_modificator = effect.modificator;
            m_trigger     = effect.trigger;
            m_triggers    = effect.triggers;
            ParseRawZone(effect.rawZone);
            ParseTargets();
        }
        public EffectBase(short id, EffectBase effect)
        {
            this.m_id       = id;
            this.m_template = Singleton <EffectManager> .Instance.GetTemplate(id);

            this.m_targets     = effect.Targets;
            this.m_targetMask  = effect.TargetMask;
            this.m_delay       = effect.Delay;
            this.m_duration    = effect.Duration;
            this.m_group       = effect.Group;
            this.m_random      = effect.Random;
            this.m_modificator = effect.Modificator;
            this.m_trigger     = effect.Trigger;
            this.m_hidden      = effect.Hidden;
            this.m_zoneSize    = effect.m_zoneSize;
            this.m_zoneMinSize = effect.m_zoneMinSize;
            this.m_zoneShape   = effect.ZoneShape;
        }
Exemple #8
0
 public EffectBase(EffectBase effect)
 {
     m_id                    = effect.Id;
     m_template              = EffectManager.Instance.GetTemplate(effect.Id);
     m_targets               = effect.Targets;
     m_targetMask            = effect.TargetMask;
     m_delay                 = effect.Delay;
     m_duration              = effect.Duration;
     m_group                 = effect.Group;
     m_random                = effect.Random;
     m_modificator           = effect.Modificator;
     m_trigger               = effect.Trigger;
     m_triggers              = effect.Triggers;
     m_hidden                = effect.Hidden;
     m_zoneSize              = effect.m_zoneSize;
     m_zoneMinSize           = effect.m_zoneMinSize;
     m_zoneShape             = effect.ZoneShape;
     m_zoneMaxEfficiency     = effect.ZoneMaxEfficiency;
     m_zoneEfficiencyPercent = effect.ZoneEfficiencyPercent;
     ParseTargets();
 }
Exemple #9
0
    static void Main()
    {
        ClutterRun.Init ();
         	Stage stage = Stage.Default;
        stage.SetSize (200, 200);

        template = new EffectTemplate (new Timeline (90, 120), Sine.Func);

        rect = new Rectangle ();
        Clutter.Color rect_bg_color = new Clutter.Color (0x33, 0x22, 0x22, 0xff);
        rect.Color = rect_bg_color;
        rect.BorderWidth = 10;

        rect.Reactive = true;
        rect.SetSize (100, 100);
        rect.AnchorPointFromGravity = Gravity.Center;
        rect.SetPosition (100, 100);
        rect.ButtonPressEvent += delegate { ScaleRect (); };

        stage.AddActor (rect);
        stage.ShowAll ();

        ClutterRun.Main ();
    }
Exemple #10
0
 public double GetEffectPower(EffectTemplate effect)
 {
     return(POWER_PER_STAT.ContainsKey((CharacteristicEnum)effect.Characteristic) ? POWER_PER_STAT[(CharacteristicEnum)effect.Characteristic] : DEFAULT_STAT_POWER);
 }