Ejemplo n.º 1
0
Archivo: Unit.cs Proyecto: scerdam/Maze
        public void OnEffectRemoved(object sender, EffectEventArgs e)
        {
            EffectHolder holder = e.Holder;

            // Update unit stats
            if (holder.EffectInfo.EffectType == EffectTypes.Snare ||
                holder.EffectInfo.EffectType == EffectTypes.IncreaseSpeed)
                CalculateSpeedRate();
        }
Ejemplo n.º 2
0
Archivo: Unit.cs Proyecto: scerdam/Maze
        public bool Remove(EffectHolder holder)
        {
            if (!effectList.Contains(holder))
                return false;

            // Save Type of removable effect
            EffectTypes effectType = holder.EffectInfo.EffectType;

            if (effectList.Remove(holder))
            {
                if (EffectRemoved != null)
                {
                    EffectEventArgs e = new EffectEventArgs(holder);
                    EffectRemoved(owner, e);
                }

            }
            return true;
        }
Ejemplo n.º 3
0
Archivo: Play.cs Proyecto: scerdam/Maze
        public void OnEffectRemoved(object sender, EffectEventArgs e)
        {
            EffectHolder effectHolder = e.Holder;

            for (int i = 0; i < aurasCount; ++i)
            {
                if (this.pbAuraIcons[i].Tag == effectHolder)
                {
                    for (int j = i; j < aurasCount; ++j)
                    {
                        this.pbAuraIcons[j].Tag = this.pbAuraIcons[j + 1].Tag;
                        this.pbAuraIcons[j].Image = this.pbAuraIcons[j + 1].Image;
                        this.toolTipAuras.SetToolTip(this.pbAuraIcons[j], this.toolTipAuras.GetToolTip(this.pbAuraIcons[j + 1]));
                    }
                    --aurasCount;
                    this.pbAuraIcons[aurasCount].Hide();
                    break;
                }
            }
        }
Ejemplo n.º 4
0
Archivo: Unit.cs Proyecto: scerdam/Maze
        public bool Add(EffectHolder holder)
        {
            // prevent applying double effect
            if (effectList.Count > 0)
                foreach (EffectHolder effect in effectList)
                {
                    if (effect.EffectInfo.ID == holder.EffectInfo.ID)
                    {
                        effect.Refresh();
                        return true;
                    }
                }

            effectList.Add(holder);

            if (EffectApplied != null)
            {
                EffectEventArgs e = new EffectEventArgs(holder);
                EffectApplied(owner, e);
            }

            return true;
        }
Ejemplo n.º 5
0
Archivo: Play.cs Proyecto: scerdam/Maze
        public void OnEffectApplied(object sender, EffectEventArgs e)
        {
            EffectHolder effectHolder = e.Holder;

            if(effectHolder.EffectInfo.HasAttribute(EffectAttributes.HiddenAura))
                return;

            this.pbAuraIcons[aurasCount].Tag = effectHolder;
            this.pbAuraIcons[aurasCount].Image = PictureManager.EffectImages[effectHolder.EffectInfo.ID].Aura;
            this.toolTipAuras.SetToolTip(this.pbAuraIcons[aurasCount], effectHolder.EffectInfo.EffectName + "\n"
                + effectHolder.EffectInfo.Description);
            this.pbAuraIcons[aurasCount].Show();

            ++aurasCount;
        }