Ejemplo n.º 1
0
 public Stats(Pos pos, StatsVision vision, StatsControl control, StatsBuild build, StatsExtraction extraction, StatsMilitary military)
 {
     _pos        = pos;
     _vision     = vision;
     _control    = control;
     _build      = build;
     _extraction = extraction;
     _military   = military;
 }
Ejemplo n.º 2
0
    public List <Stats> GetPosViews()
    {
        List <Stats> views = new List <Stats>();
        Dictionary <Pos, StatsVision>     vision     = GetPosViewVision();
        Dictionary <Pos, StatsControl>    control    = GetPosViewControl();
        Dictionary <Pos, StatsBuild>      build      = GetPosViewBuild();
        Dictionary <Pos, StatsExtraction> extraction = GetPosViewExtraction();
        Dictionary <Pos, StatsMilitary>   military   = GetPosViewMilitary();

        foreach (Pos p in _game._locations.Keys)
        {
            StatsVision     v    = vision.ContainsKey(p) ? vision[p] : new StatsVision(new Dictionary <Player, eVisibility>());
            StatsControl    c    = control.ContainsKey(p) ? control[p] : new StatsControl(new Dictionary <Player, bool>());
            StatsBuild      b    = build.ContainsKey(p) ? build[p] : new StatsBuild(new Dictionary <Player, dStructurePlacement>());
            StatsExtraction e    = extraction.ContainsKey(p) ? extraction[p] : new StatsExtraction(new Dictionary <Player, float>());
            StatsMilitary   m    = military.ContainsKey(p) ? military[p] : new StatsMilitary(new Dictionary <Player, float>());
            Stats           view = new Stats(p, v, c, b, e, m);
            views.Add(view);
        }
        return(views);
    }
Ejemplo n.º 3
0
    Dictionary <Pos, StatsBuild> GetPosViewBuild()
    {
        Dictionary <Pos, Dictionary <Player, dStructurePlacement> > buildRaw = new Dictionary <Pos, Dictionary <Player, dStructurePlacement> >();
        List <Player> players = _game._playerSystem._players;

        foreach (Pos p in _game._locations.Keys)
        {
            buildRaw[p] = new Dictionary <Player, dStructurePlacement>();
            foreach (Player player in players)
            {
                buildRaw[p][player] = player._buildQueue.GetStructureInQueueAtPos(p);
            }
        }
        Dictionary <Pos, StatsBuild> build = new Dictionary <Pos, StatsBuild>();

        foreach (Pos p in buildRaw.Keys)
        {
            build[p] = new StatsBuild(buildRaw[p]);
        }
        return(build);
    }