Exemplo n.º 1
0
		public NavyFightCM() { } //JSON Constructor

		public NavyFightCM(NavyFightCM navyFight) 
		{
			this.AttackCell = navyFight.AttackCell;
			this.AttackCount = navyFight.AttackCount;
			this.AttackPlayerID = navyFight.AttackPlayerID;
			this.AttackPortCount = navyFight.AttackPortCount;
			this.AttackRetreateAvalible = navyFight.AttackRetreateAvalible;

			this.DefenceCell = navyFight.DefenceCell;
			this.DefenceCount = navyFight.DefenceCount;
			this.DefencePlayerID = navyFight.DefencePlayerID;
			this.DefencePortCount = navyFight.DefencePortCount;
			this.DefenceRetreateAvalible = navyFight.DefenceRetreateAvalible;
		}
Exemplo n.º 2
0
		internal void CreateNavyFight(NavyFightCM copy)
		{
			navyFight = new NavyFightCM(copy);

			if (OnCreateNavyFight != null)
				OnCreateNavyFight();
		}
Exemplo n.º 3
0
		internal void DestroyNavyFight()
		{
			navyFight = null;

			if (OnDestroyNavyFight != null)
				OnDestroyNavyFight();
		}
Exemplo n.º 4
0
		protected override UnitOfWork GetUnitOfWorkImpl(Context context)
		{
			int deffencePlayerID = context.map.GetSeaPointOwnerID(to);
			int defenceCount = context.map.GetNavyCountByCell(to, deffencePlayerID);

			if (deffencePlayerID == playerID || defenceCount == 0)
			{
				UnitOfWork uow = new UOW_Move()
				{
					playerID = playerID,
					from = from,
					to = to,
					count = count,
					gold = gold,
				};
				return uow;
			}
			else
			{
				NavyFightCM navyFight = new NavyFightCM()
				{
					AttackCell = from,
					AttackCount = count,
					AttackPlayerID = playerID,
					AttackPortCount = context.map.GetPortCountForSeaHex(to, playerID),
					AttackRetreateAvalible = context.map.CanPlayerRetreatFromSeaHex(to, playerID),

					DefenceCell = to,
					DefenceCount = defenceCount,
					DefencePlayerID = deffencePlayerID,
					DefencePortCount = context.map.GetPortCountForSeaHex(to, deffencePlayerID),
					DefenceRetreateAvalible = context.map.CanPlayerRetreatFromSeaHex(to, deffencePlayerID)
				};

				UnitOfWork uow = new UOW_Fight()
				{
					playerID = playerID,
					from = from,
					to = to,
					count = count,
					gold = gold,

					navyFight = navyFight
				};
				return uow;
			}
		}