예제 #1
0
 public override void Execute()
 {
     if (Executor == null)
     {
         Issuer.Log.Add(new GenericLogMessage("Attempted to add an order to nonexistent object with ID=" + executor.ID + ". This is probably a game bug."));
     }
     else if (Issuer == Executor.Owner)
     {
         if (Order is IConstructionOrder && ((IConstructionOrder)Order).Item != null)
         {
             Issuer.Log.Add(new GenericLogMessage("You cannot add a construction order with a prefabricated construction item!"));
         }
         else if (Order == null)
         {
             Issuer.Log.Add(new GenericLogMessage("Attempted to add a null order to " + Executor + ". This is probably a game bug."));
         }
         else
         {
             Executor.AddOrder(Order);
         }
     }
     else
     {
         Issuer.Log.Add(new GenericLogMessage(Issuer + " cannot issue commands to " + Executor + " belonging to " + Executor.Owner + "!", Galaxy.Current.TurnNumber));
     }
 }