rendered paste bodyusing System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
using Cell.Core;
namespace DOLC.ConfigReaders
{
[Serializable]
public class RaceInfo
{
private string m_raceName;
private int m_raceID;
private Dictionary<string, int> m_stats;
public string RaceName
{
get
{
return m_raceName;
}
set
{
m_raceName = value;
}
}
public int RaceID
{
get
{
return m_raceID;
}
set
{
m_raceID = value;
}
}
public Dictionary<string,int> Stats
{
get
{
return m_stats;
}
set
{
m_stats = value;
}
}
}
public class RaceConfig : XmlConfig, IEnumerable
{
private Dictionary<int, RaceInfo> m_races = new Dictionary<int,RaceInfo>();
public Dictionary<int,RaceInfo> Races
{
get
{
return m_raceName;
}
set
{
m_raceName = value;
}
}
[NonSerialized]
public RaceInfo this[int raceID]
{
get
{
return (m_races.ContainsKey(raceID) ? m_races[raceID] : null);
}
}
[NonSerialized]
public Dictionary<int,RaceInfo>.Enumerator GetEnumerator()
{
return m_races.GetEnumerator();
}
/// <summary>
/// Copies one <see cref="XmlConfig"/> derived class into another.
/// </summary>
/// <param name="cfg">The <see cref="XmlConfig"/> derived class to copy from.</param>
public override void Assign(XmlConfig cfg)
{
base.Assign(cfg);
RaceConfig rcfg;
if ((rcfg = cfg as RaceConfig) != null)
{
this.Races = rcfg.Races;
}
}
}
}