--HG--
branch : trunk
This commit is contained in:
megamage
2009-02-22 17:30:09 -06:00
14 changed files with 91 additions and 54 deletions
+5
View File
@@ -137,6 +137,11 @@ endif(ACE_FOUND)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h)
IF (CMAKE_SYSTEM_NAME MATCHES "Darwin")
SET(OSX_LIBS -lcrypto)
add_definitions(-D__ASSERTMACROS__)
ENDIF (CMAKE_SYSTEM_NAME MATCHES "Darwin")
add_definitions(--no-warnings) #to make build look nice, no gcc nazi warnings. add_definitions(--no-warnings) #to make build look nice, no gcc nazi warnings.
+4 -4
View File
@@ -95,7 +95,7 @@ bool LoadADT(char* filename)
header_pos = mf.getPos(); header_pos = mf.getPos();
if(LiqOffsData->offsData1 != 0) // 羼腓 溧眄� ?Data1 ?忸溴 羼螯, 蝾 桴 磬漕 觐礅屦蜩痤忄螯 if(LiqOffsData->offsData1 != 0) // 羼腓 溧眄� ?Data1 ?忸溴 羼螯, 蝾 桴 磬漕 觐礅屦蜩痤忄螯
{ {
// 镥疱躅桁 镱 耢妁屙棹 桤 offsData1 我 屠桌死 牦耜? // 镥疱躅?镱 耢妁屙棹 桤 offsData1 我 雷浪?牦耜?
mf.seek(base_pos + LiqOffsData->offsData1); mf.seek(base_pos + LiqOffsData->offsData1);
mf.read(LiqChunkData1, 0x18); // 聍栩�噱?襦扈 溧眄� ?耱痼牝箴?蜩镟 MH2O_Data1 mf.read(LiqChunkData1, 0x18); // 聍栩�噱?襦扈 溧眄� ?耱痼牝箴?蜩镟 MH2O_Data1
// 玎眍耔?溧眄� 綦嚆?潆� 牦耜? // 玎眍耔?溧眄� 綦嚆?潆� 牦耜?
@@ -134,7 +134,7 @@ bool LoadADT(char* filename)
// �?囗嚯钽 耱囵钽?钺疱玎龛� 沭囗梓睇?镳噔�-犷觐恹??龛骓桴 溧眄� // �?囗嚯钽 耱囵钽?钺疱玎龛� 沭囗梓睇?镳噔�-犷觐恹??龛骓桴 溧眄�
for(int p = 0; p < 72; p += 9) // 龛骓桢 8 礤 玎眍耔?蜿 铐?潴犭桊箦蝰� 耠邃 牦耜铎 for(int p = 0; p < 72; p += 9) // 龛骓桢 8 礤 玎眍耔?蜿 铐?潴犭桊箦蝰� 耠邃 牦耜铎
{ {
for(int s = 0; s < 8; ++s) // 9 珥圜屙桢 ?耱痤赍 礤 玎眍耔?蜿 铐?潴犭桊箦蝰� 耠邃 牦耜铎, ??镳噔�-犷觐恹?钺疱玎弪? 潆� 128?28 for(int s = 0; s < 8; ++s) // 9 珥圜屙桢 ?耱痤赍 礤 玎眍耔?蜿 铐?潴犭桊箦蝰� 耠邃 牦耜铎, ??镳恹?犷觐恹?钺疱玎弪? 潆� 128?28
{ {
MapLiqHeight[k] = ChunkLiqHeight[p + s]; MapLiqHeight[k] = ChunkLiqHeight[p + s];
++k; ++k;
@@ -279,7 +279,7 @@ inline void LoadMapChunk(MPQFile &mf, chunk *_chunk)
if(chunkflags & 16) if(chunkflags & 16)
MapLiqFlag[chunk_num] |= 2; // magma/slime MapLiqFlag[chunk_num] |= 2; // magma/slime
} }
// 玎镱腠屐 蜞?驽 赅??MH2O // 囡铍礤?蜞?驽 赅??MH2O
if(!(chunk_num % 16)) if(!(chunk_num % 16))
m = 1024 * (chunk_num / 16); m = 1024 * (chunk_num / 16);
k = m + (chunk_num % 16) * 8; k = m + (chunk_num % 16) * 8;
@@ -316,7 +316,6 @@ inline void TransformData()
cell->v9[128][x] = (float)mcells->ch[x / 8][15].v9[x % 8][8]; cell->v9[128][x] = (float)mcells->ch[x / 8][15].v9[x % 8][8];
// x == y // x == y
cell->v9[x][128] = (float)mcells->ch[15][x / 8].v9[8][x % 8]; cell->v9[x][128] = (float)mcells->ch[15][x / 8].v9[8][x % 8];
} }
// and the last 1 // and the last 1
@@ -371,6 +370,7 @@ bool ConvertADT(char *filename, char *filename2)
TransformData(); TransformData();
fwrite(&cell->v9, 1, sizeof(cell->v9), output); fwrite(&cell->v9, 1, sizeof(cell->v9), output);
fwrite(&cell->v8, 1, sizeof(cell->v8), output); fwrite(&cell->v8, 1, sizeof(cell->v8), output);
fclose(output); fclose(output);
+3
View File
@@ -36,6 +36,9 @@
#define PATH_MAX 260 #define PATH_MAX 260
#endif #endif
#if defined(__APPLE_CC__)
#define lseek64 lseek
#endif
#define LIBMPQ_MAJOR_VERSION 0 /* Major version number... maybe sometimes we reach version 1 :) */ #define LIBMPQ_MAJOR_VERSION 0 /* Major version number... maybe sometimes we reach version 1 :) */
#define LIBMPQ_MINOR_VERSION 3 /* Minor version number - increased only for small changes */ #define LIBMPQ_MINOR_VERSION 3 /* Minor version number - increased only for small changes */
+5 -5
View File
@@ -125,7 +125,7 @@ ACE_OS::gethostbyaddr_r (const char *addr,
*h_errnop = h_errno; *h_errnop = h_errno;
return (struct hostent *) 0; return (struct hostent *) 0;
} }
# elif defined (__GLIBC__) # elif defined (__GLIBC__) || defined (__FreeBSD__)
// GNU C library has a different signature // GNU C library has a different signature
ACE_OS::memset (buffer, 0, sizeof (ACE_HOSTENT_DATA)); ACE_OS::memset (buffer, 0, sizeof (ACE_HOSTENT_DATA));
@@ -318,7 +318,7 @@ ACE_OS::gethostbyname_r (const char *name,
*h_errnop = h_errno; *h_errnop = h_errno;
return (struct hostent *) 0; return (struct hostent *) 0;
} }
# elif defined (__GLIBC__) # elif defined (__GLIBC__) || defined (__FreeBSD__)
// GNU C library has a different signature // GNU C library has a different signature
ACE_OS::memset (buffer, 0, sizeof (ACE_HOSTENT_DATA)); ACE_OS::memset (buffer, 0, sizeof (ACE_HOSTENT_DATA));
@@ -528,7 +528,7 @@ ACE_OS::getprotobyname_r (const char *name,
else else
return 0; return 0;
//FUZZ: enable check_for_lack_ACE_OS //FUZZ: enable check_for_lack_ACE_OS
# elif defined (__GLIBC__) # elif defined (__GLIBC__) || defined (__FreeBSD__)
// GNU C library has a different signature // GNU C library has a different signature
//FUZZ: disable check_for_lack_ACE_OS //FUZZ: disable check_for_lack_ACE_OS
if (::getprotobyname_r (name, if (::getprotobyname_r (name,
@@ -609,7 +609,7 @@ ACE_OS::getprotobynumber_r (int proto,
//FUZZ: enable check_for_lack_ACE_OS //FUZZ: enable check_for_lack_ACE_OS
else else
return 0; return 0;
# elif defined (__GLIBC__) # elif defined (__GLIBC__) || defined (__FreeBSD__)
// GNU C library has a different signature // GNU C library has a different signature
//FUZZ: disable check_for_lack_ACE_OS //FUZZ: disable check_for_lack_ACE_OS
if (::getprotobynumber_r (proto, if (::getprotobynumber_r (proto,
@@ -695,7 +695,7 @@ ACE_OS::getservbyname_r (const char *svc,
//FUZZ: enable check_for_lack_ACE_OS //FUZZ: enable check_for_lack_ACE_OS
else else
return (struct servent *) 0; return (struct servent *) 0;
# elif defined (__GLIBC__) # elif defined (__GLIBC__) || defined (__FreeBSD__)
// GNU C library has a different signature // GNU C library has a different signature
ACE_OS::memset (buf, 0, sizeof (ACE_SERVENT_DATA)); ACE_OS::memset (buf, 0, sizeof (ACE_SERVENT_DATA));
+1 -1
View File
@@ -493,7 +493,7 @@ UPDATE `creature_template` SET `ScriptName`='boss_romulo' WHERE `entry`=17533;
UPDATE `creature_template` SET `ScriptName`='boss_dorothee' WHERE `entry`=17535; UPDATE `creature_template` SET `ScriptName`='boss_dorothee' WHERE `entry`=17535;
UPDATE `creature_template` SET `ScriptName`='boss_strawman' WHERE `entry`=17543; UPDATE `creature_template` SET `ScriptName`='boss_strawman' WHERE `entry`=17543;
UPDATE `creature_template` SET `ScriptName`='boss_tinhead' WHERE `entry`=17547; UPDATE `creature_template` SET `ScriptName`='boss_tinhead' WHERE `entry`=17547;
UPDATE `creature_template` SET `ScriptName`='boss_tito' WHERE `entry`=17548; UPDATE `creature_template` SET `ScriptName`='mob_tito' WHERE `entry`=17548;
UPDATE `creature_template` SET `ScriptName`='boss_roar' WHERE `entry`=17546; UPDATE `creature_template` SET `ScriptName`='boss_roar' WHERE `entry`=17546;
UPDATE `creature_template` SET `ScriptName`='boss_crone' WHERE `entry`=18168; UPDATE `creature_template` SET `ScriptName`='boss_crone' WHERE `entry`=18168;
UPDATE `creature_template` SET `ScriptName`='boss_terestian_illhoof' WHERE `entry`=15688; UPDATE `creature_template` SET `ScriptName`='boss_terestian_illhoof' WHERE `entry`=15688;
+4
View File
@@ -385,6 +385,10 @@ add_library(trinityscript SHARED ${trinityscript_LIB_SRCS})
add_definitions(-D_TRINITY_SCRIPT_CONFIG='"${CONF_DIR}/trinitycore.conf"') add_definitions(-D_TRINITY_SCRIPT_CONFIG='"${CONF_DIR}/trinitycore.conf"')
IF (CMAKE_SYSTEM_NAME MATCHES "Darwin")
SET_TARGET_PROPERTIES(trinityscript PROPERTIES LINK_FLAGS "-flat_namespace -undefined suppress")
ENDIF (CMAKE_SYSTEM_NAME MATCHES "Darwin")
target_link_libraries(trinityscript) target_link_libraries(trinityscript)
set_target_properties(trinityscript PROPERTIES VERSION 4.2.0 SOVERSION 4) set_target_properties(trinityscript PROPERTIES VERSION 4.2.0 SOVERSION 4)
@@ -119,6 +119,7 @@ struct TRINITY_DLL_DECL boss_high_astromancer_solarianAI : public ScriptedAI
AppearDelay = false; AppearDelay = false;
MarkOfTheSolarian_Timer=45000; MarkOfTheSolarian_Timer=45000;
Jump_Timer=8000; Jump_Timer=8000;
Wrath_Timer = 20000+rand()%5000;//twice in phase one
Phase = 1; Phase = 1;
Wrath_Timer = 20000+rand()%5000;//twice in phase one Wrath_Timer = 20000+rand()%5000;//twice in phase one
@@ -33,6 +33,7 @@ EndScriptData */
#define SAY_DEATH -1554019 #define SAY_DEATH -1554019
#define SPELL_SUMMON_RAGIN_FLAMES 35275 #define SPELL_SUMMON_RAGIN_FLAMES 35275
#define H_SPELL_SUMMON_RAGIN_FLAMES 39084
#define SPELL_FROST_ATTACK 35263 #define SPELL_FROST_ATTACK 35263
#define SPELL_ARCANE_BLAST 35314 #define SPELL_ARCANE_BLAST 35314
@@ -66,18 +67,18 @@ boss_nethermancer_sepethreaAI(Creature *c) : ScriptedAI(c)
dragons_breath_Timer = 18000 + rand()%4000; dragons_breath_Timer = 18000 + rand()%4000;
knockback_Timer = 22000 + rand()%6000; knockback_Timer = 22000 + rand()%6000;
solarburn_Timer = 30000; solarburn_Timer = 30000;
if(pInstance)
pInstance->SetData(DATA_NETHERMANCER_EVENT, NOT_STARTED);
} }
void Aggro(Unit *who) void Aggro(Unit *who)
{ {
DoScriptText(SAY_AGGRO, m_creature); if(pInstance)
pInstance->SetData(DATA_NETHERMANCER_EVENT, IN_PROGRESS);
//Summon two guards, three in heroic DoScriptText(SAY_AGGRO, m_creature);
uint8 am = (HeroicMode ? 1 : 2); DoCast(who, HeroicMode ? H_SPELL_SUMMON_RAGIN_FLAMES : SPELL_SUMMON_RAGIN_FLAMES);
for(int i = 0; i < am; i++)
{
DoCast(who,SPELL_SUMMON_RAGIN_FLAMES);
}
DoScriptText(SAY_SUMMON, m_creature); DoScriptText(SAY_SUMMON, m_creature);
} }
@@ -93,8 +94,9 @@ boss_nethermancer_sepethreaAI(Creature *c) : ScriptedAI(c)
void JustDied(Unit* Killer) void JustDied(Unit* Killer)
{ {
DoScriptText(SAY_DEATH, m_creature); DoScriptText(SAY_DEATH, m_creature);
if(pInstance) if(pInstance)
pInstance->SetData(DATA_SEPETHREA_DEATH, 0); pInstance->SetData(DATA_NETHERMANCER_EVENT, DONE);
} }
void UpdateAI(const uint32 diff) void UpdateAI(const uint32 diff)
@@ -190,6 +192,7 @@ struct TRINITY_DLL_DECL mob_ragin_flamesAI : public ScriptedAI
onlyonce = false; onlyonce = false;
m_creature->ApplySpellImmune(0, IMMUNITY_DAMAGE, SPELL_SCHOOL_MASK_MAGIC, true); m_creature->ApplySpellImmune(0, IMMUNITY_DAMAGE, SPELL_SCHOOL_MASK_MAGIC, true);
m_creature->ApplySpellImmune(0, IMMUNITY_DAMAGE, SPELL_SCHOOL_MASK_NORMAL, true); m_creature->ApplySpellImmune(0, IMMUNITY_DAMAGE, SPELL_SCHOOL_MASK_NORMAL, true);
m_creature->SetSpeed(MOVE_RUN, HeroicMode ? 0.7f : 0.5f);
} }
void Aggro(Unit* who) void Aggro(Unit* who)
@@ -201,6 +204,21 @@ struct TRINITY_DLL_DECL mob_ragin_flamesAI : public ScriptedAI
if (!UpdateVictim()) if (!UpdateVictim())
return; return;
//Check_Timer
if(Check_Timer < diff)
{
if(pInstance)
{
if(pInstance->GetData(DATA_NETHERMANCER_EVENT) != IN_PROGRESS)
{
//remove
m_creature->setDeathState(JUST_DIED);
m_creature->RemoveCorpse();
}
}
Check_Timer = 1000;
}else Check_Timer -= diff;
if (!onlyonce) if (!onlyonce)
{ {
if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,0)) if (Unit* target = SelectUnit(SELECT_TARGET_RANDOM,0))
@@ -221,22 +239,6 @@ struct TRINITY_DLL_DECL mob_ragin_flamesAI : public ScriptedAI
flame_timer = 500; flame_timer = 500;
}else flame_timer -=diff; }else flame_timer -=diff;
//Check_Timer
if(Check_Timer < diff)
{
if(pInstance)
{
if(pInstance->GetData(DATA_SEPETHREAISDEAD))
{
//remove
m_creature->setDeathState(JUST_DIED);
m_creature->RemoveCorpse();
}
}
Check_Timer = 1000;
}else Check_Timer -= diff;
DoMeleeAttackIfReady(); DoMeleeAttackIfReady();
} }
@@ -1,7 +1,6 @@
#ifndef DEF_MECHANAR_H #ifndef DEF_MECHANAR_H
#define DEF_MECHANAR_H #define DEF_MECHANAR_H
#define DATA_SEPETHREA_DEATH 1 #define DATA_NETHERMANCER_EVENT 1
#define DATA_SEPETHREAISDEAD 2
#endif #endif
@@ -24,12 +24,14 @@ EndScriptData */
#include "precompiled.h" #include "precompiled.h"
#include "def_mechanar.h" #include "def_mechanar.h"
#define ENCOUNTERS 1
struct TRINITY_DLL_DECL instance_mechanar : public ScriptedInstance struct TRINITY_DLL_DECL instance_mechanar : public ScriptedInstance
{ {
instance_mechanar(Map *map) : ScriptedInstance(map) {Initialize();}; instance_mechanar(Map *map) : ScriptedInstance(map) {Initialize();};
bool IsBossDied[1]; uint32 Encounters[ENCOUNTERS];
void OnCreatureCreate (Creature *creature, uint32 creature_entry) void OnCreatureCreate (Creature *creature, uint32 creature_entry)
{ {
@@ -37,12 +39,15 @@ struct TRINITY_DLL_DECL instance_mechanar : public ScriptedInstance
void Initialize() void Initialize()
{ {
IsBossDied[0] = false; for(uint8 i = 0; i < ENCOUNTERS; ++i)
Encounters[i] = NOT_STARTED;
} }
bool IsEncounterInProgress() const bool IsEncounterInProgress() const
{ {
//not active for(uint8 i = 0; i < ENCOUNTERS; ++i)
if(Encounters[i]) return true;
return false; return false;
} }
@@ -50,13 +55,10 @@ struct TRINITY_DLL_DECL instance_mechanar : public ScriptedInstance
{ {
switch(type) switch(type)
{ {
case DATA_SEPETHREAISDEAD: case DATA_NETHERMANCER_EVENT: return Encounters[0];
if(IsBossDied[0])
return 1;
break;
} }
return 0; return false;
} }
uint64 GetData64 (uint32 identifier) uint64 GetData64 (uint32 identifier)
@@ -68,9 +70,7 @@ struct TRINITY_DLL_DECL instance_mechanar : public ScriptedInstance
{ {
switch(type) switch(type)
{ {
case DATA_SEPETHREA_DEATH: case DATA_NETHERMANCER_EVENT: Encounters[0] = data; break;
IsBossDied[0] = true;
break;
} }
} }
}; };
+5
View File
@@ -60,8 +60,13 @@
# else # else
# define TRINITY_IMPORT __attribute__ ((cdecl)) # define TRINITY_IMPORT __attribute__ ((cdecl))
# endif //__APPLE_CC__ && BIG_ENDIAN # endif //__APPLE_CC__ && BIG_ENDIAN
# if defined(__APPLE_CC__)
# define TRINITY_SCRIPT_EXT ".dylib"
# define TRINITY_SCRIPT_NAME "../lib/libtrinityscript"
# else
# define TRINITY_SCRIPT_EXT ".so" # define TRINITY_SCRIPT_EXT ".so"
# define TRINITY_SCRIPT_NAME "libtrinityscript" # define TRINITY_SCRIPT_NAME "libtrinityscript"
# endif //__APPLE_CC__
# define TRINITY_PATH_MAX PATH_MAX # define TRINITY_PATH_MAX PATH_MAX
#endif //PLATFORM #endif //PLATFORM
+3
View File
@@ -4959,6 +4959,9 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, Aura* triggeredByAu
// Get Scryers reputation rank // Get Scryers reputation rank
if (((Player *)this)->GetReputationRank(934) == REP_EXALTED) if (((Player *)this)->GetReputationRank(934) == REP_EXALTED)
{ {
if(this->IsFriendlyTo(target))
return false;
triggered_spell_id = 45429; triggered_spell_id = 45429;
break; break;
} }
+10 -1
View File
@@ -13,15 +13,23 @@ WorldRunnable.cpp
WorldRunnable.h WorldRunnable.h
) )
SET(trinity-core_LINK_FLAGS "")
add_executable(trinity-core ${trinity-core_SRCS}) add_executable(trinity-core ${trinity-core_SRCS})
add_definitions( add_definitions(
-D_TRINITY_CORE_CONFIG='"${CONF_DIR}/trinitycore.conf"' -D_TRINITY_CORE_CONFIG='"${CONF_DIR}/trinitycore.conf"'
) )
IF (DO_MYSQL) IF (DO_MYSQL)
SET_TARGET_PROPERTIES(trinity-core PROPERTIES LINK_FLAGS "-pthread") SET(trinity-core_LINK_FLAGS "-pthread ${trinity-core_LINK_FLAGS}")
ENDIF(DO_MYSQL) ENDIF(DO_MYSQL)
IF (CMAKE_SYSTEM_NAME MATCHES "Darwin")
SET(trinity-core_LINK_FLAGS "-framework Carbon ${trinity-core_LINK_FLAGS}")
SET(SCRIPT_LIB "")
ENDIF (CMAKE_SYSTEM_NAME MATCHES "Darwin")
SET_TARGET_PROPERTIES(trinity-core PROPERTIES LINK_FLAGS "${trinity-core_LINK_FLAGS}")
target_link_libraries( target_link_libraries(
trinity-core trinity-core
@@ -42,6 +50,7 @@ ${POSTGRE_LIBS}
${SSLLIB} ${SSLLIB}
${ACE_LIBRARY} ${ACE_LIBRARY}
${ZLIB} ${ZLIB}
${OSX_LIBS}
) )
install(TARGETS trinity-core DESTINATION bin) install(TARGETS trinity-core DESTINATION bin)
+10 -4
View File
@@ -9,18 +9,24 @@ RealmList.cpp
RealmList.h RealmList.h
) )
SET(trinity-realm_LINK_FLAGS "")
add_executable(trinity-realm ${trinity-realm_SRCS}) add_executable(trinity-realm ${trinity-realm_SRCS})
add_definitions( add_definitions(
-D_TRINITY_REALM_CONFIG='"${CONF_DIR}/trinityrealm.conf"' -D_TRINITY_REALM_CONFIG='"${CONF_DIR}/trinityrealm.conf"'
) )
IF (DO_MYSQL) IF (DO_MYSQL)
#SET_TARGET_PROPERTIES(mangos-realmd PROPERTIES LINK_FLAGS ${MYSQL_LIBS}) SET(trinity-realm_LINK_FLAGS "-pthread ${trinity-realm_LINK_FLAGS}")
SET_TARGET_PROPERTIES(trinity-realm PROPERTIES LINK_FLAGS "-pthread")
ENDIF(DO_MYSQL) ENDIF(DO_MYSQL)
IF (DO_POSTGRE) IF (DO_POSTGRE)
SET_TARGET_PROPERTIES(trinity-realmd PROPERTIES LINK_FLAGS ${POSTGRE_LIBS}) SET(trinity-realm_LINK_FLAGS "${POSTGRE_LIBS} ${trinity-realm_LINK_FLAGS}")
ENDIF(DO_POSTGRE) ENDIF(DO_POSTGRE)
IF (CMAKE_SYSTEM_NAME MATCHES "Darwin")
SET(trinity-realm_LINK_FLAGS "-framework Carbon ${trinity-realm_LINK_FLAGS}")
ENDIF (CMAKE_SYSTEM_NAME MATCHES "Darwin")
SET_TARGET_PROPERTIES(trinity-realm PROPERTIES LINK_FLAGS "${trinity-realm_LINK_FLAGS}")
target_link_libraries( target_link_libraries(
trinity-realm trinity-realm
@@ -34,11 +40,11 @@ ZThread
zlib zlib
${SSLLIB} ${SSLLIB}
${MYSQL_LIBRARIES} ${MYSQL_LIBRARIES}
${OSX_LIBS}
) )
install(TARGETS trinity-realm DESTINATION bin) install(TARGETS trinity-realm DESTINATION bin)
########### install files ############### ########### install files ###############
install(FILES trinityrealm.conf.dist DESTINATION etc) install(FILES trinityrealm.conf.dist DESTINATION etc)