Show
Ignore:
Timestamp:
11/22/08 00:35:41 (17 years ago)
Author:
yumileroy
Message:

Delete possessed AI only on creature delete.

Original author: gvcoman
Date: 2008-11-16 14:38:02-05:00

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/src/shared/Database/DBCStructure.h

    r260 r272  
    1111 * This program is distributed in the hope that it will be useful, 
    1212 * but WITHOUT ANY WARRANTY; without even the implied warranty of 
    13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
     13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 
    1414 * GNU General Public License for more details. 
    1515 * 
    1616 * You should have received a copy of the GNU General Public License 
    1717 * along with this program; if not, write to the Free Software 
    18  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
     18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 
    1919 */ 
    2020 
     
    2222#define DBCSTRUCTURE_H 
    2323 
    24 #include "DBCEnums.h" 
    2524#include "Platform/Define.h" 
    2625 
     
    3736#pragma pack(push,1) 
    3837#endif 
     38 
     39enum AreaTeams 
     40{ 
     41    AREATEAM_NONE  = 0, 
     42    AREATEAM_ALLY  = 2, 
     43    AREATEAM_HORDE = 4 
     44}; 
     45 
     46enum AreaFlags 
     47{ 
     48    AREA_FLAG_SNOW             = 0x00000001,                // snow (only Dun Morogh, Naxxramas, Razorfen Downs and Winterspring) 
     49    AREA_FLAG_UNK1             = 0x00000002,                // unknown, (only Naxxramas and Razorfen Downs) 
     50    AREA_FLAG_UNK2             = 0x00000004,                // Only used on development map 
     51    AREA_FLAG_SLAVE_CAPITAL    = 0x00000008,                // slave capital city flag? 
     52    AREA_FLAG_UNK3             = 0x00000010,                // unknown 
     53    AREA_FLAG_SLAVE_CAPITAL2   = 0x00000020,                // slave capital city flag? 
     54    AREA_FLAG_UNK4             = 0x00000040,                // many zones have this flag 
     55    AREA_FLAG_ARENA            = 0x00000080,                // arena, both instanced and world arenas 
     56    AREA_FLAG_CAPITAL          = 0x00000100,                // main capital city flag 
     57    AREA_FLAG_CITY             = 0x00000200,                // only for one zone named "City" (where it located?) 
     58    AREA_FLAG_OUTLAND          = 0x00000400,                // outland zones? (only Eye of the Storm not have this flag, but have 0x00004000 flag) 
     59    AREA_FLAG_SANCTUARY        = 0x00000800,                // sanctuary area (PvP disabled) 
     60    AREA_FLAG_NEED_FLY         = 0x00001000,                // only Netherwing Ledge, Socrethar's Seat, Tempest Keep, The Arcatraz, The Botanica, The Mechanar, Sorrow Wing Point, Dragonspine Ridge, Netherwing Mines, Dragonmaw Base Camp, Dragonmaw Skyway 
     61    AREA_FLAG_UNUSED1          = 0x00002000,                // not used now (no area/zones with this flag set in 2.4.2) 
     62    AREA_FLAG_OUTLAND2         = 0x00004000,                // outland zones? (only Circle of Blood Arena not have this flag, but have 0x00000400 flag) 
     63    AREA_FLAG_PVP              = 0x00008000,                // pvp objective area? (Death's Door also has this flag although it's no pvp object area) 
     64    AREA_FLAG_ARENA_INSTANCE   = 0x00010000,                // used by instanced arenas only 
     65    AREA_FLAG_UNUSED2          = 0x00020000,                // not used now (no area/zones with this flag set in 2.4.2) 
     66    AREA_FLAG_UNK5             = 0x00040000,                // just used for Amani Pass, Hatchet Hills 
     67    AREA_FLAG_LOWLEVEL         = 0x00100000                 // used for some starting areas with area_level <=15 
     68}; 
     69 
     70enum FactionTemplateFlags 
     71{ 
     72    FACTION_TEMPLATE_FLAG_CONTESTED_GUARD   =   0x00001000, // faction will attack players that were involved in PvP combats 
     73}; 
    3974 
    4075struct AreaTableEntry 
     
    145180                                                            // 64 string flags, unused 
    146181                                                            // 65-67 unused 
    147     uint32      addon;                                      // 68 (0 - original race, 1 - tbc addon, ...) 
     182    uint32    addon;                                         // 68 (0 - original race, 1 - tbc addon, ...) 
    148183}; 
    149184 
     
    159194{ 
    160195    uint32    ID;                                           // 0 
    161     float     minScale;                                     // 1 
    162     uint32    minScaleLevel;                                // 2 0/1 
     196    float     minScale;                                     // 1   
     197    uint32    minScaleLevel;                                // 2 0/1       
    163198    float     maxScale;                                     // 3 
    164199    uint32    maxScaleLevel;                                // 4 0/60 
    165     uint32    skillLine[2];                                 // 5-6 
     200    uint32    skillLine;                                    // 5 
     201    uint32    skillLine2;                                   // 6 
    166202    uint32    petFoodMask;                                  // 7 
    167203    char*     Name[16];                                     // 8-23 
     
    207243    //char*     description[16];                            // 36-51 unused 
    208244                                                            // 52 string flags, unused 
     245}; 
     246 
     247enum FactionMasks 
     248{ 
     249    FACTION_MASK_PLAYER   = 1,                              // any player 
     250    FACTION_MASK_ALLIANCE = 2,                              // player or creature from alliance team 
     251    FACTION_MASK_HORDE    = 4,                              // player or creature from horde team 
     252    FACTION_MASK_MONSTER  = 8                               // aggressive creature from monster team 
     253                                                            // if none flags set then non-aggressive creature 
    209254}; 
    210255 
     
    257302 
    258303#define GT_MAX_LEVEL    100 
    259  
    260304struct GtCombatRatingsEntry 
    261305{ 
     
    386430                                                            // 17 name flags, unused 
    387431    //char*       content[16];                              // 18-33 
     432}; 
     433 
     434enum MapTypes 
     435{ 
     436    MAP_COMMON          = 0, 
     437    MAP_INSTANCE        = 1, 
     438    MAP_RAID            = 2, 
     439    MAP_BATTLEGROUND    = 3, 
     440    MAP_ARENA           = 4 
    388441}; 
    389442 
     
    491544                                                            // 36 string flags, not used 
    492545    uint32    spellIcon;                                    // 37 
     546}; 
     547 
     548enum AbilytyLearnType 
     549{ 
     550    ABILITY_LEARNED_ON_GET_PROFESSION_SKILL     = 1, 
     551    ABILITY_LEARNED_ON_GET_RACE_OR_CLASS_SKILL  = 2 
    493552}; 
    494553 
     
    700759}; 
    701760 
     761enum ItemEnchantmentType 
     762{ 
     763    ITEM_ENCHANTMENT_TYPE_NONE         = 0, 
     764    ITEM_ENCHANTMENT_TYPE_COMBAT_SPELL = 1, 
     765    ITEM_ENCHANTMENT_TYPE_DAMAGE       = 2, 
     766    ITEM_ENCHANTMENT_TYPE_EQUIP_SPELL  = 3, 
     767    ITEM_ENCHANTMENT_TYPE_RESISTANCE   = 4, 
     768    ITEM_ENCHANTMENT_TYPE_STAT         = 5, 
     769    ITEM_ENCHANTMENT_TYPE_TOTEM        = 6 
     770}; 
     771 
    702772struct SpellItemEnchantmentEntry 
    703773{ 
     
    757827}; 
    758828 
     829struct TaxiPathEntry 
     830{ 
     831    uint32    ID; 
     832    uint32    from; 
     833    uint32    to; 
     834    uint32    price; 
     835}; 
     836 
    759837struct TaxiNodesEntry 
    760838{ 
     
    770848}; 
    771849 
    772 struct TaxiPathEntry 
    773 { 
    774     uint32    ID; 
    775     uint32    from; 
    776     uint32    to; 
    777     uint32    price; 
    778 }; 
    779  
    780 struct TaxiPathNodeEntry 
    781 { 
    782     uint32    path; 
    783     uint32    index; 
    784     uint32    mapid; 
    785     float     x; 
    786     float     y; 
    787     float     z; 
    788     uint32    actionFlag; 
    789     uint32    delay; 
     850enum TotemCategoryType 
     851{ 
     852    TOTEM_CATEGORY_TYPE_KNIFE   = 1, 
     853    TOTEM_CATEGORY_TYPE_TOTEM   = 2, 
     854    TOTEM_CATEGORY_TYPE_ROD     = 3, 
     855    TOTEM_CATEGORY_TYPE_PICK    = 21, 
     856    TOTEM_CATEGORY_TYPE_STONE   = 22, 
     857    TOTEM_CATEGORY_TYPE_HAMMER  = 23, 
     858    TOTEM_CATEGORY_TYPE_SPANNER = 24 
    790859}; 
    791860