From 8e43134bdafa1b44a1238036a644621d8eb0992c Mon Sep 17 00:00:00 2001 From: "Michael Cook (mackal)" Date: Fri, 19 Sep 2014 18:16:52 -0400 Subject: [PATCH] Add Client::Tell_StringID for tell queue messages --- changelog.txt | 3 +++ zone/client.cpp | 8 ++++++++ zone/client.h | 1 + zone/string_ids.h | 4 ++++ 4 files changed, 16 insertions(+) diff --git a/changelog.txt b/changelog.txt index b4384d55b..5a00e90f0 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,5 +1,8 @@ EQEMu Changelog (Started on Sept 24, 2003 15:50) ------------------------------------------------------- +== 09/19/2014 == +demonstar55: Added Client::Tell_StringID (used in tell queue messages) + == 09/18/2014== demonstar55: Implement tell queues Currently set to a limit of 20 by default (World:TellQueueSize) I was unable to hit the limit on live though (100+) diff --git a/zone/client.cpp b/zone/client.cpp index 345bec4ca..f3d550fd2 100644 --- a/zone/client.cpp +++ b/zone/client.cpp @@ -3134,6 +3134,14 @@ void Client::FilteredMessage_StringID(Mob *sender, uint32 type, eqFilterType fil safe_delete(outapp); } +void Client::Tell_StringID(uint32 string_id, const char *who, const char *message) +{ + char string_id_str[10]; + snprintf(string_id_str, 10, "%d", string_id); + + Message_StringID(MT_TellEcho, TELL_QUEUED_MESSAGE, who, string_id_str, message); +} + void Client::SetTint(int16 in_slot, uint32 color) { Color_Struct new_color; new_color.color = color; diff --git a/zone/client.h b/zone/client.h index 697e4e2d3..430216900 100644 --- a/zone/client.h +++ b/zone/client.h @@ -260,6 +260,7 @@ public: const char *message5 = nullptr, const char *message6 = nullptr, const char *message7 = nullptr, const char *message8 = nullptr, const char *message9 = nullptr); + void Tell_StringID(uint32 string_id, const char *who, const char *message); void SendBazaarResults(uint32 trader_id,uint32 class_,uint32 race,uint32 stat,uint32 slot,uint32 type,char name[64],uint32 minprice,uint32 maxprice); void SendTraderItem(uint32 item_id,uint16 quantity); uint16 FindTraderItem(int32 SerialNumber,uint16 Quantity); diff --git a/zone/string_ids.h b/zone/string_ids.h index 056513874..a443fabd9 100644 --- a/zone/string_ids.h +++ b/zone/string_ids.h @@ -249,6 +249,8 @@ #define PLAYER_CHARMED 1461 //You lose control of yourself! #define TRADER_BUSY 1468 //That Trader is currently with a customer. Please wait until their transaction is finished. #define SENSE_CORPSE_DIRECTION 1563 //You sense a corpse in this direction. +#define QUEUED_TELL 2458 //[queued] +#define QUEUE_TELL_FULL 2459 //[zoing and queue is full] #define SUSPEND_MINION_UNSUSPEND 3267 //%1 tells you, 'I live again...' #define SUSPEND_MINION_SUSPEND 3268 //%1 tells you, 'By your command, master.' #define ONLY_SUMMONED_PETS 3269 //3269 This effect only works with summoned pets. @@ -269,6 +271,8 @@ #define CORPSEDRAG_STOP 4066 //You stop dragging the corpse. #define TARGET_TOO_CLOSE 4602 //You are too close to your target. Get farther away. #define WHOALL_NO_RESULTS 5029 //There are no players in EverQuest that match those who filters. +#define TELL_QUEUED_MESSAGE 5045 //You told %1 '%T2. %3' +#define TOLD_NOT_ONLINE 5046 //%1 is not online at this time. #define PETITION_NO_DELETE 5053 //You do not have a petition in the queue. #define PETITION_DELETED 5054 //Your petition was successfully deleted. #define GAIN_RAIDEXP 5085 //You gained raid experience!