mirror of
https://github.com/mangosfour/server.git
synced 2025-12-13 04:37:00 +00:00
[10988] Propertly note for not loaded script library version.
* Better support localization in case built-in version notes. * Move script library version functions to ScriptMgr
This commit is contained in:
parent
6e241689e7
commit
d2b3977fee
10 changed files with 43 additions and 19 deletions
|
|
@ -24,7 +24,7 @@ CREATE TABLE `db_version` (
|
|||
`version` varchar(120) default NULL,
|
||||
`creature_ai_version` varchar(120) default NULL,
|
||||
`cache_id` int(10) default '0',
|
||||
`required_10973_01_mangos_game_event_mail` bit(1) default NULL
|
||||
`required_10988_01_mangos_mangos_string` bit(1) default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Used DB version notes';
|
||||
|
||||
--
|
||||
|
|
@ -3130,8 +3130,10 @@ INSERT INTO `mangos_string` VALUES
|
|||
(59,'Using creature EventAI: %s',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),
|
||||
(61,'Username: ',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),
|
||||
(62,'Password: ',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),
|
||||
(63, "Accepts whispers", NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
|
||||
(64, "Doesn't accept whispers", NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
|
||||
(63,"Accepts whispers", NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
|
||||
(64,"Doesn't accept whispers", NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
|
||||
(65,'Using script library: <Unknown Script Library>',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),
|
||||
(66,'Using script library: <No Script Library Loaded>',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),
|
||||
(100,'Global notify: ',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),
|
||||
(101,'Map: %u (%s) Zone: %u (%s) Area: %u (%s) Phase: %u\nX: %f Y: %f Z: %f Orientation: %f\ngrid[%u,%u]cell[%u,%u] InstanceID: %u\n ZoneX: %f ZoneY: %f\nGroundZ: %f FloorZ: %f Have height data (Map: %u VMap: %u)',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),
|
||||
(102,'%s is already being teleported.',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),
|
||||
|
|
|
|||
7
sql/updates/10988_01_mangos_mangos_string.sql
Normal file
7
sql/updates/10988_01_mangos_mangos_string.sql
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
ALTER TABLE db_version CHANGE COLUMN required_10973_01_mangos_game_event_mail required_10988_01_mangos_mangos_string bit;
|
||||
|
||||
DELETE FROM mangos_string WHERE entry IN (65,66);
|
||||
|
||||
INSERT INTO mangos_string VALUES
|
||||
(65,'Using script library: <Unknown Script Library>',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),
|
||||
(66,'Using script library: <No Script Library Loaded>',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
|
||||
|
|
@ -147,6 +147,7 @@ pkgdata_DATA = \
|
|||
10972_01_mangos_command.sql \
|
||||
10973_01_characters_game_event_status.sql \
|
||||
10973_01_mangos_game_event_mail.sql \
|
||||
10988_01_mangos_mangos_string.sql \
|
||||
README
|
||||
|
||||
## Additional files to include when running 'make dist'
|
||||
|
|
@ -274,4 +275,5 @@ EXTRA_DIST = \
|
|||
10972_01_mangos_command.sql \
|
||||
10973_01_characters_game_event_status.sql \
|
||||
10973_01_mangos_game_event_mail.sql \
|
||||
10988_01_mangos_mangos_string.sql \
|
||||
README
|
||||
|
|
|
|||
|
|
@ -88,7 +88,9 @@ enum MangosStrings
|
|||
LANG_RA_PASS = 62,
|
||||
LANG_GM_ACCEPTS_WHISPER = 63,
|
||||
LANG_GM_NO_WHISPER = 64,
|
||||
// Room for more level 0 65-99 not used
|
||||
LANG_USING_SCRIPT_LIB_UNKNOWN = 65,
|
||||
LANG_USING_SCRIPT_LIB_NONE = 66,
|
||||
// Room for more level 0 67-99 not used
|
||||
|
||||
// level 1 chat
|
||||
LANG_GLOBAL_NOTIFY = 100,
|
||||
|
|
|
|||
|
|
@ -25,6 +25,7 @@
|
|||
#include "ObjectAccessor.h"
|
||||
#include "Language.h"
|
||||
#include "AccountMgr.h"
|
||||
#include "ScriptMgr.h"
|
||||
#include "SystemConfig.h"
|
||||
#include "revision.h"
|
||||
#include "revision_nr.h"
|
||||
|
|
@ -99,9 +100,19 @@ bool ChatHandler::HandleServerInfoCommand(char* /*args*/)
|
|||
full = _FULLVERSION(REVISION_DATE,REVISION_TIME,REVISION_NR,"|cffffffff|Hurl:" REVISION_ID "|h" REVISION_ID "|h|r");
|
||||
else
|
||||
full = _FULLVERSION(REVISION_DATE,REVISION_TIME,REVISION_NR,REVISION_ID);
|
||||
|
||||
SendSysMessage(full);
|
||||
PSendSysMessage(LANG_USING_SCRIPT_LIB,sWorld.GetScriptsVersion());
|
||||
|
||||
if (sScriptMgr.IsScriptLibraryLoaded())
|
||||
{
|
||||
char const* ver = sScriptMgr.GetScriptLibraryVersion();
|
||||
if (ver && *ver)
|
||||
PSendSysMessage(LANG_USING_SCRIPT_LIB, ver);
|
||||
else
|
||||
SendSysMessage(LANG_USING_SCRIPT_LIB_UNKNOWN);
|
||||
}
|
||||
else
|
||||
SendSysMessage(LANG_USING_SCRIPT_LIB_NONE);
|
||||
|
||||
PSendSysMessage(LANG_USING_WORLD_DB,sWorld.GetDBVersion());
|
||||
PSendSysMessage(LANG_USING_EVENT_AI,sWorld.GetCreatureEventAIVersion());
|
||||
PSendSysMessage(LANG_CONNECTED_USERS, activeClientsNum, maxActiveClientsNum, queuedClientsNum, maxQueuedClientsNum);
|
||||
|
|
|
|||
|
|
@ -911,6 +911,14 @@ uint32 ScriptMgr::GetEventIdScriptId(uint32 eventId) const
|
|||
return 0;
|
||||
}
|
||||
|
||||
char const* ScriptMgr::GetScriptLibraryVersion() const
|
||||
{
|
||||
if (!m_pGetScriptLibraryVersion)
|
||||
return "";
|
||||
|
||||
return m_pGetScriptLibraryVersion();
|
||||
}
|
||||
|
||||
CreatureAI* ScriptMgr::GetCreatureAI(Creature* pCreature)
|
||||
{
|
||||
if (!m_pGetCreatureAI)
|
||||
|
|
@ -1094,12 +1102,7 @@ ScriptLoadResult ScriptMgr::LoadScriptLibrary(const char* libName)
|
|||
if (strcmp(pGetMangosRevStr(), REVISION_NR) != 0)
|
||||
return SCRIPT_LOAD_ERR_OUTDATED;
|
||||
|
||||
if (m_pOnInitScriptLibrary)
|
||||
m_pOnInitScriptLibrary();
|
||||
|
||||
if (m_pGetScriptLibraryVersion)
|
||||
sWorld.SetScriptsVersion(m_pGetScriptLibraryVersion());
|
||||
|
||||
m_pOnInitScriptLibrary();
|
||||
return SCRIPT_LOAD_OK;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -341,10 +341,12 @@ class ScriptMgr
|
|||
|
||||
ScriptLoadResult LoadScriptLibrary(const char* libName);
|
||||
void UnloadScriptLibrary();
|
||||
bool IsScriptLibraryLoaded() const { return m_hScriptLib != NULL; }
|
||||
|
||||
CreatureAI* GetCreatureAI(Creature* pCreature);
|
||||
InstanceData* CreateInstanceData(Map* pMap);
|
||||
|
||||
char const* GetScriptLibraryVersion() const;
|
||||
bool OnGossipHello(Player* pPlayer, Creature* pCreature);
|
||||
bool OnGossipHello(Player* pPlayer, GameObject* pGameObject);
|
||||
bool OnGossipSelect(Player* pPlayer, Creature* pCreature, uint32 sender, uint32 action, const char* code);
|
||||
|
|
|
|||
|
|
@ -577,10 +577,6 @@ class World
|
|||
char const* GetDBVersion() { return m_DBVersion.c_str(); }
|
||||
char const* GetCreatureEventAIVersion() { return m_CreatureEventAIVersion.c_str(); }
|
||||
|
||||
//used Script version
|
||||
void SetScriptsVersion(char const* version) { m_ScriptsVersion = version ? version : "unknown scripting library"; }
|
||||
char const* GetScriptsVersion() { return m_ScriptsVersion.c_str(); }
|
||||
|
||||
protected:
|
||||
void _UpdateGameTime();
|
||||
// callback for UpdateRealmCharacters
|
||||
|
|
@ -675,7 +671,6 @@ class World
|
|||
//used versions
|
||||
std::string m_DBVersion;
|
||||
std::string m_CreatureEventAIVersion;
|
||||
std::string m_ScriptsVersion;
|
||||
};
|
||||
|
||||
extern uint32 realmID;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#ifndef __REVISION_NR_H__
|
||||
#define __REVISION_NR_H__
|
||||
#define REVISION_NR "10987"
|
||||
#define REVISION_NR "10988"
|
||||
#endif // __REVISION_NR_H__
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
#ifndef __REVISION_SQL_H__
|
||||
#define __REVISION_SQL_H__
|
||||
#define REVISION_DB_CHARACTERS "required_10973_01_characters_game_event_status"
|
||||
#define REVISION_DB_MANGOS "required_10973_01_mangos_game_event_mail"
|
||||
#define REVISION_DB_MANGOS "required_10988_01_mangos_mangos_string"
|
||||
#define REVISION_DB_REALMD "required_10008_01_realmd_realmd_db_version"
|
||||
#endif // __REVISION_SQL_H__
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue