Ejemplo n.º 1
0
        /// <summary>
        /// Raises the block destruction event
        /// </summary>
        /// <param name="entity">entity who destroyed the block</param>
        /// <param name="block">block that has been destroyed</param>
        /// <returns>resulting event args</returns>
        protected virtual BlockDestroyEventArgs RaiseDestroyEvent(IEntityBase entity, StructBlock block)
        {
            BlockDestroyEventArgs e = new BlockDestroyEventArgs(this, entity);

            block.World.Server.PluginManager.CallEvent(Event.BlockDestroy, e);
            return(e);
        }
Ejemplo n.º 2
0
        public IEntityBase GetByKey(IEntityBase value)
        {
            EBanco objE = (EBanco)value;

             try
             {

            ArrayList arrPrm = BuildParamInterface(objE);

            DataTable dt = this.ExecuteDatatable("MG_Banco_qry02", arrPrm);

            objE = null;

            foreach (DataRow dr in dt.Rows)
               objE = DataHelper.CopyDataRowToEntity<EBanco>(dr, typeof(EBanco));

            return objE;

             }
             catch (Exception ex)
             {

            ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
            throw objEx;

             }
        }
Ejemplo n.º 3
0
        public override void Place(IEntityBase entity, IStructBlock iBlock, IStructBlock targetIBlock, BlockFace face)
        {
            StructBlock  block  = (StructBlock)iBlock;
            LivingEntity living = (entity as LivingEntity);

            if (living == null)
            {
                return;
            }

            switch (face)
            {
            case BlockFace.Down: return;

            case BlockFace.Up: block.MetaData = (byte)MetaData.Torch.Standing;
                break;

            case BlockFace.West: block.MetaData = (byte)MetaData.Torch.West;
                break;

            case BlockFace.East: block.MetaData = (byte)MetaData.Torch.East;
                break;

            case BlockFace.North: block.MetaData = (byte)MetaData.Torch.North;
                break;

            case BlockFace.South: block.MetaData = (byte)MetaData.Torch.South;
                break;
            }
            base.Place(entity, block, targetIBlock, face);
        }
Ejemplo n.º 4
0
        public override void Place(IEntityBase entity, IStructBlock iBlock, IStructBlock targetIBlock, BlockFace targetSide)
        {
            StructBlock  block  = (StructBlock)iBlock;
            LivingEntity living = entity as LivingEntity;

            if (living == null)
            {
                return;
            }

            // TODO: Bugged - should depend on the player's Yaw/Pitch
            switch (living.FacingDirection(4))
            {
            case "N":
                block.MetaData = (byte)MetaData.Stairs.South;
                break;

            case "E":
                block.MetaData = (byte)MetaData.Stairs.West;
                break;

            case "S":
                block.MetaData = (byte)MetaData.Stairs.North;
                break;

            case "W":
                block.MetaData = (byte)MetaData.Stairs.East;
                break;

            default:
                return;
            }
            base.Place(entity, block, targetIBlock, targetSide);
        }
Ejemplo n.º 5
0
        public int Delete(IEntityBase value)
        {
            ETablaCorre objE = (ETablaCorre)value;

             try
             {

            ArrayList arrPrm = new ArrayList();

            arrPrm.Add(DataHelper.CreateParameter("@pidPeriodo", SqlDbType.Char, 4, objE.IdPeriodo));
            arrPrm.Add(DataHelper.CreateParameter("@pidEmpresa", SqlDbType.Char, 3, objE.IdEmpresa));
            arrPrm.Add(DataHelper.CreateParameter("@pidTabla", SqlDbType.VarChar, 10, objE.IdTabla));

            int intRes = this.ExecuteNonQuery("SY_TablaCorre_mnt03", arrPrm);

            return intRes;

             }
             catch (Exception ex)
             {

            ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
            throw objEx;

             }
        }
Ejemplo n.º 6
0
        /// <summary>
        /// 条件子语句参数添加方法 Where
        /// </summary>
        /// <param name="Pi"></param>
        /// <param name="Entity"></param>
        public void AddParWhere(PropertyInfo Pi, IEntityBase Entity, Operator OperatorObj, IDvTable DvTable)
        {
            OleDbParameter oledbp = ParType(Pi, Entity, "Where" + Pi.Name);

            oledbp.Value = DvTable.InClause.GetClause(Pi);// ValueConfirm(OperatorObj, oledbp.Value);
            this.pravale.Add(oledbp);
        }
Ejemplo n.º 7
0
        public int DeleteData(IEntityBase value)
        {
            EConfigHoraSet objE = (EConfigHoraSet)value;

             try
             {

            using (TransactionScope tx = new TransactionScope())
            {

               this.DeleteDetail(objE.ColConfigHora, false);
               //this.DeleteMaster(objE.EConfigHora);

               tx.Complete();

            }

            return 1;

             }
             catch (Exception ex)
             {

            throw ex;

             }
        }
Ejemplo n.º 8
0
        /// <summary>
        /// 参数类型 这里还没做完
        /// </summary>
        /// <param name="Pi"></param>
        /// <param name="Entity"></param>
        /// <param name="ParKey"></param>
        /// <returns></returns>
        protected virtual OleDbParameter ParType(PropertyInfo Pi, IEntityBase Entity, string ParKey)
        {
            OleDbParameter result      = null;
            FieldSetBase   fsbString   = new FieldSetString();
            FieldSetBase   fsblong     = new FieldSetLong();
            FieldSetBase   fsbDateTime = new FieldSetDateTime();
            FieldSetBase   fsbInt      = new FieldSetInt();
            FieldSetBase   fsbFloat    = new FieldSetFloat();
            FieldSetBase   fsbDouble   = new FieldSetDouble();
            FieldSetBase   fsbByteAry  = new FieldSetByteArray();

            fsbString.SetNextFieldSetType(fsblong);
            fsbString.SetNextFieldSetType(fsbDateTime);
            fsbString.SetNextFieldSetType(fsbInt);
            fsbString.SetNextFieldSetType(fsbFloat);
            fsbString.SetNextFieldSetType(fsbDouble);
            fsbString.SetNextFieldSetType(fsbByteAry);

            result = fsbString.Definition(Pi, Entity, ParKey);
            if (result == null)
            {
                throw new Exception("数据映射对象的实体字段类型在参数化时无法处理");
            }
            return(result);
        }
Ejemplo n.º 9
0
        /// <summary>
        /// 条件子语句参数添加方法 Where
        /// </summary>
        /// <param name="Pi"></param>
        /// <param name="Entity"></param>
        public void AddParWhere(PropertyInfo Pi, IEntityBase Entity, Operator OperatorObj)
        {
            OleDbParameter oledbp = ParType(Pi, Entity, "Where" + Pi.Name);

            oledbp.Value = ValueConfirm(OperatorObj, oledbp.Value);
            this.pravale.Add(oledbp);
        }
Ejemplo n.º 10
0
        /// <summary>
        /// 创建实体
        /// </summary>
        /// <param name="Entity"></param>
        /// <returns></returns>
        public bool CreateEntity(IEntityBase Entity)
        {
            ICreateTable ct = new CreateTable(Entity);

            ct.ExecuteScript();
            return(true);
        }
Ejemplo n.º 11
0
        public override void Place(IEntityBase entity, IStructBlock iBlock, IStructBlock targetIBlock, BlockFace face)
        {
            var block = (StructBlock)iBlock;

            switch (face)
            {
            case BlockFace.West:
                block.MetaData = (byte)MetaData.SignWall.West;
                break;

            case BlockFace.East:
                block.MetaData = (byte)MetaData.SignWall.East;
                break;

            case BlockFace.North:
                block.MetaData = (byte)MetaData.SignWall.North;
                break;

            case BlockFace.South:
                block.MetaData = (byte)MetaData.SignWall.South;
                break;

            default:
                return;
            }
            base.Place(entity, block, targetIBlock, face);
        }
Ejemplo n.º 12
0
 public override int SaveChanges()
 {
     EntityState[] states =
         new EntityState[] {
         EntityState.Added, EntityState.Deleted, EntityState.Modified
     };
     // get all addded/deleted/modified entries
     foreach (var entry in ChangeTracker.Entries())
     {
         if (entry.Entity is IEntityBase &&
             states.Any(s => s == entry.State)
             )
         {
             IEntityBase e = (IEntityBase)entry.Entity;
             // some properties are always set
             e.ModifiedDate = DateTime.Now;
             // other properties are set only for
             // entities in specific state
             if (entry.State == EntityState.Added)
             {
                 e.CreatedDate = DateTime.Now;
             }
         }
     }
     // save changes
     return(base.SaveChanges());
 }
Ejemplo n.º 13
0
        /// <summary>
        /// 判断实体是否存在数据库中
        /// </summary>
        /// <param name="Entity"></param>
        /// <returns></returns>
        public bool IsEntityExist(IEntityBase Entity)
        {
            string  sql = "SELECT count(0) FROM user_tables WHERE TABLE_NAME = '" + Entity.GetType().Name + "'";
            DataSet ds  = this.odbh.GetDataSet(sql);

            if (ds == null)
            {
                return(false);
            }
            if (ds.Tables[0].Rows.Count > 0)
            {
                if (int.Parse(ds.Tables[0].Rows[0][0].ToString()) > 0)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            else
            {
                return(false);
            }
        }
Ejemplo n.º 14
0
        public override void Place(IEntityBase entity, IStructBlock iBlock, IStructBlock targetIBlock, BlockFace face)
        {
            StructBlock  block  = (StructBlock)iBlock;
            LivingEntity living = entity as LivingEntity;

            if (living == null)
            {
                return;
            }
            switch (living.FacingDirection(4))
            {
            case "N":
                block.MetaData = (byte)MetaData.Door.Northwest;
                break;

            case "W":
                block.MetaData = (byte)MetaData.Door.Southwest;
                break;

            case "S":
                block.MetaData = (byte)MetaData.Door.Southeast;
                break;

            case "E":
                block.MetaData = (byte)MetaData.Door.Northeast;
                break;

            default:
                return;
            }
            base.Place(entity, block, targetIBlock, face);
        }
Ejemplo n.º 15
0
    public bool HasInheritance(IPersistentType persistentType)
    {
        int inheritanceCount = 0;

        IInterface  @interface = persistentType as IInterface;
        IEntityBase entityBase = persistentType as IEntityBase;

        if (@interface != null)
        {
            if (entityBase == null)
            {
                inheritanceCount = @interface.InheritedInterfaces.Count;
            }
        }

        if (entityBase != null)
        {
            inheritanceCount = entityBase.InheritedInterfaces.Count;
            if (entityBase.BaseType != null)
            {
                inheritanceCount++;
            }
        }

        return(inheritanceCount > 0);
    }
Ejemplo n.º 16
0
        public string[] UpdateData(IEntityBase value)
        {
            EConfigHoraSet objE = (EConfigHoraSet)value;
             object[] objRet = null;

             try
             {

            using (TransactionScope tx = new TransactionScope())
            {

               this.DeleteDetail(objE.ColConfigHora, true);

               //objRet = this.UpdateMaster(objE.EConfigHora);

               this.UpdateDetail(objE.ColConfigHora, objRet);

               tx.Complete();

            }

            if (objRet == null)
               return null;

            return new String[] { objRet[0].ToString() };

             }
             catch (Exception ex)
             {

            throw ex;

             }
        }
Ejemplo n.º 17
0
        public DataTable GetByCriteria(IEntityBase value)
        {
            EConcepRemu objE = (EConcepRemu)value;

            try
            {

                ArrayList arrPrm = new ArrayList();

                arrPrm.Add(DataHelper.CreateParameter("@pidEmpresa", SqlDbType.Char, 3, objE.IdEmpresa));
                arrPrm.Add(DataHelper.CreateParameter("@pidConRemu", SqlDbType.Char, 3, objE.IdConRemu));
                arrPrm.Add(DataHelper.CreateParameter("@pdsConRemu", SqlDbType.VarChar, 50, objE.DsConRemu));
                arrPrm.Add(DataHelper.CreateParameter("@pidTipConcep", SqlDbType.Char, 3, objE.IdTipConcep));
                arrPrm.Add(DataHelper.CreateParameter("@pstCtaCte", SqlDbType.Char, 1, objE.StCtaCte));

                DataTable dt = this.ExecuteDatatable("RH_ConcepRemu_qry01", arrPrm);

                return dt;

            }
            catch (Exception ex)
            {

                ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
                throw objEx;

            }
        }
        public int Delete(IEntityBase value)
        {
            ELiquidacionDet objE = (ELiquidacionDet)value;

            try
            {

                ArrayList arrPrm = new ArrayList();

                arrPrm.Add(DataHelper.CreateParameter("@pidPeriodo", SqlDbType.Char, 4, objE.IdPeriodo));
                arrPrm.Add(DataHelper.CreateParameter("@pidEmpresa", SqlDbType.Char, 3, objE.IdEmpresa));
                arrPrm.Add(DataHelper.CreateParameter("@pidForPago", SqlDbType.Char, 3, objE.IdForPago));
                arrPrm.Add(DataHelper.CreateParameter("@pidPlanilla", SqlDbType.Char, 3, objE.IdPlanilla));
                arrPrm.Add(DataHelper.CreateParameter("@pnuProcAnual", SqlDbType.SmallInt, objE.NuProcAnual));
                arrPrm.Add(DataHelper.CreateParameter("@pidPersonal", SqlDbType.Char, 7, objE.IdPersonal));
                arrPrm.Add(DataHelper.CreateParameter("@pidLiquidacion", SqlDbType.Char, 4, objE.IdLiquidacion));
                arrPrm.Add(DataHelper.CreateParameter("@pnuSecuen", SqlDbType.SmallInt, objE.NuSecuen));

                int intRes = this.ExecuteNonQuery("RH_LiquidacionDet_mnt03", arrPrm);

                return intRes;

            }
            catch (Exception ex)
            {

                ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
                throw objEx;

            }
        }
Ejemplo n.º 19
0
        public DataTable GetByCriteria(IEntityBase value)
        {
            EPrestaCuota objE = (EPrestaCuota)value;

             try
             {

            ArrayList arrPrm = new ArrayList();

            arrPrm.Add(DataHelper.CreateParameter("@pidEmpresa", SqlDbType.Char, 3, objE.IdEmpresa));
            arrPrm.Add(DataHelper.CreateParameter("@pidPersonal", SqlDbType.Char, 7, objE.IdPersonal));
            arrPrm.Add(DataHelper.CreateParameter("@pidPrestamo", SqlDbType.Char, 4, objE.IdPrestamo));
            arrPrm.Add(DataHelper.CreateParameter("@pnuCuota", SqlDbType.SmallInt, objE.NuCuota));

            DataTable dt = this.ExecuteDatatable("RH_PrestaCuota_qry01", arrPrm);

            return dt;

             }
             catch (Exception ex)
             {

            ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
            throw objEx;

             }
        }
        public DataTable GetByCriteria(IEntityBase value)
        {
            ETablaVCAcumDet objE = (ETablaVCAcumDet)value;

             try
             {

            ArrayList arrPrm = new ArrayList();

            arrPrm.Add(DataHelper.CreateParameter("@pidTablaVC", SqlDbType.Char, 3, objE.IdTablaVC));
            arrPrm.Add(DataHelper.CreateParameter("@pidAcumula", SqlDbType.Char, 3, objE.IdAcumula));
            arrPrm.Add(DataHelper.CreateParameter("@pidColumna", SqlDbType.Char, 3, objE.IdColumna));

            DataTable dt = this.ExecuteDatatable("RH_TablaVCAcumDet_qry01", arrPrm);

            return dt;

             }
             catch (Exception ex)
             {

            ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
            throw objEx;

             }
        }
Ejemplo n.º 21
0
        public TDto GetModel <TDto>(IEntityBase domainEntity) where TDto : DtoBase
        {
            if (TypesEqual <TDto, ClaimDto>())
            {
                var claimEntity = (Domain.IdentityEntity.UserClaim)domainEntity;

                return(new ClaimDto
                {
                    Id = claimEntity.Id,
                    UserId = claimEntity.UserId,
                    ClaimType = claimEntity.ClaimType,
                    ClaimValue = claimEntity.ClaimValue,
                    Links = new List <Link>
                    {
                        new Link
                        {
                            Rel = "Self",
                            Href = Url.Link("GetClaim", new { userId = claimEntity.UserId, id = claimEntity.Id }),
                            Method = "GET"
                        },
                        new Link
                        {
                            Rel = "User",
                            Href = Url.Link("GetUser", new { id = claimEntity.UserId }),
                            Method = "GET"
                        }
                    }
                } as TDto);
            }

            return(null);
        }
Ejemplo n.º 22
0
        public override void Place(IEntityBase entity, IStructBlock iBlock, IStructBlock targetIBlock, BlockFace face)
        {
            var block = (StructBlock)iBlock;
            var living = entity as LivingEntity;
            if (living == null)
                return;

            // TODO: Bugged - should depend on the player's Yaw/Pitch
            switch (living.FacingDirection(4))
            {
                case "N":
                    block.MetaData = (byte)MetaData.Stairs.South;
                    break;
                case "E":
                    block.MetaData = (byte)MetaData.Stairs.West;
                    break;
                case "S":
                    block.MetaData = (byte)MetaData.Stairs.North;
                    break;
                case "W":
                    block.MetaData = (byte)MetaData.Stairs.East;
                    break;
                default:
                    return;
            }
            base.Place(entity, block, targetIBlock, face);
        }
Ejemplo n.º 23
0
        /// <summary>
        /// Crea Horas Para Subsidio
        /// </summary>
        /// <param name="value"></param>
        /// <returns></returns>
        public int CrearHorasSubsidio(IEntityBase value)
        {
            EProcPlaCalc objE = (EProcPlaCalc)value;

              try
              {

              ArrayList arrPrm = new ArrayList();

              arrPrm.Add(DataHelper.CreateParameter("@pidPeriodo", SqlDbType.Char, 4, objE.IdPeriodo));
              arrPrm.Add(DataHelper.CreateParameter("@pidEmpresa", SqlDbType.Char, 3, objE.IdEmpresa));
              arrPrm.Add(DataHelper.CreateParameter("@pidPlanilla", SqlDbType.Char, 3, objE.IdPlanilla));
              arrPrm.Add(DataHelper.CreateParameter("@pidForPago", SqlDbType.Char, 3, objE.IdForPago));
              arrPrm.Add(DataHelper.CreateParameter("@pnuProcAnual", SqlDbType.SmallInt, objE.NuProcAnual));

              int intRes = this.ExecuteNonQuery("RH_ProcPlaCalc_ope08", arrPrm);

              return intRes;

              }
              catch (Exception ex)
              {

              ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
              throw objEx;

              }
        }
Ejemplo n.º 24
0
        public static void Enqueue(AppCommands commandType, IEntityBase entity, ExecutionTrigger trigger, object value, ModifyAction modifyAction)
        {
            var command = new QueuedCommand
            {
                CommandType = commandType,
                Target = entity.UniqueId,
                Status = ExecutionStatus.Pending,
                TriggerType = trigger,
                Value = value.ToString(),
                ModifyAction = modifyAction,
                DateCreated = DateTime.Now,
                DateScheduled = DateTime.Now
            };

            ThreadPool.QueueUserWorkItem(delegate
            {
                ClientState.Current.DataService.Save(command);

                switch (trigger)
                {
                    case ExecutionTrigger.Connection:
                        EventBroker.Publish(AppEvents.RequestCommands);
                        break;

                    case ExecutionTrigger.Send:
                        EventBroker.Publish(AppEvents.RequestSend);
                        break;

                    case ExecutionTrigger.Receive:
                        EventBroker.Publish(AppEvents.RequestReceive);
                        break;
                }
            });
        }
Ejemplo n.º 25
0
        public int DeleteData(IEntityBase value)
        {
            EPersonalSet objE = (EPersonalSet)value;

            try
            {

                using (TransactionScope tx = new TransactionScope())
                {
                    this.DeleteDetailB(objE.ColPerContrato, true);
                    this.DeleteDetail(objE.ColPerDepen, true);
                    this.UpdateMasterB(objE.CliProv);
                    this.UpdateMaster(objE.Personal);
                    this.DeleteDetailE(objE.ColPerExpeLabo, true);
                    this.DeleteDetailF(objE.ColPerEducacion, true);
                    tx.Complete();

                }

                return 1;

            }
            catch (Exception ex)
            {

                throw ex;

            }
        }
Ejemplo n.º 26
0
        public string GenNewCode(IEntityBase value)
        {
            ETablaCorre objE = (ETablaCorre)value;

             try
             {
            ArrayList arrPrm = new ArrayList();

            arrPrm.Add(DataHelper.CreateParameter("@pidPeriodo", SqlDbType.Char, 4, objE.IdPeriodo));
            arrPrm.Add(DataHelper.CreateParameter("@pidEmpresa", SqlDbType.Char, 3, objE.IdEmpresa));
            arrPrm.Add(DataHelper.CreateParameter("@pidTabla", SqlDbType.VarChar, 25, objE.IdTabla));

            DataTable dt = this.ExecuteDatatable("SY_TablaCorre_mnt10", arrPrm);

            int intCode = 0;
            string strFmt = "";

            foreach (DataRow dr in dt.Rows)
            {
               intCode = Convert.ToInt32(dr[0]);
               strFmt = dr[1].ToString();
            }

            return intCode.ToString(strFmt);

             }
             catch (Exception ex)
             {
            ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
            throw objEx;

             }
        }
Ejemplo n.º 27
0
        public int DeleteData(IEntityBase value)
        {
            EUsuarioSet objE = (EUsuarioSet)value;

             try
             {

            using (TransactionScope tx = new TransactionScope())
            {

               this.DeleteDetail(objE.Usuario);
               this.DeleteMaster(objE.Usuario);

               tx.Complete();

            }

            return 1;

             }
             catch (Exception ex)
             {

            throw ex;

             }
        }
Ejemplo n.º 28
0
        public DataTable GetByCriteria(IEntityBase value)
        {
            EVarCalc objE = (EVarCalc)value;

             try
             {

            ArrayList arrPrm = new ArrayList();

            arrPrm.Add(DataHelper.CreateParameter("@pidVarCalc", SqlDbType.VarChar, 15, objE.IdVarCalc));
            arrPrm.Add(DataHelper.CreateParameter("@pdsVarCalc", SqlDbType.VarChar, 25, objE.DsVarCalc));
            arrPrm.Add(DataHelper.CreateParameter("@pidTipo", SqlDbType.Char, 2, objE.IdTipo));

            DataTable dt = this.ExecuteDatatable("RH_VarCalc_qry01", arrPrm);

            return dt;

             }
             catch (Exception ex)
             {

            ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
            throw objEx;

             }
        }
Ejemplo n.º 29
0
        public DataTable GetByCriteria(IEntityBase value)
        {
            EClienteBandeja objE = (EClienteBandeja)value;

            try
            {

                ArrayList arrPrm = new ArrayList();
                arrPrm.Add(DataHelper.CreateParameter("@pidEmpresa", SqlDbType.Char, 3, objE.IdEmpresa));
                arrPrm.Add(DataHelper.CreateParameter("@pidCliente", SqlDbType.Char, 7, objE.IdCliente));
                arrPrm.Add(DataHelper.CreateParameter("@pnuNif", SqlDbType.VarChar, 20, objE.NuNif));
                arrPrm.Add(DataHelper.CreateParameter("@pdsRazSocial", SqlDbType.VarChar, 150, objE.DsRazSocial));

                DataTable dt = this.ExecuteDatatable("PD_Clientes_qry01", arrPrm);

                return dt;

            }
            catch (Exception ex)
            {

                ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
                throw objEx;

            }
        }
Ejemplo n.º 30
0
        /// <summary>
        /// Destroy the block
        /// </summary>
        /// <param name="entity">entity who destroyed the block</param>
        /// <param name="block">block that has been destroyed</param>
        public virtual void Destroy(IEntityBase entity, IStructBlock iBlock)
        {
            StructBlock block = (StructBlock)iBlock;
            BlockDestroyEventArgs eventArgs = RaiseDestroyEvent(entity, block);
            if (eventArgs.EventCanceled)
                return;
            
            PlaySoundOnDestroy(entity, block);

            UpdateWorld(block, true);

            // Check if the entity is a player
            if ((entity != null) && (entity.GetType() == typeof(Player)))
            {
                // Check if the player is in creative mode
                if (((Player)entity).GameMode == System.Convert.ToByte(1))
                {
                    // Don't drop any items as the player is in creative mode
                    goto skipDrop;
                }
            }

            DropItems(entity as EntityBase, block);

            skipDrop:
            DamageItem(entity);

            NotifyNearbyBlocks((EntityBase)entity, block);
        }
Ejemplo n.º 31
0
        public int Delete(IEntityBase value)
        {
            EPerExpeLabo objE = (EPerExpeLabo)value;

            try
            {

                ArrayList arrPrm = new ArrayList();

                arrPrm.Add(DataHelper.CreateParameter("@pidEmpresa", SqlDbType.Char, 3, objE.IdEmpresa));
                arrPrm.Add(DataHelper.CreateParameter("@pidPersonal", SqlDbType.Char, 7, objE.IdPersonal));
                arrPrm.Add(DataHelper.CreateParameter("@pnuSecuen", SqlDbType.SmallInt, objE.NuSecuen));

                int intRes = this.ExecuteNonQuery("RH_PerExpeLabo_mnt03", arrPrm);

                return intRes;

            }
            catch (Exception ex)
            {

                ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
                throw objEx;

            }
        }
Ejemplo n.º 32
0
        public DataTable GetByCriteria(IEntityBase value)
        {
            ETablaCF objE = (ETablaCF) value;

            try
            {

                ArrayList arrPrm = new ArrayList();

                arrPrm.Add(DataHelper.CreateParameter("@pidEditor", SqlDbType.Char,3, objE.IdEditor));
                arrPrm.Add(DataHelper.CreateParameter("@pnuSeccion", SqlDbType.Char,1, objE.NuSeccion));

                DataTable dt = this.ExecuteDatatable("RH_TablaCF_qry01", arrPrm);

                return dt;

            }
            catch(Exception ex)
            {

                ServerObjectException objEx = (ServerObjectException) this.GetException(MethodBase.GetCurrentMethod(), ex);
                throw objEx;

            }
        }
Ejemplo n.º 33
0
        public DataTable GetByCriteria(IEntityBase value)
        {
            ESubsidioBandeja objE = (ESubsidioBandeja)value;

            try
            {

                ArrayList arrPrm = new ArrayList();

                arrPrm.Add(DataHelper.CreateParameter("@pidPeriodo", SqlDbType.Char, 4, objE.IdPeriodo));
                arrPrm.Add(DataHelper.CreateParameter("@pidEmpresa", SqlDbType.Char, 3, objE.IdEmpresa));
                arrPrm.Add(DataHelper.CreateParameter("@pidForPago", SqlDbType.Char, 3, objE.IdForPago));
                arrPrm.Add(DataHelper.CreateParameter("@pidPlanilla", SqlDbType.Char, 3, objE.IdPlanilla));
                arrPrm.Add(DataHelper.CreateParameter("@pnuProcAnual", SqlDbType.SmallInt, objE.NuProcAnual));
                arrPrm.Add(DataHelper.CreateParameter("@pidPersonal", SqlDbType.Char, 7, objE.IdPersonal));
                arrPrm.Add(DataHelper.CreateParameter("@pidSubsidio", SqlDbType.Char, 4, objE.IdSubsidio));
                arrPrm.Add(DataHelper.CreateParameter("@pdsRazSocial", SqlDbType.VarChar, 150, objE.DsApellNom));
                arrPrm.Add(DataHelper.CreateParameter("@pnuDocIden", SqlDbType.VarChar, 20, objE.NuDocIden));

                DataTable dt = this.ExecuteDatatable("RH_Subsidio_qry01", arrPrm);

                return dt;

            }
            catch (Exception ex)
            {

                ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
                throw objEx;

            }
        }
Ejemplo n.º 34
0
        public IEntityBase GetByKey(IEntityBase value)
        {
            ESubsidio objE = (ESubsidio)value;

            try
            {

                ArrayList arrPrm = new ArrayList();

                arrPrm.Add(DataHelper.CreateParameter("@pidPeriodo", SqlDbType.Char, 4, objE.IdPeriodo));
                arrPrm.Add(DataHelper.CreateParameter("@pidEmpresa", SqlDbType.Char, 3, objE.IdEmpresa));
                arrPrm.Add(DataHelper.CreateParameter("@pidPersonal", SqlDbType.Char, 7, objE.IdPersonal));
                arrPrm.Add(DataHelper.CreateParameter("@pidSubsidio", SqlDbType.Char, 4, objE.IdSubsidio));

                DataTable dt = this.ExecuteDatatable("RH_Subsidio_qry02", arrPrm);

                objE = null;

                foreach (DataRow dr in dt.Rows)
                    objE = DataHelper.CopyDataRowToEntity<ESubsidio>(dr, typeof(ESubsidio));

                return objE;

            }
            catch (Exception ex)
            {

                ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
                throw objEx;

            }
        }
Ejemplo n.º 35
0
        public int DeleteData(IEntityBase value)
        {
            EProcPlani objE = (EProcPlani)value;

             try
             {

            using (TransactionScope tx = new TransactionScope())
            {

               //this.DeleteDetail(objE.EProcPlani, false);
               this.DeleteMaster(objE);

               tx.Complete();

            }

            return 1;

             }
             catch
             {
            return 0;
             }
        }
Ejemplo n.º 36
0
        public DataTable GetByCriteria(IEntityBase value)
        {
            EUsuario objE = (EUsuario)value;

             try
             {

            ArrayList arrPrm = new ArrayList();

            arrPrm.Add(DataHelper.CreateParameter("@pidLogon", SqlDbType.VarChar, 30, DataHelper.IfNullString(objE.IdLogon)));
            arrPrm.Add(DataHelper.CreateParameter("@pdsNombres", SqlDbType.VarChar, 50, DataHelper.IfNullString(objE.DsNombres)));

            DataTable dt = this.ExecuteDatatable("SY_Usuario_qry01", arrPrm);

            return dt;

             }
             catch (Exception ex)
             {

            ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
            throw objEx;

             }
        }
Ejemplo n.º 37
0
        public DataTable GetBoletaTrabajadorDet(IEntityBase value)
        {
            EProcPlaRes objE = (EProcPlaRes)value;

             try
             {

            ArrayList arrPrm = new ArrayList();

            arrPrm.Add(DataHelper.CreateParameter("@pidPeriodo", SqlDbType.Char, 4, objE.IdPeriodo));
            arrPrm.Add(DataHelper.CreateParameter("@pidEmpresa", SqlDbType.Char, 3, objE.IdEmpresa));
            arrPrm.Add(DataHelper.CreateParameter("@pidForPago", SqlDbType.Char, 3, objE.IdForPago));
            arrPrm.Add(DataHelper.CreateParameter("@pidPlanilla", SqlDbType.Char, 3, objE.IdPlanilla));
            arrPrm.Add(DataHelper.CreateParameter("@pnuProcAnual", SqlDbType.SmallInt, objE.NuProcAnual));
            arrPrm.Add(DataHelper.CreateParameter("@pidPersonal", SqlDbType.Char, 7, objE.IdPersonal));
            arrPrm.Add(DataHelper.CreateParameter("@pidCCosto", SqlDbType.Char, 15, objE.IdCCosto));

            DataTable dt = this.ExecuteDatatable("RH_PlanBolPago_Rpt02", arrPrm);

            return dt;

             }
             catch (Exception ex)
             {

            ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
            throw objEx;

             }
        }
Ejemplo n.º 38
0
        public bool Exists(IEntityBase value)
        {
            EBanco objE = (EBanco)value;

             try
             {

            ArrayList arrPrm = BuildParamInterface(objE);
            int intIdx = arrPrm.Add(DataHelper.CreateParameter("@pexists", SqlDbType.Char, 1, ParameterDirection.InputOutput, "0"));

            SqlParameter[] objPrm = (SqlParameter[])arrPrm.ToArray(typeof(SqlParameter));

            DataTable dt = this.ExecuteDatatable("MG_Banco_qry05", arrPrm);

            return objPrm[intIdx].Value.ToString() == "1" ? true : false;

             }
             catch (Exception ex)
             {

            ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
            throw objEx;

             }
        }
Ejemplo n.º 39
0
        public DataTable GetByCriteria(IEntityBase value)
        {
            ELiquidacionBandeja objE = (ELiquidacionBandeja)value;

            try
            {

                ArrayList arrPrm = new ArrayList();

                arrPrm.Add(DataHelper.CreateParameter("@pidEmpresa", SqlDbType.Char, 3, objE.IdEmpresa));
                arrPrm.Add(DataHelper.CreateParameter("@pidLiquidacion", SqlDbType.VarChar, 7, objE.IdLiquidacion));
                arrPrm.Add(DataHelper.CreateParameter("@pidPersonal", SqlDbType.Char, 7, objE.IdPersonal));
                arrPrm.Add(DataHelper.CreateParameter("@pnuDocIden", SqlDbType.VarChar, 20, objE.NuDocIden));
                arrPrm.Add(DataHelper.CreateParameter("@pdsApellNom", SqlDbType.VarChar,150,objE.DsApellNom));

                DataTable dt = this.ExecuteDatatable("RH_Liquidacion_qry01", arrPrm);

                return dt;

            }
            catch (Exception ex)
            {

                ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
                throw objEx;

            }
        }
Ejemplo n.º 40
0
        ///Mi Reporte Resumen de Banco BIF
        public DataTable GetBancoResu(IEntityBase value)
        {
            EBancoResu objE = (EBancoResu)value;

              try
              {

              ArrayList arrPrm = new ArrayList();

              arrPrm.Add(DataHelper.CreateParameter("@pidPeriodo", SqlDbType.Char, 4, objE.IdPeriodo));
              arrPrm.Add(DataHelper.CreateParameter("@pidEmpresa", SqlDbType.Char, 3, objE.IdEmpresa));
              arrPrm.Add(DataHelper.CreateParameter("@pidForPago", SqlDbType.Char, 3, objE.IdForPago));
              arrPrm.Add(DataHelper.CreateParameter("@pidPlanilla", SqlDbType.Char, 3, objE.IdPlanilla));
              arrPrm.Add(DataHelper.CreateParameter("@pnuProcAnual", SqlDbType.SmallInt, objE.NuProcAnual));
              arrPrm.Add(DataHelper.CreateParameter("@pnuProcAnualFin", SqlDbType.SmallInt, objE.NuProcAnualFin));

              DataTable dt = this.ExecuteDatatable("RH_ResumenBanco", arrPrm);

              return dt;

              }
              catch (Exception ex)
              {

              ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
              throw objEx;

              }
        }
Ejemplo n.º 41
0
        public object[] Insert(IEntityBase value)
        {
            EPerExpeLabo objE = (EPerExpeLabo)value;

            ////----------- Generacion de Codigos ------------------
            //TablaCorre objDO = new TablaCorre();
            //ETablaCorre objECorre = new ETablaCorre();

            ////objECorre.IdPeriodo = objE.IdPeriodo;
            //objECorre.IdEmpresa = objE.IdEmpresa;
            //objECorre.IdTabla = "RH_PerExpeLabo";

            //string strNewCode = objDO.GenNewCode(objECorre);
            //objE.IdEmpresa = strNewCode;

            //----------------------------------------------------
            ArrayList arrPrm = BuildParamInterface(objE);

            try
            {
                int intRes = this.ExecuteNonQuery("RH_PerExpeLabo_mnt01", arrPrm);

                return new object[] { objE.IdEmpresa };

            }
            catch (Exception ex)
            {

                ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
                throw objEx;

            }
        }
Ejemplo n.º 42
0
        public int Delete(IEntityBase value)
        {
            EAfpComi objE = (EAfpComi)value;

            try
            {

                ArrayList arrPrm = new ArrayList();

                arrPrm.Add(DataHelper.CreateParameter("@pidAfp", SqlDbType.Char, 3, objE.IdAfp));
                arrPrm.Add(DataHelper.CreateParameter("@pidPeriodo", SqlDbType.Char, 4, objE.IdPeriodo));
                arrPrm.Add(DataHelper.CreateParameter("@pidMes", SqlDbType.Char, 3, objE.IdMes));
                arrPrm.Add(DataHelper.CreateParameter("@pidTipoComi", SqlDbType.Char, 3, objE.IdTipoComi));

                int intRes = this.ExecuteNonQuery("RH_AfpComi_mnt03", arrPrm);

                return intRes;

            }
            catch (Exception ex)
            {

                ServerObjectException objEx = (ServerObjectException)this.GetException(MethodBase.GetCurrentMethod(), ex);
                throw objEx;

            }
        }
Ejemplo n.º 43
0
        public string[] UpdateData(IEntityBase value)
        {
            EVarCalcSet objE = (EVarCalcSet)value;
             object[] objRet = null;

             try
             {

            using (TransactionScope tx = new TransactionScope())
            {

               this.DeleteDetail(objE.VarCalc, false);

               objRet = this.UpdateMaster(objE.VarCalc);

               this.UpdateDetail(objE.VarCalcDet, objRet);

               tx.Complete();

            }

            if (objRet == null)
               return null;

            return new String[] { objRet[0].ToString() };

             }
             catch (Exception ex)
             {

            throw ex;

             }
        }
Ejemplo n.º 44
0
        public DataTable GetByCriteria(IEntityBase value)
        {
            EEmpPeriodo objE = (EEmpPeriodo) value;

            try
            {

                ArrayList arrPrm = new ArrayList();

                arrPrm.Add(DataHelper.CreateParameter("@pidEmpresa", SqlDbType.Char,3, objE.IdEmpresa));
                arrPrm.Add(DataHelper.CreateParameter("@pidPeriodo", SqlDbType.Char,4, objE.IdPeriodo));

                DataTable dt = this.ExecuteDatatable("SY_EmpPeriodo_qry01", arrPrm);

                return dt;

            }
            catch(Exception ex)
            {

                ServerObjectException objEx = (ServerObjectException) this.GetException(MethodBase.GetCurrentMethod(), ex);
                throw objEx;

            }
        }
Ejemplo n.º 45
0
 /// <summary>
 /// 根据键、值更新原实体
 /// </summary>
 /// <param name="entity"></param>
 /// <param name="newEntity"></param>
 public static void UpdateWith(this IEntityBase entity, IEntityBase newEntity)
 {
     if (newEntity != null)
     {
         var namevalues = newEntity.GetNameValues();
         entity.UpdateWith(namevalues);
     }
 }
Ejemplo n.º 46
0
        /// <summary>
        /// 查询指定实体对象的所有值
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="EntityInstance"></param>
        /// <returns></returns>
        public virtual List <T> QueryAll <T>(IEntityBase EntityInstance)
        {
            IDvTable dvt    = DalCreateDriveTable(EntityInstance);
            DataSet  ds     = dvt.Select();
            List <T> result = this.dh.Convert <T>(EntityInstance.GetType(), ds);

            return(result);
        }
Ejemplo n.º 47
0
 /// <summary>
 /// 创建条件子语句,指定要作为条件子语句的实体对象
 /// </summary>
 /// <param name="JoinEntity">在联立的实体对象中查找</param>
 /// <param name="FieldName">字段名</param>
 /// <param name="OperatorType">运算符</param>
 /// <param name="LinkNextOperator">其后的逻辑操作符,当存在多个条件时,确定他们之间的关系</param>
 public void WhereClause(IEntityBase JoinEntity, string FieldName, Operator OperatorType, LinkOperator LinkNextOperator)
 {
     if (this.join.Entitys.Contains(JoinEntity))
     {
         CreateWhereClause(JoinEntity, FieldName, OperatorType
                           , LinkNextOperator);
     }
 }
Ejemplo n.º 48
0
 /// <summary>
 /// 获取查询子语句项
 /// </summary>
 /// <returns></returns>
 public virtual void ClauseItem(IEntityBase Entity, PropertyInfo Field
                                , string Operator, string LinkNextOperator)
 {
     this.entity           = Entity;
     this.clause           = Field.Name + " " + Operator + " :" + "Where" + Field.Name;
     this.LinknextOperator = LinkNextOperator;
     this.usefield         = Field;
 }
Ejemplo n.º 49
0
        ///// <summary>
        ///// 模糊查找指定实体对象的所有值
        ///// </summary>
        ///// <typeparam name="T"></typeparam>
        ///// <param name="Field"></param>
        ///// <param name="EntityInstance"></param>
        ///// <param name="LinkOpr"></param>
        ///// <param name="Opr"></param>
        ///// <returns></returns>
        //public virtual List<T> QueryEntityFuzzy<T>(IEntityBase EntityInstance, string Field, Operator Opr, LinkOperator LinkOpr)
        //{
        //    IDvTable dvt = DalCreateDriveTable(EntityInstance);
        //    dvt.WhereClause(Field, Opr, LinkOpr);
        //    DataSet ds = dvt.Select();
        //    List<T> result = this.dh.Convert<T>(EntityInstance.GetType(), ds);
        //    return result;
        //}

        /// <summary>
        /// 获取可用的新编号 流水最大值
        /// </summary>
        /// <returns></returns>
        public Int64 GetNewCode(IEntityBase Entity, string Field)
        {
            Int64      i  = 0;
            DataHelper dh = new DataHelper();

            i = dh.GetMaxField(Entity, Field, this.EntityFact) + 1;
            return(i);
        }
Ejemplo n.º 50
0
 public static string GetDetailAction(this IEntityBase entity)
 {
     if (entity == null)
     {
         return("操作");
     }
     return(entity.Id > 0 ? "编辑" : "新建");
 }
Ejemplo n.º 51
0
        public override void Place(IEntityBase iEntity, IStructBlock iBlock, IStructBlock targetIBlock, BlockFace face)
        {
            StructBlock block  = (StructBlock)iBlock;
            EntityBase  entity = iEntity as EntityBase;

            if (entity == null)
            {
                return;
            }

            switch (face)
            {
            case BlockFace.North:
                block.MetaData = (byte)MetaData.Lever.NorthWall;
                break;

            case BlockFace.West:
                block.MetaData = (byte)MetaData.Lever.WestWall;
                break;

            case BlockFace.East:
                block.MetaData = (byte)MetaData.Lever.EastWall;
                break;

            case BlockFace.South:
                block.MetaData = (byte)MetaData.Lever.SouthWall;
                break;

            case BlockFace.Up:
                // Works weird. Even in the original game
                if (targetIBlock.Coords.WorldZ > entity.Position.Z)
                {
                    block.MetaData = (byte)MetaData.Lever.EWGround;
                }
                else if (targetIBlock.Coords.WorldZ < entity.Position.Z)
                {
                    block.MetaData = (byte)MetaData.Lever.EWGround;
                }
                else if (targetIBlock.Coords.WorldX > entity.Position.X)
                {
                    block.MetaData = (byte)MetaData.Lever.NSGround;
                }
                else if (targetIBlock.Coords.WorldX < entity.Position.X)
                {
                    block.MetaData = (byte)MetaData.Lever.NSGround;
                }
                else
                {
                    block.MetaData = (byte)MetaData.Lever.NSGround;
                }
                break;

            default:
                return;
            }

            base.Place(entity, block, targetIBlock, face);
        }
Ejemplo n.º 52
0
        private void ThrowIfRecordIsNull(IEventBase @event, IEntityBase record)
        {
            if (record != null)
            {
                return;
            }

            throw new Exception($"Cannot process event: '{@event.EventType}'. Error: Record with ID: '{@event.Id}' cannot be found.");
        }
Ejemplo n.º 53
0
 /// <summary>
 /// Raises the block placement event
 /// </summary>
 /// <param name="entity">entity who placed the block</param>
 /// <param name="block">block that has been placed</param>
 /// <returns>resulting event args</returns>
 protected virtual bool RaisePlaceEvent(IEntityBase entity, StructBlock block)
 {
     BlockPlaceEventArgs e = new BlockPlaceEventArgs(this, entity);
     block.World.Server.PluginManager.CallEvent(Event.BlockPlace, e);
     // Destruction made not by the living can not be interrupted?
     if (entity == null)
         return true;
     return !e.EventCanceled;
 }
Ejemplo n.º 54
0
        protected void updateEntityForAdd(IEntityBase <TId> entity)
        {
            string userName = _userResolverService.GetUser();

            entity.UserSign   = userName;
            entity.UpdateDate = System.DateTime.Now;
            entity.CreateDate = System.DateTime.Now;
            entity.Status     = "A";
        }
Ejemplo n.º 55
0
        protected void UpdateEntityForAdd(IEntityBase <TId> entity)
        {
            var userName = _userResolverService.GetUser();

            entity.CreatedBy  = userName.ToString();
            entity.UpdateDate = DateTime.Now;
            entity.CreateDate = DateTime.Now;
            //entity.Status = "A";
        }
Ejemplo n.º 56
0
        static void Main(string[] args)
        {
            IContainer container = Container.SingleInstance;

            //var container = new Container();

            container.RegisterType <IEntityBase, StudentClass>();

            //container.RegisterType(action =>
            //{
            //    action.RegisterType<IEntityBase, StudentClass>();
            //});

            IEntityBase aa = container.Resolve <IEntityBase>();
            IEntityBase bb = container.Resolve <IEntityBase>();

            if (aa == bb)
            {
            }
            if (aa.Equals(bb))
            {
            }

            Console.WriteLine("Hello World!");
            //IUnityContainer container = new UnityContainer();
            //container.RegisterType<IEntityBase, Student>();
            //container.RegisterType<IEntityBase, StudentClass>("adasd");
            //container.RegisterType<IEntityBase, StudentClass>("1212");
            //var student = container.Resolve<IEntityBase>("adasd");
            //IEntityBase studentclass = container.Resolve<IEntityBase>("1212");

            string[]             a1  = "the quick brown fox".Split();
            string[]             a2  = "THE QUICK BROWN FOX".Split();
            IStructuralEquatable se1 = a1;
            bool isTrue = se1.Equals(a2, StringComparer.InvariantCultureIgnoreCase);

            string  s   = "1212";
            dynamic sb  = s;
            var     sb1 = s;

            Test1(s, sb1);
            IEntityBase entityBase = new Student();

            Queue queue = new Queue();

            OrderedDictionary dictionary = new OrderedDictionary();


            Stack stack = new Stack();

            //IContainer container = new Container();
            //container.RegisterType<IEntityBase, Student>();
            //container.RegisterType<IEntityBase, StudentClass>();
            ////container.RegisterType<IEntityBase, StudentClass>();
            //IEntityBase student = container.Resolve<IEntityBase>();
            //var studentclass = container.Resolve<StudentClass>();
        }
Ejemplo n.º 57
0
        //
        //	Protected
        //

        protected virtual IEntityBase CloneEntity(IEntityBase oObj)
        {
            if (oObj is ICloneable)
            {
                return((IEntityBase)((ICloneable)oObj).Clone());
            }

            return(null);
        }
Ejemplo n.º 58
0
        /// <summary>
        /// 更新实体数据
        /// </summary>
        /// <param name="Entity"></param>
        /// <param name="Field"></param>
        /// <param name="Opr"></param>
        /// <param name="LinkOpr"></param>
        /// <returns></returns>
        public virtual int UpdateEntityData(IEntityBase Entity, string Field, Operator Opr, LinkOperator LinkOpr)
        {
            IDvTable dvt = this.EntityFact.CreateDriveTable(Entity);

            dvt.WhereClause(Field, Opr, LinkOpr);
            int i = dvt.Update();

            return(i);
        }
Ejemplo n.º 59
0
        /// <summary>
        /// Damages the active item in the inventory when the block is destroyed
        /// </summary>
        /// <param name="entity">the entity who destroyed the block</param>
        protected virtual void DamageItem(IEntityBase entity)
        {
            Player player = entity as Player;

            if (player != null && player.GameMode == 0)
            {
                player.Inventory.DamageItem(player.Inventory.ActiveSlot);
            }
        }
Ejemplo n.º 60
0
        public override void Touch(IEntityBase entity, IStructBlock iBlock, BlockFace face)
        {
            var living = entity as LivingEntity;

            if (living != null)
            {
                living.StopFireBurnTimer();
            }
            base.Touch(entity, iBlock, face);
        }