Beispiel #1
0
 public void Init(SoldierModel model, bool isFriendly)
 {
     this.Model = model;
     hpController.SetColor(isFriendly);
     //根据isFriendly 设置Tag
     gameObject.tag = isFriendly ? "Friend" : "Enemy";
 }
 public BoundToResidentEventArgs(
     RoutedEvent routedEvent,
     string action,
     SoldierModel soldierModel = null
     )
     : base(routedEvent)
 {
     _action       = action;
     _soldierModel = soldierModel;
 }
Beispiel #3
0
        /// <summary>
        /// 开启定时任务:30秒之后产生小兵
        /// </summary>
        private void SpawnSoldier()
        {
            this.StartSchedule(DateTime.UtcNow.AddSeconds(30), delegate
            {
                List <SoldierModel> soldiers = new List <SoldierModel>();
                //产生小兵
                SoldierModel soldierModel = new SoldierModel();
                //TODO
                //添加映射
                _redTeamSoldierModels.Add(soldierModel.ID, soldierModel);
                soldiers.Add(soldierModel);

                soldierModel = new SoldierModel();
                _blueTeamSoldierModels.Add(soldierModel.ID, soldierModel);
                soldiers.Add(soldierModel);

                //自身调用自身,无限递归
                SpawnSoldier();
            });
        }
        private void ExecuteSaveCommand()
        {
            IPeopleModel tempModel = null;

            if (ResidentType == "Resident")
            {
                tempModel = new ResidentModel()
                {
                    Age        = Age,
                    PersonName = Resident,
                    Position   = Position,
                    Type       = "Resident"
                };
            }
            else if (ResidentType == "Soldier")
            {
                tempModel = new SoldierModel()
                {
                    Age        = Age,
                    PersonName = Resident,
                    Position   = Position,
                    Type       = "Soldier"
                };
            }

            if (tempModel != null)
            {
                ResidentUIEventArgs newEventArgs =
                    new ResidentUIEventArgs(
                        ResidentUIRoutedEvent,
                        Id,
                        "Save",
                        tempModel
                        );
                RaiseEvent(newEventArgs);
            }
        }
Beispiel #5
0
        public void SetSoldierModel(int id, int index, SoldierModel model)
        {
            bool found = false;

            for (int x = 0; x < _fiefService.ArmyList[index].TemplarKnightsList.Count; x++)
            {
                if (_fiefService.ArmyList[index].TemplarKnightsList[x].Id == id)
                {
                    found = true;
                    _fiefService.ArmyList[index].TemplarKnightsList[x].Age        = model.Age;
                    _fiefService.ArmyList[index].TemplarKnightsList[x].PersonName = model.PersonName;
                    _fiefService.ArmyList[index].TemplarKnightsList[x].Position   = model.Position;
                    break;
                }
            }

            if (!found)
            {
                for (int x = 0; x < _fiefService.ArmyList[index].CavalryTemplarKnightsList.Count; x++)
                {
                    if (_fiefService.ArmyList[index].CavalryTemplarKnightsList[x].Id == id)
                    {
                        found = true;
                        _fiefService.ArmyList[index].CavalryTemplarKnightsList[x].Age        = model.Age;
                        _fiefService.ArmyList[index].CavalryTemplarKnightsList[x].PersonName = model.PersonName;
                        _fiefService.ArmyList[index].CavalryTemplarKnightsList[x].Position   = model.Position;
                        break;
                    }
                }
            }

            if (!found)
            {
                for (int x = 0; x < _fiefService.ArmyList[index].KnightsList.Count; x++)
                {
                    if (_fiefService.ArmyList[index].KnightsList[x].Id == id)
                    {
                        found = true;
                        _fiefService.ArmyList[index].KnightsList[x].Age        = model.Age;
                        _fiefService.ArmyList[index].KnightsList[x].PersonName = model.PersonName;
                        _fiefService.ArmyList[index].KnightsList[x].Position   = model.Position;
                        break;
                    }
                }
            }

            if (!found)
            {
                for (int x = 0; x < _fiefService.ArmyList[index].OfficerCorporalsList.Count; x++)
                {
                    if (_fiefService.ArmyList[index].OfficerCorporalsList[x].Id == id)
                    {
                        found = true;
                        _fiefService.ArmyList[index].OfficerCorporalsList[x].Age        = model.Age;
                        _fiefService.ArmyList[index].OfficerCorporalsList[x].PersonName = model.PersonName;
                        _fiefService.ArmyList[index].OfficerCorporalsList[x].Position   = model.Position;
                        break;
                    }
                }
            }

            if (!found)
            {
                for (int x = 0; x < _fiefService.ArmyList[index].OfficerSergeantsList.Count; x++)
                {
                    if (_fiefService.ArmyList[index].OfficerSergeantsList[x].Id == id)
                    {
                        found = true;
                        _fiefService.ArmyList[index].OfficerSergeantsList[x].Age        = model.Age;
                        _fiefService.ArmyList[index].OfficerSergeantsList[x].PersonName = model.PersonName;
                        _fiefService.ArmyList[index].OfficerSergeantsList[x].Position   = model.Position;
                        break;
                    }
                }
            }

            if (!found)
            {
                for (int x = 0; x < _fiefService.ArmyList[index].OfficerCaptainsList.Count; x++)
                {
                    if (_fiefService.ArmyList[index].OfficerCaptainsList[x].Id == id)
                    {
                        found = true;
                        _fiefService.ArmyList[index].OfficerCaptainsList[x].Age        = model.Age;
                        _fiefService.ArmyList[index].OfficerCaptainsList[x].PersonName = model.PersonName;
                        _fiefService.ArmyList[index].OfficerCaptainsList[x].Position   = model.Position;
                        break;
                    }
                }
            }
        }
Beispiel #6
0
        private void ExecuteBoundToResidentEventHandler(object obj)
        {
            var tuple = (Tuple <object, object>)obj;

            if (!(tuple.Item2 is BoundToResidentEventArgs e))
            {
                return;
            }

            e.Handled = true;

            if (e.Action == "Increase")
            {
                SoldierModel soldierModel = e.SoldierModel;

                soldierModel.Id = _armyService.GetPeopleId(Index);

                if (soldierModel.Position == "KnightTemplars")
                {
                    soldierModel.Position = "Tempelriddare";
                    DataModel.TemplarKnightsList.Add(soldierModel);
                }
                else if (soldierModel.Position == "Knights")
                {
                    soldierModel.Position = "Riddare";
                    DataModel.KnightsList.Add(soldierModel);
                }
                else if (soldierModel.Position == "CavalryTemplarKnights")
                {
                    soldierModel.Position = "Tempelriddare";
                    DataModel.CavalryTemplarKnightsList.Add(soldierModel);
                }
                else if (soldierModel.Position == "OfficerCorporals")
                {
                    soldierModel.Position = "Korpral";
                    DataModel.OfficerCorporalsList.Add(soldierModel);
                }
                else if (soldierModel.Position == "OfficerSergeants")
                {
                    soldierModel.Position = "Sergeant";
                    DataModel.OfficerSergeantsList.Add(soldierModel);
                }
                else if (soldierModel.Position == "OfficerCaptains")
                {
                    soldierModel.Position = "Kapten";
                    DataModel.OfficerCaptainsList.Add(soldierModel);
                }
            }
            else if (e.Action == "Decrease")
            {
                SoldierModel soldierModel = e.SoldierModel;

                if (soldierModel.Position == "KnightTemplars")
                {
                    DataModel.TemplarKnightsList.RemoveAt(DataModel.TemplarKnightsList.Count - 1);
                }
                else if (soldierModel.Position == "Knights")
                {
                    DataModel.KnightsList.RemoveAt(DataModel.KnightsList.Count - 1);
                }
                else if (soldierModel.Position == "CavalryTemplarKnights")
                {
                    DataModel.CavalryTemplarKnightsList.RemoveAt(DataModel.CavalryTemplarKnightsList.Count - 1);
                }
                else if (soldierModel.Position == "OfficerCorporals")
                {
                    DataModel.OfficerCorporalsList.RemoveAt(DataModel.OfficerCorporalsList.Count - 1);
                }
                else if (soldierModel.Position == "OfficerSergeants")
                {
                    DataModel.OfficerSergeantsList.RemoveAt(DataModel.OfficerSergeantsList.Count - 1);
                }
                else if (soldierModel.Position == "OfficerCaptains")
                {
                    DataModel.OfficerCaptainsList.RemoveAt(DataModel.OfficerCaptainsList.Count - 1);
                }
            }
        }