Ejemplo n.º 1
0
        public AircraftData(int entityId, int typeId, CampType camp)
            : base(entityId, typeId, camp)
        {
            IDataTable <DRAircraft> dtAircraft = GameEntry.DataTable.GetDataTable <DRAircraft>();
            DRAircraft drAircraft = dtAircraft.GetDataRow(TypeId);

            if (drAircraft == null)
            {
                return;
            }

            //创建推进器数据
            ThrusterData = new ThrusterData(GameEntry.Entity.GenerateSerialId(), drAircraft.ThrusterId, Id, Camp);
            //附加武器数据
            for (int index = 0, weaponId = 0; (weaponId = drAircraft.GetWeaponIdAt(index)) > 0; index++)
            {
                AttachWeaponData(new WeaponData(GameEntry.Entity.GenerateSerialId(), weaponId, Id, camp));
            }
            //附加装甲数据
            for (int index = 0, armorId = 0; (armorId = drAircraft.GetArmorIdAt(index)) > 0; index++)
            {
                AttachArmorData(new ArmorData(GameEntry.Entity.GenerateSerialId(), armorId, Id, camp));
            }

            DeadEffectId = drAircraft.DeadEffectId;   //死亡特效id
            DeadSoundId  = drAircraft.DeadSoundId;    //死亡声音id

            HP = m_MaxHP;
        }
    private void Start()
    {
        m_DataTableManager = FrameworkEntry.Instance.GetManager <DataTableManager>();
        m_DataTableManager.LoadDataTable <DRAircraft>("Aircraft", "Aircraft");

        DataTable <DRAircraft> aircraftTable = m_DataTableManager.GetDataTable <DRAircraft>();
        DRAircraft             aircraft      = aircraftTable[10000]; //这里要给战机编号

        Debug.Log(aircraft.Id);
    }