Renamed/expanded 'BagTypes' enumeration

This commit is contained in:
Uleat
2013-10-18 20:33:41 -04:00
parent 2c25241763
commit 403ac53a9e
8 changed files with 238 additions and 180 deletions
+1 -1
View File
@@ -2049,7 +2049,7 @@ void Mob::SetAttackTimer() {
const ItemInst *pi = CastToClient()->GetInv().GetItem(r);
if(!pi)
continue;
if(pi->IsType(ItemClassContainer) && pi->GetItem()->BagType == bagTypeQuiver)
if(pi->IsType(ItemClassContainer) && pi->GetItem()->BagType == BagType_Quiver)
{
float temp_wr = ( pi->GetItem()->BagWR / RuleI(Combat, QuiverWRHasteDiv) );
if(temp_wr > max_quiver)
+4 -41
View File
@@ -71,46 +71,9 @@ IT10725_ACTORDEF=Shuriken
*/
// Object Types
#define OT_DROPPEDITEM 0x01
#define OT_MEDICINEBAG 0x09
#define OT_TOOLBOX 0x0A
#define OT_OVEN 0x0F
#define OT_SEWINGKIT 0x10 //and loom
#define OT_FORGE 0x11
#define OT_FLETCHINGKIT 0x12
#define OT_BREWBARREL 0x13
#define OT_JEWELERSKIT 0x14
#define OT_POTTERYWHEEL 0x15
#define OT_KILN 0x16
#define OT_KEYMAKER 0x17
#define OT_WIZARDLEX 0x18
#define OT_MAGELEX 0x19
#define OT_NECROLEX 0x1A
#define OT_ENCHLEX 0x1B
// high elf forge is 0x1F (Koada'dal forge)
#define OT_TEIRDALFORGE 0x20 //dark elf
#define OT_OGGOKFORGE 0x21 //ogre
#define OT_STORMGUARDF 0x22 //dwarven
#define OT_VALEFORGE 0x31 //halfling
// gnome forge 0x23 (ak'anon forge)
// barbarian forge 0x24 (northman forge)
//
// iksar forge 0x26 (cabilis forge)
// human forge 0x27 (qeynos or freeport?) (royal qeynos forge or freeport forge)
// human forge 0x28 (qeynos or freeport?)
// halfling tailoring kit 0x29
// erudite tailoring kit 0x2A
// wood elf tailoring kit 0x2B
// wood elf fletching kit 0x2C
// iksar pottery wheel 0x2D
#define OT_TACKLEBOX 0x2e
// troll forge 0x2F (grobb forge)
#define OT_FIERDALFFORGE 0x30
// erudite forge 0x32 (erud forge)
#define OT_AUGMENT 0x35
//... (shar vahl forge)
//... wood elf (fier'dal forge)
//... (froglok forge)
extern ContainerTypes;
#define OT_DROPPEDITEM BagType_LargeBag
// Icon values:
//0x0453 a pie
@@ -209,7 +172,7 @@ protected:
ItemInst* m_inst; // Item representing object
bool m_inuse; // Currently in use by a client?
uint32 m_id; // Database key, different than drop_id
uint32 m_type; // Object Type, ie, forge, oven, dropped item, etc
uint32 m_type; // Object Type, ie, forge, oven, dropped item, etc (ref: ContainerTypes)
uint32 m_icon; // Icon to use for forge, oven, etc
float m_max_x;
float m_max_y;
+1 -1
View File
@@ -736,7 +736,7 @@ void Client::RangedAttack(Mob* other) {
if(pi == nullptr || !pi->IsType(ItemClassContainer))
continue;
const Item_Struct* bagitem = pi->GetItem();
if(!bagitem || bagitem->BagType != bagTypeQuiver)
if(!bagitem || bagitem->BagType != BagType_Quiver)
continue;
//we found a quiver, look for the ammo in it
+72 -61
View File
@@ -576,68 +576,79 @@ void Object::HandleAutoCombine(Client* user, const RecipeAutoCombine_Struct* rac
parse->EventPlayer(EVENT_COMBINE_FAILURE, user, spec.name.c_str(), spec.recipe_id);
}
SkillType Object::TypeToSkill(uint32 type) {
SkillType tradeskill = TradeskillUnknown;
switch (type) {
case OT_MEDICINEBAG: {
tradeskill = ALCHEMY;
break;
}
case OT_SEWINGKIT: {
tradeskill = TAILORING;
break;
}
case OT_FORGE:
case OT_TEIRDALFORGE:
case OT_OGGOKFORGE:
case OT_FIERDALFFORGE:
case OT_STORMGUARDF:
case OT_VALEFORGE: {
tradeskill = BLACKSMITHING;
break;
}
case OT_FLETCHINGKIT: {
tradeskill = FLETCHING;
break;
}
case OT_BREWBARREL: {
tradeskill = BREWING;
break;
}
case OT_JEWELERSKIT: {
tradeskill = JEWELRY_MAKING;
break;
}
case OT_POTTERYWHEEL:
case OT_KILN: {
tradeskill = POTTERY;
break;
}
case OT_OVEN: {
tradeskill = BAKING;
break;
}
case OT_TACKLEBOX: {
tradeskill = FISHING;
break;
}
case OT_KEYMAKER: { //unknown for now...
tradeskill = TradeskillUnknown;
break;
}
case OT_TOOLBOX: {
tradeskill = TINKERING;
break;
}
case OT_WIZARDLEX:
case OT_MAGELEX:
case OT_NECROLEX:
case OT_ENCHLEX: {
tradeskill = RESEARCH;
break;
}
SkillType Object::TypeToSkill(uint32 type)
{
switch(type) // grouped and ordered by SkillType name - new types need to be verified for proper SkillType and use
{
/*ALCHEMY*/
case BagType_MedicineBag: { return (SkillType)ALCHEMY; }
/*BAKING*/
// case BagType_MixingBowl: // No idea...
case BagType_Oven: { return (SkillType)BAKING; }
/*BLACKSMITHING*/
case BagType_Forge:
// case BagType_KoadaDalForge:
case BagType_TeirDalForge:
case BagType_OggokForge:
case BagType_StormguardForge:
// case BagType_AkanonForge:
// case BagType_NorthmanForge:
// case BagType_CabilisForge:
// case BagType_FreeportForge:
// case BagType_RoyalQeynosForge:
// case BagType_TrollForge:
case BagType_FierDalForge:
case BagType_ValeForge: { return (SkillType)BLACKSMITHING; } // Delete return if BagType_GuktaForge enabled
// case BagType_ErudForge:
// case BagType_GuktaForge: { return (SkillType)BLACKSMITHING; }
/*BREWING*/
// case BagType_IceCreamChurn: // No idea...
case BagType_BrewBarrel: { return (SkillType)BREWING; }
/*FISHING*/
case BagType_TackleBox: { return (SkillType)FISHING; }
/*FLETCHING*/
case BagType_FletchingKit: { return (SkillType)FLETCHING; } // Delete return if BagType_FierDalFletchingKit enabled
// case BagType_FierDalFletchingKit: { return (SkillType)FLETCHING; }
/*JEWELRY_MAKING*/
case BagType_JewelersKit: { return (SkillType)JEWELRY_MAKING; }
/*MAKE_POISON*/
// This is a guess and needs to be verified... (Could be ALCHEMY)
// case BagType_Mortar: { return (SkillType)MAKE_POISON; }
/*POTTERY*/
case BagType_PotteryWheel:
case BagType_Kiln: { return (SkillType)POTTERY; } // Delete return if BagType_IksarPotteryWheel enabled
// case BagType_IksarPotteryWheel: { return (SkillType)POTTERY; }
/*RESEARCH*/
// case BagType_Lexicon:
case BagType_WizardsLexicon:
case BagType_MagesLexicon:
case BagType_NecromancersLexicon:
case BagType_EnchantersLexicon: { return (SkillType)RESEARCH; } // Delete return if BagType_ConcordanceofResearch enabled
// case BagType_ConcordanceofResearch: { return (SkillType)RESEARCH; }
/*TAILORING*/
case BagType_SewingKit: { return (SkillType)TAILORING; } // Delete return if BagType_FierDalTailoringKit enabled
// case BagType_HalflingTailoringKit:
// case BagType_ErudTailoringKit:
// case BagType_FierDalTailoringKit: { return (SkillType)TAILORING; }
/*TINKERING*/
case BagType_ToolBox: { return (SkillType)TINKERING; }
/*Undefined*/
default: { break; }
}
return(tradeskill);
return TradeskillUnknown;
}
void Client::TradeskillSearchResults(const char *query, unsigned long qlen, unsigned long objtype, unsigned long someid) {