diff options
56 files changed, 3194 insertions, 125 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 00000000000..92ece2f40e5 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,158 @@ +PROJECT(Trinity) +cmake_minimum_required(VERSION 2.4) +cmake_policy(SET CMP0005 OLD) + +include(cmake/FindAce.cmake) +include(cmake/FindMySql.cmake) +CONFIGURE_FILE( + "${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake_uninstall.cmake.in" + "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake" + IMMEDIATE @ONLY) +ADD_CUSTOM_TARGET(uninstall "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake") + +OPTION(DO_MYSQL "With MySQL support" 1) +OPTION(DO_POSTGRESQL "With PostgreSQL support" 0) # not complete yet, may not link properly. +OPTION(DO_SCRIPTS "With trinityscripts" 1) +OPTION(DO_CLI "With CLI" 1) +OPTION(DO_RA "With RA" 0) +OPTION(DO_DEBUG "Debug mode" 0) +OPTION(LARGE_CELL "Large cell size" 0) +OPTION(SHORT_SLEEP "Short sleep" 0) + +SET(GENREV_SRC +src/tools/genrevision/genrevision.cpp +) + +ADD_EXECUTABLE(genrev +${GENREV_SRC} +) +ADD_CUSTOM_TARGET("revision.h" ALL + COMMAND "${Trinity_BINARY_DIR}/genrev" + ${Trinity_SOURCE_DIR} + WORKING_DIRECTORY "${Trinity_SOURCE_DIR}/src/shared" +) + + +EXECUTE_PROCESS( + COMMAND hg tip --template {rev} + OUTPUT_VARIABLE HG_REVISION +) + +message("* Trinity Core revision: ${HG_REVISION}") + +IF (PREFIX) + SET(CMAKE_INSTALL_PREFIX ${PREFIX}) +ENDIF (PREFIX) + +if(CONF_DIR) + +else(CONF_DIR) +SET(CONF_DIR ${PREFIX}/etc) +endif(CONF_DIR) + +message("* Will install to: ${CMAKE_INSTALL_PREFIX}") +message("* With config dir at: ${CONF_DIR}") + +SET(LIBSDIR "/usr/lib /usr/local/lib /lib") +FIND_LIBRARY(SSLLIB NAMES ssl DOC "SSL library") +FIND_LIBRARY(ZLIB z "Zlib library") + + +IF(DO_POSTGRESQL) +message("* With PostgreSQL") +set(DO_MYSQL 0) +SET(POSTGRE_INCLUDES "-I/usr/include/postgresql -I/usr/local/postgresql ${POSTGRE_INCLUDES}") +SET(POSTGRE_LIBS "-L/usr/lib/postresql -lpq -lz -lpthread -lcrypt -lnsl -lm -lpthread -L/usr/lib -lssl -lcrypto ${POSTGRE_LIBS}") +ADD_DEFINITIONS(-DDO_POSTGRESQL) +ENDIF(DO_POSTGRESQL) + +IF(DO_MYSQL) + MESSAGE("* With MySQL") + FIND_MYSQL() + ADD_DEFINITIONS(-DDO_MYSQL) +ENDIF(DO_MYSQL) + +if(DO_SCRIPTS) +message("* With Trinity Scripts") +SET(SCRIPT_LIB trinityscript) +SET(SCRIPT_INCLUDE src/bindings/scripts/include) +else (DO_SCRIPTS) +message("* Without Trinity Scripts") +SET(SCRIPT_LIB trinityinterface) +SET(SCRIPT_INCLUDE src/bindings/interface) +endif(DO_SCRIPTS) + +message("-- Miscellaneus options:") + +if(DO_CLI) +message("* With CLI") +add_definitions(-DENABLE_CLI) +else (DO_CLI) +message(* Without CLI) +endif(DO_CLI) + +if(DO_RA) +message("* With RA") +add_definitions(-DENABLE_RA) +else(DO_RA) +message("* Without RA") +endif(DO_RA) + +if(DO_DEBUG) +message("* Debug mode ON") +add_definitions(-g -DTRINITY_DEBUG) +endif(DO_DEBUG) + +if(LARGE_CELL) +message("* Large cell size") +add_definitions(-DLARGE_CELL) +else(LARGE_CELL) +message("* Small cell size") +endif(LARGE_CELL) + +if(SHORT_SLEEP) +message("* System sleep time is 50ms") +add_definitions(-DSHORT_SLEEP) +else(SHORT_SLEEP) +message("* System sleep time is 100ms") +endif(SHORT_SLEEP) + +FIND_ACE(ACE) +if(ACE_FOUND) +message(STATUS "Found ACE library: ${ACE_LIBRARY}") +message(STATUS "Include dir is: ${ACE_INCLUDE_DIR}") +#else(ACE_FOUND) +#message( "** ACE library not found, will try to build it myself.") +#SET(BUILD_ACE 1) BRIAN LIKES MEN +#SET(ACE_INCLUDE_DIR "${CMAKE_SOURCE_DIR}/dep/ACE_wrappers ${CMAKE_BINARY_DIR}/dep/ACE_wrappers") +#SET(ACE_LIBRARY ACE) +#message(STATUS "I will try to build ACE from: ${ACE_INCLUDE_DIR}") +#message(STATUS "And link using: ${ACE_LIBRARY}") +endif(ACE_FOUND) + +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h) + + + +add_definitions(--no-warnings) #to make build look nice, no gcc nazi warnings. + +INCLUDE_DIRECTORIES( +dep/include +dep/include/g3dlite +dep/include/sockets +src/shared +src/framework +src/shared/Database +src/shared/vmap +src/game +${SCRIPT_INCLUDE} +${MYSQL_INCLUDE_DIR} +${POSTGRE_INCLUDES} +${CMAKE_CURRENT_BINARY_DIR}/src/shared +${CMAKE_CURRENT_SOURCE_DIR}/.. +${ACE_INCLUDE_DIR} +) + +add_subdirectory(dep) +add_subdirectory(doc) +add_subdirectory(src) diff --git a/cmake/FindAce.cmake b/cmake/FindAce.cmake new file mode 100644 index 00000000000..b7be34784a9 --- /dev/null +++ b/cmake/FindAce.cmake @@ -0,0 +1,31 @@ +# This script is taken from BFilter project, thanks to original authors. +# - Locate the ACE library +# This module defines +# ACE_FOUND -- true if ACE was found +# ACE_LIBRARY -- the library to link against +# ACE_INCLUDE_DIR -- path to ace/ACE.h +MACRO(FIND_ACE LIBNAME) + GET_FILENAME_COMPONENT(parent_dir_ "${PROJECT_SOURCE_DIR}/.." ABSOLUTE) + FIND_PATH( + ACE_INCLUDE_DIR ace/ACE.h + PATHS /usr/include /usr/local/include + "${CMAKE_INSTALL_PREFIX}/include" "${parent_dir_}/ACE_wrappers" + DOC "Path to ace/ACE.h" + ) + + # This prevents it being taken from cache. + SET(ACE_LIBRARY ACE_LIBRARY-NOTFOUND) + + FIND_LIBRARY( + ACE_LIBRARY "${LIBNAME}" + PATHS /usr/lib /usr/local/lib + "${CMAKE_INSTALL_PREFIX}/lib" "${parent_dir_}/ACE_wrappers/ace" + DOC "Path to ACE library file" + ) + IF(ACE_INCLUDE_DIR AND ACE_LIBRARY) + SET(ACE_FOUND TRUE) + ELSE(ACE_INCLUDE_DIR AND ACE_LIBRARY) + SET(ACE_FOUND FALSE) + ENDIF(ACE_INCLUDE_DIR AND ACE_LIBRARY) +ENDMACRO(FIND_ACE) + diff --git a/cmake/FindMySql.cmake b/cmake/FindMySql.cmake new file mode 100644 index 00000000000..e149cd4eaf0 --- /dev/null +++ b/cmake/FindMySql.cmake @@ -0,0 +1,102 @@ +# - Find MySQL +# Find the MySQL includes and client library +# This module defines +# MYSQL_INCLUDE_DIR, where to find mysql.h +# MYSQL_LIBRARIES, the libraries needed to use MySQL. +# MYSQL_FOUND, If false, do not try to use MySQL. +# +# Copyright (c) 2006, Jaroslaw Staniek, <js@iidea.pl> +# Lot of adustmens by Michal Cihar <michal@cihar.com> +# +# vim: expandtab sw=4 ts=4 sts=4: +# +# Redistribution and use is allowed according to the terms of the BSD license. + +MACRO(FIND_MYSQL) +if(UNIX) + set(MYSQL_CONFIG_PREFER_PATH "$ENV{MYSQL_HOME}/bin" CACHE FILEPATH + "preferred path to MySQL (mysql_config)") + find_program(MYSQL_CONFIG mysql_config + ${MYSQL_CONFIG_PREFER_PATH} + /usr/local/mysql/bin/ + /usr/local/bin/ + /usr/bin/ + ) + + if(MYSQL_CONFIG) + message(STATUS "Using mysql-config: ${MYSQL_CONFIG}") + # set INCLUDE_DIR + exec_program(${MYSQL_CONFIG} + ARGS --include + OUTPUT_VARIABLE MY_TMP) + + string(REGEX REPLACE "-I([^ ]*)( .*)?" "\\1" MY_TMP "${MY_TMP}") + + set(MYSQL_ADD_INCLUDE_DIR ${MY_TMP} CACHE FILEPATH INTERNAL) + + # set LIBRARY_DIR + exec_program(${MYSQL_CONFIG} + ARGS --libs_r + OUTPUT_VARIABLE MY_TMP) + + set(MYSQL_ADD_LIBRARIES "") + + string(REGEX MATCHALL "-l[^ ]*" MYSQL_LIB_LIST "${MY_TMP}") + foreach(LIB ${MYSQL_LIB_LIST}) + string(REGEX REPLACE "[ ]*-l([^ ]*)" "\\1" LIB "${LIB}") + list(APPEND MYSQL_ADD_LIBRARIES "${LIB}") + endforeach(LIB ${MYSQL_LIBS}) + + set(MYSQL_ADD_LIBRARY_PATH "") + + string(REGEX MATCHALL "-L[^ ]*" MYSQL_LIBDIR_LIST "${MY_TMP}") + foreach(LIB ${MYSQL_LIBDIR_LIST}) + string(REGEX REPLACE "[ ]*-L([^ ]*)" "\\1" LIB "${LIB}") + list(APPEND MYSQL_ADD_LIBRARY_PATH "${LIB}") + endforeach(LIB ${MYSQL_LIBS}) + + else(MYSQL_CONFIG) + set(MYSQL_ADD_LIBRARIES "") + list(APPEND MYSQL_ADD_LIBRARIES "mysqlclient") + endif(MYSQL_CONFIG) +else(UNIX) + set(MYSQL_ADD_INCLUDE_DIR "c:/msys/local/include" CACHE FILEPATH INTERNAL) + set(MYSQL_ADD_LIBRARY_PATH "c:/msys/local/lib" CACHE FILEPATH INTERNAL) +ENDIF(UNIX) + +find_path(MYSQL_INCLUDE_DIR mysql.h + /usr/local/include + /usr/local/include/mysql + /usr/local/mysql/include + /usr/local/mysql/include/mysql + /usr/include + /usr/include/mysql + ${MYSQL_ADD_INCLUDE_DIR} +) + +set(TMP_MYSQL_LIBRARIES "") + +foreach(LIB ${MYSQL_ADD_LIBRARIES}) + find_library("MYSQL_LIBRARIES_${LIB}" NAMES ${LIB} + PATHS + ${MYSQL_ADD_LIBRARY_PATH} + /usr/lib/mysql + /usr/local/lib + /usr/local/lib/mysql + /usr/local/mysql/lib + ) + list(APPEND TMP_MYSQL_LIBRARIES "${MYSQL_LIBRARIES_${LIB}}") +endforeach(LIB ${MYSQL_ADD_LIBRARIES}) + +set(MYSQL_LIBRARIES ${TMP_MYSQL_LIBRARIES} CACHE FILEPATH INTERNAL) + +if(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES) + set(MYSQL_FOUND TRUE CACHE INTERNAL "MySQL found") + message(STATUS "Found MySQL: ${MYSQL_INCLUDE_DIR}, ${MYSQL_LIBRARIES}") +else(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES) + set(MYSQL_FOUND FALSE CACHE INTERNAL "MySQL found") + message(STATUS "MySQL not found.") +endif(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES) + +mark_as_advanced(MYSQL_INCLUDE_DIR MYSQL_LIBRARIES) +ENDMACRO(FIND_MYSQL)
\ No newline at end of file diff --git a/cmake/cmake_uninstall.cmake.in b/cmake/cmake_uninstall.cmake.in new file mode 100644 index 00000000000..06f9c8263a8 --- /dev/null +++ b/cmake/cmake_uninstall.cmake.in @@ -0,0 +1,23 @@ +# from cmake wiki +IF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") + MESSAGE(FATAL_ERROR "Cannot find install manifest: \"@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt\"") +ENDIF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") + +FILE(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files) +STRING(REGEX REPLACE "\n" ";" files "${files}") +FOREACH(file ${files}) + MESSAGE(STATUS "Uninstalling \"${file}\"") + IF(EXISTS "${file}") + EXEC_PROGRAM( + "@CMAKE_COMMAND@" ARGS "-E remove \"${file}\"" + OUTPUT_VARIABLE rm_out + RETURN_VALUE rm_retval + ) + IF("${rm_retval}" STREQUAL 0) + ELSE("${rm_retval}" STREQUAL 0) + MESSAGE(FATAL_ERROR "Problem when removing \"${file}\"") + ENDIF("${rm_retval}" STREQUAL 0) + ELSE(EXISTS "${file}") + MESSAGE(STATUS "File \"${file}\" does not exist.") + ENDIF(EXISTS "${file}") +ENDFOREACH(file) diff --git a/config.h.cmake b/config.h.cmake new file mode 100644 index 00000000000..bfc116642de --- /dev/null +++ b/config.h.cmake @@ -0,0 +1,277 @@ +/* config.h.in. Generated from configure.ac by autoheader. */ + +/* Define to 1 if the `closedir' function returns void instead of `int'. */ +#undef CLOSEDIR_VOID + +/* Define to 1 if you have the <arpa/inet.h> header file. */ +#undef HAVE_ARPA_INET_H + +/* Define to 1 if you have the `atexit' function. */ +#undef HAVE_ATEXIT + +/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'. + */ +#undef HAVE_DIRENT_H + +/* Define to 1 if you have the <dlfcn.h> header file. */ +#undef HAVE_DLFCN_H + +/* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ +#undef HAVE_DOPRNT + +/* Define to 1 if you have the <fcntl.h> header file. */ +#undef HAVE_FCNTL_H + +/* Define to 1 if you have the `ftime' function. */ +#undef HAVE_FTIME + +/* Define to 1 if you have the `gethostbyaddr' function. */ +#undef HAVE_GETHOSTBYADDR + +/* Define to 1 if you have the `gethostbyname' function. */ +#undef HAVE_GETHOSTBYNAME + +/* Define to 1 if you have the `gethostname' function. */ +#undef HAVE_GETHOSTNAME + +/* Define to 1 if you have the `gettimeofday' function. */ +#undef HAVE_GETTIMEOFDAY + +/* Define to 1 if you have the <inttypes.h> header file. */ +#undef HAVE_INTTYPES_H + +/* Define to 1 if you have the <libpq-fe.h> header file. */ +#undef HAVE_LIBPQ_FE_H + +/* Define to 1 if you have the `pthread' library (-lpthread). */ +#undef HAVE_LIBPTHREAD + +/* Define to 1 if you have the <limits.h> header file. */ +#undef HAVE_LIMITS_H + +/* Define to 1 if you have the <locale.h> header file. */ +#undef HAVE_LOCALE_H + +/* Define to 1 if your system has a GNU libc compatible `malloc' function, and + to 0 otherwise. */ +#undef HAVE_MALLOC + +/* Define to 1 if you have the <malloc.h> header file. */ +#undef HAVE_MALLOC_H + +/* Define to 1 if you have the `memmove' function. */ +#undef HAVE_MEMMOVE + +/* Define to 1 if you have the <memory.h> header file. */ +#undef HAVE_MEMORY_H + +/* Define to 1 if you have the `memset' function. */ +#undef HAVE_MEMSET + +/* Define to 1 if you have the <mysql.h> header file. */ +#undef HAVE_MYSQL_H + +/* Define to 1 if you have the <mysql/mysql.h> header file. */ +#undef HAVE_MYSQL_MYSQL_H + +/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */ +#undef HAVE_NDIR_H + +/* Define to 1 if you have the <netdb.h> header file. */ +#undef HAVE_NETDB_H + +/* Define to 1 if you have the <netinet/in.h> header file. */ +#undef HAVE_NETINET_IN_H + +/* Define to 1 if you have the <openssl/bn.h> header file. */ +#undef HAVE_OPENSSL_BN_H + +/* Define to 1 if you have the <openssl/md5.h> header file. */ +#undef HAVE_OPENSSL_MD5_H + +/* Define to 1 if you have the <openssl/rand.h> header file. */ +#undef HAVE_OPENSSL_RAND_H + +/* Define to 1 if you have the <openssl/sha.h> header file. */ +#undef HAVE_OPENSSL_SHA_H + +/* Define to 1 if you have the <openssl/ssl.h> header file. */ +#undef HAVE_OPENSSL_SSL_H + +/* Define to 1 if you have the `pow' function. */ +#undef HAVE_POW + +/* Define to 1 if you have the <pthread.h> header file. */ +#undef HAVE_PTHREAD_H + +/* Define to 1 if the system has the type `ptrdiff_t'. */ +#undef HAVE_PTRDIFF_T + +/* Define to 1 if your system has a GNU libc compatible `realloc' function, + and to 0 otherwise. */ +#undef HAVE_REALLOC + +/* Define to 1 if you have the `realpath' function. */ +#undef HAVE_REALPATH + +/* Define to 1 if you have the `select' function. */ +#undef HAVE_SELECT + +/* Define to 1 if you have the `socket' function. */ +#undef HAVE_SOCKET + +/* Define to 1 if you have the `sqrt' function. */ +#undef HAVE_SQRT + +/* Define to 1 if stdbool.h conforms to C99. */ +#undef HAVE_STDBOOL_H + +/* Define to 1 if you have the <stddef.h> header file. */ +#undef HAVE_STDDEF_H + +/* Define to 1 if you have the <stdint.h> header file. */ +#undef HAVE_STDINT_H + +/* Define to 1 if you have the <stdlib.h> header file. */ +#undef HAVE_STDLIB_H + +/* Define to 1 if you have the `strchr' function. */ +#undef HAVE_STRCHR + +/* Define to 1 if you have the `strdup' function. */ +#undef HAVE_STRDUP + +/* Define to 1 if you have the `strerror' function. */ +#undef HAVE_STRERROR + +/* Define to 1 if you have the <strings.h> header file. */ +#undef HAVE_STRINGS_H + +/* Define to 1 if you have the <string.h> header file. */ +#undef HAVE_STRING_H + +/* Define to 1 if you have the `strstr' function. */ +#undef HAVE_STRSTR + +/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'. + */ +#undef HAVE_SYS_DIR_H + +/* Define to 1 if you have the <sys/ioctl.h> header file. */ +#undef HAVE_SYS_IOCTL_H + +/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'. + */ +#undef HAVE_SYS_NDIR_H + +/* Define to 1 if you have the <sys/param.h> header file. */ +#undef HAVE_SYS_PARAM_H + +/* Define to 1 if you have the <sys/select.h> header file. */ +#undef HAVE_SYS_SELECT_H + +/* Define to 1 if you have the <sys/socket.h> header file. */ +#undef HAVE_SYS_SOCKET_H + +/* Define to 1 if you have the <sys/stat.h> header file. */ +#undef HAVE_SYS_STAT_H + +/* Define to 1 if you have the <sys/timeb.h> header file. */ +#undef HAVE_SYS_TIMEB_H + +/* Define to 1 if you have the <sys/time.h> header file. */ +#undef HAVE_SYS_TIME_H + +/* Define to 1 if you have the <sys/types.h> header file. */ +#undef HAVE_SYS_TYPES_H + +/* Define to 1 if you have the <termios.h> header file. */ +#undef HAVE_TERMIOS_H + +/* Define to 1 if you have the <unistd.h> header file. */ +#undef HAVE_UNISTD_H + +/* Define to 1 if you have the `vprintf' function. */ +#undef HAVE_VPRINTF + +/* Define to 1 if you have the <zlib.h> header file. */ +#undef HAVE_ZLIB_H + +/* Define to 1 if the system has the type `_Bool'. */ +#undef HAVE__BOOL + +/* Define to 1 if your C compiler doesn't accept -c and -o together. */ +#undef NO_MINUS_C_MINUS_O + +/* Name of package */ +#undef PACKAGE + +/* Define to the address where bug reports for this package should be sent. */ +#undef PACKAGE_BUGREPORT + +/* Define to the full name of this package. */ +#undef PACKAGE_NAME + +/* Define to the full name and version of this package. */ +#undef PACKAGE_STRING + +/* Define to the one symbol short name of this package. */ +#undef PACKAGE_TARNAME + +/* Define to the version of this package. */ +#undef PACKAGE_VERSION + +/* Define as the return type of signal handlers (`int' or `void'). */ +#undef RETSIGTYPE + +/* Define to the type of arg 1 for `select'. */ +#undef SELECT_TYPE_ARG1 + +/* Define to the type of args 2, 3 and 4 for `select'. */ +#undef SELECT_TYPE_ARG234 + +/* Define to the type of arg 5 for `select'. */ +#undef SELECT_TYPE_ARG5 + +/* Define to 1 if you have the ANSI C header files. */ +#undef STDC_HEADERS + +/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */ +#undef TIME_WITH_SYS_TIME + +/* Define to 1 if your <sys/time.h> declares `struct tm'. */ +#undef TM_IN_SYS_TIME + +/* Version number of package */ +#undef VERSION + +/* Define for Solaris 2.5.1 so the uint64_t typedef from <sys/synch.h>, + <pthread.h>, or <semaphore.h> is not used. If the typedef was allowed, the + #define below would cause a syntax error. */ +#undef _UINT64_T + +/* Define to empty if `const' does not conform to ANSI C. */ +#undef const + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +#undef inline +#endif + +/* Define to rpl_malloc if the replacement function should be used. */ +#undef malloc + +/* Define to rpl_realloc if the replacement function should be used. */ +#undef realloc + +/* Define to `unsigned int' if <sys/types.h> does not define. */ +#undef size_t + +/* Define to the type of an unsigned integer type of width exactly 64 bits if + such a type exists and the standard includes do not define it. */ +#undef uint64_t + +/* Define to empty if the keyword `volatile' does not work. Warning: valid + code using `volatile' can become incorrect without. Disable with care. */ +#undef volatile diff --git a/dep/CMakeLists.txt b/dep/CMakeLists.txt new file mode 100644 index 00000000000..a813710db34 --- /dev/null +++ b/dep/CMakeLists.txt @@ -0,0 +1,6 @@ +#if(BUILD_ACE) +#add_subdirectory(ACE_wrappers) +#endif(BUILD_ACE) +add_subdirectory(include) +add_subdirectory(lib) +add_subdirectory(src) diff --git a/dep/lib/CMakeLists.txt b/dep/lib/CMakeLists.txt new file mode 100644 index 00000000000..3575d71a65a --- /dev/null +++ b/dep/lib/CMakeLists.txt @@ -0,0 +1,2 @@ + +# Nothing here as of yet. diff --git a/dep/src/CMakeLists.txt b/dep/src/CMakeLists.txt new file mode 100644 index 00000000000..7d6aa26f5fe --- /dev/null +++ b/dep/src/CMakeLists.txt @@ -0,0 +1,7 @@ +add_subdirectory(g3dlite) +add_subdirectory(sockets) +add_subdirectory(zlib) +add_subdirectory(zthread) + + +########### install files ###############
\ No newline at end of file diff --git a/dep/src/g3dlite/CMakeLists.txt b/dep/src/g3dlite/CMakeLists.txt new file mode 100644 index 00000000000..89bea742272 --- /dev/null +++ b/dep/src/g3dlite/CMakeLists.txt @@ -0,0 +1,20 @@ + +########### next target ############### + +SET(g3dlite_STAT_SRCS + AABox.cpp + Box.cpp + Crypto.cpp + format.cpp + Matrix3.cpp + Plane.cpp + System.cpp + Triangle.cpp + Vector3.cpp + Vector4.cpp +) + +add_library(g3dlite STATIC ${g3dlite_STAT_SRCS}) + + +########### install files ############### diff --git a/dep/src/sockets/CMakeLists.txt b/dep/src/sockets/CMakeLists.txt new file mode 100644 index 00000000000..40ac135a9ae --- /dev/null +++ b/dep/src/sockets/CMakeLists.txt @@ -0,0 +1,22 @@ +SET(trinitysockets_STAT_SRCS + Base64.cpp + Exception.cpp + Ipv4Address.cpp + Ipv6Address.cpp + Lock.cpp + Mutex.cpp + Parse.cpp + ResolvServer.cpp + ResolvSocket.cpp + Socket.cpp + SocketHandler.cpp + StdoutLog.cpp + StreamSocket.cpp + TcpSocket.cpp + Thread.cpp + UdpSocket.cpp + Utility.cpp + socket_include.cpp +) + +add_library(trinitysockets STATIC ${trinitysockets_STAT_SRCS}) diff --git a/dep/src/zlib/CMakeLists.txt b/dep/src/zlib/CMakeLists.txt new file mode 100644 index 00000000000..b8803e81c11 --- /dev/null +++ b/dep/src/zlib/CMakeLists.txt @@ -0,0 +1,20 @@ + +########### next target ############### + +SET(zlib_STAT_SRCS + adler32.c + compress.c + crc32.c + deflate.c + example.c + gzio.c + infback.c + inffast.c + inflate.c + inftrees.c + trees.c + uncompr.c + zutil.c +) + +add_library(zlib STATIC ${zlib_STAT_SRCS}) diff --git a/dep/src/zthread/CMakeLists.txt b/dep/src/zthread/CMakeLists.txt new file mode 100644 index 00000000000..61fb1310588 --- /dev/null +++ b/dep/src/zthread/CMakeLists.txt @@ -0,0 +1,38 @@ +########### next target ############### + +SET(ZThread_LIB_SRCS + AtomicCount.cxx + Condition.cxx + ConcurrentExecutor.cxx + CountingSemaphore.cxx + FastMutex.cxx + FastRecursiveMutex.cxx + Mutex.cxx + RecursiveMutexImpl.cxx + RecursiveMutex.cxx + Monitor.cxx + PoolExecutor.cxx + PriorityCondition.cxx + PriorityInheritanceMutex.cxx + PriorityMutex.cxx + PrioritySemaphore.cxx + Semaphore.cxx + SynchronousExecutor.cxx + Thread.cxx + ThreadedExecutor.cxx + ThreadImpl.cxx + ThreadLocalImpl.cxx + ThreadQueue.cxx + Time.cxx + ThreadOps.cxx + ) + +ADD_LIBRARY(ZThread STATIC ${ZThread_LIB_SRCS}) + +TARGET_LINK_LIBRARIES(ZThread ) + +SET_TARGET_PROPERTIES(ZThread PROPERTIES VERSION 4.2.0 SOVERSION 4 ) +INSTALL(TARGETS ZThread DESTINATION lib ) + + +########### install files ############### diff --git a/sql/CMakeLists.txt b/sql/CMakeLists.txt new file mode 100644 index 00000000000..dfdbfd0cf20 --- /dev/null +++ b/sql/CMakeLists.txt @@ -0,0 +1,7 @@ +add_subdirectory(updates) +add_subdirectory(tools) + + +########### install files ############### + +install(FILES world.sql realmd.sql characters.sql create_mysql.sql world_scripts_full.sql world_scripts_structure.sql drop_mysql.sql DESTINATION share/trinity/sql) diff --git a/sql/characters.sql b/sql/characters.sql index 89703b0f369..0d0c56e5113 100644 --- a/sql/characters.sql +++ b/sql/characters.sql @@ -715,6 +715,7 @@ LOCK TABLES `character_tutorial` WRITE; UNLOCK TABLES; -- + `arena_pending_points` int (10) UNSIGNED NOT NULL default '0';, -- Table structure for table `corpse` -- diff --git a/sql/tools/CMakeLists.txt b/sql/tools/CMakeLists.txt new file mode 100644 index 00000000000..bcf0c7a8343 --- /dev/null +++ b/sql/tools/CMakeLists.txt @@ -0,0 +1,4 @@ + +########### install files ############### + +install(FILES characters_item_duplicates_remove.sql characters_pet_data_cleanup.sql README DESTINATION share/trinity/sql/tools) diff --git a/sql/updates/871_world.sql b/sql/updates/871_world.sql new file mode 100644 index 00000000000..54922de2a40 --- /dev/null +++ b/sql/updates/871_world.sql @@ -0,0 +1,31 @@ +DELETE FROM `trinity_string` WHERE `entry` BETWEEN '288' AND '295'; +DELETE FROM `trinity_string` WHERE `entry` BETWEEN '2000' AND '2029'; +INSERT INTO trinity_string (`entry`, `content_default`, `content_loc1`, `content_loc2`, `content_loc3`, `content_loc4`, `content_loc5`, `content_loc6`, `content_loc7`, `content_loc8`) VALUES +(2000, '|cff00ff00New ticket from|r|cffff00ff %s.|r |cff00ff00Ticket entry:|r|cffff00ff %d.|r', '', '', '', '', '', '', '', ''), +(2001, '|cff00ff00Character|r|cffff00ff %s |r|cff00ff00edited his/her ticket:|r|cffff00ff %d.|r', '', '', '', '', '', '', '', ''), +(2002, '|cff00ff00Character|r|cffff00ff %s |r|cff00ff00abandoned ticket entry:|r|cffff00ff %d.|r', '', '', '', '', '', '', '', ''), +(2003, '|cff00ff00Closed by|r:|cff00ccff %s|r ', '', '', '', '', '', '', '', ''), +(2004, '|cff00ff00Deleted by|r:|cff00ccff %s|r ', '', '', '', '', '', '', '', ''), +(2005, 'Ticket not found.', '', '', '', '', '', '', '', ''), +(2006, 'Please close ticket before deleting it permanently.', '', '', '', '', '', '', '', ''), +(2007, 'Ticket %d is already assigned.', '', '', '', '', '', '', '', ''), +(2008, '%u Tickets succesfully reloaded from the database.', '', '', '', '', '', '', '', ''), +(2009, 'Showing list of open tickets.', '', '', '', '', '', '', '', ''), +(2010, 'Showing list of open tickets whose creator is online.', '', '', '', '', '', '', '', ''), +(2011, 'Showing list of closed tickets.', '', '', '', '', '', '', '', ''), +(2012, 'Invalid name specified. Name should be that of an online Gamemaster.', '', '', '', '', '', '', '', ''), +(2013, 'This ticket is already assigned to yourself. To unassign use .ticket unassign %d and then reassign.', '', '', '', '', '', '', '', ''), +(2014, 'Ticket %d is not assigned, you cannot unassign it.', '', '', '', '', '', '', '', ''), +(2015, 'You cannot unassign tickets from staffmembers with a higher security level than yourself.', '', '', '', '', '', '', '', ''), +(2016, 'Cannot close ticket %d, it is assigned to another GM.', '', '', '', '', '', '', '', ''), +(2017, '|cff00ff00Ticket|r:|cff00ccff %d.|r ', '', '', '', '', '', '', '', ''), +(2018, '|cff00ff00Created by|r:|cff00ccff %s|r ', '', '', '', '', '', '', '', ''), +(2019, '|cff00ff00Last change|r:|cff00ccff %s ago|r ', '', '', '', '', '', '', '', ''), +(2020, '|cff00ff00Assigned to|r:|cff00ccff %s|r ', '', '', '', '', '', '', '', ''), +(2021, '|cff00ff00Unassigned by|r:|cff00ccff %s|r ', '', '', '', '', '', '', '', ''), +(2022, '\n|cff00ff00Message|r: \"%s\"|r ', '', '', '', '', '', '', '', ''), +(2023, '\n|cff00ff00Comment|r: \"%s\"|r ', '', '', '', '', '', '', '', ''), +(2024, '\n|cff00ccff%s|r |cff00ff00Added comment|r: \"%s\"|r ', '', '', '', '', '', '', '', ''); + +DELETE FROM `command` WHERE (`name` LIKE '%ticket closedlist%'); +INSERT INTO `command` (`name`,`security`,`help`) VALUES ('.ticket closedlist','1','Displays a list of closed GM tickets.'); diff --git a/sql/updates/CMakeLists.txt b/sql/updates/CMakeLists.txt new file mode 100644 index 00000000000..53490e0a15e --- /dev/null +++ b/sql/updates/CMakeLists.txt @@ -0,0 +1,40 @@ +install(FILES +11_characters.sql +45_characters.sql +54_world.sql +57_world_scripts.sql +66_world_scripts.sql +68_world.sql +70_world_scripts.sql +78_world.sql +79_characters.sql +79_world.sql +82_world_scripts.sql +83_realmd.sql +84_world.sql +86_world_scripts.sql +90_world.sql +102_world.sql +112_world_scripts.sql +116_world.sql +117_world_scripts.sql +120_world.sql +123_world_scripts.sql +125_world_scripts.sql +133_world_scripts.sql +140_world.sql +145_world_scripts.sql +146_world.sql +147_world.sql +152_world.sql +153_world.sql +171_world.sql +172_world_scripts.sql +175_world_scripts.sql +176_world.sql +182_world.sql +194_world_blacktemple.sql +195_world_serpent_shrine.sql + +#Yes, i sorted them manually, so please be as kind as to add incoming .sql updates in order. +DESTINATION share/trinity/sql/updates)
\ No newline at end of file diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt new file mode 100644 index 00000000000..8c8b9e0126f --- /dev/null +++ b/src/CMakeLists.txt @@ -0,0 +1,6 @@ +add_subdirectory(framework) +add_subdirectory(shared) +add_subdirectory(trinityrealm) +add_subdirectory(game) +add_subdirectory(bindings) +add_subdirectory(trinitycore) diff --git a/src/bindings/CMakeLists.txt b/src/bindings/CMakeLists.txt new file mode 100644 index 00000000000..6933b29fe2d --- /dev/null +++ b/src/bindings/CMakeLists.txt @@ -0,0 +1,5 @@ +if(DO_SCRIPTS) +add_subdirectory(scripts) +else (DO_SCRIPTS) +add_subdirectory(interface) +endif(DO_SCRIPTS) diff --git a/src/bindings/interface/CMakeLists.txt b/src/bindings/interface/CMakeLists.txt new file mode 100644 index 00000000000..4a8f0872422 --- /dev/null +++ b/src/bindings/interface/CMakeLists.txt @@ -0,0 +1,19 @@ + +########### next target ############### + +SET(trinityinterface_LIB_SRCS + ScriptMgr.cpp + ScriptMgr.h + config.h + system.cpp + Scripts/sc_default.cpp + Scripts/sc_defines.cpp + Scripts/sc_defines.h +) + +add_library(trinityinterface STATIC ${trinityinterface_LIB_SRCS}) + +target_link_libraries(trinityinterface) + +set_target_properties(trinityinterface PROPERTIES VERSION 4.2.0 SOVERSION 4) +install(TARGETS trinityinterface DESTINATION lib) diff --git a/src/bindings/interface/ScriptMgr.cpp b/src/bindings/interface/ScriptMgr.cpp index 027b5b1fe57..8e6f2e421b6 100644 --- a/src/bindings/interface/ScriptMgr.cpp +++ b/src/bindings/interface/ScriptMgr.cpp @@ -276,7 +276,7 @@ InstanceData* CreateInstanceData(Map *map) return tmpscript->GetInstanceData(map); } -*/ + void ScriptedAI::UpdateAI(const uint32) { //Check if we have a current target @@ -319,3 +319,4 @@ void ScriptedAI::DoGoHome() if( !m_creature->getVictim() && m_creature->isAlive() ) m_creature->GetMotionMaster()->MoveTargetedHome(); } +*/ diff --git a/src/bindings/scripts/CMakeLists.txt b/src/bindings/scripts/CMakeLists.txt new file mode 100644 index 00000000000..636530b9527 --- /dev/null +++ b/src/bindings/scripts/CMakeLists.txt @@ -0,0 +1,389 @@ + +########### next target ############### + +SET(trinityscript_LIB_SRCS + ScriptMgr.cpp + ScriptMgr.h + include/precompiled.cpp + include/precompiled.h + include/sc_creature.cpp + include/sc_creature.h + include/sc_gossip.h + include/sc_instance.h + scripts/areatrigger/areatrigger_scripts.cpp + scripts/boss/boss_emeriss.cpp + scripts/boss/boss_lethon.cpp + scripts/boss/boss_taerar.cpp + scripts/boss/boss_ysondre.cpp + scripts/creature/mob_event_ai.cpp + scripts/creature/mob_event_ai.h + scripts/creature/mob_generic_creature.cpp + scripts/creature/simple_ai.cpp + scripts/creature/simple_ai.h + scripts/custom/custom_example.cpp + scripts/custom/custom_gossip_codebox.cpp + scripts/custom/test.cpp + scripts/go/go_scripts.cpp + scripts/guard/guard_ai.cpp + scripts/guard/guard_ai.h + scripts/guard/guards.cpp + scripts/item/item_scripts.cpp + scripts/item/item_test.cpp + scripts/npc/npc_escortAI.cpp + scripts/npc/npc_escortAI.h + scripts/npc/npc_innkeeper.cpp + scripts/npc/npc_professions.cpp + scripts/npc/npcs_special.cpp + scripts/zone/arathi_highlands/arathi_highlands.cpp + scripts/zone/alterac_mountains/alterac_mountains.cpp + scripts/zone/ashenvale_forest/ashenvale.cpp + scripts/zone/aunchindoun/auchenai_crypts/boss_exarch_maladaar.cpp + scripts/zone/aunchindoun/auchenai_crypts/boss_shirrak_the_dead_watcher.cpp + scripts/zone/aunchindoun/mana_tombs/boss_nexusprince_shaffar.cpp + scripts/zone/aunchindoun/mana_tombs/boss_pandemonius.cpp + scripts/zone/aunchindoun/sethekk_halls/boss_darkweaver_syth.cpp + scripts/zone/aunchindoun/sethekk_halls/boss_tailonking_ikiss.cpp + scripts/zone/aunchindoun/sethekk_halls/def_sethekk_halls.h + scripts/zone/aunchindoun/sethekk_halls/instance_sethekk_halls.cpp + scripts/zone/aunchindoun/shadow_labyrinth/boss_ambassador_hellmaw.cpp + scripts/zone/aunchindoun/shadow_labyrinth/boss_blackheart_the_inciter.cpp + scripts/zone/aunchindoun/shadow_labyrinth/boss_grandmaster_vorpil.cpp + scripts/zone/aunchindoun/shadow_labyrinth/boss_murmur.cpp + scripts/zone/aunchindoun/shadow_labyrinth/def_shadow_labyrinth.h + scripts/zone/aunchindoun/shadow_labyrinth/instance_shadow_labyrinth.cpp + scripts/zone/azshara/azshara.cpp + scripts/zone/azshara/boss_azuregos.cpp + scripts/zone/azuremyst_isle/azuremyst_isle.cpp + scripts/zone/barrens/the_barrens.cpp + scripts/zone/black_temple/black_temple.cpp + scripts/zone/black_temple/boss_bloodboil.cpp + scripts/zone/black_temple/boss_illidan.cpp + scripts/zone/black_temple/boss_mother_shahraz.cpp + scripts/zone/black_temple/boss_reliquary_of_souls.cpp + scripts/zone/black_temple/boss_shade_of_akama.cpp + scripts/zone/black_temple/boss_supremus.cpp + scripts/zone/black_temple/boss_teron_gorefiend.cpp + scripts/zone/black_temple/boss_warlord_najentus.cpp + scripts/zone/black_temple/def_black_temple.h + scripts/zone/black_temple/illidari_council.cpp + scripts/zone/black_temple/instance_black_temple.cpp + scripts/zone/blackrock_depths/blackrock_depths.cpp + scripts/zone/blackrock_depths/instance_blackrock_depths.cpp + scripts/zone/blackrock_depths/def_blackrock_depths.h + scripts/zone/blackrock_depths/boss_ambassador_flamelash.cpp + scripts/zone/blackrock_depths/boss_angerrel.cpp + scripts/zone/blackrock_depths/boss_anubshiah.cpp + scripts/zone/blackrock_depths/boss_doomrel.cpp + scripts/zone/blackrock_depths/boss_doperel.cpp + scripts/zone/blackrock_depths/boss_emperor_dagran_thaurissan.cpp + scripts/zone/blackrock_depths/boss_general_angerforge.cpp + scripts/zone/blackrock_depths/boss_gloomrel.cpp + scripts/zone/blackrock_depths/boss_gorosh_the_dervish.cpp + scripts/zone/blackrock_depths/boss_grizzle.cpp + scripts/zone/blackrock_depths/boss_haterel.cpp + scripts/zone/blackrock_depths/boss_high_interrogator_gerstahn.cpp + scripts/zone/blackrock_depths/boss_magmus.cpp + scripts/zone/blackrock_depths/boss_moira_bronzebeard.cpp + scripts/zone/blackrock_depths/boss_seethrel.cpp + scripts/zone/blackrock_depths/boss_vilerel.cpp + scripts/zone/blackrock_spire/boss_drakkisath.cpp + scripts/zone/blackrock_spire/boss_gyth.cpp + scripts/zone/blackrock_spire/boss_halycon.cpp + scripts/zone/blackrock_spire/boss_highlord_omokk.cpp + scripts/zone/blackrock_spire/boss_mother_smolderweb.cpp + scripts/zone/blackrock_spire/boss_overlord_wyrmthalak.cpp + scripts/zone/blackrock_spire/boss_pyroguard_emberseer.cpp + scripts/zone/blackrock_spire/boss_quartermaster_zigris.cpp + scripts/zone/blackrock_spire/boss_rend_blackhand.cpp + scripts/zone/blackrock_spire/boss_shadow_hunter_voshgajin.cpp + scripts/zone/blackrock_spire/boss_the_beast.cpp + scripts/zone/blackrock_spire/boss_warmaster_voone.cpp + scripts/zone/blackwing_lair/boss_broodlord_lashlayer.cpp + scripts/zone/blackwing_lair/boss_chromaggus.cpp + scripts/zone/blackwing_lair/boss_ebonroc.cpp + scripts/zone/blackwing_lair/boss_firemaw.cpp + scripts/zone/blackwing_lair/boss_flamegor.cpp + scripts/zone/blackwing_lair/boss_nefarian.cpp + scripts/zone/blackwing_lair/boss_razorgore.cpp + scripts/zone/blackwing_lair/boss_vaelastrasz.cpp + scripts/zone/blackwing_lair/boss_victor_nefarius.cpp + scripts/zone/blackwing_lair/instance_blackwing_lair.cpp + scripts/zone/blades_edge_mountains/blades_edge_mountains.cpp + scripts/zone/blasted_lands/blasted_lands.cpp + scripts/zone/blasted_lands/boss_kruul.cpp + scripts/zone/bloodmyst_isle/bloodmyst_isle.cpp + scripts/zone/burning_steppes/burning_steppes.cpp + scripts/zone/caverns_of_time/dark_portal/def_dark_portal.h + scripts/zone/caverns_of_time/dark_portal/instance_dark_portal.cpp + scripts/zone/caverns_of_time/dark_portal/dark_portal.cpp + scripts/zone/caverns_of_time/dark_portal/boss_aeonus.cpp + scripts/zone/caverns_of_time/dark_portal/boss_chrono_lord_deja.cpp + scripts/zone/caverns_of_time/dark_portal/boss_temporus.cpp + scripts/zone/caverns_of_time/hyjal/boss_archimonde.cpp + scripts/zone/caverns_of_time/hyjal/def_hyjal.h + scripts/zone/caverns_of_time/hyjal/hyjal.cpp + scripts/zone/caverns_of_time/hyjal/hyjalAI.cpp + scripts/zone/caverns_of_time/hyjal/hyjalAI.h + scripts/zone/caverns_of_time/hyjal/instance_hyjal.cpp + scripts/zone/caverns_of_time/old_hillsbrad/boss_captain_skarloc.cpp + scripts/zone/caverns_of_time/old_hillsbrad/boss_epoch_hunter.cpp + scripts/zone/caverns_of_time/old_hillsbrad/boss_leutenant_drake.cpp + scripts/zone/caverns_of_time/old_hillsbrad/def_old_hillsbrad.h + scripts/zone/caverns_of_time/old_hillsbrad/instance_old_hillsbrad.cpp + scripts/zone/caverns_of_time/old_hillsbrad/old_hillsbrad.cpp + scripts/zone/coilfang_resevoir/serpent_shrine/boss_fathomlord_karathress.cpp + scripts/zone/coilfang_resevoir/serpent_shrine/boss_hydross_the_unstable.cpp + scripts/zone/coilfang_resevoir/serpent_shrine/boss_lurker_below.cpp + scripts/zone/coilfang_resevoir/serpent_shrine/boss_lady_vashj.cpp + scripts/zone/coilfang_resevoir/serpent_shrine/boss_leotheras_the_blind.cpp + scripts/zone/coilfang_resevoir/serpent_shrine/boss_morogrim_tidewalker.cpp + scripts/zone/coilfang_resevoir/serpent_shrine/def_serpent_shrine.h + scripts/zone/coilfang_resevoir/serpent_shrine/instance_serpent_shrine.cpp + scripts/zone/coilfang_resevoir/steam_vault/boss_hydromancer_thespia.cpp + scripts/zone/coilfang_resevoir/steam_vault/boss_mekgineer_steamrigger.cpp + scripts/zone/coilfang_resevoir/steam_vault/boss_warlord_kalithresh.cpp + scripts/zone/coilfang_resevoir/steam_vault/def_steam_vault.h + scripts/zone/coilfang_resevoir/steam_vault/instance_steam_vault.cpp + scripts/zone/coilfang_resevoir/underbog/boss_hungarfen.cpp + scripts/zone/darkshore/darkshore.cpp + scripts/zone/deadmines/def_deadmines.h + scripts/zone/deadmines/deadmines.cpp + scripts/zone/dun_morogh/dun_morogh.cpp + scripts/zone/dustwallow_marsh/dustwallow_marsh.cpp + scripts/zone/eastern_plaguelands/eastern_plaguelands.cpp + scripts/zone/elwynn_forest/elwynn_forest.cpp + scripts/zone/eversong_woods/eversong_woods.cpp + scripts/zone/felwood/felwood.cpp + scripts/zone/feralas/feralas.cpp + scripts/zone/ghostlands/ghostlands.cpp + scripts/zone/gruuls_lair/boss_gruul.cpp + scripts/zone/gruuls_lair/boss_high_king_maulgar.cpp + scripts/zone/gruuls_lair/def_gruuls_lair.h + scripts/zone/gruuls_lair/instance_gruuls_lair.cpp + scripts/zone/hellfire_citadel/blood_furnace/boss_broggok.cpp + scripts/zone/hellfire_citadel/blood_furnace/boss_kelidan_the_breaker.cpp + scripts/zone/hellfire_citadel/blood_furnace/boss_the_maker.cpp + scripts/zone/hellfire_citadel/hellfire_ramparts/boss_omor_the_unscarred.cpp + scripts/zone/hellfire_citadel/hellfire_ramparts/boss_watchkeeper_gargolmar.cpp + scripts/zone/hellfire_citadel/magtheridons_lair/boss_magtheridon.cpp + scripts/zone/hellfire_citadel/magtheridons_lair/def_magtheridons_lair.h + scripts/zone/hellfire_citadel/magtheridons_lair/instance_magtheridons_lair.cpp + scripts/zone/hellfire_citadel/shattered_halls/boss_nethekurse.cpp + scripts/zone/hellfire_citadel/shattered_halls/boss_warbringer_omrogg.cpp + scripts/zone/hellfire_citadel/shattered_halls/def_shattered_halls.h + scripts/zone/hellfire_citadel/shattered_halls/instance_shattered_halls.cpp + scripts/zone/hellfire_citadel/shattered_halls/boss_warchief_kargath_bladefist.cpp + scripts/zone/hellfire_peninsula/boss_doomlord_kazzak.cpp + scripts/zone/hellfire_peninsula/hellfire_peninsula.cpp + scripts/zone/ironforge/ironforge.cpp + scripts/zone/isle_of_queldanas/isle_of_queldanas.cpp + scripts/zone/karazhan/boss_curator.cpp + scripts/zone/karazhan/boss_maiden_of_virtue.cpp + scripts/zone/karazhan/boss_midnight.cpp + scripts/zone/karazhan/boss_moroes.cpp + scripts/zone/karazhan/boss_netherspite.cpp + scripts/zone/karazhan/boss_nightbane.cpp + scripts/zone/karazhan/boss_prince_malchezaar.cpp + scripts/zone/karazhan/boss_shade_of_aran.cpp + scripts/zone/karazhan/boss_terestian_illhoof.cpp + scripts/zone/karazhan/bosses_opera.cpp + scripts/zone/karazhan/def_karazhan.h + scripts/zone/karazhan/instance_karazhan.cpp + scripts/zone/karazhan/karazhan.cpp + scripts/zone/loch_modan/loch_modan.cpp + scripts/zone/magisters_terrace/boss_felblood_kaelthas.cpp + scripts/zone/magisters_terrace/boss_priestess_delrissa.cpp + scripts/zone/magisters_terrace/boss_selin_fireheart.cpp + scripts/zone/magisters_terrace/boss_vexallus.cpp + scripts/zone/magisters_terrace/def_magisters_terrace.h + scripts/zone/magisters_terrace/instance_magisters_terrace.cpp + scripts/zone/maraudon/boss_celebras_the_cursed.cpp + scripts/zone/maraudon/boss_landslide.cpp + scripts/zone/maraudon/boss_noxxion.cpp + scripts/zone/maraudon/boss_princess_theradras.cpp + scripts/zone/molten_core/boss_baron_geddon.cpp + scripts/zone/molten_core/boss_garr.cpp + scripts/zone/molten_core/boss_gehennas.cpp + scripts/zone/molten_core/boss_golemagg.cpp + scripts/zone/molten_core/boss_lucifron.cpp + scripts/zone/molten_core/boss_magmadar.cpp + scripts/zone/molten_core/boss_majordomo_executus.cpp + scripts/zone/molten_core/boss_ragnaros.cpp + scripts/zone/molten_core/boss_shazzrah.cpp + scripts/zone/molten_core/boss_sulfuron_harbinger.cpp + scripts/zone/molten_core/def_molten_core.h + scripts/zone/molten_core/instance_molten_core.cpp + scripts/zone/molten_core/molten_core.cpp + scripts/zone/moonglade/moonglade.cpp + scripts/zone/mulgore/mulgore.cpp + scripts/zone/nagrand/nagrand.cpp + scripts/zone/naxxramas/boss_anubrekhan.cpp + scripts/zone/naxxramas/boss_faerlina.cpp + scripts/zone/naxxramas/boss_gluth.cpp + scripts/zone/naxxramas/boss_gothik.cpp + scripts/zone/naxxramas/boss_grobbulus.cpp + scripts/zone/naxxramas/boss_heigan.cpp + scripts/zone/naxxramas/boss_highlord_mograine.cpp + scripts/zone/naxxramas/boss_kelthuzad.cpp + scripts/zone/naxxramas/boss_four_horsemen.cpp + scripts/zone/naxxramas/boss_loatheb.cpp + scripts/zone/naxxramas/boss_maexxna.cpp + scripts/zone/naxxramas/boss_noth.cpp + scripts/zone/naxxramas/boss_patchwerk.cpp + scripts/zone/naxxramas/boss_razuvious.cpp + scripts/zone/naxxramas/boss_sapphiron.cpp + scripts/zone/naxxramas/boss_thaddius.cpp + scripts/zone/naxxramas/instance_naxxramas.cpp + scripts/zone/netherstorm/netherstorm.cpp + scripts/zone/onyxias_lair/boss_onyxia.cpp + scripts/zone/orgrimmar/orgrimmar.cpp + scripts/zone/razorfen_downs/boss_amnennar_the_coldbringer.cpp + scripts/zone/razorfen_kraul/razorfen_kraul.cpp + scripts/zone/ruins_of_ahnqiraj/boss_ayamiss.cpp + scripts/zone/ruins_of_ahnqiraj/boss_buru.cpp + scripts/zone/ruins_of_ahnqiraj/boss_kurinnaxx.cpp + scripts/zone/ruins_of_ahnqiraj/boss_moam.cpp + scripts/zone/ruins_of_ahnqiraj/boss_ossirian.cpp + scripts/zone/ruins_of_ahnqiraj/boss_rajaxx.cpp + scripts/zone/ruins_of_ahnqiraj/instance_ruins_of_ahnqiraj.cpp + scripts/zone/scarlet_monastery/boss_arcanist_doan.cpp + scripts/zone/scarlet_monastery/boss_azshir_the_sleepless.cpp + scripts/zone/scarlet_monastery/boss_bloodmage_thalnos.cpp + scripts/zone/scarlet_monastery/boss_herod.cpp + scripts/zone/scarlet_monastery/boss_high_inquisitor_fairbanks.cpp + scripts/zone/scarlet_monastery/boss_houndmaster_loksey.cpp + scripts/zone/scarlet_monastery/boss_interrogator_vishas.cpp + scripts/zone/scarlet_monastery/boss_scorn.cpp + scripts/zone/scarlet_monastery/boss_headless_horseman.cpp + scripts/zone/scarlet_monastery/boss_mograine_and_whitemane.cpp + scripts/zone/scarlet_monastery/instance_scarlet_monastery.cpp + scripts/zone/scarlet_monastery/def_scarlet_monastery.h + scripts/zone/scholomance/boss_darkmaster_gandling.cpp + scripts/zone/scholomance/boss_death_knight_darkreaver.cpp + scripts/zone/scholomance/boss_doctor_theolen_krastinov.cpp + scripts/zone/scholomance/boss_illucia_barov.cpp + scripts/zone/scholomance/boss_instructor_malicia.cpp + scripts/zone/scholomance/boss_jandice_barov.cpp + scripts/zone/scholomance/boss_kormok.cpp + scripts/zone/scholomance/boss_lord_alexei_barov.cpp + scripts/zone/scholomance/boss_lorekeeper_polkelt.cpp + scripts/zone/scholomance/boss_ras_frostwhisper.cpp + scripts/zone/scholomance/boss_the_ravenian.cpp + scripts/zone/scholomance/boss_vectus.cpp + scripts/zone/scholomance/def_scholomance.h + scripts/zone/scholomance/instance_scholomance.cpp + scripts/zone/searing_gorge/searing_gorge.cpp + scripts/zone/shadowfang_keep/def_shadowfang_keep.h + scripts/zone/shadowfang_keep/instance_shadowfang_keep.cpp + scripts/zone/shadowfang_keep/shadowfang_keep.cpp + scripts/zone/shadowmoon_valley/boss_doomwalker.cpp + scripts/zone/shadowmoon_valley/shadowmoon_valley.cpp + scripts/zone/shattrath/shattrath_city.cpp + scripts/zone/silithus/silithus.cpp + scripts/zone/silvermoon/silvermoon_city.cpp + scripts/zone/silverpine_forest/silverpine_forest.cpp + scripts/zone/stonetalon_mountains/stonetalon_mountains.cpp + scripts/zone/stormwind/stormwind_city.cpp + scripts/zone/stranglethorn_vale/stranglethorn_vale.cpp + scripts/zone/stratholme/boss_baron_rivendare.cpp + scripts/zone/stratholme/boss_baroness_anastari.cpp + scripts/zone/stratholme/boss_cannon_master_willey.cpp + scripts/zone/stratholme/boss_dathrohan_balnazzar.cpp + scripts/zone/stratholme/boss_magistrate_barthilas.cpp + scripts/zone/stratholme/boss_maleki_the_pallid.cpp + scripts/zone/stratholme/boss_nerubenkan.cpp + scripts/zone/stratholme/boss_order_of_silver_hand.cpp + scripts/zone/stratholme/boss_postmaster_malown.cpp + scripts/zone/stratholme/boss_ramstein_the_gorger.cpp + scripts/zone/stratholme/boss_timmy_the_cruel.cpp + scripts/zone/stratholme/def_stratholme.h + scripts/zone/stratholme/instance_stratholme.cpp + scripts/zone/stratholme/stratholme.cpp + scripts/zone/sunwell_plateau/boss_eredar_twins.cpp + scripts/zone/sunwell_plateau/boss_felmyst.cpp + scripts/zone/sunwell_plateau/boss_brutallus.cpp + scripts/zone/sunwell_plateau/boss_kalecgos.cpp + scripts/zone/sunwell_plateau/def_sunwell_plateau.h + scripts/zone/sunwell_plateau/instance_sunwell_plateau.cpp + scripts/zone/tanaris/tanaris.cpp + scripts/zone/tempest_keep/arcatraz/arcatraz.cpp + scripts/zone/tempest_keep/arcatraz/boss_harbinger_skyriss.cpp + scripts/zone/tempest_keep/arcatraz/def_arcatraz.h + scripts/zone/tempest_keep/arcatraz/instance_arcatraz.cpp + scripts/zone/tempest_keep/botanica/boss_high_botanist_freywinn.cpp + scripts/zone/tempest_keep/botanica/boss_laj.cpp + scripts/zone/tempest_keep/botanica/boss_warp_splinter.cpp + scripts/zone/tempest_keep/the_eye/boss_alar.cpp + scripts/zone/tempest_keep/the_eye/boss_astromancer.cpp + scripts/zone/tempest_keep/the_eye/boss_kaelthas.cpp + scripts/zone/tempest_keep/the_eye/boss_void_reaver.cpp + scripts/zone/tempest_keep/the_eye/def_the_eye.h + scripts/zone/tempest_keep/the_eye/instance_the_eye.cpp + scripts/zone/tempest_keep/the_eye/the_eye.cpp + scripts/zone/tempest_keep/the_mechanar/boss_gatewatcher_gyrokill.cpp + scripts/zone/tempest_keep/the_mechanar/boss_gatewatcher_ironhand.cpp + scripts/zone/tempest_keep/the_mechanar/boss_nethermancer_sepethrea.cpp + scripts/zone/tempest_keep/the_mechanar/boss_pathaleon_the_calculator.cpp + scripts/zone/tempest_keep/the_mechanar/def_mechanar.h + scripts/zone/tempest_keep/the_mechanar/instance_mechanar.cpp + scripts/zone/temple_of_ahnqiraj/boss_bug_trio.cpp + scripts/zone/temple_of_ahnqiraj/boss_cthun.cpp + scripts/zone/temple_of_ahnqiraj/boss_fankriss.cpp + scripts/zone/temple_of_ahnqiraj/boss_huhuran.cpp + scripts/zone/temple_of_ahnqiraj/boss_ouro.cpp + scripts/zone/temple_of_ahnqiraj/boss_sartura.cpp + scripts/zone/temple_of_ahnqiraj/boss_skeram.cpp + scripts/zone/temple_of_ahnqiraj/boss_twinemperors.cpp + scripts/zone/temple_of_ahnqiraj/boss_viscidus.cpp + scripts/zone/temple_of_ahnqiraj/def_temple_of_ahnqiraj.h + scripts/zone/temple_of_ahnqiraj/instance_temple_of_ahnqiraj.cpp + scripts/zone/temple_of_ahnqiraj/mob_anubisath_sentinel.cpp + scripts/zone/terokkar_forest/terokkar_forest.cpp + scripts/zone/thunder_bluff/thunder_bluff.cpp + scripts/zone/tirisfal_glades/tirisfal_glades.cpp + scripts/zone/thousand_needles/thousand_needles.cpp + scripts/zone/uldaman/boss_archaedas.cpp + scripts/zone/uldaman/instance_uldaman.cpp + scripts/zone/uldaman/boss_ironaya.cpp + scripts/zone/uldaman/uldaman.cpp + scripts/zone/undercity/undercity.cpp + scripts/zone/wailing_caverns/instance_wailing_caverns.cpp + scripts/zone/western_plaguelands/western_plaguelands.cpp + scripts/zone/westfall/westfall.cpp + scripts/zone/winterspring/winterspring.cpp + scripts/zone/zangarmarsh/zangarmarsh.cpp + scripts/zone/zulaman/boss_akilzon.cpp + scripts/zone/zulaman/boss_halazzi.cpp + scripts/zone/zulaman/boss_hexlord.cpp + scripts/zone/zulaman/boss_janalai.cpp + scripts/zone/zulaman/boss_nalorakk.cpp + scripts/zone/zulaman/boss_zuljin.cpp + scripts/zone/zulaman/def_zulaman.h + scripts/zone/zulaman/instance_zulaman.cpp + scripts/zone/zulaman/zulaman.cpp + scripts/zone/zulfarrak/zulfarrak.cpp + scripts/zone/zulgurub/boss_arlokk.cpp + scripts/zone/zulgurub/boss_gahzranka.cpp + scripts/zone/zulgurub/boss_grilek.cpp + scripts/zone/zulgurub/boss_hakkar.cpp + scripts/zone/zulgurub/boss_hazzarah.cpp + scripts/zone/zulgurub/boss_jeklik.cpp + scripts/zone/zulgurub/boss_jindo.cpp + scripts/zone/zulgurub/boss_mandokir.cpp + scripts/zone/zulgurub/boss_marli.cpp + scripts/zone/zulgurub/boss_renataki.cpp + scripts/zone/zulgurub/boss_thekal.cpp + scripts/zone/zulgurub/boss_venoxis.cpp + scripts/zone/zulgurub/boss_wushoolay.cpp + scripts/zone/zulgurub/def_zulgurub.h + scripts/zone/zulgurub/instance_zulgurub.cpp + system.cpp +) + +add_library(trinityscript STATIC ${trinityscript_LIB_SRCS}) + +target_link_libraries(trinityscript) + +set_target_properties(trinityscript PROPERTIES VERSION 4.2.0 SOVERSION 4) +install(TARGETS trinityscript DESTINATION lib) + diff --git a/src/bindings/scripts/scripts/npc/npcs_special.cpp b/src/bindings/scripts/scripts/npc/npcs_special.cpp index c438ef2d8af..e67fa031d42 100644 --- a/src/bindings/scripts/scripts/npc/npcs_special.cpp +++ b/src/bindings/scripts/scripts/npc/npcs_special.cpp @@ -131,12 +131,79 @@ bool QuestComplete_npc_chicken_cluck(Player *player, Creature *_Creature, const ## npc_dancing_flames ######*/ -bool ReceiveEmote_npc_dancing_flames( Player *player, Creature *_Creature, uint32 emote ) +#define SPELL_BRAZIER 45423 +#define SPELL_SEDUCTION 47057 +#define SPELL_FIERY_AURA 45427 + +struct TRINITY_DLL_DECL npc_dancing_flamesAI : public ScriptedAI { - if( emote == TEXTEMOTE_DANCE ) - _Creature->CastSpell(player,47057,false); + npc_dancing_flamesAI(Creature *c) : ScriptedAI(c) {Reset();} + + bool active; + uint32 can_iteract; - return true; + void Reset() + { + active = true; + can_iteract = 3500; + DoCast(m_creature,SPELL_BRAZIER,true); + DoCast(m_creature,SPELL_FIERY_AURA,false); + float x, y, z; + m_creature->GetPosition(x,y,z); + m_creature->Relocate(x,y,z + 0.94f); + m_creature->AddUnitMovementFlag(MOVEMENTFLAG_ONTRANSPORT | MOVEMENTFLAG_LEVITATING); + m_creature->HandleEmoteCommand(EMOTE_ONESHOT_DANCE); + WorldPacket data; //send update position to client + m_creature->BuildHeartBeatMsg(&data); + m_creature->SendMessageToSet(&data,true); + } + + void UpdateAI(const uint32 diff) + { + if (!active) + { + if(can_iteract <= diff){ + active = true; + can_iteract = 3500; + m_creature->HandleEmoteCommand(EMOTE_ONESHOT_DANCE); + }else can_iteract -= diff; + } + } + + void Aggro(Unit* who){} +}; + +CreatureAI* GetAI_npc_dancing_flames(Creature *_Creature) +{ + return new npc_dancing_flamesAI(_Creature); +} + +bool ReceiveEmote_npc_dancing_flames( Player *player, Creature *flame, uint32 emote ) +{ + if ( ((npc_dancing_flamesAI*)flame->AI())->active && + flame->IsWithinLOS(player->GetPositionX(),player->GetPositionY(),player->GetPositionZ()) && flame->IsWithinDistInMap(player,30.0f)) + { + flame->SetInFront(player); + ((npc_dancing_flamesAI*)flame->AI())->active = false; + + WorldPacket data; + flame->BuildHeartBeatMsg(&data); + flame->SendMessageToSet(&data,true); + switch(emote) + { + case TEXTEMOTE_KISS: flame->HandleEmoteCommand(EMOTE_ONESHOT_SHY); break; + case TEXTEMOTE_WAVE: flame->HandleEmoteCommand(EMOTE_ONESHOT_WAVE); break; + case TEXTEMOTE_BOW: flame->HandleEmoteCommand(EMOTE_ONESHOT_BOW); break; + case TEXTEMOTE_JOKE: flame->HandleEmoteCommand(EMOTE_ONESHOT_LAUGH); break; + case TEXTEMOTE_DANCE: + { + if (!player->HasAura(SPELL_SEDUCTION,0)) + flame->CastSpell(player,SPELL_SEDUCTION,true); + } + break; + } + } + return true; } /*###### @@ -940,6 +1007,7 @@ void AddSC_npcs_special() newscript = new Script; newscript->Name="npc_dancing_flames"; + newscript->GetAI = &GetAI_npc_dancing_flames; newscript->pReceiveEmote = &ReceiveEmote_npc_dancing_flames; newscript->RegisterSelf(); diff --git a/src/bindings/scripts/scripts/zone/aunchindoun/auchenai_crypts/boss_shirrak_the_dead_watcher.cpp b/src/bindings/scripts/scripts/zone/aunchindoun/auchenai_crypts/boss_shirrak_the_dead_watcher.cpp index afc161afed4..d0273e22d34 100644 --- a/src/bindings/scripts/scripts/zone/aunchindoun/auchenai_crypts/boss_shirrak_the_dead_watcher.cpp +++ b/src/bindings/scripts/scripts/zone/aunchindoun/auchenai_crypts/boss_shirrak_the_dead_watcher.cpp @@ -23,7 +23,7 @@ EndScriptData */ #include "precompiled.h" -#define SPELL_INHABITMAGIC 32264 +#define SPELL_INHIBITMAGIC 32264 #define SPELL_ATTRACTMAGIC 32265 #define N_SPELL_CARNIVOROUSBITE 36383 #define H_SPELL_CARNIVOROUSBITE 39382 @@ -44,7 +44,7 @@ struct TRINITY_DLL_DECL boss_shirrak_the_dead_watcherAI : public ScriptedAI Reset(); } - uint32 Inhabitmagic_Timer; + uint32 Inhibitmagic_Timer; uint32 Attractmagic_Timer; uint32 Carnivorousbite_Timer; uint32 FocusFire_Timer; @@ -53,7 +53,7 @@ struct TRINITY_DLL_DECL boss_shirrak_the_dead_watcherAI : public ScriptedAI void Reset() { - Inhabitmagic_Timer = 3000; + Inhibitmagic_Timer = 0; Attractmagic_Timer = 28000; Carnivorousbite_Timer = 10000; FocusFire_Timer = 17000; @@ -79,22 +79,38 @@ struct TRINITY_DLL_DECL boss_shirrak_the_dead_watcherAI : public ScriptedAI void UpdateAI(const uint32 diff) { + //Inhibitmagic_Timer + if (Inhibitmagic_Timer < diff) + { + float dist; + Map *map = m_creature->GetMap(); + Map::PlayerList const &PlayerList = map->GetPlayers(); + for(Map::PlayerList::const_iterator i = PlayerList.begin(); i != PlayerList.end(); ++i) + if (Player* i_pl = i->getSource()) + if (i_pl->isAlive() && (dist = i_pl->GetDistance(m_creature)) < 45) + { + i_pl->RemoveAurasDueToSpell(SPELL_INHIBITMAGIC); + m_creature->AddAura(SPELL_INHIBITMAGIC, i_pl); + if(dist < 35) + m_creature->AddAura(SPELL_INHIBITMAGIC, i_pl); + if(dist < 25) + m_creature->AddAura(SPELL_INHIBITMAGIC, i_pl); + if(dist < 15) + m_creature->AddAura(SPELL_INHIBITMAGIC, i_pl); + } + Inhibitmagic_Timer = 3000+(rand()%1000); + }else Inhibitmagic_Timer -= diff; + //Return since we have no target if (!m_creature->SelectHostilTarget() || !m_creature->getVictim() ) return; - //Inhabitmagic_Timer - if (Inhabitmagic_Timer < diff) - { - DoCast(m_creature,SPELL_INHABITMAGIC); - Inhabitmagic_Timer = 2000+(rand()%2000); - }else Inhabitmagic_Timer -= diff; - //Attractmagic_Timer if (Attractmagic_Timer < diff) { DoCast(m_creature,SPELL_ATTRACTMAGIC); Attractmagic_Timer = 30000; + Carnivorousbite_Timer = 1500; }else Attractmagic_Timer -= diff; //Carnivorousbite_Timer @@ -108,20 +124,20 @@ struct TRINITY_DLL_DECL boss_shirrak_the_dead_watcherAI : public ScriptedAI if (FocusFire_Timer < diff) { // Summon Focus Fire & Emote - Unit *target = SelectUnit(SELECT_TARGET_RANDOM,0); - if (target && target->GetTypeId() == TYPEID_PLAYER) + Unit *target = SelectUnit(SELECT_TARGET_RANDOM,1); + if (target && target->GetTypeId() == TYPEID_PLAYER && target->isAlive()) { focusedTarget = target; m_creature->SummonCreature(ENTRY_FOCUS_FIRE,target->GetPositionX(),target->GetPositionY(),target->GetPositionZ(),0,TEMPSUMMON_TIMED_DESPAWN,5500); // Emote - std::string *emote = new std::string("focuses his energy on "); + std::string *emote = new std::string("focuses on "); emote->append(target->GetName()); + emote->append("!"); DoTextEmote(emote->c_str(),NULL,true); delete emote; - - FocusFire_Timer = 15000+(rand()%5000); } + FocusFire_Timer = 15000+(rand()%5000); }else FocusFire_Timer -= diff; DoMeleeAttackIfReady(); @@ -143,7 +159,7 @@ struct TRINITY_DLL_DECL mob_focus_fireAI : public ScriptedAI bool HeroicMode; uint32 FieryBlast_Timer; - bool fiery1, fiery2, fiery3; + bool fiery1, fiery2; void Reset() { diff --git a/src/bindings/scripts/scripts/zone/stranglethorn_vale/stranglethorn_vale.cpp b/src/bindings/scripts/scripts/zone/stranglethorn_vale/stranglethorn_vale.cpp index a5d66b02ddc..2631b9ac3ae 100644 --- a/src/bindings/scripts/scripts/zone/stranglethorn_vale/stranglethorn_vale.cpp +++ b/src/bindings/scripts/scripts/zone/stranglethorn_vale/stranglethorn_vale.cpp @@ -72,13 +72,28 @@ struct TRINITY_DLL_DECL mob_yennikuAI : public ScriptedAI void UpdateAI(const uint32 diff) { if (bReset) - if(Reset_Timer < diff) - { - EnterEvadeMode(); - bReset = false; - m_creature->setFaction(28); //troll, bloodscalp - } - else Reset_Timer -= diff; + { + if(Reset_Timer < diff) + { + EnterEvadeMode(); + bReset = false; + m_creature->setFaction(28); //troll, bloodscalp + } + else Reset_Timer -= diff; + + if(m_creature->isInCombat() && m_creature->getVictim()) + { + if(m_creature->getVictim()->GetTypeId() == TYPEID_PLAYER) + { + Unit *victim = m_creature->getVictim(); + if(((Player*)victim)->GetTeam() == HORDE) + { + m_creature->CombatStop(); + m_creature->DeleteThreatList(); + } + } + } + } //Return since we have no target if (!m_creature->SelectHostilTarget() || !m_creature->getVictim() ) diff --git a/src/framework/CMakeLists.txt b/src/framework/CMakeLists.txt new file mode 100644 index 00000000000..41ca661de98 --- /dev/null +++ b/src/framework/CMakeLists.txt @@ -0,0 +1,8 @@ +SET(trinityframework_STAT_SRCS + Policies/ObjectLifeTime.cpp + Utilities/EventProcessor.cpp +) +include_directories( +${CMAKE_CURRENT_SRC_DIR} +) +add_library(trinityframework STATIC ${trinityframework_STAT_SRCS}) diff --git a/src/game/CMakeLists.txt b/src/game/CMakeLists.txt new file mode 100644 index 00000000000..db1e31f2414 --- /dev/null +++ b/src/game/CMakeLists.txt @@ -0,0 +1,266 @@ + +########### next target ############### + +SET(game_STAT_SRCS + AccountMgr.cpp + AccountMgr.h + AddonHandler.cpp + AddonHandler.h + AggressorAI.cpp + AggressorAI.h + AnimalRandomMovementGenerator.h + ArenaTeam.cpp + ArenaTeam.h + ArenaTeamHandler.cpp + AuctionHouse.cpp + AuctionHouseObject.h + Bag.cpp + Bag.h + BattleGround.cpp + BattleGroundAA.cpp + BattleGroundAB.cpp + BattleGroundAV.cpp + BattleGroundBE.cpp + BattleGroundEY.cpp + BattleGroundNA.cpp + BattleGroundRL.cpp + BattleGroundWS.cpp + BattleGround.h + BattleGroundAA.h + BattleGroundAB.h + BattleGroundAV.h + BattleGroundBE.h + BattleGroundEY.h + BattleGroundNA.h + BattleGroundRL.h + BattleGroundWS.h + BattleGroundHandler.cpp + BattleGroundMgr.cpp + BattleGroundMgr.h + Cell.h + CellImpl.h + Channel.cpp + Channel.h + ChannelHandler.cpp + ChannelMgr.h + CharacterHandler.cpp + Chat.cpp + Chat.h + ChatHandler.cpp + CombatHandler.cpp + ConfusedMovementGenerator.cpp + ConfusedMovementGenerator.h + Corpse.cpp + Corpse.h + CreatureAI.cpp + CreatureAI.h + CreatureAIImpl.h + CreatureAIRegistry.cpp + CreatureAIRegistry.h + CreatureAISelector.cpp + CreatureAISelector.h + Creature.cpp + Creature.h + CreatureGroups.cpp + CreatureGroups.h + debugcmds.cpp + DestinationHolder.cpp + DestinationHolder.h + DestinationHolderImp.h + DuelHandler.cpp + DynamicObject.cpp + DynamicObject.h + FleeingMovementGenerator.cpp + FleeingMovementGenerator.h + Formulas.h + GameEvent.cpp + GameEvent.h + GameObject.cpp + GameObject.h + GlobalEvents.cpp + GlobalEvents.h + GossipDef.cpp + GossipDef.h + GridDefines.h + GridNotifiers.cpp + GridNotifiers.h + GridNotifiersImpl.h + GridStates.cpp + GridStates.h + Group.cpp + Group.h + GroupHandler.cpp + GuardAI.cpp + GuardAI.h + Guild.cpp + Guild.h + GuildHandler.cpp + HomeMovementGenerator.cpp + HomeMovementGenerator.h + HostilRefManager.cpp + HostilRefManager.h + IdleMovementGenerator.cpp + IdleMovementGenerator.h + InstanceData.cpp + InstanceData.h + InstanceSaveMgr.cpp + InstanceSaveMgr.h + Item.cpp + Item.h + ItemEnchantmentMgr.cpp + ItemEnchantmentMgr.h + ItemHandler.cpp + ItemPrototype.h + Language.h + Level0.cpp + Level1.cpp + Level2.cpp + Level3.cpp + LFGHandler.cpp + LootHandler.cpp + LootMgr.cpp + LootMgr.h + Mail.cpp + Mail.h + Map.cpp + Map.h + MapInstanced.cpp + MapInstanced.h + MapManager.cpp + MapManager.h + MiscHandler.cpp + MotionMaster.cpp + MotionMaster.h + MovementGenerator.cpp + MovementGenerator.h + MovementGeneratorImpl.h + MovementHandler.cpp + NPCHandler.cpp + NPCHandler.h + NullCreatureAI.cpp + NullCreatureAI.h + ObjectAccessor.cpp + ObjectAccessor.h + Object.cpp + ObjectDefines.h + ObjectGridLoader.cpp + ObjectGridLoader.h + Object.h + ObjectMgr.cpp + ObjectMgr.h + Opcodes.cpp + Opcodes.h + OutdoorPvP.cpp + OutdoorPvP.h + OutdoorPvPEP.cpp + OutdoorPvPEP.h + OutdoorPvPHP.cpp + OutdoorPvPHP.h + OutdoorPvPMgr.cpp + OutdoorPvPMgr.h + OutdoorPvPNA.cpp + OutdoorPvPNA.h + OutdoorPvPObjectiveAI.cpp + OutdoorPvPObjectiveAI.h + OutdoorPvPSI.cpp + OutdoorPvPSI.h + OutdoorPvPTF.cpp + OutdoorPvPTF.h + OutdoorPvPZM.cpp + OutdoorPvPZM.h + Path.h + PetAI.cpp + PetAI.h + Pet.cpp + Pet.h + PetHandler.cpp + PetitionsHandler.cpp + Player.cpp + Player.h + PlayerDump.cpp + PlayerDump.h + PointMovementGenerator.cpp + PointMovementGenerator.h + PossessedAI.cpp + PossessedAI.h + QueryHandler.cpp + QuestDef.cpp + QuestDef.h + QuestHandler.cpp + RandomMovementGenerator.cpp + RandomMovementGenerator.h + ReactorAI.cpp + ReactorAI.h + ScriptCalls.cpp + ScriptCalls.h + SharedDefines.h + SkillHandler.cpp + SpellAuraDefines.h + SpellAuras.cpp + SpellAuras.h + Spell.cpp + SpellEffects.cpp + Spell.h + SkillDiscovery.cpp + SkillDiscovery.h + SkillExtraItems.cpp + SkillExtraItems.h + SpellHandler.cpp + SocialMgr.cpp + SocialMgr.h + SpellMgr.cpp + SpellMgr.h + StatSystem.cpp + TargetedMovementGenerator.cpp + TargetedMovementGenerator.h + TaxiHandler.cpp + TemporarySummon.cpp + TemporarySummon.h + TicketHandler.cpp + TicketMgr.cpp + TicketMgr.h + tools.cpp + Tools.h + TotemAI.cpp + TotemAI.h + Totem.cpp + Totem.h + TradeHandler.cpp + Transports.cpp + Transports.h + ThreatManager.cpp + ThreatManager.h + Traveller.h + Unit.cpp + Unit.h + UnitEvents.h + UpdateData.cpp + UpdateData.h + UpdateFields.h + UpdateMask.h + VoiceChatHandler.cpp + WaypointManager.cpp + WaypointManager.h + WaypointMovementGenerator.cpp + WaypointMovementGenerator.h + Weather.cpp + Weather.h + World.cpp + World.h + WorldLog.cpp + WorldLog.h + WorldSession.cpp + WorldSession.h + WorldSocket.cpp + WorldSocket.h + WorldSocketMgr.cpp + WorldSocketMgr.h + FollowerReference.cpp + FollowerReference.h + FollowerRefManager.h + GroupReference.cpp + GroupReference.h + GroupRefManager.h +) + +add_library(game STATIC ${game_STAT_SRCS}) diff --git a/src/game/Chat.cpp b/src/game/Chat.cpp index 300bb3cf3e8..ce089511586 100644 --- a/src/game/Chat.cpp +++ b/src/game/Chat.cpp @@ -516,6 +516,7 @@ ChatCommand * ChatHandler::getCommandTable() { "viewname", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketGetByNameCommand, "", NULL }, { "viewid", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketGetByIdCommand, "", NULL }, { "close", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketCloseByIdCommand, "", NULL }, + { "closedlist", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketListClosedCommand, "", NULL }, { "delete", SEC_ADMINISTRATOR, false, &ChatHandler::HandleGMTicketDeleteByIdCommand, "", NULL }, { "assign", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketAssignToCommand, "", NULL }, { "unassign", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketUnAssignCommand, "", NULL }, @@ -527,7 +528,7 @@ ChatCommand * ChatHandler::getCommandTable() { { "account", SEC_PLAYER, true, NULL, "", accountCommandTable }, { "gm", SEC_MODERATOR, true, NULL, "", gmCommandTable }, - { "ticket", SEC_MODERATOR, true, NULL, "", ticketCommandTable }, + { "ticket", SEC_MODERATOR, false, NULL, "", ticketCommandTable }, { "npc", SEC_MODERATOR, false, NULL, "", npcCommandTable }, { "go", SEC_MODERATOR, false, NULL, "", goCommandTable }, { "learn", SEC_MODERATOR, false, NULL, "", learnCommandTable }, diff --git a/src/game/Chat.h b/src/game/Chat.h index e83aef41c5b..337d34e3b0c 100644 --- a/src/game/Chat.h +++ b/src/game/Chat.h @@ -68,6 +68,7 @@ class ChatHandler void SendSysMessage( int32 entry); void PSendSysMessage( const char *format, ...) ATTR_PRINTF(2,3); void PSendSysMessage( int32 entry, ... ); + std::string PGetParseString(int32 entry, ...); int ParseCommands(const char* text); @@ -415,6 +416,7 @@ class ChatHandler // GM ticket command handlers bool HandleGMTicketListCommand(const char* args); bool HandleGMTicketListOnlineCommand(const char* args); + bool HandleGMTicketListClosedCommand(const char* args); bool HandleGMTicketGetByIdCommand(const char* args); bool HandleGMTicketGetByNameCommand(const char* args); bool HandleGMTicketCloseByIdCommand(const char* args); diff --git a/src/game/Language.h b/src/game/Language.h index aa2ea06d109..8a356bbc06e 100644 --- a/src/game/Language.h +++ b/src/game/Language.h @@ -786,23 +786,32 @@ enum TrinityStrings LANG_YOU_CHANGE_GENDER = 1120, LANG_YOUR_GENDER_CHANGED = 1121, - // Ticket Strings 2000-2020 + // Ticket Strings 2000-2029 LANG_COMMAND_TICKETNEW = 2000, - LANG_COMMAND_TICKETUPDATED = 2001, + LANG_COMMAND_TICKETUPDATED = 2001, LANG_COMMAND_TICKETPLAYERABANDON = 2002, LANG_COMMAND_TICKETCLOSED = 2003, LANG_COMMAND_TICKETDELETED = 2004, LANG_COMMAND_TICKETNOTEXIST = 2005, - LANG_COMMAND_TICKETCLOSEFIRST = 2007, - LANG_COMMAND_TICKETALREADYASSIGNED = 2008, - LANG_COMMAND_TICKETRELOAD = 2009, - LANG_COMMAND_TICKETSHOWLIST = 2010, - LANG_COMMAND_TICKETSHOWONLINELIST = 2011, + LANG_COMMAND_TICKETCLOSEFIRST = 2006, + LANG_COMMAND_TICKETALREADYASSIGNED = 2007, + LANG_COMMAND_TICKETRELOAD = 2008, + LANG_COMMAND_TICKETSHOWLIST = 2009, + LANG_COMMAND_TICKETSHOWONLINELIST = 2010, + LANG_COMMAND_TICKETSHOWCLOSEDLIST = 2011, LANG_COMMAND_TICKETASSIGNERROR_A = 2012, LANG_COMMAND_TICKETASSIGNERROR_B = 2013, LANG_COMMAND_TICKETNOTASSIGNED = 2014, LANG_COMMAND_TICKETUNASSIGNSECURITY = 2015, LANG_COMMAND_TICKETCANNOTCLOSE = 2016, + LANG_COMMAND_TICKETLISTGUID = 2017, + LANG_COMMAND_TICKETLISTNAME = 2018, + LANG_COMMAND_TICKETLISTAGE = 2019, + LANG_COMMAND_TICKETLISTASSIGNEDTO = 2020, + LANG_COMMAND_TICKETLISTUNASSIGNED = 2021, + LANG_COMMAND_TICKETLISTMESSAGE = 2022, + LANG_COMMAND_TICKETLISTCOMMENT = 2023, + LANG_COMMAND_TICKETLISTADDCOMMENT = 2024, // Trinity strings 5000-9999 diff --git a/src/game/Level0.cpp b/src/game/Level0.cpp index 63a015f9802..ff7d58f8da1 100644 --- a/src/game/Level0.cpp +++ b/src/game/Level0.cpp @@ -31,6 +31,7 @@ #include "Language.h" #include "AccountMgr.h" #include "SystemConfig.h" +#include "revision.h" #include "Util.h" bool ChatHandler::HandleHelpCommand(const char* args) @@ -95,7 +96,7 @@ bool ChatHandler::HandleServerInfoCommand(const char* /*args*/) std::string str = secsToTimeString(sWorld.GetUptime()); uint32 updateTime = sWorld.GetUpdateTime(); - PSendSysMessage(_FULLVERSION); //char const* full; + PSendSysMessage(_FULLVERSION); //if(m_session) // full = _FULLVERSION(REVISION_DATE,REVISION_TIME,"|cffffffff|Hurl:" REVISION_ID "|h" REVISION_ID "|h|r"); //else diff --git a/src/game/Level1.cpp b/src/game/Level1.cpp index 5f657344864..06032053490 100644 --- a/src/game/Level1.cpp +++ b/src/game/Level1.cpp @@ -270,6 +270,16 @@ bool ChatHandler::HandleGMChatCommand(const char* args) return false; } +std::string ChatHandler::PGetParseString(int32 entry, ...) +{ + const char *format = GetTrinityString(entry); + va_list ap; + char str [1024]; + va_start(ap, entry); + vsnprintf(str,1024,format, ap ); + va_end(ap); + return (std::string)str; +} bool ChatHandler::HandleGMTicketListCommand(const char* args) { SendSysMessage(LANG_COMMAND_TICKETSHOWLIST); @@ -277,18 +287,16 @@ bool ChatHandler::HandleGMTicketListCommand(const char* args) { if((*itr)->closed != 0) continue; - - std::stringstream message; - message << "|cff00ff00Ticket|r: |cff00ccff" << (*itr)->guid; - message << ".|r |cff00ff00created by:|r |cff00ccff" << (*itr)->name; - message << ".|r |cff00ff00Last change:|r |cff00ccff " << secsToTimeString(time(NULL) - (*itr)->timestamp, true, false) << " ago."; - if((*itr)->assignedToGM != 0) + std::string gmname; + std::stringstream ss; + ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, (*itr)->guid); + ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, (*itr)->name.c_str()); + ss << PGetParseString(LANG_COMMAND_TICKETLISTAGE, (secsToTimeString(time(NULL) - (*itr)->timestamp, true, false)).c_str()); + if(objmgr.GetPlayerNameByGUID((*itr)->assignedToGM, gmname)) { - std::string gmname; - objmgr.GetPlayerNameByGUID((*itr)->assignedToGM, gmname); - message << "|r |cff00ff00Assigned to:|r |cff00ccff " << gmname; - } - SendSysMessage(message.str().c_str()); + ss << PGetParseString(LANG_COMMAND_TICKETLISTASSIGNEDTO, gmname.c_str()); + } + SendSysMessage(ss.str().c_str()); } return true; } @@ -302,17 +310,38 @@ bool ChatHandler::HandleGMTicketListOnlineCommand(const char* args) if((*itr)->closed != 0 || !objmgr.GetPlayer((*itr)->playerGuid)) continue; - std::stringstream message; - message << "|cff00ff00Ticket|r: |cff00ccff" << (*itr)->guid; - message << ".|r |cff00ff00created by:|r |cff00ccff" << (*itr)->name; - message << ".|r |cff00ff00Last change:|r |cff00ccff " << secsToTimeString((time(NULL) - (*itr)->timestamp), true, false) << " ago."; - if((*itr)->assignedToGM != 0 && objmgr.GetPlayer((*itr)->assignedToGM)) + std::string gmname; + std::stringstream ss; + ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, (*itr)->guid); + ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, (*itr)->name.c_str()); + ss << PGetParseString(LANG_COMMAND_TICKETLISTAGE, (secsToTimeString(time(NULL) - (*itr)->timestamp, true, false)).c_str()); + if(objmgr.GetPlayerNameByGUID((*itr)->assignedToGM, gmname)) + { + ss << PGetParseString(LANG_COMMAND_TICKETLISTASSIGNEDTO, gmname.c_str()); + } + SendSysMessage(ss.str().c_str()); + } + return true; +} + +bool ChatHandler::HandleGMTicketListClosedCommand(const char* args) +{ + SendSysMessage(LANG_COMMAND_TICKETSHOWCLOSEDLIST); + for(GmTicketList::iterator itr = ticketmgr.GM_TicketList.begin(); itr != ticketmgr.GM_TicketList.end(); ++itr) + { + if((*itr)->closed == 0) + continue; + + std::string gmname; + std::stringstream ss; + ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, (*itr)->guid); + ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, (*itr)->name.c_str()); + ss << PGetParseString(LANG_COMMAND_TICKETLISTAGE, (secsToTimeString(time(NULL) - (*itr)->timestamp, true, false)).c_str()); + if(objmgr.GetPlayerNameByGUID((*itr)->assignedToGM, gmname)) { - std::string gmname; - objmgr.GetPlayerNameByGUID((*itr)->assignedToGM, gmname); - message << "|r |cff00ff00Assigned to:|r |cff00ccff " << gmname; - } - SendSysMessage(message.str().c_str()); + ss << PGetParseString(LANG_COMMAND_TICKETLISTASSIGNEDTO, gmname.c_str()); + } + SendSysMessage(ss.str().c_str()); } return true; } @@ -330,22 +359,21 @@ bool ChatHandler::HandleGMTicketGetByIdCommand(const char* args) return true; } - std::stringstream message; - message << "|cff00ff00Ticket|r: |cff00ccff" << ticket->guid; - message << ".|r |cff00ff00created by:|r |cff00ccff" << ticket->name; - message << ".|r |cff00ff00Last change:|r |cff00ccff " << secsToTimeString((time(NULL)-ticket->timestamp), true, false) << " ago."; - if(ticket->assignedToGM != 0 && objmgr.GetPlayer(ticket->assignedToGM)) + std::string gmname; + std::stringstream ss; + ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, ticket->guid); + ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, ticket->name.c_str()); + ss << PGetParseString(LANG_COMMAND_TICKETLISTAGE, (secsToTimeString(time(NULL) - ticket->timestamp, true, false)).c_str()); + if(objmgr.GetPlayerNameByGUID(ticket->assignedToGM, gmname)) { - std::string gmname; - objmgr.GetPlayerNameByGUID(ticket->assignedToGM, gmname); - message << "|r |cff00ff00Assigned to:|r |cff00ccff " << gmname; - } - message << "|r\n|cff00ff00Message:|r " << ticket->message; + ss << PGetParseString(LANG_COMMAND_TICKETLISTASSIGNEDTO, gmname.c_str()); + } + ss << PGetParseString(LANG_COMMAND_TICKETLISTMESSAGE, ticket->message.c_str()); if(ticket->comment != "") { - message << "|r |cff00ff00Comment:|r |cff00ccff " << ticket->comment; + ss << PGetParseString(LANG_COMMAND_TICKETLISTCOMMENT, ticket->comment.c_str()); } - SendSysMessage(message.str().c_str()); + SendSysMessage(ss.str().c_str()); return true; } @@ -361,22 +389,21 @@ bool ChatHandler::HandleGMTicketGetByNameCommand(const char* args) return true; } - std::stringstream message; - message << "|cff00ff00Ticket|r: |cff00ccff" << ticket->guid; - message << ".|r |cff00ff00created by:|r |cff00ccff" << ticket->name; - message << ".|r |cff00ff00Last change:|r |cff00ccff " << secsToTimeString((time(NULL)-ticket->timestamp), true, false) << " ago."; - if(ticket->assignedToGM != 0 && objmgr.GetPlayer(ticket->assignedToGM)) + std::string gmname; + std::stringstream ss; + ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, ticket->guid); + ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, ticket->name.c_str()); + ss << PGetParseString(LANG_COMMAND_TICKETLISTAGE, (secsToTimeString(time(NULL) - ticket->timestamp, true, false)).c_str()); + if(objmgr.GetPlayerNameByGUID(ticket->assignedToGM, gmname)) { - std::string gmname; - objmgr.GetPlayerNameByGUID(ticket->assignedToGM, gmname); - message << "|r |cff00ff00Assigned to:|r |cff00ccff " << gmname; - } - message << "|r\n|cff00ff00Message:|r " << ticket->message; + ss << PGetParseString(LANG_COMMAND_TICKETLISTASSIGNEDTO, gmname.c_str()); + } + ss << PGetParseString(LANG_COMMAND_TICKETLISTMESSAGE, ticket->message.c_str()); if(ticket->comment != "") { - message << "|r |cff00ff00Comment:|r |cff00ccff " << ticket->comment; + ss << PGetParseString(LANG_COMMAND_TICKETLISTCOMMENT, ticket->comment.c_str()); } - SendSysMessage(message.str().c_str()); + SendSysMessage(ss.str().c_str()); return true; } @@ -397,7 +424,11 @@ bool ChatHandler::HandleGMTicketCloseByIdCommand(const char* args) PSendSysMessage(LANG_COMMAND_TICKETCANNOTCLOSE, ticket->guid); return true; } - sWorld.SendGMText(LANG_COMMAND_TICKETCLOSED, m_session->GetPlayer()->GetName(), ticket->guid); + std::stringstream ss; + ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, ticket->guid); + ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, ticket->name.c_str()); + ss << PGetParseString(LANG_COMMAND_TICKETCLOSED, m_session->GetPlayer()->GetName()); + SendGlobalGMSysMessage(ss.str().c_str()); ticketmgr.RemoveGMTicket(ticket->guid, m_session->GetPlayer()->GetGUID()); Player *plr = objmgr.GetPlayer(ticket->playerGuid); @@ -460,10 +491,9 @@ bool ChatHandler::HandleGMTicketAssignToCommand(const char* args) ticket->assignedToGM = tarGUID; ticketmgr.UpdateGMTicket(ticket); std::stringstream ss; - ss << "|cff00ff00Ticket:|r "; - ss << "|cffff00ff" << ticket->guid << ". " << cplr->GetName() << "|r"; - ss << "|cff00ff00 assigned to:|r "; - ss << "|cffff00ff\"" << gmname << "\"."; + ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, ticket->guid); + ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, ticket->name.c_str()); + ss << PGetParseString(LANG_COMMAND_TICKETLISTASSIGNEDTO, gmname.c_str()); SendGlobalGMSysMessage(ss.str().c_str()); return true; } @@ -484,7 +514,7 @@ bool ChatHandler::HandleGMTicketUnAssignCommand(const char* args) } if(ticket->assignedToGM == 0) { - SendSysMessage(LANG_COMMAND_TICKETNOTASSIGNED); + PSendSysMessage(LANG_COMMAND_TICKETNOTASSIGNED, ticket->guid); return true; } @@ -498,9 +528,10 @@ bool ChatHandler::HandleGMTicketUnAssignCommand(const char* args) } std::stringstream ss; - ss << "|cff00ff00Ticket:|r "; - ss << "|cffff00ff" << ticket->guid << ". " << cplr->GetName() << "|r"; - ss << "|cff00ff00 unassigned.|r"; + ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, ticket->guid); + ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, ticket->name.c_str()); + ss << PGetParseString(LANG_COMMAND_TICKETLISTASSIGNEDTO, gmname.c_str()); + ss << PGetParseString(LANG_COMMAND_TICKETLISTUNASSIGNED, cplr->GetName()); SendGlobalGMSysMessage(ss.str().c_str()); ticket->assignedToGM = 0; ticketmgr.UpdateGMTicket(ticket); @@ -533,13 +564,18 @@ bool ChatHandler::HandleGMTicketCommentCommand(const char* args) return true; } + std::string gmname; + objmgr.GetPlayerNameByGUID(ticket->assignedToGM, gmname); ticket->comment = comment; ticketmgr.UpdateGMTicket(ticket); std::stringstream ss; - ss << "|cff00ff00Ticket:|r "; - ss << "|cffff00ff" << ticket->guid << ". " << cplr->GetName() << "|r"; - ss << "|cff00ff00 added comment:|r "; - ss << "|cffff00ff\"" << ticket->comment << "\"."; + ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, ticket->guid); + ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, ticket->name.c_str()); + if(objmgr.GetPlayerNameByGUID(ticket->assignedToGM, gmname)) + { + ss << PGetParseString(LANG_COMMAND_TICKETLISTASSIGNEDTO, gmname.c_str()); + } + ss << PGetParseString(LANG_COMMAND_TICKETLISTADDCOMMENT, cplr->GetName(), ticket->comment.c_str()); SendGlobalGMSysMessage(ss.str().c_str()); return true; } @@ -563,9 +599,9 @@ bool ChatHandler::HandleGMTicketDeleteByIdCommand(const char* args) } std::stringstream ss; - ss << "|cff00ff00Ticket:|r "; - ss << "|cffff00ff" << m_session->GetPlayer()->GetName() << "|r"; - ss << "|cff00ff00 deleted.|r"; + ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, ticket->guid); + ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, ticket->name.c_str()); + ss << PGetParseString(LANG_COMMAND_TICKETDELETED, m_session->GetPlayer()->GetName()); SendGlobalGMSysMessage(ss.str().c_str()); Player *plr = objmgr.GetPlayer(ticket->playerGuid); ticketmgr.DeleteGMTicketPermanently(ticket->guid); diff --git a/src/game/TicketMgr.cpp b/src/game/TicketMgr.cpp index 1e28c2a2ec1..111e1ed27ad 100644 --- a/src/game/TicketMgr.cpp +++ b/src/game/TicketMgr.cpp @@ -111,7 +111,7 @@ void TicketMgr::LoadGMTickets() InitTicketID(); // Delete all out of object holder GM_TicketList.clear(); - QueryResult *result = CharacterDatabase.Query( "SELECT `guid`, `playerGuid`, `name`, `message`, `timestamp`, `closed`, `assignedto`, `comment` FROM `gm_tickets` WHERE `closed` = '0'" ); + QueryResult *result = CharacterDatabase.Query( "SELECT `guid`, `playerGuid`, `name`, `message`, `timestamp`, `closed`, `assignedto`, `comment` FROM `gm_tickets`" ); GM_Ticket *ticket; if(!result) @@ -197,7 +197,7 @@ void TicketMgr::InitTicketID() QueryResult *result = CharacterDatabase.Query("SELECT MAX(guid) FROM gm_tickets"); if(result) { - m_ticketid = result->Fetch()[0].GetUInt64() + 1; + m_ticketid = result->Fetch()[0].GetUInt64(); delete result; } } diff --git a/src/shared/Auth/CMakeLists.txt b/src/shared/Auth/CMakeLists.txt new file mode 100644 index 00000000000..f0714509e1d --- /dev/null +++ b/src/shared/Auth/CMakeLists.txt @@ -0,0 +1,17 @@ + +########### next target ############### + +SET(trinityauth_STAT_SRCS + AuthCrypt.cpp + AuthCrypt.h + BigNumber.cpp + BigNumber.h + Hmac.cpp + Hmac.h + Sha1.cpp + Sha1.h + md5.c + md5.h +) + +add_library(trinityauth STATIC ${trinityauth_STAT_SRCS}) diff --git a/src/shared/CMakeLists.txt b/src/shared/CMakeLists.txt new file mode 100644 index 00000000000..006fa284c5d --- /dev/null +++ b/src/shared/CMakeLists.txt @@ -0,0 +1,29 @@ + +add_subdirectory(vmap) +add_subdirectory(Auth) +add_subdirectory(Config) +add_subdirectory(Database) + +########### next target ############### + +SET(shared_STAT_SRCS + Base.cpp + Base.h + ByteBuffer.h + Common.cpp + Common.h + Errors.h + Log.cpp + Log.h + Mthread.cpp + Mthread.h + ProgressBar.cpp + ProgressBar.h + Timer.h + Util.cpp + Util.h + WorldPacket.h + SystemConfig.h +) + +add_library(shared STATIC ${shared_STAT_SRCS}) diff --git a/src/shared/Config/CMakeLists.txt b/src/shared/Config/CMakeLists.txt new file mode 100644 index 00000000000..54c3d80b869 --- /dev/null +++ b/src/shared/Config/CMakeLists.txt @@ -0,0 +1,15 @@ + +########### next target ############### + +SET(trinityconfig_STAT_SRCS + dotconfpp/dotconfpp.cpp + dotconfpp/dotconfpp.h + dotconfpp/mempool.cpp + dotconfpp/mempool.h + Config.cpp + Config.h + ConfigEnv.h +) + +add_library(trinityconfig STATIC ${trinityconfig_STAT_SRCS}) + diff --git a/src/shared/Database/CMakeLists.txt b/src/shared/Database/CMakeLists.txt new file mode 100644 index 00000000000..a819a66dec7 --- /dev/null +++ b/src/shared/Database/CMakeLists.txt @@ -0,0 +1,38 @@ +SET(trinitydatabase_STAT_SRCS + DBCStores.cpp + DBCStores.h + DBCStructure.h + DBCfmt.cpp + Database.cpp + Database.h + DatabaseEnv.h + DatabaseImpl.h + DatabaseMysql.cpp + DatabasePostgre.cpp + DatabaseMysql.h + DatabasePostgre.h + DatabaseSqlite.cpp + DatabaseSqlite.h +#Brian likes men + Field.cpp + Field.h + MySQLDelayThread.h + PGSQLDelayThread.h + QueryResult.h + QueryResultMysql.cpp + QueryResultMysql.h + QueryResultPostgre.cpp + QueryResultPostgre.h + QueryResultSqlite.cpp + QueryResultSqlite.h + SQLStorage.cpp + SQLStorage.h + SqlDelayThread.cpp + SqlDelayThread.h + SqlOperations.cpp + SqlOperations.h + dbcfile.cpp + dbcfile.h +) + +add_library(trinitydatabase STATIC ${trinitydatabase_STAT_SRCS}) diff --git a/src/shared/Makefile.am b/src/shared/Makefile.am index 4862253a8e1..dcb13ab78c0 100644 --- a/src/shared/Makefile.am +++ b/src/shared/Makefile.am @@ -50,8 +50,10 @@ libmangosshared_a_SOURCES = \ WorldPacket.h \ revision_nr.h \ revision.h +$(srcdir)/revision.h # Get revision (git or svn) +# Get HG revision REVISION_FILE = revision.h BUILT_SOURCES = $(REVISION_FILE) @@ -61,6 +63,7 @@ FORCE: $(REVISION_FILE) : $(top_builddir)/src/tools/genrevision/genrevision FORCE $(top_builddir)/src/tools/genrevision/genrevision $(top_srcdir) + cp $(top_builddir)/src/shared/revision.h $(top_srcdir)/src/shared ## Additional files to include when running 'make dist' # Disabled packet logger diff --git a/src/shared/SystemConfig.h b/src/shared/SystemConfig.h index 262aa9e6355..aeb38891c11 100644 --- a/src/shared/SystemConfig.h +++ b/src/shared/SystemConfig.h @@ -25,9 +25,27 @@ #define TRINITY_SYSTEMCONFIG_H #include "Platform/Define.h" +#include "revision.h" //-----here u are ------ _REVISION is the magic key -// THIS IS TEMP :) -#define _FULLVERSION "Trinity" + +#define _PACKAGENAME "TrinityCore " +#define _CODENAME "YUME" + +#if TRINITY_ENDIAN == TRINITY_BIGENDIAN +# define _ENDIAN_STRING "big-endian" +#else +# define _ENDIAN_STRING "little-endian" +#endif + +#if PLATFORM == PLATFORM_WINDOWS +# ifdef _WIN64 +# define _FULLVERSION _PACKAGENAME "Rev: " _REVISION " (Win64," _ENDIAN_STRING ")" +# else +# define _FULLVERSION _PACKAGENAME "Rev: " _REVISION " (Win32," _ENDIAN_STRING ")" +# endif +#else +# define _FULLVERSION _PACKAGENAME "Rev: " _REVISION " (Unix," _ENDIAN_STRING ")" +#endif #define DEFAULT_PLAYER_LIMIT 100 #define DEFAULT_WORLDSERVER_PORT 8085 //8129 diff --git a/src/shared/SystemConfig.h.in b/src/shared/SystemConfig.h.in index c8349805401..189a7270e1c 100644 --- a/src/shared/SystemConfig.h.in +++ b/src/shared/SystemConfig.h.in @@ -27,6 +27,7 @@ #endif #include "Platform/Define.h" +#include "revision.h" //-----here u are ------ _REVISION is the magic key #ifndef _VERSION #if PLATFORM == PLATFORM_WINDOWS @@ -70,7 +71,6 @@ # define _REALMD_CONFIG SYSCONFDIR"realmd.conf" #endif -#define _FULLVERSION "Trinity" #define DEFAULT_PLAYER_LIMIT 100 #define DEFAULT_WORLDSERVER_PORT 8085 //8129 diff --git a/src/shared/WheatyExceptionReport.cpp b/src/shared/WheatyExceptionReport.cpp index 6a4276cca0f..5aa4a19d583 100644 --- a/src/shared/WheatyExceptionReport.cpp +++ b/src/shared/WheatyExceptionReport.cpp @@ -14,6 +14,8 @@ #define _NO_CVCONST_H #include <dbghelp.h> #include "WheatyExceptionReport.h" +#include "SystemConfig.h" +#include "revision.h" #define CrashFolder _T("Crashes") //#pragma comment(linker, "/defaultlib:dbghelp.lib") @@ -329,22 +331,22 @@ void WheatyExceptionReport::PrintSystemInfo() //=========================================================================== void WheatyExceptionReport::printTracesForAllThreads() { - HANDLE hThreadSnap = INVALID_HANDLE_VALUE; - THREADENTRY32 te32; - + HANDLE hThreadSnap = INVALID_HANDLE_VALUE; + THREADENTRY32 te32; + DWORD dwOwnerPID = GetCurrentProcessId(); m_hProcess = GetCurrentProcess(); - // Take a snapshot of all running threads - hThreadSnap = CreateToolhelp32Snapshot( TH32CS_SNAPTHREAD, 0 ); - if( hThreadSnap == INVALID_HANDLE_VALUE ) - return; - - // Fill in the size of the structure before using it. - te32.dwSize = sizeof(THREADENTRY32 ); - + // Take a snapshot of all running threads + hThreadSnap = CreateToolhelp32Snapshot( TH32CS_SNAPTHREAD, 0 ); + if( hThreadSnap == INVALID_HANDLE_VALUE ) + return; + + // Fill in the size of the structure before using it. + te32.dwSize = sizeof(THREADENTRY32 ); + // Retrieve information about the first thread, // and exit if unsuccessful - if( !Thread32First( hThreadSnap, &te32 ) ) + if( !Thread32First( hThreadSnap, &te32 ) ) { CloseHandle( hThreadSnap ); // Must clean up the // snapshot object! @@ -354,8 +356,8 @@ void WheatyExceptionReport::printTracesForAllThreads() // Now walk the thread list of the system, // and display information about each thread // associated with the specified process - do - { + do + { if( te32.th32OwnerProcessID == dwOwnerPID ) { CONTEXT context; @@ -367,7 +369,7 @@ void WheatyExceptionReport::printTracesForAllThreads() } CloseHandle(threadHandle); } - } while( Thread32Next(hThreadSnap, &te32 ) ); + } while( Thread32Next(hThreadSnap, &te32 ) ); // Don't forget to clean up the snapshot object. CloseHandle( hThreadSnap ); @@ -385,6 +387,7 @@ PEXCEPTION_POINTERS pExceptionInfo ) GetLocalTime(&systime); // Start out with a banner + _tprintf(_T("Revision: %s\r\n"), _FULLVERSION); _tprintf(_T("Date %u:%u:%u. Time %u:%u \r\n"), systime.wDay, systime.wMonth, systime.wYear, systime.wHour, systime.wMinute); PEXCEPTION_RECORD pExceptionRecord = pExceptionInfo->ExceptionRecord; diff --git a/src/shared/revision.h.in b/src/shared/revision.h.in new file mode 100644 index 00000000000..a84170529eb --- /dev/null +++ b/src/shared/revision.h.in @@ -0,0 +1,4 @@ +#ifndef __SVN_REVISION_H__ +#define __SVN_REVISION_H__ + #define _REVISION "794" //change this to your current revision +#endif // __SVN_REVISION_H__ diff --git a/src/shared/vmap/CMakeLists.txt b/src/shared/vmap/CMakeLists.txt new file mode 100644 index 00000000000..9ed30c0b44f --- /dev/null +++ b/src/shared/vmap/CMakeLists.txt @@ -0,0 +1,35 @@ + +########### next target ############### + +SET(vmaps_STAT_SRCS + AABSPTree.h + BaseModel.cpp + BaseModel.h + CoordModelMapping.cpp + CoordModelMapping.h + DebugCmdLogger.cpp + DebugCmdLogger.h + IVMapManager.h + ManagedModelContainer.cpp + ManagedModelContainer.h + ModelContainer.cpp + ModelContainer.h + NodeValueAccess.h + ShortBox.h + ShortVector.h + SubModel.cpp + SubModel.h + TileAssembler.cpp + TileAssembler.h + TreeNode.cpp + TreeNode.h + VMapDefinitions.h + VMapFactory.cpp + VMapFactory.h + VMapManager.cpp + VMapManager.h + VMapTools.h +) + +add_library(vmaps STATIC ${vmaps_STAT_SRCS}) + diff --git a/src/trinitycore/CMakeLists.txt b/src/trinitycore/CMakeLists.txt new file mode 100644 index 00000000000..72ceca8dd33 --- /dev/null +++ b/src/trinitycore/CMakeLists.txt @@ -0,0 +1,53 @@ + +########### next target ############### + +SET(trinity-core_SRCS +CliRunnable.cpp +CliRunnable.h +Main.cpp +Master.cpp +Master.h +RASocket.cpp +RASocket.h +WorldRunnable.cpp +WorldRunnable.h +) + +add_executable(trinity-core ${trinity-core_SRCS}) +add_definitions( +-D_TRINITY_CORE_CONFIG='"${CONF_DIR}/trinitycore.conf"' +) +IF (DO_MYSQL) + SET_TARGET_PROPERTIES(trinity-core PROPERTIES LINK_FLAGS "-pthread") +ENDIF(DO_MYSQL) + + + +target_link_libraries( +trinity-core +game +shared +zlib +trinityframework +trinitysockets +trinitydatabase +trinityauth +trinityconfig +vmaps +ZThread +g3dlite +${SCRIPT_LIB} +${MYSQL_LIBRARIES} +${POSTGRE_LIBS} +${SSLLIB} +${ACE_LIBRARY} +${ZLIB} +) + +install(TARGETS trinity-core DESTINATION bin) + + +########### install files ############### + +install(FILES trinitycore.conf.dist DESTINATION etc) + diff --git a/src/trinitycore/Main.cpp b/src/trinitycore/Main.cpp index a4bcf717d62..4c85ecd6d68 100644 --- a/src/trinitycore/Main.cpp +++ b/src/trinitycore/Main.cpp @@ -1,4 +1,4 @@ -/* +/* * Copyright (C) 2005-2008 MaNGOS <http://www.mangosproject.org/> * * Copyright (C) 2008 Trinity <http://www.trinitycore.org/> @@ -21,6 +21,8 @@ /// \addtogroup Trinityd Trinity Daemon /// @{ /// \file +#include "SystemConfig.h" +#include "revision.h" #include "Common.h" #include "Database/DatabaseEnv.h" @@ -62,6 +64,7 @@ uint32 realmID; ///< Id of the realm void usage(const char *prog) { sLog.outString("Usage: \n %s [<options>]\n" + " --version print version and exist\n\r" " -c config_file use config_file as configuration file\n\r" #ifdef WIN32 " Running as service functions:\n\r" @@ -92,6 +95,12 @@ extern int main(int argc, char **argv) cfg_file = argv[c]; } + if( strcmp(argv[c],"--version") == 0) + { + printf("%s\n", _FULLVERSION); + return 0; + } + #ifdef WIN32 //////////// //Services// @@ -138,7 +147,7 @@ extern int main(int argc, char **argv) return 1; } sLog.outString("Using configuration file %s.", cfg_file); - + uint32 confVersion = sConfig.GetIntDefault("ConfVersion", 0); if (confVersion < _TRINITY_CORE_CONFVER) { diff --git a/src/trinityrealm/CMakeLists.txt b/src/trinityrealm/CMakeLists.txt new file mode 100644 index 00000000000..cddea04ea47 --- /dev/null +++ b/src/trinityrealm/CMakeLists.txt @@ -0,0 +1,45 @@ +########### next target ############### + +SET(trinity-realm_SRCS +AuthCodes.h +AuthSocket.cpp +AuthSocket.h +Main.cpp +RealmList.cpp +RealmList.h +) + +add_executable(trinity-realm ${trinity-realm_SRCS}) +add_definitions( +-D_TRINITY_REALM_CONFIG='"${CONF_DIR}/trinityrealm.conf"' +) +IF (DO_MYSQL) + #SET_TARGET_PROPERTIES(mangos-realmd PROPERTIES LINK_FLAGS ${MYSQL_LIBS}) + SET_TARGET_PROPERTIES(trinity-realm PROPERTIES LINK_FLAGS "-pthread") +ENDIF(DO_MYSQL) +IF (DO_POSTGRE) + SET_TARGET_PROPERTIES(trinity-realmd PROPERTIES LINK_FLAGS ${POSTGRE_LIBS}) +ENDIF(DO_POSTGRE) + + +target_link_libraries( +trinity-realm +shared +trinityframework +trinitysockets +trinitydatabase +trinityauth +trinityconfig +ZThread +zlib +${SSLLIB} +${MYSQL_LIBRARIES} +) + +install(TARGETS trinity-realm DESTINATION bin) + + +########### install files ############### + +install(FILES trinityrealm.conf.dist DESTINATION etc) + diff --git a/src/trinityrealm/Main.cpp b/src/trinityrealm/Main.cpp index e74cd5144d3..3e2739ec6b5 100644 --- a/src/trinityrealm/Main.cpp +++ b/src/trinityrealm/Main.cpp @@ -31,6 +31,7 @@ #include "sockets/ListenSocket.h" #include "AuthSocket.h" #include "SystemConfig.h" +#include "revision.h" #include "Util.h" // Format is YYYYMMDDRR where RR is the change in the conf file @@ -70,6 +71,7 @@ DatabaseType LoginDatabase; ///< Accessor to the void usage(const char *prog) { sLog.outString("Usage: \n %s [<options>]\n" + " --version print version and exist\n\r" " -c config_file use config_file as configuration file\n\r" #ifdef WIN32 " Running as service functions:\n\r" @@ -100,6 +102,12 @@ extern int main(int argc, char **argv) cfg_file = argv[c]; } + if( strcmp(argv[c],"--version") == 0) + { + printf("%s\n", _FULLVERSION); + return 0; + } + #ifdef WIN32 //////////// //Services// diff --git a/win/TrinityCore&Script VC71.sln b/win/TrinityCore&Script VC71.sln index 0da06b199fd..2fc147a72cc 100644 --- a/win/TrinityCore&Script VC71.sln +++ b/win/TrinityCore&Script VC71.sln @@ -47,15 +47,17 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TrinityRealm", "VC71\Trinit {04BAF755-0D67-46F8-B1C6-77AE5368F3CB} = {04BAF755-0D67-46F8-B1C6-77AE5368F3CB} EndProjectSection EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ScriptsFull", "..\src\bindings\scripts\VC71\71ScriptDev2.vcproj", "{4295C8A9-79B7-4354-8064-F05FB9CA0C96}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TrinityScript", "..\src\bindings\scripts\VC71\71ScriptDev2.vcproj", "{4295C8A9-79B7-4354-8064-F05FB9CA0C96}" ProjectSection(ProjectDependencies) = postProject {D1EA3EE9-4DCF-4CB9-BA6E-B9321E0D552A} = {D1EA3EE9-4DCF-4CB9-BA6E-B9321E0D552A} EndProjectSection EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ACE_Wraper", "VC71\ACE_vc71.vcproj", "{7C74F49E-FECA-1BAD-6757-8A6348EA12C8}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ACEWrappers", "VC71\ACE_vc71.vcproj", "{7C74F49E-FECA-1BAD-6757-8A6348EA12C8}" ProjectSection(ProjectDependencies) = postProject EndProjectSection EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "genrevision", "VC71\genrevision.vcproj", "{803F488E-4C5A-4866-8D5C-1E6C03C007C2}" + EndProject Global GlobalSection(SolutionConfiguration) = preSolution Debug = Debug @@ -108,6 +110,14 @@ Global {7C74F49E-FECA-1BAD-6757-8A6348EA12C8}.Debug.Build.0 = Debug|Win32 {7C74F49E-FECA-1BAD-6757-8A6348EA12C8}.Release.ActiveCfg = Release|Win32 {7C74F49E-FECA-1BAD-6757-8A6348EA12C8}.Release.Build.0 = Release|Win32 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Debug|Win32.ActiveCfg = Debug|Win32 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Debug|Win32.Build.0 = Debug|Win32 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Debug|x64.ActiveCfg = Debug|x64 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Debug|x64.Build.0 = Debug|x64 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Release|Win32.ActiveCfg = Release|Win32 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Release|Win32.Build.0 = Release|Win32 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Release|x64.ActiveCfg = Release|x64 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution EndGlobalSection diff --git a/win/TrinityCore&Script VC80.sln b/win/TrinityCore&Script VC80.sln index fa8800b4355..2c9f00335db 100644 --- a/win/TrinityCore&Script VC80.sln +++ b/win/TrinityCore&Script VC80.sln @@ -45,6 +45,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TrinityScript", "..\src\bin EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ACEWrappers", "VC80\ACE_vc8.vcproj", "{AD537C9A-FECA-1BAD-6757-8A6348EA12C8}" EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "genrevision", "VC80\genrevision.vcproj", "{803F488E-4C5A-4866-8D5C-1E6C03C007C2}" + EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Win32 = Debug|Win32 @@ -141,6 +143,14 @@ Global {AD537C9A-FECA-1BAD-6757-8A6348EA12C8}.Release|Win32.Build.0 = Release|Win32 {AD537C9A-FECA-1BAD-6757-8A6348EA12C8}.Release|x64.ActiveCfg = Release|x64 {AD537C9A-FECA-1BAD-6757-8A6348EA12C8}.Release|x64.Build.0 = Release|x64 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Debug|Win32.ActiveCfg = Debug|Win32 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Debug|Win32.Build.0 = Debug|Win32 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Debug|x64.ActiveCfg = Debug|x64 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Debug|x64.Build.0 = Debug|x64 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Release|Win32.ActiveCfg = Release|Win32 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Release|Win32.Build.0 = Release|Win32 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Release|x64.ActiveCfg = Release|x64 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/win/TrinityCore&Script VC90.sln b/win/TrinityCore&Script VC90.sln index 2fdd6ddd188..0bee042b31f 100644 --- a/win/TrinityCore&Script VC90.sln +++ b/win/TrinityCore&Script VC90.sln @@ -38,12 +38,14 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TrinityRealm", "VC90\realmd {04BAF755-0D67-46F8-B1C6-77AE5368F3CB} = {04BAF755-0D67-46F8-B1C6-77AE5368F3CB} EndProjectSection EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ScriptsFull", "..\src\bindings\scripts\VC90\90ScriptDev2.vcproj", "{4295C8A9-79B7-4354-8064-F05FB9CA0C96}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TrinityScript", "..\src\bindings\scripts\VC90\90ScriptDev2.vcproj", "{4295C8A9-79B7-4354-8064-F05FB9CA0C96}" ProjectSection(ProjectDependencies) = postProject {A3A04E47-43A2-4C08-90B3-029CEF558594} = {A3A04E47-43A2-4C08-90B3-029CEF558594} EndProjectSection EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ACEWraper", "VC90\ACE_vc9.vcproj", "{BD537C9A-FECA-1BAD-6757-8A6348EA12C8}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ACEWrappers", "VC90\ACE_vc9.vcproj", "{BD537C9A-FECA-1BAD-6757-8A6348EA12C8}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "genrevision", "VC90\genrevision.vcproj", "{803F488E-4C5A-4866-8D5C-1E6C03C007C2}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -141,6 +143,14 @@ Global {BD537C9A-FECA-1BAD-6757-8A6348EA12C8}.Release|Win32.Build.0 = Release|Win32 {BD537C9A-FECA-1BAD-6757-8A6348EA12C8}.Release|x64.ActiveCfg = Release|x64 {BD537C9A-FECA-1BAD-6757-8A6348EA12C8}.Release|x64.Build.0 = Release|x64 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Debug|Win32.ActiveCfg = Debug|Win32 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Debug|Win32.Build.0 = Debug|Win32 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Debug|x64.ActiveCfg = Debug|x64 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Debug|x64.Build.0 = Debug|x64 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Release|Win32.ActiveCfg = Release|Win32 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Release|Win32.Build.0 = Release|Win32 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Release|x64.ActiveCfg = Release|x64 + {803F488E-4C5A-4866-8D5C-1E6C03C007C2}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/win/VC71/genrevision.vcproj b/win/VC71/genrevision.vcproj new file mode 100644 index 00000000000..2b36151003e --- /dev/null +++ b/win/VC71/genrevision.vcproj @@ -0,0 +1,329 @@ +<?xml version="1.0" encoding="windows-1251"?> +<VisualStudioProject + ProjectType="Visual C++" + Version="9,00" + Name="genrevision" + ProjectGUID="{803F488E-4C5A-4866-8D5C-1E6C03C007C2}" + RootNamespace="genrevision" + Keyword="Win32Proj" + TargetFrameworkVersion="196613" + > + <Platforms> + <Platform + Name="Win32" + /> + <Platform + Name="x64" + /> + </Platforms> + <ToolFiles> + </ToolFiles> + <Configurations> + <Configuration + Name="Debug|Win32" + OutputDirectory=".\gensvnrevision__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\gensvnrevision__$(PlatformName)_$(ConfigurationName)" + ConfigurationType="1" + CharacterSet="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="0" + PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE" + MinimalRebuild="true" + BasicRuntimeChecks="3" + RuntimeLibrary="3" + UsePrecompiledHeader="0" + WarningLevel="3" + DebugInformationFormat="4" + CallingConvention="0" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLinkerTool" + LinkIncremental="2" + GenerateDebugInformation="true" + SubSystem="1" + TargetMachine="1" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCManifestTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCAppVerifierTool" + /> + <Tool + Name="VCPostBuildEventTool" + /> + </Configuration> + <Configuration + Name="Release|Win32" + OutputDirectory=".\genrevision__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\genrevision__$(PlatformName)_$(ConfigurationName)" + ConfigurationType="1" + CharacterSet="1" + WholeProgramOptimization="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="2" + EnableIntrinsicFunctions="true" + PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE" + RuntimeLibrary="2" + EnableFunctionLevelLinking="true" + UsePrecompiledHeader="0" + WarningLevel="3" + DebugInformationFormat="3" + CallingConvention="0" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLinkerTool" + LinkIncremental="1" + GenerateDebugInformation="true" + SubSystem="1" + OptimizeReferences="2" + EnableCOMDATFolding="2" + TargetMachine="1" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCManifestTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCAppVerifierTool" + /> + <Tool + Name="VCPostBuildEventTool" + /> + </Configuration> + <Configuration + Name="Debug|x64" + OutputDirectory=".\gensvnrevision__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\gensvnrevision__$(PlatformName)_$(ConfigurationName)" + ConfigurationType="1" + CharacterSet="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + TargetEnvironment="3" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="0" + PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE" + MinimalRebuild="true" + BasicRuntimeChecks="3" + RuntimeLibrary="3" + UsePrecompiledHeader="0" + WarningLevel="3" + DebugInformationFormat="3" + CallingConvention="0" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLinkerTool" + LinkIncremental="2" + GenerateDebugInformation="true" + SubSystem="1" + TargetMachine="17" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCManifestTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCAppVerifierTool" + /> + <Tool + Name="VCPostBuildEventTool" + /> + </Configuration> + <Configuration + Name="Release|x64" + OutputDirectory=".\gensvnrevision__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\gensvnrevision__$(PlatformName)_$(ConfigurationName)" + ConfigurationType="1" + CharacterSet="1" + WholeProgramOptimization="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + TargetEnvironment="3" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="2" + EnableIntrinsicFunctions="true" + PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE" + RuntimeLibrary="2" + EnableFunctionLevelLinking="true" + UsePrecompiledHeader="0" + WarningLevel="3" + DebugInformationFormat="3" + CallingConvention="0" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLinkerTool" + LinkIncremental="1" + GenerateDebugInformation="true" + SubSystem="1" + OptimizeReferences="2" + EnableCOMDATFolding="2" + TargetMachine="17" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCManifestTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCAppVerifierTool" + /> + <Tool + Name="VCPostBuildEventTool" + /> + </Configuration> + </Configurations> + <References> + </References> + <Files> + <File + RelativePath="..\..\src\tools\genrevision\genrevision.cpp" + > + </File> + </Files> + <Globals> + </Globals> +</VisualStudioProject> diff --git a/win/VC71/shared.vcproj b/win/VC71/shared.vcproj index f464af14320..8033e045700 100644 --- a/win/VC71/shared.vcproj +++ b/win/VC71/shared.vcproj @@ -419,6 +419,54 @@ <File RelativePath="..\..\src\shared\Common.h"> </File> + <File + RelativePath="..\..\src\shared\revision.h" + > + <FileConfiguration + Name="Release|Win32" + > + <Tool + Name="VCCustomBuildTool" + Description="Getting Version... :)" + CommandLine="cd $(InputDir)
"$(TargetDir)\..\genrevision__$(PlatformName)_$(ConfigurationName)\genrevision.exe" "..\.."
" + AdditionalDependencies="$(SolutionDir)../.hg/branch.cache" + Outputs="revision.h" + /> + </FileConfiguration> + <FileConfiguration + Name="Debug|Win32" + > + <Tool + Name="VCCustomBuildTool" + Description="Getting Version... :)" + CommandLine="cd $(InputDir)
"$(TargetDir)\..\genrevision__$(PlatformName)_$(ConfigurationName)\genrevision.exe" "..\.."
" + AdditionalDependencies="$(SolutionDir)../.hg/branch.cache" + Outputs="revision.h" + /> + </FileConfiguration> + <FileConfiguration + Name="Release|x64" + > + <Tool + Name="VCCustomBuildTool" + Description="Getting Version... :)" + CommandLine="cd $(InputDir)
"$(TargetDir)\..\genrevision__$(PlatformName)_$(ConfigurationName)\genrevision.exe" "..\.."
" + AdditionalDependencies="$(SolutionDir)../.hg/branch.cache" + Outputs="revision.h" + /> + </FileConfiguration> + <FileConfiguration + Name="Debug|x64" + > + <Tool + Name="VCCustomBuildTool" + Description="Getting Version... :)" + CommandLine="cd $(InputDir)
"$(TargetDir)\..\genrevision__$(PlatformName)_$(ConfigurationName)\genrevision.exe" "..\.."
" + AdditionalDependencies="$(SolutionDir)../.hg/branch.cache" + Outputs="revision.h" + /> + </FileConfiguration> + </File> <File RelativePath="..\..\src\shared\ServiceWin32.cpp"> </File> diff --git a/win/VC80/genrevision.vcproj b/win/VC80/genrevision.vcproj new file mode 100644 index 00000000000..2b36151003e --- /dev/null +++ b/win/VC80/genrevision.vcproj @@ -0,0 +1,329 @@ +<?xml version="1.0" encoding="windows-1251"?> +<VisualStudioProject + ProjectType="Visual C++" + Version="9,00" + Name="genrevision" + ProjectGUID="{803F488E-4C5A-4866-8D5C-1E6C03C007C2}" + RootNamespace="genrevision" + Keyword="Win32Proj" + TargetFrameworkVersion="196613" + > + <Platforms> + <Platform + Name="Win32" + /> + <Platform + Name="x64" + /> + </Platforms> + <ToolFiles> + </ToolFiles> + <Configurations> + <Configuration + Name="Debug|Win32" + OutputDirectory=".\gensvnrevision__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\gensvnrevision__$(PlatformName)_$(ConfigurationName)" + ConfigurationType="1" + CharacterSet="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="0" + PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE" + MinimalRebuild="true" + BasicRuntimeChecks="3" + RuntimeLibrary="3" + UsePrecompiledHeader="0" + WarningLevel="3" + DebugInformationFormat="4" + CallingConvention="0" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLinkerTool" + LinkIncremental="2" + GenerateDebugInformation="true" + SubSystem="1" + TargetMachine="1" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCManifestTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCAppVerifierTool" + /> + <Tool + Name="VCPostBuildEventTool" + /> + </Configuration> + <Configuration + Name="Release|Win32" + OutputDirectory=".\genrevision__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\genrevision__$(PlatformName)_$(ConfigurationName)" + ConfigurationType="1" + CharacterSet="1" + WholeProgramOptimization="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="2" + EnableIntrinsicFunctions="true" + PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE" + RuntimeLibrary="2" + EnableFunctionLevelLinking="true" + UsePrecompiledHeader="0" + WarningLevel="3" + DebugInformationFormat="3" + CallingConvention="0" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLinkerTool" + LinkIncremental="1" + GenerateDebugInformation="true" + SubSystem="1" + OptimizeReferences="2" + EnableCOMDATFolding="2" + TargetMachine="1" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCManifestTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCAppVerifierTool" + /> + <Tool + Name="VCPostBuildEventTool" + /> + </Configuration> + <Configuration + Name="Debug|x64" + OutputDirectory=".\gensvnrevision__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\gensvnrevision__$(PlatformName)_$(ConfigurationName)" + ConfigurationType="1" + CharacterSet="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + TargetEnvironment="3" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="0" + PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE" + MinimalRebuild="true" + BasicRuntimeChecks="3" + RuntimeLibrary="3" + UsePrecompiledHeader="0" + WarningLevel="3" + DebugInformationFormat="3" + CallingConvention="0" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLinkerTool" + LinkIncremental="2" + GenerateDebugInformation="true" + SubSystem="1" + TargetMachine="17" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCManifestTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCAppVerifierTool" + /> + <Tool + Name="VCPostBuildEventTool" + /> + </Configuration> + <Configuration + Name="Release|x64" + OutputDirectory=".\gensvnrevision__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\gensvnrevision__$(PlatformName)_$(ConfigurationName)" + ConfigurationType="1" + CharacterSet="1" + WholeProgramOptimization="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + TargetEnvironment="3" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="2" + EnableIntrinsicFunctions="true" + PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE" + RuntimeLibrary="2" + EnableFunctionLevelLinking="true" + UsePrecompiledHeader="0" + WarningLevel="3" + DebugInformationFormat="3" + CallingConvention="0" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLinkerTool" + LinkIncremental="1" + GenerateDebugInformation="true" + SubSystem="1" + OptimizeReferences="2" + EnableCOMDATFolding="2" + TargetMachine="17" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCManifestTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCAppVerifierTool" + /> + <Tool + Name="VCPostBuildEventTool" + /> + </Configuration> + </Configurations> + <References> + </References> + <Files> + <File + RelativePath="..\..\src\tools\genrevision\genrevision.cpp" + > + </File> + </Files> + <Globals> + </Globals> +</VisualStudioProject> diff --git a/win/VC80/shared.vcproj b/win/VC80/shared.vcproj index 22252b69713..f7eec9c4300 100644 --- a/win/VC80/shared.vcproj +++ b/win/VC80/shared.vcproj @@ -753,6 +753,54 @@ RelativePath="..\..\src\shared\Common.h" > </File> + <File + RelativePath="..\..\src\shared\revision.h" + > + <FileConfiguration + Name="Release|Win32" + > + <Tool + Name="VCCustomBuildTool" + Description="Getting Version... :)" + CommandLine="cd $(InputDir)
"$(TargetDir)\..\genrevision__$(PlatformName)_$(ConfigurationName)\genrevision.exe" "..\.."
" + AdditionalDependencies="$(SolutionDir)../.hg/branch.cache" + Outputs="revision.h" + /> + </FileConfiguration> + <FileConfiguration + Name="Debug|Win32" + > + <Tool + Name="VCCustomBuildTool" + Description="Getting Version... :)" + CommandLine="cd $(InputDir)
"$(TargetDir)\..\genrevision__$(PlatformName)_$(ConfigurationName)\genrevision.exe" "..\.."
" + AdditionalDependencies="$(SolutionDir)../.hg/branch.cache" + Outputs="revision.h" + /> + </FileConfiguration> + <FileConfiguration + Name="Release|x64" + > + <Tool + Name="VCCustomBuildTool" + Description="Getting Version... :)" + CommandLine="cd $(InputDir)
"$(TargetDir)\..\genrevision__$(PlatformName)_$(ConfigurationName)\genrevision.exe" "..\.."
" + AdditionalDependencies="$(SolutionDir)../.hg/branch.cache" + Outputs="revision.h" + /> + </FileConfiguration> + <FileConfiguration + Name="Debug|x64" + > + <Tool + Name="VCCustomBuildTool" + Description="Getting Version... :)" + CommandLine="cd $(InputDir)
"$(TargetDir)\..\genrevision__$(PlatformName)_$(ConfigurationName)\genrevision.exe" "..\.."
" + AdditionalDependencies="$(SolutionDir)../.hg/branch.cache" + Outputs="revision.h" + /> + </FileConfiguration> + </File> <File RelativePath="..\..\src\shared\ServiceWin32.cpp" > diff --git a/win/VC90/genrevision.vcproj b/win/VC90/genrevision.vcproj new file mode 100644 index 00000000000..2b36151003e --- /dev/null +++ b/win/VC90/genrevision.vcproj @@ -0,0 +1,329 @@ +<?xml version="1.0" encoding="windows-1251"?> +<VisualStudioProject + ProjectType="Visual C++" + Version="9,00" + Name="genrevision" + ProjectGUID="{803F488E-4C5A-4866-8D5C-1E6C03C007C2}" + RootNamespace="genrevision" + Keyword="Win32Proj" + TargetFrameworkVersion="196613" + > + <Platforms> + <Platform + Name="Win32" + /> + <Platform + Name="x64" + /> + </Platforms> + <ToolFiles> + </ToolFiles> + <Configurations> + <Configuration + Name="Debug|Win32" + OutputDirectory=".\gensvnrevision__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\gensvnrevision__$(PlatformName)_$(ConfigurationName)" + ConfigurationType="1" + CharacterSet="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="0" + PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE" + MinimalRebuild="true" + BasicRuntimeChecks="3" + RuntimeLibrary="3" + UsePrecompiledHeader="0" + WarningLevel="3" + DebugInformationFormat="4" + CallingConvention="0" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLinkerTool" + LinkIncremental="2" + GenerateDebugInformation="true" + SubSystem="1" + TargetMachine="1" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCManifestTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCAppVerifierTool" + /> + <Tool + Name="VCPostBuildEventTool" + /> + </Configuration> + <Configuration + Name="Release|Win32" + OutputDirectory=".\genrevision__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\genrevision__$(PlatformName)_$(ConfigurationName)" + ConfigurationType="1" + CharacterSet="1" + WholeProgramOptimization="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="2" + EnableIntrinsicFunctions="true" + PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE" + RuntimeLibrary="2" + EnableFunctionLevelLinking="true" + UsePrecompiledHeader="0" + WarningLevel="3" + DebugInformationFormat="3" + CallingConvention="0" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLinkerTool" + LinkIncremental="1" + GenerateDebugInformation="true" + SubSystem="1" + OptimizeReferences="2" + EnableCOMDATFolding="2" + TargetMachine="1" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCManifestTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCAppVerifierTool" + /> + <Tool + Name="VCPostBuildEventTool" + /> + </Configuration> + <Configuration + Name="Debug|x64" + OutputDirectory=".\gensvnrevision__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\gensvnrevision__$(PlatformName)_$(ConfigurationName)" + ConfigurationType="1" + CharacterSet="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + TargetEnvironment="3" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="0" + PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE" + MinimalRebuild="true" + BasicRuntimeChecks="3" + RuntimeLibrary="3" + UsePrecompiledHeader="0" + WarningLevel="3" + DebugInformationFormat="3" + CallingConvention="0" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLinkerTool" + LinkIncremental="2" + GenerateDebugInformation="true" + SubSystem="1" + TargetMachine="17" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCManifestTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCAppVerifierTool" + /> + <Tool + Name="VCPostBuildEventTool" + /> + </Configuration> + <Configuration + Name="Release|x64" + OutputDirectory=".\gensvnrevision__$(PlatformName)_$(ConfigurationName)" + IntermediateDirectory=".\gensvnrevision__$(PlatformName)_$(ConfigurationName)" + ConfigurationType="1" + CharacterSet="1" + WholeProgramOptimization="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + TargetEnvironment="3" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="2" + EnableIntrinsicFunctions="true" + PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE" + RuntimeLibrary="2" + EnableFunctionLevelLinking="true" + UsePrecompiledHeader="0" + WarningLevel="3" + DebugInformationFormat="3" + CallingConvention="0" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLinkerTool" + LinkIncremental="1" + GenerateDebugInformation="true" + SubSystem="1" + OptimizeReferences="2" + EnableCOMDATFolding="2" + TargetMachine="17" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCManifestTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCAppVerifierTool" + /> + <Tool + Name="VCPostBuildEventTool" + /> + </Configuration> + </Configurations> + <References> + </References> + <Files> + <File + RelativePath="..\..\src\tools\genrevision\genrevision.cpp" + > + </File> + </Files> + <Globals> + </Globals> +</VisualStudioProject> diff --git a/win/VC90/shared.vcproj b/win/VC90/shared.vcproj index ced77fe79af..b10a9781dfc 100644 --- a/win/VC90/shared.vcproj +++ b/win/VC90/shared.vcproj @@ -760,7 +760,55 @@ RelativePath="..\..\src\shared\Common.h" > </File> - <File + <File + RelativePath="..\..\src\shared\revision.h" + > + <FileConfiguration + Name="Release|Win32" + > + <Tool + Name="VCCustomBuildTool" + Description="Getting Version... :)" + CommandLine="cd $(InputDir)
"$(TargetDir)\..\genrevision__$(PlatformName)_$(ConfigurationName)\genrevision.exe" "..\.."
" + AdditionalDependencies="$(SolutionDir)../.hg/branch.cache" + Outputs="revision.h" + /> + </FileConfiguration> + <FileConfiguration + Name="Debug|Win32" + > + <Tool + Name="VCCustomBuildTool" + Description="Getting Version... :)" + CommandLine="cd $(InputDir)
"$(TargetDir)\..\genrevision__$(PlatformName)_$(ConfigurationName)\genrevision.exe" "..\.."
" + AdditionalDependencies="$(SolutionDir)../.hg/branch.cache" + Outputs="revision.h" + /> + </FileConfiguration> + <FileConfiguration + Name="Release|x64" + > + <Tool + Name="VCCustomBuildTool" + Description="Getting Version... :)" + CommandLine="cd $(InputDir)
"$(TargetDir)\..\genrevision__$(PlatformName)_$(ConfigurationName)\genrevision.exe" "..\.."
" + AdditionalDependencies="$(SolutionDir)../.hg/branch.cache" + Outputs="revision.h" + /> + </FileConfiguration> + <FileConfiguration + Name="Debug|x64" + > + <Tool + Name="VCCustomBuildTool" + Description="Getting Version... :)" + CommandLine="cd $(InputDir)
"$(TargetDir)\..\genrevision__$(PlatformName)_$(ConfigurationName)\genrevision.exe" "..\.."
" + AdditionalDependencies="$(SolutionDir)../.hg/branch.cache" + Outputs="revision.h" + /> + </FileConfiguration> + </File> + <File RelativePath="..\..\src\shared\ServiceWin32.cpp" > </File> |