Merge pull request #3 from EQEmu/master

Sync
This commit is contained in:
Kemmler 2013-05-05 05:16:33 -07:00
commit 1f8c17a07d
3 changed files with 20 additions and 9 deletions

View File

@ -112,6 +112,7 @@ OPTION(EQEMU_BUILD_SERVER "Build the game server." ON)
OPTION(EQEMU_BUILD_LOGIN "Build the login server." OFF)
OPTION(EQEMU_BUILD_AZONE "Build azone utility." OFF)
OPTION(EQEMU_BUILD_TESTS "Build utility tests." OFF)
OPTION(EQEMU_BUILD_PERL "Build Perl parser." ON)
#C++11 stuff
IF(NOT MSVC)
@ -128,8 +129,10 @@ IF(EQEMU_ENABLE_RVALUE_MOVE)
ENDIF(EQEMU_ENABLE_RVALUE_MOVE)
#Various definitions
ADD_DEFINITIONS(-DEMBPERL)
ADD_DEFINITIONS(-DEMBPERL_PLUGIN)
IF(EQEMU_BUILD_PERL)
ADD_DEFINITIONS(-DEMBPERL)
ADD_DEFINITIONS(-DEMBPERL_PLUGIN)
ENDIF(EQEMU_BUILD_PERL)
ADD_DEFINITIONS(-DEQDEBUG=${EQEMU_DEBUG_LEVEL})
ADD_DEFINITIONS(-DINVERSEXY)
ADD_DEFINITIONS(-DFIELD_ITEMS)
@ -138,8 +141,11 @@ ADD_DEFINITIONS(-DMAP_DIR="./Maps")
#Find everything we need
FIND_PACKAGE(ZLIB REQUIRED)
FIND_PACKAGE(MySQL REQUIRED)
FIND_PACKAGE(PerlLibs REQUIRED)
INCLUDE_DIRECTORIES("${ZLIB_INCLUDE_DIRS}" "${PERL_INCLUDE_PATH}" "${MySQL_INCLUDE_DIR}")
IF(EQEMU_BUILD_PERL)
FIND_PACKAGE(PerlLibs REQUIRED)
INCLUDE_DIRECTORIES("${PERL_INCLUDE_PATH}")
ENDIF(EQEMU_BUILD_PERL)
INCLUDE_DIRECTORIES("${ZLIB_INCLUDE_DIRS}" "${MySQL_INCLUDE_DIR}")
IF(EQEMU_BUILD_SERVER OR EQEMU_BUILD_LOGIN OR EQEMU_BUILD_TESTS)
ADD_SUBDIRECTORY(common)

View File

@ -275,7 +275,8 @@ void Merc::CalcItemBonuses(StatBonuses* newbon) {
if(equipment[i] == 0)
continue;
const Item_Struct * itm = database.GetItem(equipment[i]);
AddItemBonuses(itm, newbon);
if(itm)
AddItemBonuses(itm, newbon);
}
//Power Source Slot

View File

@ -284,9 +284,11 @@ int main(int argc, char** argv) {
}
parse = new QuestParserCollection();
PerlXSParser *pxs = new PerlXSParser();
Parser *ps = new Parser();
parse->RegisterQuestInterface(pxs, "pl");
#ifdef EMBPERL
PerlXSParser *pxs = new PerlXSParser();
parse->RegisterQuestInterface(pxs, "pl");
#endif
Parser *ps = new Parser();
//parse->RegisterQuestInterface(ps, "qst");
@ -473,7 +475,9 @@ int main(int argc, char** argv) {
entity_list.Clear();
safe_delete(parse);
safe_delete(pxs);
#ifdef EMBPERL
safe_delete(pxs);
#endif
safe_delete(ps);
safe_delete(mmf);