Ejemplo n.º 1
0
        private static void BecomeStarve()
        {
            var allCastles = KindomCastle.GetAll();

            foreach (var castle in allCastles)
            {
                var soldierGroups = SoldierGroup.Get(castle.QQNum);
                if (soldierGroups.IsNullOrEmpty())
                {
                    continue;
                }

                var becomeRebelGroups = soldierGroups.Where(g => g.State == SoldierState.Starving && g.LastFeedTime.AddDays(6) <= DateTime.Now);
                foreach (var rebelGroup in becomeRebelGroups)
                {
                    rebelGroup.Count /= 2;
                    if (rebelGroup.Count > 0)
                    {
                        rebelGroup.Rebel();
                    }
                    else
                    {
                        rebelGroup.Die();
                    }
                }

                var becomeStarvingGroups = soldierGroups.Where(g => g.State == SoldierState.Working && g.LastFeedTime.AddDays(3) <= DateTime.Now);
                foreach (var starvingGroup in becomeStarvingGroups)
                {
                    starvingGroup.Starve();
                }

                Logger.Log($"{castle.QQNum}'s Groups Refreshed.");
            }
        }
    public SoldierGroup CreateSoldierGroup(float x, float y, float dir_x, float dir_y, TroopData data)
    {
        SoldierGroup group = m_BattleResManager.m_SoldierGroupPool.Create(m_BattleViewRoot);

        group.Init(x, y, dir_x, dir_y, data);
        return(group);
    }
Ejemplo n.º 3
0
        private static void RebelProcess()
        {
            var overDateRebels = SoldierGroup.OverDateRebels(10).ToList();

            foreach (var rebel in overDateRebels)
            {
                rebel.Die();
            }

            Logger.Log($"{overDateRebels.Count} Rebel(s) Dead.");
        }
Ejemplo n.º 4
0
    public void RecruitEveryone()
    {
        GameObject   mainGroup = GameObject.FindGameObjectWithTag("Main Group");
        SoldierGroup soldGroup = mainGroup.GetComponent <SoldierGroup>();

        foreach (Soldier sold in _soldiers)
        {
            sold.SwitchType(SoldierType.Friendly);
            sold.transform.parent = mainGroup.transform;
        }

        Destroy(gameObject);
    }
 public void RecycleSoldierGroup(SoldierGroup obj)
 {
     m_BattleResManager.m_SoldierGroupPool.Recycle(obj);
 }