/// <summary>
        /// Adds an effect to the wrapper list
        /// </summary>
        /// <param name="tmpNewEffect"></param>
        public void addEffect(Effect tmpNewEffect)
        {
            int index = -1;
            foreach (Effect tmpEffect in _listOfEffects)
            {
                if (tmpEffect.id == tmpNewEffect.id)
                {
                    index = _listOfEffects.IndexOf(tmpEffect);
                }
            }

            if (index != -1)
            {
                _listOfEffects[index] = tmpNewEffect;
            }
            else
            {
                _listOfEffects.Add(tmpNewEffect);
            }
        }
 private void cmbEffects_SelectedIndexChanged(object sender, EventArgs e)
 {
     selectedEffect = this._effectWrapper.getEffectsList()[cmbEffects.SelectedIndex];
     updateSelectedInfo();
 }
        private void cmbCurrent_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (cmbCurrent.SelectedIndex == 0)
            {
                selectedEffect = newEffect.Clone(-1);
            }
            else
            {
                selectedEffect = _effectWrapper.getEffectsList()[cmbCurrent.SelectedIndex - 1];
            }

            updateSelectedItemsInfo();
        }
 /// <summary>
 /// Removes specified effect
 /// </summary>
 /// <param name="tmpToRemoveEffect"></param>
 public void removeEffect(Effect tmpToRemoveEffect)
 {
     if (this._listOfEffects.Contains(tmpToRemoveEffect))
     {
         _listOfEffects.Remove(tmpToRemoveEffect);
     }
 }
        public Effect Clone(int ClonesID)
        {
            Effect tmpNew = new Effect(ClonesID, this.name, this.elementalType, this.effectType, this.effectedStat, this.effectAmount, this.effectDuration);

            return tmpNew;
        }