API Changes
List of changes to Trinity's "Application Programming Interface"*
18 September 2014
Core/Texts: added TextRange parameter to creature_text
CORE/SCRIPTS
- TalkToMap(text); + Talk(text);
DATABASE
Table `creature_text`: new column `TextRange` defines the range of the text: 0 - default, 1 - area, 2 - zone, 3 - map, 4 - world
16 September 2014
CORE/SCRIPTS Core/Entities: Added ObjectGuid class from MaNGOS (Merge branch 'Object'Guid')
- uint64 guid; + ObjectGuid guid;
- std::set<uint64> guids; + GuidSet guids; - std::list<uint64> guids; + GuidList guids;
- guid = 0; + guid.Clear(); // Initialization (0) is no longer necessary
- someFunctionAcceptingGuidArgument(0); + someFunctionAcceptingGuidArgument(ObjectGuid::Empty);
- TC_LOG_XXX("somewhere", "... " UI64FMTD "...", playerGuid); // ... 100 ... + TC_LOG_XXX("somewhere", "... %s ...", playerGuid.ToString().c_str()); // ... GUID Full: 0x0000000000000064 Type: Player Low: 100 ...
- data->append(ptr->GetPackGUID()); + *data << ptr->GetPackGuid();
- uint64 guid = MAKE_NEW_GUID(low, entry, HIGHGUID_TYPE); + ObjectGuid guid(HIGHGUID_TYPE, entry, low); - uint64 guid = MAKE_NEW_GUID(low, 0, HIGHGUID_TYPE); + ObjectGuid guid(HIGHGUID_TYPE, low);
- GUID_LOPART(guid); + guid.GetCounter(); - GUID_ENPART(guid); + guid.GetEntry(); - GUID_HIPART(guid); + guid.GetHigh();
- instance->SetData64(field, guid); + instance->SetGuidData(field, guid); // Set/GetData64 still exists and should not be used with guids
- player->GetUInt64Value(field); + player->GetGuidValue(field);
13 September 2014
CORE/SCRIPTS Core/Chat: cleanup MonsterText methods
- creature->MonsterSay(text, LANG_XXX, NULL); + creature->Say(text, LANG_XXX);
- creature->MonsterTextEmote(text, 0); + creature->TextEmote(text);
- creature->MonsterWhisper(text, receiver); + creature->Whisper(text, LANG_XXX, receiver);
- creature->MonsterYell(text, LANG_XXX, NULL); + creature->Yell(text, LANG_XXX);
- DoPlaySound(obj, SOUND_XXX); + obj->PlayDirectSound(SOUND_XXX);
- go->MonsterWhisper(text, player); + WorldPacket packet; + ChatHandler::BuildChatPacket(packet, CHAT_MSG_MONSTER_WHISPER, LANG_UNIVERSAL, go, player, text); + player->SendDirectMessage(&packet);
DATABASE Core/Scripts: Nuke db_script_string table and make SCRIPT_COMMAND_TALK with broadcast_text instead
Table `waypoint_scripts`
: TALK (`command`
=0) now requires an id (`dataint`
) from the table `broadcast_text`
.