Exemplo n.º 1
0
        private async Task SendFilesToModule(IList <string> files, IModule module)
        {
            if (module == null)
            {
                return;
            }

            var msgcontent = SelectFilesSupportedByModule(files, module);

            int tabIndex = TabManager.GetTabIndexByTitle(module.ModuleName);

            if (tabIndex == -1)
            {
                var id = await TabManager.StartModule(module, true);

                await Task.Delay(25);

                Messager.SendMessage(id, new HandleFileMessage(AppConstants.ApplicationGuid, msgcontent));
            }
            else
            {
                TabManager.FocusTabByIndex(tabIndex);
                Messager.SendMessage(module.RunModule().GetType(), new HandleFileMessage(AppConstants.ApplicationGuid, msgcontent));
            }
        }
Exemplo n.º 2
0
    public void TakeDamage(int MaxDamage, GameObject attacker, GameObject scoreboard) //this deducts health and checks if we have died, if we had the flag reset its position.
    {
        int Damage = -MaxDamage;

        DamageIndicatorController.CreateDamageIndicator(Damage.ToString(), rb.transform, Color.red);
        Health -= MaxDamage;

        if (Health < 1)
        {
            ++TimesDied;

            if (HaveFlag)
            {
                HaveFlag = false;
                if (TeamColour == "Red")
                {
                    GameObject.Find("BlueFlag").GetComponent <FlagScript>().ResetPosition();
                    Mess.SendMessage(gameObject, 2); //we have lost enemy flag go back to normal
                }

                else if (TeamColour == "Blue")
                {
                    GameObject.Find("RedFlag").GetComponent <FlagScript>().ResetPosition();
                }
            }
            StateMachine.ChangeState(RespawningState.Instance);
            resetPath();
            attacker.GetComponent <AI>().IncreaseKillsMade();
            attacker.GetComponent <AttackingScript>().Targets.Remove(gameObject);
            scoreboard.GetComponent <ScoresTable>().UpdateScores();
        }
    }
Exemplo n.º 3
0
 static public void DoWeHaveFlag(List <GameObject> Team, StateMachine <AI> stateMachine, GameObject player, Messager mess)
 {
     for (int i = 0; i < Team.Count; i++)
     {
         if (player.name != Team[i].name)
         {
             mess.SendMessage(player, 3); //check if we have the flag
         }
     }
 }
Exemplo n.º 4
0
 /// <summary>
 /// 批量保存
 /// </summary>
 /// <param name="bulkSize"></param>
 /// <returns></returns>
 public virtual int BulkSaveChanges(bool validateOnSaveEnabled = true, int bulkSize = 64)
 {
     // 发送消息
     Messager.SendMessage(dbContext, CurrentMessager);
     if (MessagePlugin != null)
     {
         MessagePlugin.ApplyChange();
     }
     return(dbContext.BulkSaveChanges(validateOnSaveEnabled, bulkSize));
 }
Exemplo n.º 5
0
        /// <summary>
        /// 保存修改
        /// </summary>
        /// <returns></returns>
        public virtual int SaveChanges()
        {
            try
            {
                // 发送消息
                Messager.SendMessage(dbContext, CurrentMessager);
                if (MessagePlugin != null)
                {
                    MessagePlugin.ApplyChange();
                }

                ObjectContext objectContext = ((IObjectContextAdapter)this.dbContext).ObjectContext;
                // 获取变化的实体信息
                var changeList = objectContext.ObjectStateManager
                                 .GetObjectStateEntries(EntityState.Added | EntityState.Modified | System.Data.Entity.EntityState.Deleted)
                                 .Select(c => new EntityInfo
                {
                    TableName   = this.GetTableName(c.Entity),
                    StateEntity = c,
                    ColumnList  = GetEntityInfo(c)
                })
                                 .Where(c => !string.IsNullOrWhiteSpace(c.TableName))
                                 .ToList();

                foreach (var item in changeList)
                {
                    // 判断该表是否忽略保存
                    if (IgnoreEntityEntityList.Contains(item.TableName))
                    {
                        item.StateEntity.AcceptChanges();
                    }
                }
                return(this.dbContext.SaveChanges());
            }
            catch (DbEntityValidationException dbEx)
            {
                foreach (var validationErrors in dbEx.EntityValidationErrors)
                {
                    foreach (var validationError in validationErrors.ValidationErrors)
                    {
                        text(string.Format("Class: {0}, Property: {1}, Error: {2}", validationErrors.Entry.Entity.GetType().FullName,
                                           validationError.PropertyName,
                                           validationError.ErrorMessage));
                    }
                }
                throw dbEx;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemplo n.º 6
0
 private static void Answer(IPEndPoint targetEndPoint, MessageType answerType, string answerValue)
 {
     _messager?.SendMessage(targetEndPoint, answerType, answerValue);
 }