diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 1de442941..2962a1af8 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -6,11 +6,19 @@ on: - '**.js' - '**.dfn' - '**.scp' + - '**.txt' + - '**.html' + - '**.sln' + - '**.vcxproj' pull_request: paths-ignore: - '**.js' - '**.dfn' - '**.scp' + - '**.txt' + - '**.html' + - '**.sln' + - '**.vcxproj' jobs: build: @@ -18,8 +26,8 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 - - name: prepare automake - run: chmod +x automake.sh - - name: automake - run: ./automake.sh + - uses: actions/checkout@v3 + - name: Generate Makefiles + run: cmake make/cmake -DCMAKE_BUILD_TYPE=Release + - name: Building + run: cmake --build . diff --git a/.github/workflows/windows_x64_build.yml b/.github/workflows/windows_x64_build.yml index c0d456ee6..b1b052202 100644 --- a/.github/workflows/windows_x64_build.yml +++ b/.github/workflows/windows_x64_build.yml @@ -5,22 +5,31 @@ on: - '**.js' - '**.dfn' - '**.scp' + - '**.txt' + - '**.html' + - '**.sln' + - '**.vcxproj' pull_request: paths-ignore: - '**.js' - '**.dfn' - '**.scp' + - '**.txt' + - '**.html' + - '**.sln' + - '**.vcxproj' + jobs: build: runs-on: windows-latest steps: - name: checkout - uses: actions/checkout@v2 - - name: setupt msvc console + uses: actions/checkout@v3 + - name: setup msvc console uses: ilammy/msvc-dev-cmd@v1 with: arch: x64 - name: cmake and build run: | - cmake -G "NMake Makefiles" . - nmake + cmake make/cmake -DCMAKE_BUILD_TYPE=Release -G"NMake Makefiles" + cmake --build . --config Release diff --git a/.github/workflows/windows_x86_build.yml b/.github/workflows/windows_x86_build.yml deleted file mode 100644 index 2b18ffb9d..000000000 --- a/.github/workflows/windows_x86_build.yml +++ /dev/null @@ -1,26 +0,0 @@ -name: Windows x86 Build -on: - push: - paths-ignore: - - '**.js' - - '**.dfn' - - '**.scp' - pull_request: - paths-ignore: - - '**.js' - - '**.dfn' - - '**.scp' -jobs: - build: - runs-on: windows-latest - steps: - - name: checkout - uses: actions/checkout@v2 - - name: setupt msvc console - uses: ilammy/msvc-dev-cmd@v1 - with: - arch: x86 - - name: cmake and build - run: | - cmake -G "NMake Makefiles" . - nmake diff --git a/.gitignore b/.gitignore index 1c5db1f17..e72241a64 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,14 @@ +# Project unique Items + +[Bb]uild/ + + + + +# Created by https://www.toptal.com/developers/gitignore/api/c++ +# Edit at https://www.toptal.com/developers/gitignore?templates=c++ + +### C++ ### # Prerequisites *.d @@ -31,6 +42,27 @@ *.out *.app +# End of https://www.toptal.com/developers/gitignore/api/c++ + + +# Created by https://www.toptal.com/developers/gitignore/api/macos,windows,linux +# Edit at https://www.toptal.com/developers/gitignore?templates=macos,windows,linux + +### Linux ### +*~ + +# temporary files which can be created if a process still has a handle open of a deleted file +.fuse_hidden* + +# KDE directory preferences +.directory + +# Linux trash folder which might appear on any partition or disk +.Trash-* + +# .nfs files are created when an open file is removed but is still being accessed +.nfs* + ### macOS ### # General .DS_Store @@ -60,59 +92,9 @@ Network Trash Folder Temporary Items .apdisk -### Xcode ### -# Xcode -# -# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore - -## User settings -xcuserdata/ - -## compatibility with Xcode 8 and earlier (ignoring not required starting Xcode 9) -*.xcscmblueprint -*.xccheckout - -## compatibility with Xcode 3 and earlier (ignoring not required starting Xcode 4) -build/ -DerivedData/ -*.moved-aside -*.pbxuser -!default.pbxuser -*.mode1v3 -!default.mode1v3 -*.mode2v3 -!default.mode2v3 -*.perspectivev3 -!default.perspectivev3 - -## Gcc Patch -/*.gcno - -### Xcode Patch ### -*.xcodeproj/* -!*.xcodeproj/project.pbxproj -!*.xcodeproj/xcshareddata/ -!*.xcworkspace/contents.xcworkspacedata -**/xcshareddata/WorkspaceSettings.xcsettings - -### VisualStudioCode ### -.vscode/* -!.vscode/settings.json -!.vscode/tasks.json -!.vscode/launch.json -!.vscode/extensions.json -*.code-workspace - -# Local History for Visual Studio Code -.history/ - -### VisualStudioCode Patch ### -# Ignore all local history of files -.history -.ionide - -# Support for Project snippet scope -!.vscode/*.code-snippets +### macOS Patch ### +# iCloud generated files +*.icloud ### Windows ### # Windows thumbnail cache files @@ -140,11 +122,73 @@ $RECYCLE.BIN/ # Windows shortcuts *.lnk +# End of https://www.toptal.com/developers/gitignore/api/macos,windows,linux + + + + + +# Created by https://www.toptal.com/developers/gitignore/api/cmake,xcode,visualstudio,visualstudiocode +# Edit at https://www.toptal.com/developers/gitignore?templates=cmake,xcode,visualstudio,visualstudiocode + +### CMake ### +CMakeLists.txt.user +CMakeCache.txt +CMakeFiles +CMakeScripts +Testing +Makefile +cmake_install.cmake +install_manifest.txt +compile_commands.json +CTestTestfile.cmake +_deps + +### CMake Patch ### +# External projects +*-prefix/ + +### VisualStudioCode ### +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +!.vscode/*.code-snippets + +# Local History for Visual Studio Code +.history/ + +# Built Visual Studio Code Extensions +*.vsix + +### VisualStudioCode Patch ### +# Ignore all local history of files +.history +.ionide + +### Xcode ### +## User settings +xcuserdata/ + +## Xcode 8 and earlier +*.xcscmblueprint +*.xccheckout + +### Xcode Patch ### +*.xcodeproj/* +!*.xcodeproj/project.pbxproj +!*.xcodeproj/xcshareddata/ +!*.xcodeproj/project.xcworkspace/ +!*.xcworkspace/contents.xcworkspacedata +/*.gcno +**/xcshareddata/WorkspaceSettings.xcsettings + ### VisualStudio ### ## Ignore Visual Studio temporary files, build results, and ## files generated by popular Visual Studio add-ons. ## -## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore +## Get latest from https://github.com/github/gitignore/blob/main/VisualStudio.gitignore # User-specific files *.rsuser @@ -349,9 +393,6 @@ PublishScripts/ *.nuget.props *.nuget.targets -# Nuget personal access tokens and Credentials -# nuget.config - # Microsoft Azure Build Output csx/ *.build.csdef @@ -440,6 +481,15 @@ node_modules/ # Visual Studio 6 auto-generated workspace file (contains which files were open etc.) *.vbw +# Visual Studio 6 auto-generated project file (contains which files were open etc.) +*.vbp + +# Visual Studio 6 workspace and project file (working project files containing files to include in project) +*.dsw +*.dsp + +# Visual Studio 6 technical files + # Visual Studio LightSwitch build output **/*.HTMLClient/GeneratedArtifacts **/*.DesktopClient/GeneratedArtifacts @@ -496,6 +546,9 @@ ASALocalRun/ # Local History for Visual Studio .localhistory/ +# Visual Studio History (VSHistory) files +.vshistory/ + # BeatPulse healthcheck temp database healthchecksdb @@ -509,14 +562,23 @@ MigrationBackup/ FodyWeavers.xsd # VS Code files for those working on multiple tools +*.code-workspace # Local History for Visual Studio Code # Windows Installer files from build outputs +*.cab +*.msi +*.msix +*.msm +*.msp # JetBrains Rider -.idea/ *.sln.iml ### VisualStudio Patch ### # Additional files built by Visual Studio + +# End of https://www.toptal.com/developers/gitignore/api/cmake,xcode,visualstudio,visualstudiocode + + diff --git a/CMakeLists.txt b/CMakeLists.txt deleted file mode 100644 index c2eceb79a..000000000 --- a/CMakeLists.txt +++ /dev/null @@ -1,19 +0,0 @@ -cmake_minimum_required(VERSION 3.12.3) - -project(UOX3 CXX C) - -set(CMAKE_CXX_STANDARD 17) -set(CMAKE_CXX_STANDARD_REQUIRED ON) -set(CMAKE_CXX_EXTENSIONS OFF) -set(CMAKE_CXX_FLAGS_RELEASE "-O2") - -add_executable(uox3 - source/uox3.cpp - source/uox3.rc -) - -target_link_libraries(uox3 uox) - -add_subdirectory(source) -add_subdirectory(spidermonkey) -add_subdirectory(zlib) \ No newline at end of file diff --git a/CMakeSettings.json b/CMakeSettings.json deleted file mode 100644 index b2f65a37c..000000000 --- a/CMakeSettings.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "configurations": [ - - { - "name": "x86-Debug", - "generator": "Ninja", - "configurationType": "Debug", - "buildRoot": "${projectDir}\\out\\build\\${name}", - "installRoot": "${projectDir}\\out\\install\\${name}", - "cmakeCommandArgs": "", - "buildCommandArgs": "", - "ctestCommandArgs": "", - "inheritEnvironments": [ "msvc_x86" ], - "variables": [] - }, - { - "name": "x64-Debug", - "generator": "Ninja", - "configurationType": "Debug", - "buildRoot": "${projectDir}\\out\\build\\${name}", - "installRoot": "${projectDir}\\out\\install\\${name}", - "cmakeCommandArgs": "", - "buildCommandArgs": "-v", - "ctestCommandArgs": "", - "inheritEnvironments": [ "msvc_x64_x64" ], - "variables": [] - }, - { - "name": "x86-Release", - "generator": "Ninja", - "configurationType": "Release", - "buildRoot": "${projectDir}\\out\\build\\${name}", - "installRoot": "${projectDir}\\out\\install\\${name}", - "cmakeCommandArgs": "", - "buildCommandArgs": "", - "ctestCommandArgs": "", - "inheritEnvironments": [ "msvc_x86" ], - "variables": [] - }, - { - "name": "x64-Release", - "generator": "Ninja", - "configurationType": "Release", - "buildRoot": "${projectDir}\\out\\build\\${name}", - "installRoot": "${projectDir}\\out\\install\\${name}", - "cmakeCommandArgs": "", - "buildCommandArgs": "-v", - "ctestCommandArgs": "", - "inheritEnvironments": [ "msvc_x64_x64" ], - "variables": [] - } - ] -} \ No newline at end of file diff --git a/README.md b/README.md index 1e41e53bb..740fc525c 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ **Ultima Offline eXperiment 3** - the original open source Ultima Online server emulator, allowing people to run their own, custom UO shards since 1997. Comes with cross-platform 64-bit support for **Windows**, **Linux**, **macOS**, and **FreeBSD**. News, releases, forums, additional documentation and more can be found at https://www.uox3.org -Supported UO Client versions: **~4.0.0p** to **~7.0.91.15** (with encryption removed by [ClassicUO](https://www.classicuo.eu), [Razor](https://github.com/msturgill/razor/releases) or similar tools). For additional details on UO client compatibility, check https://www.uox3.org/forums/viewtopic.php?f=1&t=2289 +Supported UO Client versions: **~4.0.0p** to at least **~7.0.97.25** (with encryption removed by [ClassicUO](https://www.classicuo.eu), [Razor](https://github.com/msturgill/razor/releases) or similar tools). For additional details on UO client compatibility, check https://www.uox3.org/forums/viewtopic.php?f=1&t=2289 UOX3 relies on **SpiderMonkey v1.7.0** for its JS-based scripting engine, and on **zlib-1.2.11** for data compression matters, and comes bundled with specific, compatible versions of these. @@ -16,200 +16,156 @@ Join the [UOX3 Discord](https://discord.gg/uBAXxhF) for support and/or a quick c --- # How to compile UOX3... -# ...under Linux, macOS, or FreeBSD -## Step 1: Clone the UOX3 Git Repository +## Step 1: Set up a Build Environment +*First, set up a proper build environment with the various tools needed to clone and compile UOX3.*
- Using git and Terminal - -First step, open a new terminal and enter the commands below: - -1) Install prerequisites: - - * **Linux:** `sudo apt install git` - This will install git if not already installed (Ubuntu/Debian-based Linux variants). If you're using a non-Debian flavour of Linux, use the default package manager that comes with it to install git instead. - - * **macOS:** `xcode-select --install` - This will install git if not already installed, along with required make and gcc tools - - * **FreeBSD:** `pkg install git gmake` - This will install git and gmake if not already installed. Alternatively, build `git` and `gmake` via ports if desired. - -2) `git clone https://github.com/UOX3DevTeam/UOX3.git` - This will clone the stable master branch of the UOX3 git repository into a subdirectory of the current directory you're in, named UOX3. The latest verified compatible version of SpiderMonkey (v1.7.0) is also included, as well as a minimal set of files required to compile zlib-1.2.11. - -
- Checking out Other Branches - - If you'd rather grab another branch of the git repository, like the **develop** branch where most updates get pushed first before being merged into the master branch, you can use the following command *after* completing the previous step: - `git checkout develop` + Install build tools -
+ > * **Windows** - Download and install [Community Edition of Visual Studio 2017 or 2022](https://visualstudio.microsoft.com/downloads/). + > * * Be sure to also install **Desktop development with C++** via the Visual Studio Installer, along with the individual component titled **VC++ 2017 version 15.9 v14.16 latest v141 tools** (VS2017) or **MSVC v143 - VS 2022 C++ x64/x86 build tools** (VS2022). CMake is included for command-line builds. + > * **Linux (Debian-based)** - Run `sudo apt install build-essential cmake` in a Terminal: (or use your Linux distro's package manager) + > * **FreeBSD** - Run `pkg install cmake` in a Terminal. Alternatively, build `cmake` via ports if desired. + > * **macOS** - Download [Xcode](https://apps.apple.com/us/app/xcode/id497799835?mt=12) (for building with an IDE) via the App Store, and/or [CMake](https://cmake.org/download/) (for command-line builds)
- (macOS alternative) GitHub Desktop - - 1) Download and install the macOS version of [GitHub Desktop](https://desktop.github.com/). - 2) Run GitHub Desktop and click **File->Clone Repository** from the menu. - 3) Click the **URL** tab, enter **https://github.com/UOX3DevTeam/UOX3.git**, then provide a local path for where you want the UOX3 git repository cloned on your drive. - 4) Hit the **Clone** button! + Install Git + > * **Windows/macOS** - Grab [GitHub Desktop](https://desktop.github.com) or your preferred git tool + > * **Linux** - Run `sudo apt install git` in a Terminal. + > * **FreeBSD** - Run `pkg install git` in a Terminal. Alternatively, build `git` via ports if desired.
-## Step 2: Compile UOX3 -
- Compiling with GNU Make and GCC (v9.x and above) or Clang - -You'll need a couple tools before you can compile UOX3 on Linux, like **GNU Make** (*v4.2.1* or higher recommended) and **gcc** (*v9.x* or higher recommended). Install these through your favourite package manager or through your flavour of Linux' variant of the following terminal command (example specific to Debian/Ubuntu Linux flavours): - -1) (Linux only) `sudo apt install build-essential` +--- -Once these are in place, navigate to the **UOX3** project folder in your terminal and execute the following command from the project's root directory: +## Step 2: Clone the UOX3 Git Repository +*Next up, clone the UOX3 git repository, which also includes the latest verified compatible version of SpiderMonkey (v1.7.0) and a minimal set of files required to compile zlib-1.2.11.* +
+ Using GitHub Desktop (Windows/macOS) -`./automake.sh` - First compiles the SpiderMonkey JS library bundled with UOX3, then compiles the included zlib library, and finally compiles the actual UOX3 build, before copying the compiled binary to the **root** UOX3 project directory. + > 1. Run GitHub Desktop and click **File->Clone Repository** from the menu. + > 2. Enter **https://github.com/UOX3DevTeam/UOX3.git** in the URL tab, and provide a local path for storing the cloned repo on your drive. + > 3. Hit the **Clone** button to clone the stable master branch of UOX3 to the specified local path
- Special note for users of Debian/GCC versions below 9.x - - If your version of gcc is below 9.x, you'll need to add *-lstdc++fs* in *Makefile* to include the experimental filesystem library from c++17. - - Change the following line (~34) from + Using Command Line git - `$(CXX) $(CXXFLAGS) -o $(TARGET) $^ $(LDFLAGS)` - - to - - `$(CXX) $(CXXFLAGS) -o $(TARGET) $^ $(LDFLAGS) -lstdc++fs` + > 1. Run `git clone https://github.com/UOX3DevTeam/UOX3.git` in a Terminal to clone the stable master branch of UOX3 into a subdirectory of the current directory you're in.
- Manual Instructions - - If you don't wish to rely on the automake.sh script, but want control over the process yourself, follow these steps (same as what automake.sh does): - - - `cd spidermonkey` - ### Linux ### - - `make -f Makefile.ref DEFINES=-DHAVE_VA_LIST_AS_ARRAY CC=gcc` - - `ar -r libjs32.a Linux_All_DBG.OBJ/*.o` - - `cp Linux_All_DBG.OBJ/jsautocfg.h ./` - ### macOS ### - - `make -f Makefile.ref DEFINES=-DHAVE_VA_LIST_AS_ARRAY CC=gcc` - - `libtool -static -o libjs32.a -s Darwin_DBG.OBJ/*.o` - - `cp Darwin_DBG.OBJ/jsautocfg.h ./` - ### FreeBSD ### - - `gmake -f Makefile.ref DEFINES=-DHAVE_VA_LIST_AS_ARRAY CC=clang` - - `ar rcs libjs32.a FreeBSD_DBG.OBJ/*.o` - - `cp FreeBSD_DBG.OBJ/jsautocfg.h ./` - - *Next up, compile a static library of the included zlib package:* - - - `cd ../zlib` - - `make distclean` - - `./configure` - - `make` + (Optional) Checking out Other Branches - *At this point, now cd to the root UOX3 project directory and build UOX3:* + > If you'd rather grab another branch of the git repository, like the **develop** branch where most updates get pushed first before being merged into the master branch, you can use the following command *after* completing the previous step: + `git checkout develop` - - `cd ../source` - - `make` (`gmake` under FreeBSD) + > GitHub Desktop users can change the active branch via the *Current Branch* dropdown menu in GitHub Desktop.
--- -Once done compiling, you will find the compiled uox3 binary in the root UOX3 directory. You can copy this binary to the directory you intend to run your UOX3 shard from, along with all the files and folders contained in the UOX3/data subdirectory. - -**It is recommended** to run your UOX3 shard from a separate, dedicated directory instead of the data directory in your local UOX3 git repository, to avoid potential git conflicts and accidental overwrites when pulling updates to UOX3 from GitHub in the future. - +## Step 3: Compile UOX3 +*Finally, compile UOX3 using the build environment you set up in Step 1.*
- Copying Required Files to Dedicated UOX3 Directory - -This is an example of how to copy all required files to a directory called UOX3 in your user account's home directory -1) *navigate to root UOX3 project directory* -2) `mkdir ~/UOX3` -3) `cp uox3 ~/UOX3` -4) `cp -r data/* ~/UOX3` -5) `cd ~/UOX3` + Visual Studio 2022 (Windows), automake.sh (Linux/FreeBSD), XCode (macOS) + > * **Visual Studio 2022** - (Windows) Open *UOX3\make\VS2022\uox3.sln* (VS2022), choose *Release/Debug* from dropdown menu, and hit *Build -> Build UOX3* + > * **automake.sh** - (Linux/FreeBSD) Run `./automake.sh` in a Terminal, from the root of the cloned UOX3 repository. This compiles UOX3 with CMake, but in one command only. Use optional argument `-b debug` to create debug build, and/or `-o clean` to do a clean build + > * **XCode** - (macOS) Open *UOX3/make/XCode/uox3/uox3.xcworkspace*, select *Build*
-Once you have all the required files in place, you can follow the regular steps listed under **Installation and Setup > Configuring Your UOX3 Shard** in the UOX3 documentation (see docs folder, or visit https://www.uox3.org/docs/index.html#configureUOX3) to finish your UOX3 setup. - ---- +
+ CMake (Any platform, manual instructions) + + > If you don't wish to rely on the automake.sh script, but want control over the process yourself, follow these steps (same as what automake.sh does) in a Terminal. This also works on Windows/macOS as an alternative to compiling with IDEs: + > - Navigate to root of cloned UOX3 git repository, and execute these commands:\ + > `cd make/cmake`\ + > `mkdir build`\ + > `cd build`\ + > `cmake .. -DCMAKE_BUILD_TYPE=Release` (Windows/Linux/FreeBSD)\ + > `cmake .. -DCMAKE_BUILD_TYPE=Release -G"Unix Makefiles"` (macOS)\ + > `cmake --build . --config Release`\ + + > Replace "Release" with "Debug" in the above instructions to create a debug-build; delete **make/cmake/build** directory to do clean builds. +
-# ...under Windows -## Step 1: Clone the UOX3 Git Repository -1) Download and install [GitHub Desktop](https://desktop.githubc.om). If you already have another tool for git installed, you can use that instead. -2) Run GitHub Desktop (or your preferred git tool) and click **File->Clone Repository** from the menu. -3) Click the **URL** tab, enter `https://github.com/UOX3DevTeam/UOX3.git`, then provide a local path for where you want the UOX3 git repository cloned on your drive. -4) Hit the **Clone** button to clone the stable master branch of the UOX3 git repository to the specified local path, along with the latest verified compatible version of SpiderMonkey (v1.7.0). +
+ GCC/make/gmake (Linux/FreeBSD, manual instructions) + + > If you'd rather use GCC (v9.x or higher)/make (GNU Make 4.2.1 or higher) than CMake, you can follow these manual steps. Note that for FreeBSD, this approach requires installing **gmake** as an alternative to *make*: `pkg install gmake` + + > First, navigate to **spidermonkey** directory and run these commands:\ + > `make -f Makefile.ref DEFINES=-DHAVE_VA_LIST_AS_ARRAY CC=gcc` (Linux)\ + > `ar -r libjs32.a Linux_All_DBG.OBJ/*.o` (Linux)\ + > `cp Linux_All_DBG.OBJ/jsautocfg.h ./` (Linux)\ + > `gmake -f Makefile.ref DEFINES=-DHAVE_VA_LIST_AS_ARRAY CC=clang` (FreeBSD)\ + > `ar rcs libjs32.a FreeBSD_DBG.OBJ/*.o` (FreeBSD)\ + > `cp FreeBSD_DBG.OBJ/jsautocfg.h ./` (FreeBSD) + + > Next, head to the **zlib** directory:\ + > `cd ../zlib`\ + > `make distclean`\ + > `./configure`\ + > `make` + + > Finally, head to **UOX3/source** directory:\ + > `cd ../source`\ + > `make` (Linux)\ + > `gmake` (FreeBSD) +
-## Step 2: Compile UOX3 -### Option A) Visual Studio 2017/2019 ([Free Community edition](https://visualstudio.microsoft.com/downloads/))
- Visual Studio 2017/2019 + Visual Studio 2017 (Windows) -*This option will let you use Visual Studio solution/project files to compile both UOX3 and SpiderMonkey with Visual Studio's default VC++ compiler. Note that you can download the [Free Community edition](https://visualstudio.microsoft.com/downloads/) of Visual Studio if you don't have it already. This approach also embeds SpiderMonkey directly inside UOX3 for a slightly larger (~1-2MB) executable, instead of requiring a separate DLL file, and comes with options for compiling either **32-bit** or **64-bit** (default) versions of UOX3.* + > When using VS2017, static libraries of the dependency projects (SpiderMonkey and zlib) need to be compiled prior to the UOX3 project. However, after those sub-projects have been compiled once, they never need to be compiled again, and from that point on only the build instructions for UOX3 itself applies: -***Note:*** You'll need to install **"Desktop development with C++"** via the Visual Studio Installer if you don't have it already, along with the option for this titled **MSVC v141 - VS 2017 C++ x64/x86 build tools (v14.16)** + > #### SpiderMonkey #### + > 1) Navigate to the **UOX3\spidermonkey\make\VS2017\jscript\** folder and open **jscript.sln** in VS2017. + > 2) Make sure you have **jscript** selected in the Solution Explorer, then select **Release** and **x64** (64-bit) in the Solution Configuration/Platform dropdown menus + > 3) Click **Build > Build jscript** from the menu. + > 4) Visual Studio will compile SpiderMonkey and create a **spidermonkey\make\VS2017\jscript\x64\Release\** (64-bit) folder with the compiled **jscript.lib** library file contained within. No further actions are necessary here, so you can close the SpiderMonkey VS Solution. -#### SpiderMonkey #### -1) Navigate to the **UOX3\spidermonkey** folder and open **SpiderMonkey.sln** in Visual Studio. -2) Make sure you have **js32** selected in the Solution Explorer, then select **Release** and either **x64** (64-bit) or **Win32** (32-bit) in the Solution Configuration/Platform dropdown menus -3) Click **Build > Build js32** from the menu. -4) Visual Studio will compile SpiderMonkey and create **spidermonkey\Release\x64** (64-bit) or **spidermonkey\Release\x86** (32-bit) folders with the compiled **js32.lib** library file contained within. No further actions are necessary here, so you can close the SpiderMonkey VS Solution. + > ### zlib ### + > 1) Navigate to the **UOX3\zlib\make\VS2017** folder and open **zlib.sln** in VS2017. + > 2) Select **Release** and **x64** (64-bit) in the Solution Configuration/Platform dropdown menus + > 3) Click **Build > Build zlib-static** from the menu. + > 4) Visual Studio will compile zlib and create a **zlib\x64\Release** (64-bit) folder with the compiled **zlib-static.lib** library file contained within. No further actions are necessary here, so you can close the zlib VS Solution. -### zlib ### -1) Navigate to the **UOX3\zlib** folder and open **zlib.sln** in Visual Studio. -2) Select **Release** and either **x64** (64-bit) or **Win32** (32-bit) in the Solution Configuration/Platform dropdown menus -3) Click **Build > Build zlib-static** from the menu. -4) Visual Studio will compile zlib and create **zlib\x64\Release** (64-bit) or **zlib\x86\Release** (32-bit) folders with the compiled **zlib-static.lib** library file contained within. No further actions are necessary here, so you can close the zlib VS Solution. + > #### UOX3 #### + > 1) Navigate to the **UOX3\make\VS2017\** folder and open **uox3.sln** in VS2017. + > 2) Make sure you have **UOX3** selected in the Solution Explorer, then select **Release** and **x64** (64-bit) in the *Solution Configuration/Platform dropdown menus*, or via **Build -> Configuration Manager**. + > 3) Select **Build -> Build UOX3** to start compiling UOX3. When done, you'll find **UOX3.exe** in **UOX3\make\VS2017\Release\x64**. -#### UOX3 #### -1) Open **UOX3_Official.sln** from the **UOX3\source** folder. -2) Make sure you have **UOX3_Official** selected in the Solution Explorer, then select either **Release** or **Debug**, and either **x64** (64-bit) or **Win32** (32-bit) in the *Solution Configuration/Platform dropdown menus*, or via **Build -> Configuration Manager**. -3) Select **Build -> Build UOX3_Official** to start compiling UOX3. When done, you'll find **UOX3.exe** either in **UOX3\source\Release\x64** (or **\x86**) or in **UOX3\source\Debug\x64** (or **\86**), depending on your choices in the previous step. + > From here on, if you wish to re-compile UOX3, just open the uox3.sln and hit rebuild. + > Note that if you wish to change from Release to Debug build, the sub-projects (SpiderMonkey and zlib) also need to be compiled for Debug mode prior to compiling UOX3.
- Adding SpiderMonkey/zlib references in Configuration Manager + (Troubleshooting) Adding SpiderMonkey/zlib references in Configuration Manager -If VS give you link errors when attempting to build UOX3, references to SpiderMonkey or zlib might have gone missing! Try the following steps to add them back. + > If VS give you link errors when attempting to build UOX3, references to SpiderMonkey or zlib might have gone missing! Try the following steps to add them back. -1) Right click on **UOX3_Official** in the Solution Explorer, and select Properties. -2) With the desired configuration (ex: Release, x64) selected at the top of the panel, add references to SpiderMonkey and zlib in these sections: - * *VC++ Directories >* **Include Directories** (add path to SpiderMonkey and zlib root folders) - * *VC++ Directories >* **Library Directories** (add path to SpiderMonkey **Release\x64** or **Release\x86** folder, as well as zlib **\x64\Release** or **\x86\Release** folder, depending on desired configuration) - * *VC++ Directories >* **Source Directories** (add path to SpiderMonkey and zlib root folders) - * *Linker >* **Additional Library Dependencies** (add path to SpiderMonkey **Release\x64** or **Release\x86** folder, as well as zlib **\x64\Release** or **\x86\Release** folder, depending on desired configuration) -Press apply! -Repeat process for both Release and Debug configurations (chosen at top of panel), then retry the UOX3 build process! + > 1) Right click on **UOX3_Official** in the Solution Explorer, and select Properties. + > 2) With the desired configuration (ex: Release, x64) selected at the top of the panel, add references to SpiderMonkey and zlib in these sections: + > * *VC++ Directories >* **Include Directories** (add path to SpiderMonkey and zlib root folders) + > * *VC++ Directories >* **Library Directories** (add path to **spidermonkey\make\VS2017\jscript\x64\Release** folder, as well as **zlib\make\VS2017\x64\Release** folder) + > * *VC++ Directories >* **Source Directories** (add path to SpiderMonkey and zlib root folders) + > * *Linker >* **Additional Library Dependencies** (add path to **spidermonkey\make\VS2017\jscript\x64\Release** folder, as well as **zlib\make\VS2017\x64\Release** folder) + > Press apply! + > Repeat process for both Release and Debug configurations (chosen at top of panel), then retry the UOX3 build process!
-### Option B) Visual Studio 2017/2019 and CMake ([Free Community edition](https://visualstudio.microsoft.com/downloads/)) -
- Visual Studio 2017/2019 and CMake - -*This option requires installing the Visual Studio toolset named **Linux development with C++** and the component called **Visual C++ tools for CMake and Linux**. Use the Visual Studio Installer to modify your install of Visual Studio if you don't already have these installed! This approach compiles SpiderMonkey to a separate DLL (**js32.dll**) file that needs to live inside the same folder as the main UOX3 executable, and currently only supports compiling a **32-bit** version of UOX3.* - -1) Start Visual Studio and use **File > Open > CMake** and select *CMakeLists.txt* in the root project folder (*Example: **D:\UOX3***). **Don't** open the similarly named file in the source folder directly. -2) After Visual Studio is done loading the project and has generated some necessary files, select **CMake > Change CMake Settings > UOX3** from the toolbar menu, and select either *x86-Debug* or *x86-Release* depending on what kind of build you want to make - or do this using the Solution Configuration select menu. -3) When Visual Studio is done switching to the new configuration, select **CMake > Build All** from the toolbar menu to start compiling UOX3. -4) When done, you'll find **uox3.exe** and **js32.dll** in a subfolder named **out** of the root project folder, more specifically **/UOX3/out/build/x86-Debug** or **x86-Release**, based on the selected configuration. -5) Note that the **js32.dll** file must be copied to the same folder as UOX3.exe. - -
- --- -# ...with Docker -## Step 1: Clone the UOX3 Git Repository - - See steps above for appropriate platform for cloning the Git repository to the target of your choice -## Step 2: Compile UOX3 +## UOX3 Compiled! Now what? +Once done compiling, you can copy the compiled UOX3 binary/executable to the directory you intend to run your UOX3 shard from, along with all the files and folders contained in the UOX3/data subdirectory. Where you'll find the compiled UOX3 binary/executable depends on your platform and build method. Examples: + * **Windows** - (VS2022) Compiled UOX3.exe can be found in **UOX3/make/VS2022/x64/Release** + * **Linux/FreeBSD** - (automake.sh) Compiled uox3 binary can be found in **root UOX3 repository** + * **macOS** - (XCode) Compiled uox3 binary can be found in **UOX3\make\XCode\Build\Products\Release** + * **Either Platform** - (CMake, manual) Compiled uox3 binary can be found in **UOX3\make\cmake\build** - Open a command prompt and navigate to the Git repository root. Using docker, execute a build of the image like so: `docker buildx build --progress=plain -t uox3 .` - ---- -Once done compiling, you can copy your new **uox3.exe** (and if using CMake, **js32.dll**) file from the appropriate output folders (depending on which method and configuration you used) to the root folder of your actual UOX3 project. You'll also need to copy the files and folders contained within the **data** subfolder of the UOX3 repository, if you don't already have these. - -**It is recommended** to run your UOX3 shard from a separate, dedicated folder instead of the data folder in your local UOX3 git repository, to avoid potential git conflicts and accidental overwrites when pulling updates to UOX3 from GitHub in the future. +**It is recommended** to run your UOX3 shard from a separate, dedicated directory instead of the data directory in your local UOX3 git repository, to avoid potential git conflicts and accidental overwrites when pulling updates to UOX3 from GitHub in the future. -Once you have all the required files in place, you can follow the regular steps listed under **Installation and Setup > Configuring Your UOX3 Shard** in the UOX3 documentation (see docs folder, or visit https://www.uox3.org/docs/index.html#configureUOX3) to finish your UOX3 setup! +Once you have all the required files in place, you can follow the regular steps listed under **Installation and Setup > Configuring Your UOX3 Shard** in the UOX3 documentation (see docs folder, or visit https://www.uox3.org/docs/index.html#configureUOX3) to finish your UOX3 setup. diff --git a/source/uox3.ico b/assets/uox3.ico similarity index 100% rename from source/uox3.ico rename to assets/uox3.ico diff --git a/source/uox3.rc b/assets/uox3.rc similarity index 93% rename from source/uox3.rc rename to assets/uox3.rc index d3cdf73d4..8166ab0ff 100644 --- a/source/uox3.rc +++ b/assets/uox3.rc @@ -1,6 +1,5 @@ // Microsoft Visual C++ generated resource script. // -#include "resource.h" #define APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// @@ -35,18 +34,14 @@ IDI_MAINFRAME ICON "uox3.ico" // TEXTINCLUDE // -1 TEXTINCLUDE -BEGIN - "resource.h\0" -END -2 TEXTINCLUDE +1 TEXTINCLUDE BEGIN "#include ""windows.h""\r\n" "\0" END -3 TEXTINCLUDE +2 TEXTINCLUDE BEGIN "\r\n" "\0" @@ -79,11 +74,11 @@ BEGIN BLOCK "040904b0" BEGIN VALUE "FileDescription", "UOX3" - VALUE "FileVersion", "0.99.6-RC1" + VALUE "FileVersion", "0.99.6-RC2" VALUE "InternalName", "UOX3.exe" VALUE "OriginalFilename", "UOX3.exe" VALUE "ProductName", "Ultima Offline eXperiment 3" - VALUE "ProductVersion", "0.99.6-RC1" + VALUE "ProductVersion", "0.99.6-RC2" END END BLOCK "VarFileInfo" diff --git a/automake.sh b/automake.sh index bcbb4591b..b187c0974 100755 --- a/automake.sh +++ b/automake.sh @@ -1,97 +1,66 @@ -#!/usr/bin/env sh -if (( $# == 0 )); then - # No parameters, all stages - stage=0 -else - stage="$1" -fi +#!/bin/sh -if [ $stage -eq 0 ] || [ $stage -eq 1 ]; then - echo "Building SpiderMonkey..." - cd spidermonkey - if [ "$(uname)" = "FreeBSD" ] - then - gmake -f Makefile.ref DEFINES=-DHAVE_VA_LIST_AS_ARRAY CC=clang - else - make -f Makefile.ref DEFINES=-DHAVE_VA_LIST_AS_ARRAY CC=gcc - fi - - ev=$? - if [ $ev -ne 0 ]; then - echo "Unable to build SpiderMonkey! Exiting..." - exit $ev - else - echo "Done building SpiderMonkey." - fi - - echo "Creating JavaScript library..." - if [ "$(uname)" = "Darwin" ] # macOS - then - libtool -static -o libjs32.a -s Darwin_DBG.OBJ/*.o - cp Darwin_DBG.OBJ/jsautocfg.h ./ - elif [ "$(uname)" = "FreeBSD" ] - then - ar rcs libjs32.a FreeBSD_DBG.OBJ/*.o - cp FreeBSD_DBG.OBJ/jsautocfg.h ./ - elif [ "$(expr substr $(uname -s) 1 5)" = "Linux" ] - then - # Linux - ar -r libjs32.a Linux_All_DBG.OBJ/*.o - cp Linux_All_DBG.OBJ/jsautocfg.h ./ - fi - - ev=$? - if [ $ev -ne 0 ]; then - echo "Unable to create JavaScript library! Exiting..." - exit $ev - else - echo "Done creating JavaScript library." - fi - cd .. - if [ $stage -eq 1 ]; then exit 0; fi +# Support optional arguments: +# -b debug +# -o clean +buildtype="Release" +buildoption="Normal" +while getopts ":b:o:" flag +do + case "${flag}" in + b) + if [ ${OPTARG} = "debug" ] || [ ${OPTARG} = "Debug" ] + then + buildtype="Debug" + fi;; + o) + if [ ${OPTARG} = "clean" ] || [ ${OPTARG} = "Clean" ] + then + buildoption="Clean" + fi;; + esac +done + +# if -o clean was provided, do a clean build +if [ $buildoption = "Clean" ] +then + echo "Preparing for clean build..." + rm -R make/cmake/build/ fi -if [ $stage -eq 0 ] || [ $stage -eq 2 ]; then - echo "Bulding zlib..." - cd zlib - make distclean - ./configure && make - - ev=$? - if [ $ev -ne 0 ]; then - echo "Unable to build zlib! Exiting..." - exit $ev - else - echo "Done building zlib." - fi - cd .. - if [ $stage -eq 2 ]; then exit 0; fi +echo "Creating Build directory" +cd make/cmake +mkdir -p build +cd build + +echo "Creating Make Files" +if [ "$(uname)" = "Darwin" ] +then + # Mac OS X + cmake .. -DCMAKE_BUILD_TYPE=$buildtype -G"Unix Makefiles" +else + cmake .. -DCMAKE_BUILD_TYPE=$buildtype fi -if [ $stage -eq 0 ] || [ $stage -eq 3 ]; then - echo "Building UOX3..." - cd source - if [ "$(uname)" = "FreeBSD" ] - then - gmake - else - make - fi - - ev=$? - if [ $ev -ne 0 ]; then - echo "Unable to build UOX3! Exiting..." - cd .. +echo "Building UOX3 ($buildtype)..." +cmake --build . --config $buildtype + +ev=$? +if [ $ev -ne 0 ]; then + echo "Unable to build UOX3 ($buildtype)! Exiting..." + cd ../../.. + exit $ev +else + if [ -f ./uox3 ]; then + cp uox3 ../../.. + echo "Done! You should now find the compiled uox3 binary in the root UOX3 project directory. Copy this binary" + echo "to a separate directory dedicated to running your UOX3 shard, along with the contents of the UOX3/data directory," + echo "to avoid potential git conflicts and accidental overwriting of data when pulling UOX3 updates in the future." + cd ../../.. + rm -R make/cmake/build/ exit $ev else - if [ -f ./uox3 ]; then - cp uox3 .. - echo "Done! You should now find the compiled uox3 binary in the root UOX3 project directory. Copy this binary" - echo "to a separate directory dedicated to running your UOX3 shard, along with the contents of the UOX3/data directory," - echo "to avoid potential git conflicts and accidental overwriting of data when pulling UOX3 updates in the future." - else - echo "uox3 program not found! Please review the build status." - fi + echo "uox3 program not found! Please review the build status." + cd ../../.. fi - cd .. -fi \ No newline at end of file +fi diff --git a/data/dfndata/npc/npclists/npclists_t2a_lands.dfn b/data/dfndata/npc/npclists/npclists_t2a_lands.dfn index 1c6f44e3c..495ed663f 100644 --- a/data/dfndata/npc/npclists/npclists_t2a_lands.dfn +++ b/data/dfndata/npc/npclists/npclists_t2a_lands.dfn @@ -45,6 +45,12 @@ orcmage orclord } +[NPCLIST Location_Orc_Fort_Savages] +{ +savageshaman +savagewarrior +} + [NPCLIST Location_Terathan_Keep] { allterathans diff --git a/data/dfndata/spawn/felucca/spawn_felucca_world_lostlands.dfn b/data/dfndata/spawn/felucca/spawn_felucca_world_lostlands.dfn index addd28ebb..a41f02491 100644 --- a/data/dfndata/spawn/felucca/spawn_felucca_world_lostlands.dfn +++ b/data/dfndata/spawn/felucca/spawn_felucca_world_lostlands.dfn @@ -64,12 +64,12 @@ CALL=5 [REGIONSPAWN 6204] { NAME=Location_Orc_Fort -NPCLIST=Location_Orc_Fort -MAXNPCS=25 -X1=5201 -Y1=3609 +NPCLIST=Location_Orc_Fort_Savages +MAXNPCS=15 +X1=5200 +Y1=3610 X2=5229 -Y2=3627 +Y2=3628 WORLD=0 MINTIME=18 MAXTIME=20 @@ -256,4 +256,17 @@ MAXTIME=40 CALL=2 } -EOF \ No newline at end of file +[REGIONSPAWN 6217] +{ +NAME=Location_Around_Orc_Fort +NPC=savagerider +MAXNPCS=15 +X1=5162 +Y1=3585 +X2=5273 +Y2=3637 +WORLD=0 +MINTIME=18 +MAXTIME=20 +CALL=5 +} \ No newline at end of file diff --git a/dlls/js32.dll b/dlls/js32.dll deleted file mode 100644 index ffb445ace..000000000 Binary files a/dlls/js32.dll and /dev/null differ diff --git a/docs/index.html b/docs/index.html index 96d6fb542..b7dcc6780 100644 --- a/docs/index.html +++ b/docs/index.html @@ -22,12 +22,12 @@

UOX3 Documentation

-

Last Updated: 22. November, 2022

+

Last Updated: 24. December, 2022

Written for UOX3 Version: v0.99.6-RC1

@@ -60,6 +60,14 @@

UOX3 Documentation

+

December 11th, 2022

+ +

November 24th, 2022

+

August 24th, 2022

November 13th, 2020

November 7th, 2020

-

CUOENABLED=0
- Determines if support for the ConnectUO Server Poll Packet request is enabled.

+

FREESHARDSERVERPOLL=0
+ Determines if support for the Freeshard Server Poll Packet request is enabled.

RANDOMSTARTINGLOCATION=0
@@ -1312,6 +1320,119 @@

The Community Discord

NPCFLAGUPDATETIMER=5
Interval in seconds between each time NPC flags are updated.

+
+

BLOODDECAYTIMER=3
+ Time in seconds it takes small blood splatter on ground spawned during combat to decay. Defaults to 3 seconds.

+
+
+

BLOODDECAYCORPSETIMER=210
+ Time in seconds it takes larger blood splatter on ground spawned upon death to decay. Defaults to half the duration of the default corpse decay timer.

+
+ + + + +
+

Supported era values: core, t2a, uor, td, lbr, pub15, aos, se, ml, sa, hs, tol
Note: A value of 'core' inherits whatever is set in CORESHARDERA

+
+

CORESHARDERA=pub15
+ Defines the "core" era of the shard. Defaults to pub15 (Publish 15).

+
    +
  • any - determines which Item/NPC DFNs gets loaded, based on tags like GETT2A, GETPUB15
  • +
  • uor or later - enables bonus hit chance for archery via ARCHERYHITBONUS setting
  • +
  • pub15 or earlier - final combat damage value reduced by half
  • +
+
+
+

ARMORCALCULATION=core
+ Defines era to base armor calculations on

+
    +
  • pub15 or earlier - different armor pieces contribute different percentage of the total Armor Rating
  • +
  • aos or later - each armor piece contribute to sum total of Physical Resistance, and other elemental resistance stats
  • +
+
+
+

STRENGTHDAMAGEBONUS=core
+ Defines era to base strength damage bonus on

+
    +
  • uor or earlier - 20% damage bonus based on strength, capped at 200 strength
  • +
  • td or later - 35% damage bonus based on strength if 100 strength or more, otherwise 30% damage bonus
  • +
+
+
+

TACTICSDAMAGEBONUS=core
+ Defines era to base tactics damage bonus on

+
    +
  • pub15 or earlier - bonus = Tactics skill + 50
  • +
  • aos or later - 68.75% damage bonus if GM Tactics, 62.5% bonus if below
  • +
+
+
+

ANATOMYDAMAGEBONUS=core
+ Defines era to base anatomy damage bonus on

+
    +
  • uor or earlier - bonus = Anatomy / 5 vs NPCs, Anatomy / 2.5 vs Players
  • +
  • td or later - 30% damage bonus at GM anatomy, up to 20% below GM
  • +
  • ml or later - 50% + 5 damage bonus at GM anatomy, up to 50% below GM
  • +
+
+
+

LUMBERJACKDAMAGEBONUS=core
+ Defines era to base lumberjacking damage bonus on

+
    +
  • uor or earlier - 35% damage bonus at GM skill, up to 25% below GM
  • +
  • td or later - 30% damage bonus at GM skill, up to 20% below GM
  • +
  • hs or later - 10% chance of 100% damage bonus
  • +
+
+
+

RACIALDAMAGEBONUS=core
+ Defines era to base racial damage bonus on

+
    +
  • sa or later - Gargoyles gain +15% damage bonus per each 20 HP lost
  • +
+
+
+

DAMAGEBONUSCAP=core
+ Defines era to base damage bonus cap on

+
    +
  • pub15 or earlier - No cap on damage bonus multiplier
  • +
  • aos or later - Total damage bonus multiplier capped at 300% higher than base damage
  • +
+
+
+

SHIELDPARRY=core
+ Defines era to base shield parry calculations on

+
    +
  • t2a - chance to block is parryskill / 2. shield absorbs damage equivalent of AR/2 for melee, or equivalent of AR for archery
  • +
  • uor to pub15 - higher AR equals lower block chance, but more damage absorbed.
  • +
  • aos or later - chance to block dependent on parry skill vs bushido skill, with dex modifier
  • +
+
+
+

WEAPONPARRY=core
+ Defines era to base weapon parry calculations on

+
    +
  • aos or later - chance to parry with weapon based on parry skill and bushido skill, with a dex modifier, 16.6% chance weapon will take damage from parrying
  • +
  • ml or later - chance to parry with weapon based on parry skill and bushido skill, with a dex modifier, 5% chance weapon will take damage from parrying, or 75% if opponent has mace
  • +
+
+
+

WRESTLINGPARRY=core
+ Defines era to base wrestling parry calculations on

+
    +
  • tol or later - From 12.5% chance (at GM wrestling, increases with higher skill) that an NPC will parry an attack
  • +
+
+
+

COMBATHITCHANCE=core
+ Defines era to base combat hit chance calculations on

+
    +
  • t2a to pub15 - hit chance based on attacker's skill vs defender's skill. No minimum chance to hit
  • +
  • uor to pub15 - Additional bonus hit chance for archery
  • +
  • aos to tol - hit chance based on attacker's skill (and hit chance increase) vs defender's skill (and defense chance increase). Minimum 2% chance to hit
  • +
+
@@ -1363,12 +1484,16 @@

The Community Discord

SELLBYNAME=0
- Determines if items are sold by their name, not just ID/Colour.

+ Determines if items are sold by their name, not just ID/Colour. Recommended to leave off.

SELLMAXITEMS=5
Maximum number of items that can be sold to a vendor at a time.

+
+

GLOBALRESTOCKMULTIPLIER=1
+ Global multiplier used to alter how many items NPC shopkeepers will restock. Defaults to 1, which means RESTOCK values in item definitions are taken at face value.

+

BANKBUYTHRESHOLD=2000
Defines the lower limit for when a purchase will withdraw money from bank instead of backpack

@@ -1492,6 +1617,35 @@

The Community Discord

BASICTOOLTIPSONLY=0
If enabled, tooltips will only show name and weight of items

+ +
+

SHOWREPUTATIONTITLEINTOOLTIP=1
+ If enabled, shows player's reputation title in tooltip. Defaults to 1

+
+
+

SHOWGUILDINFOINTOOLTIP=1
+ If enabled, shows player's guild info in tooltip. Defaults to 1

+
+
+

SHOWNPCTITLESINTOOLTIPS=1
+ If enabled, shows NPC titles in tooltip. Defaults to 1

+
+
+

SHOWNPCTITLESOVERHEAD=1
+ If enabled, shows NPC titles over their heads. Defaults to 1

+
+
+

SHOWINVULNERABLETAGOVERHEAD=1
+ If enabled, shows invulnerable tags over the head of characters. Defaults to 0

+
+
+

SHOWRACEWITHNAME=1
+ If enabled, shows a character's race along with their name. Defaults to 1

+
+
+

SHOWRACEINPAPERDOLL=1
+ If enabled, shows a character's race in the paperdoll. Defaults to 1

+

GLOBALITEMDECAY=1
Toggles decay on/off on a global scale. Does not remove decay flag from items, only stops them from decaying

@@ -1524,6 +1678,18 @@

The Community Discord

MAXPLAYERBANKITEMS=125
Sets max amount of items players can keep in their bank box.

+
+

MAXPLAYERPACKWEIGHT=40000
+ Sets max weight capacity in stones for player backpacks (including items in sub-containers). 40000 = 400.00 stones

+
+
+

MAXPLAYERBANKWEIGHT=160000
+ Sets max weight capacity in stones for player bankboxes (including items in sub-containers). 160000 = 1600.00 stones

+
+
+

FORCENEWANIMATIONPACKET=1
+ If enabled (default), forces the use of the new animation packet for playing various character animations for both NPCs in general and for player characters connected with client v7.0.0.0+

+

MAPDIFFSENABLED=0
If enabled, server will attempt to load diff files, and send "Enable Map-diff files" packet to client to also load these. Disabled by default.

@@ -1927,6 +2093,10 @@

The Community Discord

HIDESTATSFORUNKNOWNMAGICITEMS=1
Toggles whether item stats for unidentified magic items are hidden from tooltips

+
+

CASTSPELLSWHILEMOVING=0
+ Toggles whether spells can be cast while moving, without ever having to stop!

+
@@ -4548,184 +4718,152 @@

Step 4 - Convert UOP Files to MUL

Compiling UOX3 Source
-

Follow the steps below for your preferred platform if you wish to download and compile the UOX3 source directly from GitHub yourself.

-

Windows Users

-

Step 1 - Clone the UOX3 Git Repository

- - -
-
    -
  1. Download and install GitHub Desktop. If you already have another tool for git installed, you can use that instead.
  2. -
  3. Run GitHub Desktop (or your preferred git tool) and click File->Clone Repository from the menu.
  4. -
  5. Click the URL tab, enter https://github.com/UOX3DevTeam/UOX3.git, then provide a local path for where you want the UOX3 git repository cloned on your drive.
  6. -
  7. Hit the Clone button to clone the stable branch of the UOX3 git repository to the specified local path, along with the latest verified compatible version of SpiderMonkey (v1.7.0).
  8. -
- - -
-

If you'd rather grab another branch of the git repository, like the develop branch where most updates get pushed first before being merged into the master branch, you can click the Current branch dropdown menu in GitHub Desktop and select the branch you wish to check out. If you're out to do some code development, or just want to get at the latest possible changes, be sure to select the develop branch instead of the main/master one!

-
-
-

Step 2 - Compile UOX3

- - +

Follow the steps below for your preferred platform if you wish to download and compile the UOX3 source directly from GitHub yourself. These instructions are also available in UOX3's GitHub repository.

+ +

Step 1: Set up a Build Environment

+ First, setup a proper build environment with the various tools needed to clone and compile UOX3. + +
-

This option will let you use Visual Studio solution/project files to compile both UOX3, SpiderMonkey and zlib with Visual Studio's default VC++ compiler. Note that you can download the Free Community Edition of Visual Studio if you don't have it already. This approach also embeds SpiderMonkey directly inside UOX3 for a slightly larger (~1-2MB) executable, instead of requiring a separate DLL file, and comes with options for compiling either 32-bit or 64-bit (default) versions of UOX3.

-

Note: You'll need to install "Desktop development with C++" via the Visual Studio Installer if you don't have it already, along with the option for this titled MSVC v141 - VS 2017 C++ x64/x86 build tools (v14.16)

-

SpiderMonkey

-
    -
  1. Navigate to the UOX3\spidermonkey folder and open SpiderMonkey.sln in Visual Studio.
  2. -
  3. Make sure you have js32 selected in the Solution Explorer, then select Release and either x64 (64-bit) or Win32 (32-bit) in the Solution Configuration/Platform dropdown menus
  4. -
  5. Click Build > Build js32 from the menu.
  6. -
  7. Visual Studio will compile SpiderMonkey and create spidermonkey\Release\x64 (64-bit) or spidermonkey\Release\x86 (32-bit) folders with the compiled js32.lib library file contained within. No further actions are necessary here, so you can close the SpiderMonkey VS Solution.
  8. -
-

zlib

-
    -
  1. Navigate to the UOX3\zlib folder and open zlib.sln in Visual Studio.
  2. -
  3. Select Release and either x64 (64-bit) or Win32 (32-bit) in the Solution Configuration/Platform dropdown menus
  4. -
  5. Click Build > Build zlib-static from the menu.
  6. -
  7. Visual Studio will compile zlib and create zlib\x64\Release (64-bit) or zlib\x86\Release (32-bit) folders with the compiled zlib-static.lib library file contained within. No further actions are necessary here, so you can close the zlib VS Solution.
  8. -
-

UOX3

-
    -
  1. Open UOX3_Official.sln from the UOX3\source folder.
  2. -
  3. Make sure you have UOX3_Official selected in the Solution Explorer, then select either Release or Debug, and either x64 (64-bit) or Win32 (32-bit) in the Solution Configuration/Platform dropdown menus, or via Build -> Configuration Manager.
  4. -
  5. Select Build -> Build UOX3_Official to start compiling UOX3. When done, you'll find UOX3.exe in either UOX3\source\Release\x64 (or \x86) or UOX3\source\Debug\x64 (or \x86), depending on your choices in the previous step.
  6. -
- - -
-

If VS give you link errors when attempting to build UOX3, references to SpiderMonkey or zlib might have gone missing! Try the following steps to add them back.

-
    -
  1. Right click on UOX3_Official in the Solution Explorer, and select Properties.
  2. -
  3. With the desired configuration (ex: Release, x64) selected at the top of the panel, add references to SpiderMonkey and zlib in these sections:
  4. +
      +
    • Windows - Download and install Community Edition of Visual Studio 2017 or 2022.
        -
      • VC++ Directories > Include Directories (add path to SpiderMonkey and zlib root folders)
      • -
      • VC++ Directories > Library Directories (add path to SpiderMonkey Release\x64 or Release\x86 folder, as well as zlib \x64\Release or \x86\Release folder, depending on desired configuration) -
      • VC++ Directories > Source Directories (add path to SpiderMonkey and zlib root folder)
      • -
      • Linker > Additional Library Dependencies (add path to SpiderMonkey Release\x64 or Release\x86 folder, as well as zlib \x64\Release or \x86\Release , depending on desired configuration)
      • +
      • Be sure to also install Desktop development with C++ via the Visual Studio Installer, along with the individual component titled VC++ 2017 version 15.9 v14.16 latest v141 tools (VS2017) or MSVC v143 - VS 2022 C++ x64/x86 build tools (VS2022). CMake is included for command-line builds.
      -
    • Press apply!
    • -
    • Repeat process for both Release and Debug configurations (chosen at top of panel), then retry the UOX3 build process!
    • -
-
+
  • Linux (Debian-based) - Run sudo apt install build-essential cmake in a Terminal: (or use your Linux distro's package manager)
  • +
  • FreeBSD - Run pkg install cmake in a Terminal. Alternatively, build cmake via ports if desired.
  • +
  • macOS - Download Xcode (for building with an IDE) via the App Store, and/or CMake (for command-line builds)
  • - - + +
    -

    This option requires installing the Visual Studio toolset named Linux development with C++ and the component called Visual C++ tools for CMake and Linux. Use the Visual Studio Installer to modify your install of Visual Studio if you don't already have these installed! This approach compiles SpiderMonkey to a separate DLL (js32.dll) file that needs to live inside the same folder as the main UOX3 executable, and currently only supports compiling a 32-bit version of UOX3.

    -
      -
    1. Start Visual Studio and use File > Open > CMake and select CMakeLists.txt in the root project folder (Example: D:\UOX3). Don't open the similarly named file in the source folder directly.
    2. -
    3. After Visual Studio is done loading the project and has generated some necessary files, select CMake > Change CMake Settings > UOX3 from the toolbar menu, and select either x86-Debug or x86-Release depending on what kind of build you want to make - or do this using the Solution Configuration select menu.
    4. -
    5. When Visual Studio is done switching to the new configuration, select CMake > Build All from the toolbar menu to start compiling UOX3.
    6. -
    7. When done, you'll find UOX3.exe and js32.dll in a subfolder named out of the root project folder, more specifically /UOX3/out/build/x86-Debug or x86-Release, based on the selected configuration.
    8. -
    9. Note that the js32.dll file must be copied to the same folder as UOX3.exe.
    10. -
    +
      +
    • Windows/macOS - Grab GitHub Desktop or your preferred git tool
    • +
    • Linux - Run sudo apt install git in a Terminal.
    • +
    • FreeBSD - Run pkg install git in a Terminal. Alternatively, build git via ports if desired.
    -

    Once this process is done, you can copy your new UOX3.exe (and if using CMake, js32.dll) file from the appropriate output folders (depending on which method and configuration you used) to the root folder of your actual UOX3 project. You'll also need to copy the files and folders contained within the data subfolder of the UOX3 repository, if you don't already have these.

    -

    It is recommended to run your UOX3 shard from a separate, dedicated folder instead of the data folder in your local UOX3 git repository, to avoid potential git conflicts and accidental overwrites when pulling updates to UOX3 from GitHub in the future.

    -

    Once you have all the files in place, you can follow the regular steps listed under Installation and Setup > Configuring Your UOX3 Shard to finish your UOX3 setup!

    -

    Linux/macOS Users

    -

    Step 1 - Clone the UOX3 Git Repository

    - - + +

    Step 2: Clone the UOX3 Git Repository

    + Next up, clone the UOX3 git repository, which also includes the latest verified compatible version of SpiderMonkey (v1.7.0) and a minimal set of files required to compile zlib-1.2.11. + +
    -

    First step, open a new terminal and enter the following commands: -

      -
    1. (Linux) sudo apt install git - This will install git if not already installed (Ubuntu/Debian-based Linux variants). If you're using a non-Debian flavour of Linux, use the default package manager that comes with it to install git instead.
    2. -
    3. (macOS) xcode-select --install - This will install git if not already installed, along with required make and gcc tools
    4. -
    5. git clone https://github.com/UOX3DevTeam/UOX3.git - This will clone the stable branch of the UOX3 git repository into a subdirectory of the current directory you're in, named UOX3. The latest verified compatible version of SpiderMonkey (v1.7.0) is also included, as well as a minimal set of files required to compile zlib-1.2.11.
    6. -
    - - -
    -

    If you'd rather grab another branch of the git repository, like the develop branch where most updates get pushed first before being merged into the master branch, you can use the following command *after* completing the previous step: git checkout develop

    -
    +
      +
    • Run GitHub Desktop and click File->Clone Repository from the menu.
    • +
    • Enter https://github.com/UOX3DevTeam/UOX3.git in the URL tab, and provide a local path for storing the cloned repo on your drive.
    • +
    • Hit the Clone button to clone the stable master branch of UOX3 to the specified local path
    - - + +
    -
      -
    1. Download and install the macOS version of GitHub Desktop.
    2. -
    3. Run GitHub Desktop and click File->Clone Repository from the menu.
    4. -
    5. Click the URL tab, enter https://github.com/UOX3DevTeam/UOX3.git, then provide a local path for where you want the UOX3 git repository cloned on your drive.
    6. -
    7. Hit the Clone button!
    8. -
    +
      +
    • Run git clone https://github.com/UOX3DevTeam/UOX3.git in a Terminal to clone the stable master branch of UOX3 into a subdirectory of the current directory you're in.
    • +
    + + +
    +

    If you'd rather grab another branch of the git repository, like the develop branch where most updates get pushed first before being merged into the master branch, you can use the following command after completing the previous step:
    git checkout develop

    +

    GitHub Desktop users can change the active branch via the Current Branch dropdown menu in GitHub Desktop.

    +
    + +

    Step 3: Compile UOX3

    + Finally, compile UOX3 using the build environment you setup in Step 1. + + +
    +
      +
    • Visual Studio 2022 - (Windows) Open UOX3\make\VS2022\uox3.sln (VS2022), choose Release/Debug from dropdown menu, and hit Build -> Build UOX3
    • +
    • automake.sh - (Linux/FreeBSD) Run ./automake.sh in a Terminal, from the root of the cloned UOX3 repository. This compiles UOX3 with CMake, but in one command only. Use optional argument -b debug to create debug build, and/or -o clean to do a clean build.
    • +
    • XCode - (macOS) Open UOX3/make/XCode/uox3/uox3.xcworkspace, select Build
    • +
    -

    Step 2 - Compile UOX3

    - - + +
    -

    You'll need a couple tools before you can compile UOX3 on Linux, like GNU Make (4.2.1 or higher recommended) and gcc (v9.x or higher recommended). Install these through your favourite package manager or through your flavour of Linux' variant of the following terminal command (specific to Debian/Ubuntu Linux flavours):

    +

    If you don't wish to rely on the automake.sh script, but want control over the process yourself, follow these steps (same as what automake.sh does) in a Terminal. This also works on Windows/macOS as an alternative to compile with IDEs:

      -
    • (Linux only) sudo apt install build-essential
    • +
    • Navigate to root of cloned UOX3 git repository
    • +
    • cd make/cmake
    • +
    • mkdir build
    • +
    • cd build
    • +
    • cmake .. -DCMAKE_BUILD_TYPE=Release (Windows/Linux/FreeBSD)
    • +
    • cmake .. -DCMAKE_BUILD_TYPE=Release -G"Unix Makefiles" (macOS)
    • +
    • cmake --build . --config Release
    -

    Once these tools are in place, navigate to the UOX3 project directory in your terminal and execute the following commands from the project's root directory, in order:

    -
      -
    1. ./automake.sh - First compiles the SpiderMonkey JS library bundled with UOX3, then compiles the included zlib library, and finally compiles the actual UOX3 build, before copying the compiled binary to the root UOX3 project directory.
    2. -
    +

    Replace "Release" with "Debug" in the above instructions to create a debug-build; delete make/cmake/build directory to do clean builds.

    +
    - - + + +
    +

    If you'd rather use GCC (v9.x or higher)/make (GNU Make 4.2.1 or higher) than CMake, you can follow these manual steps. Note that for FreeBSD, this approach requires installing gmake as an alternative to make: pkg install gmake

    + +

    First, navigate to spidermonkey directory and run these commands:
    + make -f Makefile.ref DEFINES=-DHAVE_VA_LIST_AS_ARRAY CC=gcc (Linux)
    + ar -r libjs32.a Linux_All_DBG.OBJ/*.o (Linux)
    + cp Linux_All_DBG.OBJ/jsautocfg.h ./ (Linux)
    + gmake -f Makefile.ref DEFINES=-DHAVE_VA_LIST_AS_ARRAY CC=clang (FreeBSD)
    + ar rcs libjs32.a FreeBSD_DBG.OBJ/*.o (FreeBSD)
    + cp FreeBSD_DBG.OBJ/jsautocfg.h ./ (FreeBSD)

    + +

    Next, head to the zlib directory:
    + cd ../zlib
    + make distclean
    + ./configure
    + make

    + +

    Finally, head to UOX3/source directory:
    + cd ../source
    + make (Linux)
    + gmake (FreeBSD)

    + +
    -

    If your version of gcc is below 9.x, you'll need to add -lstdc++fs in Makefile to include the experimental filesystem library from c++17.:

    +

    If your version of gcc is below 9.x, you'll need to add -lstdc++fs in Makefile to include the experimental filesystem library from c++17.:

    Change the following line (~34) from
    $(CXX) $(CXXFLAGS) -o $(TARGET) $^ $(LDFLAGS)
    to
    $(CXX) $(CXXFLAGS) -o $(TARGET) $^ $(LDFLAGS) -lstdc++fs

    - - - -
    -

    If you don't wish to rely on the automake.sh script, but want control over the process yourself, follow these steps (same as what automake.sh does):

    -
      -
    • cd spidermonkey
    • -
    • make -f Makefile.ref DEFINES=-DHAVE_VA_LIST_AS_ARRAY CC=gcc
    • -
    • Linux
    • -
        -
      • ar -r libjs32.a Linux_All_DBG.OBJ/*.o
      • -
      • cp Linux_All_DBG.OBJ/jsautocfg.h ./
      • -
      -
    • macOS
    • -
        -
      • ar rcs libjs32.a Darwin_DBG.OBJ/*.o
      • -
      • cp Darwin_DBG.OBJ/jsautocfg.h ./
      • -
      -
    • Next up, compile a static library of the included zlib package:
    • -
        -
      • cd ../zlib
      • -
      • make distclean
      • -
      • ./configure
      • -
      • make
      • -
      -
    • At this point, now cd to the root UOX3 project directory and build UOX3:
    • -
        -
      • cd ../source
      • -
      • make
      • -
      -
    -
    -

    Once this process is done, you will find the compiled uox3 binary in the root UOX3 directory. You can copy this binary to the directory you intend to run your UOX3 shard from, along with all the files and folders contained in the UOX3/data/ subdirectory.

    - -

    It is recommended to run your UOX3 shard from a separate, dedicated directory instead of the data directory in your local UOX3 git repository, to avoid potential git conflicts and accidental overwrites when pulling updates to UOX3 from GitHub in the future.

    - - + +
    -

    This is an example of how to copy all required files to a directory called UOX3 in your user account's home directory -

      -
    1. navigate to root UOX3 project directory
    2. -
    3. mkdir ~/UOX3
    4. -
    5. cp uox3 ~/UOX3
    6. -
    7. cp -r data/* ~/UOX3
    8. -
    9. cd ~/UOX3
    10. -

      +

      When using VS2017, static libraries of the dependency projects (SpiderMonkey and zlib) need to be compiled prior to the UOX3 project. However, after those sub-projects have been compiled once, they never need to be compiled again, and from that point on only the build instructions for UOX3 itself applies:

      + +

      SpiderMonkey

      +
        +
      1. Navigate to the UOX3\spidermonkey\make\VS2017\jscript folder and open jscript.sln in VS2017.
      2. +
      3. Make sure you have jscript selected in the Solution Explorer, then select Release and x64 (64-bit) in the Solution Configuration/Platform dropdown menus
      4. +
      5. Click Build > Build jscript from the menu.
      6. +
      7. Visual Studio will compile SpiderMonkey and create a spidermonkey\make\VS2017\jscript\x64\Release (64-bit) folder with the compiled jscript.lib library file contained within. No further actions are necessary here, so you can close the SpiderMonkey VS Solution.
      8. +
      +

      zlib

      +
        +
      1. Navigate to the UOX3\zlib\make\VS2017 folder and open zlib.sln in VS2017.
      2. +
      3. Select Release and x64 (64-bit) in the Solution Configuration/Platform dropdown menus
      4. +
      5. Click Build > Build zlib-static from the menu.
      6. +
      7. Visual Studio will compile zlib and create a zlib\x64\Release (64-bit) folder with the compiled zlib-static.lib library file contained within. No further actions are necessary here, so you can close the zlib VS Solution.
      8. +
      +

      UOX3

      +
        +
      1. Navigate to the UOX3\make\VS2017 folder and open uox3.sln in VS2017.
      2. +
      3. Make sure you have UOX3 selected in the Solution Explorer, then select Release and x64 (64-bit) in the Solution Configuration/Platform dropdown menus, or via Build -> Configuration Manager.
      4. +
      5. Select Build -> Build UOX3 to start compiling UOX3. When done, you'll find UOX3.exe in UOX3\make\VS2017\Release\x64.
      6. +
    -

    Once you have all the files in place, you can follow the regular steps listed under Installation and Setup > Configuring Your UOX3 Shard to finish your UOX3 setup.

    -
    +

    UOX3 Compiled! Now what?

    +

    Once done compiling, you can copy the compiled UOX3 binary/executable to the directory you intend to run your UOX3 shard from, along with all the files and folders contained in the UOX3/data subdirectory. Where you'll find the compiled UOX3 binary/executable depends on your platform and build method. Examples:

    + +

    It is recommended to run your UOX3 shard from a separate, dedicated directory instead of the data directory in your local UOX3 git repository, to avoid potential git conflicts and accidental overwrites when pulling updates to UOX3 from GitHub in the future.

    +

    Once you have all the files in place, you can follow the regular steps listed under Installation and Setup > Configuring Your UOX3 Shard to finish your UOX3 setup!

    @@ -4746,8 +4884,8 @@

    Step 2 - Compile UOX3

    Any contributions that involve making changes to UOX3 can either be posted in the Submissions - Fixes & Improvements section of the UOX3.org forums, or can be submitted as a Pull Request on UOX3's GitHub page, for those familiar with that workflow. Do note that any such contributions will be reviewed for quality and fit with the project before being accepted and merged into the core UOX3 project.

    If it so happens, that your code or script contribution is not approved for inclusion in the core UOX3 project, you can still post it as custom additions/tweaks in other parts of the UOX3.org forums, for other users to download! Alternatively, if your changes are extensive enough, you can do what many others have done before you and branch off the main UOX3 project to create something entirely new and exciting!

    - +

    A Note about Coding Styles and Practices

    +

    Before venturing on a grand coding adventure, pause for a moment and take a peek at the UOX3 Style Guide for Code (WIP). Sticking closely to the guidelines in that document increases the chance that one's code submissions can be included/merged into the main UOX3 codebase, and also helps ensure that all (new, if not all old) code follows a consistent style. This makes it easier to read and understand the codebase.

    @@ -5273,6 +5411,10 @@

    Available NPC AI types

    Passive AI that doesn't fight back or react to being attacked.

    8 - AI_BANKER
    Bankers give players access to their bank boxes when saying the word "bank" nearby. Tip: This can also be used on players to ALWAYS give them access to their bankbox ;)

    +

    10 - AI_CASTER
    + Same as AI_FIGHTER, but will try to stay at casting range.

    +

    11 - AI_EVIL_CASTER
    + Same as AI_EVIL, but will try to stay at casting range.

    17 - AI_PLAYERVENDOR
    Used by playervendors placed by players at their houses to sell items to other players.

    32 - AI_PET_GUARD
    @@ -6430,6 +6572,10 @@

    Manage Event Decorations

    def=[defense] or [lowdef highdef]
    Set Physical-resist/defense value - either fixed or random range

    +
    +

    defbonus=[minDefenseBonus maxDefenseBonus]
    + Set defense/physical resistance bonus applied on top of standard def (maxDefenseBonus is optional, but if specified, randomizes). Should be applied after the def tag.

    +

    detectinghidden=[skillpoints] or [lowskill highskill]
    Set Detecting Hidden skill (0 - 1000)

    @@ -6446,6 +6592,10 @@

    Manage Event Decorations

    elementresist=[fire cold energy poison]
    Set Element-resist stats (0 - 1000 for each stat)

    +
    +

    erbonus=[fire cold energy poison]
    + Set elemental resistance bonus applied on top of standard elementresist. Should be applied after the elementresist tag.

    +

    emotecolour=[color]
    Set the default colour (in hex or decimal) for the NPC's emote text

    @@ -6526,6 +6676,10 @@

    Manage Event Decorations

    get=[npcSectionID]
    Inherit properties from NPC defined by npcSectionID in NPC DFNs

    +
    +

    gett2a/gettd/getuor/getlbr/getpub15/getaos/getse/getml/getsa/gettol=[npcSectionID]
    + Inherit properties from NPC defined by npcSectionID in NPC DFNs, based on selected era in expansion settings of uox.ini

    +

    gold=[gold] or [mingold maxgold]
    Set the amount of gold this NPC carries - either fixed or random range

    @@ -7021,6 +7175,10 @@

    Manage Event Decorations

    def=[defense]
    Set physical resist/armor rating value of item. Primarily used with wearables like clothes, armour, etc.

    +
    +

    defbonus=[minDefenseBonus maxDefenseBonus]
    + Set defense/physical resistance bonus applied on top of standard def (maxDefenseBonus is optional, but if specified, randomizes). Should be applied after the def tag.

    +

    dex=[statpoints]
    Minimum dexterity required to equip item

    @@ -7049,10 +7207,18 @@

    Manage Event Decorations

    elementresist=[fire cold energy poison]
    Set fire, cold, energy and poison resistance values (0 - 1000, where 1000 = 100.0)

    +
    +

    erbonus=[fire cold energy poison]
    + Set elemental resistance bonus applied on top of standard elementresist. Should be applied after the elementresist tag.

    +

    get=[itemSectionID]
    Inherit properties of item with specified itemSectionID from item DFNs

    +
    +

    gett2a/gettd/getuor/getlbr/getpub15/getaos/getse/getml/getsa/gettol=[itemSectionID]
    + Inherit properties from Item defined by itemSectionID in Item DFNs, based on selected era in expansion settings of uox.ini

    +

    glow=[0/1]
    Attaches a hidden lightsource to the item to make it appear to glow

    @@ -8007,7 +8173,7 @@

    A home for discussion of non-Official Ultima Online Servers, also known as Freeshards - hosted by Stratics (who once upon a time also hosted the UOX3 website and IRC channels!)

    ShardPortal

    The ShardPortal is a place for anyone to advertise their shard as well as search out other active shards.

    -

    UOGateway (Dead?)

    +

    UOGateway

    (Possibly dead) A top site list for free UO shards made in the spirit of and in honor of Mr. Fixit's original UOGateway tool.

    UO-Pixel

    Another nice (German) website focusing on providing custom artwork for UO shards. Amongst other things, it has some very nice animated item artwork (including a moving water-mill).

    @@ -10932,6 +11098,7 @@

    How it Got Started

    Grimson
    Programmer, 07/06/2005, 0.98.3-0

    ShadowBranch
    Daniel Moree, Programmer, 11/06/2005, 0.98-3.0

    +

    Sydius
    Chris Ogden, Programmer, 04/08/2005, 0.98-3.0

    lingo
    Lingo Chen, Programmer, 05/08/2005, 0.98-3.0e

    @@ -11006,7 +11173,7 @@

    How it Got Started

    -

    Contributors active within last year (as of November 2022):

    +

    Contributors active within last year (as of December 2022):

    Xuri, punt, Dragon Slayer, Azzerhoden Razeri, ldilley

    diff --git a/docs/jsdocs.html b/docs/jsdocs.html index c453910c2..95cc14911 100644 --- a/docs/jsdocs.html +++ b/docs/jsdocs.html @@ -23,7 +23,7 @@

    UOX3 JS Engine Docs

    @@ -4041,7 +4041,7 @@

    January 9th, 2022

    Prototype

    -

    function onTooltip( myObject )

    +

    function onTooltip( myObject, pSocket )

    Purpose

    @@ -4054,7 +4054,7 @@

    January 9th, 2022

    Example of usage

    // Display remaining uses left in a tooltip, based on item's UsesLeft tag
    -function onTooltip( myObj )
    +function onTooltip( myObj, pSocket )
     {
     	var tooltipText = "";
     	var usesLeft = myObj.GetTag( "UsesLeft" );
    @@ -7067,15 +7067,20 @@ 

    January 9th, 2022

    Prototype

    SpawnRegion GetSpawnRegion( spawnRegionNum );

    +

    SpawnRegion GetSpawnRegion( x, y, worldNum, instanceID );

    Purpose

    -

    Returns SpawnRegion object for specified spawnRegionNum.

    +

    Returns SpawnRegion object for specified spawnRegionNum, or for specified set of coordinates

    Example of usage

    // Returns SpawnRegion object for spawn region #1 from spawns.dfn
     var spawnRegion = GetSpawnRegion( 1 );
    +pUser.TextMessage( "The name of this SpawnRegion is: " + spawnRegion.name );
    +
    +// Returns SpawnRegion object for spawn region at specified coordinates:
    +var spawnRegion = GetSpawnRegion( pUser.x, pUser.y, pUser.worldnumber, pUser.instanceID );
     pUser.TextMessage( "The name of this SpawnRegion is: " + spawnRegion.name );
    @@ -8740,7 +8745,7 @@

    January 9th, 2022

    Purpose

    -

    Get/Set the time in milliseconds until specified timer expires for a Character object

    +

    Get a timestamp for when timer will run out, or set the time in milliseconds until specified timer expires for a Character object

    Notes

    @@ -8755,7 +8760,7 @@

    January 9th, 2022

    Timer.SPELLTIME // Time until spell cast is completed. Can be set to 0 to interrupt Timer.SPELLRECOVERYTIME // Time until player has recovered from casting a spell Timer.ANTISPAM // Time until next speech message can be sent (for anti spam purposes) -Timer.CRIMFLAG // Time until criminal flag runs out +Timer.CRIMFLAG // Time until criminal flag runs out (should be set after criminal flag itself) Timer.MURDERRATE // Time until next murder count decay Timer.PEACETIMER // Time until character can re-enter combat after being affected by peacemaking Timer.FLYINGTOGGLE // Time until next time flying ability can be toggled for gargoyles @@ -8773,10 +8778,12 @@

    January 9th, 2022

    Example of usage

    -
    // Get remaining time in milliseconds before criminal flag expires
    -var criminalTimer = myChar.GetTimer( Timer.CRIMFLAG );
    +										
    // Get a timestamp for when criminal flag expires, and spit out milliseconds left
    +var criminalTimestamp = myChar.GetTimer( Timer.CRIMFLAG );
    +myChar.TextMessage(( myTarget.GetTimer( Timer.CRIMFLAG ) - GetCurrentClock() ).toString() );
     
    -// Set time from now in milliseconds that criminal flag will last
    +// Set time from now in milliseconds that criminal flag will last, after making character a criminal
    +myChar.criminal = true;
     myChar.SetTimer( timer.CRIMFLAG, 3000 );
    @@ -10478,7 +10485,7 @@

    January 9th, 2022

    Purpose

    -

    Adds a gump on the current gump (ie any image in the gumps part of InsideUO). A fourth parameter - hue - is optional, and can be used to set the color of the gump.

    +

    Adds a gump on the current gump (ie any image in the Gumps-tab of a tool like UOFiddler). A fourth parameter - hue - is optional, and can be used to set the color of the gump.

    Example of usage

    @@ -10499,7 +10506,7 @@

    January 9th, 2022

    Purpose

    -

    Adds a gump on the current gump (ie any image in the gumps part of InsideUO). Same as AddGump, but with an additional parameter for hue/color.

    +

    Adds a gump on the current gump (ie any image in the Gumps-tab of a tool like UOFiddler). Same as AddGump, but with an additional parameter for hue/color.

    Example of usage

    @@ -12977,8 +12984,10 @@

    January 9th, 2022

    Example of usage

    -
    // Get remaining time in milliseconds until next time player can use an object
    -var objectDelay = mySock.GetTimer( Timer.SOCK_OBJDELAY );
    +										
    // Get timestamp for when player can next use an object, and spit out remaining time in milliseconds
    +Get a timestamp for when criminal flag expires, and spit out milliseconds left
    +var objectDelayTimestamp = myChar.GetTimer( Timer.SOCK_OBJDELAY );
    +myChar.TextMessage(( myTarget.GetTimer( Timer.SOCK_OBJDELAY ) - GetCurrentClock() ).toString() );
     
     // Set time from now in milliseconds until next time player can use another item
     mySock.SetTimer( timer.SOCK_OBJDELAY, 3000 );
    @@ -13529,7 +13538,7 @@

    Flag/Boolean Types

    .criminal (bool, true/false)
    - Get/Set whether the character is flagged as a criminal

    + Get/Set whether the character is flagged as a criminal. If set to true, default criminal timer is applied, as defined in the uox.ini setting CRIMINALTIMER. Can override with .SetTimer( Timer.CRIMFLAG, timeInMilliseconds ) after flag has already been set to true.

    .dead (bool, true/false)
    @@ -13549,7 +13558,7 @@

    Flag/Boolean Types

    .innocent (bool, true/false)
    - Get/Set whether character is flagged as innocent

    + Get/Set whether character is flagged as innocent. If set to false, default criminal timer is applied, as defined in the uox.ini setting CRIMINALTIMER.

    .isAwake (bool, true/false)
    @@ -14207,6 +14216,10 @@

    Text Types

    .name (text, max 127 characters)
    Get/Set name of character

    +
    +

    .origin (text, max 127 characters)
    + Get/Set origin (expansion, era) of character

    +

    .sectionID (text, max 127 characters)
    Section ID from DFNs that object originated from

    @@ -14865,6 +14878,10 @@

    Text Types

    .name2 (text, max 127 characters)
    Get/Set secondary name of item - used in relation to magical items whose names get revealed upon successful use of Item Identification

    +
    +

    .origin (text, max 127 characters)
    + Get/Set origin (expansion, era) of item

    +

    .sectionID (text, max 127 characters)
    Section ID from DFNs that object originated from

    diff --git a/docs/styleguide.html b/docs/styleguide.html new file mode 100644 index 000000000..5bd878d1e --- /dev/null +++ b/docs/styleguide.html @@ -0,0 +1,404 @@ + + + + + + + + + + UOX3 Style Guide for Code + + +
    +
    +
    + +
    + +

    UOX3 Style Guide

    +
    +
    + + + +
    +

    Last Updated: 24. November, 2022

    +

    UOX3 Version: v0.99.6-RC1

    +
    + +
    + + +
    +
      +
    • About this Style Guide

    • + +
    • + Latest Updates +
      +
      +

      This section contains the latest notable updates made to the style guide.

      + + +
      +

      November 24th, 2022

      +
        +
      • Initial version of document completed
      • +
      +
      +
      +
      +
    • + +
    • + Purpose of This Style Guide +
      +
      +

      This style provides a common, shared set of (lightweight) guidelines for anyone who wishes to contribute source code and/or scripts to the UOX3 project, in order to help ensure that those contributions follow a standardized approach not only for code style, but also for conventions and practices used in the project. This also improves the maintainability of the project in the future.

      +

      The UOX3 code base has historically been a hodgepodge of different styles and approaches, written by people with varying programming skills over a period of more than 20 years, and that history highlights the need for a standard that can be followed when working on the project.

      +

      These guidelines are not meant to be understood as hard requirements, yet the closer to the guidelines that new contributions adhere to, the easier it will be to review any changes in context of the current code base and - if accepted - merge those contributions in.

      +
      +
      +
    • + +
    + +
      +
    • Basic Style Guide

    • +
    • + General Guidelines +
      +
      +

      Above all else, please take to heart the general guidelines listed below and follow them as best you can:

      +
        +
      • Write understandable, self-documenting code - Give sensible, descriptive names to classes, functions and variables that clarify their purpose, rather than short and ambiguous names that say nothing about what they are for.
      • +
      • Add comments where needed - Use comments to leave hints for the reader of your code if the code is not self-explanatory for the average programmer. If the code you write is so advanced and complex that no one else can understand it by reading it, then comments are crucial for anyone else to be able to maintain it if/once you've lost interest in the project and moved on (as happens).
      • +
      • Be consistent with existing code - Make life easy for anyone who needs to read or maintain your code in the future, by adopting the coding style, conventions and practices most commonly used in the project. If the existing code offers two alternatives on how to proceed in this context, choose one of the two; don't introduce a third option.
      • +
      • Avoid making unnecessary, sweeping style changes - If possible, avoid making sweeping changes throughout the entire code base that forces everyone else to adopt your own preferred style. Not only is it quite an assumption to make that everyone else on the project will prefer your style, it may also cause problems for anyone who wishes to merge their code changes with yours; instead of comparing differences in a few functions in a few files, they now potentially have thousands of differences to go through!
      • +
      • If unsure, ask - If you're unsure if a change would conflict with the guidelines laid out in this Style Guide, don't hesitate to bring it up in Discord or on the UOX3 Community forums to get a second opinion - preferably before you make the change!
      • +
      +

      If you have identified a need for a change that conflicts with the above points, or with anything else in this Style Guide, create a new topic on the Communtiy Forums and state your case, or bring it up in the Discord chat. None of these "rules" are etched in stone, they can (and should) be challenged, updated and added to when appropriate.

      +
      +
      +
    • + +
    • + C++ Target Versions +
      +
      +

      Currently, any new code written for UOX3 should target C++11 to C++17, and aim to be cross-platform conforming across Windows, Linux and macOS platforms, when compiled using VS2017-2022, GCC/G++ v8-9 and/or CMake v?. Avoid using features specific to C++20 or newer, to not introduce additional compiler dependencies and requirements.

      + +
      +
      +
    • + +
    • + Cross-Platform Support +
      +
      +

      UOX3 aims to be cross-platform conformant across (at least) 64-bit Windows, Linux and macOS platforms, with feature parity between each platform. Implementations specific to any one particular platform should be avoided if possible, though there might be exceptions for special cases where platform-specific handling is unavoidable - such as when dealing with console and/or networking.

      +

      Any code being contributed that does not compile, run and function the same on all the above-mentioned platforms will probably not be approved for inclusion in UOX3 until/unless necessary changes have been made to comply with the above.

      +
      +
      +
    • + +
    • + Naming Conventions +
      +
      +

      Use Self-Descriptive Names

      +

      Always prefer self-descriptive names (skillUsageDelay instead of skUseDel, itemCount instead of ic)

      +

      Filenames

      +

      If creation of new source files is necessary, use camelCase when naming the files to make the name more readable in a list of other, perhaps similarly named files. Try to stick close to existing naming practice.

      +

      Classes/Methods/Functions

      +

      Use PascalCase for class/function/method names.

      +

      Variables and Parameters

      +

      Use camelCase for variables, non-method class/struct members and function/method parameters.

      +
      +
      +
    • +
    + +
      +
    • Advanced Style Guide

    • + +
    • + Comments and Comment Blocks +
      +
      +

      Function/Method Comment Blocks

      +

      This Style Guide makes no differentiation between functions and methods for the purpose of comment blocks.

      +
        +
      • Comment blocks should be added for any new functions or methods added, should describe the purpose of the function/method and provide any extra context that is relevant for future maintainers of the code. For the sake of making the maintenance of comments more manageable, adopt a minimalistic approach where only relevant details are included:
      • +
        //o-----------------------------------------------------------------------------------------------o
        +//| Function	-	CSocket::AddTrigWord()
        +//o-----------------------------------------------------------------------------------------------o
        +//| Purpose		-	Adds trigger word to list of trigger words detected in player's speech
        +//o-----------------------------------------------------------------------------------------------o
        +
      • Getters/setters that have been grouped together should be commented together, where possible:
      • +
        //o-----------------------------------------------------------------------------------------------o
        +//| Function	-	CSocket::TargetOK()
        +//o-----------------------------------------------------------------------------------------------o
        +//| Purpose		-	Gets/Sets socket property to indicate whether waiting for client target
        +//o-----------------------------------------------------------------------------------------------o
        +auto CSocket::TargetOK( void ) const -> bool
        +{
        +	return targetok;
        +}
        +auto CSocket::TargetOK( bool newValue ) -> void
        +{
        +	targetok = newValue;
        +}
        +
      +

      General Comments

      +
        +
      • Pay attention to grammar, spelling and punctuation, even in comments
      • +
      • Variables in general should have names that are descriptive enough that they'd not need comments, but if comments are needed - add them!
      • +
      • For global variables, try to always add a comment to explain what it's used for, and potentially why it needs to be a global variable
      • +
      • Don't remove comments added by other maintainers unless the comments in question are no longer relevant/accurate
      • +
      • If the use of magic numbers is necessary, add context for the magic number via comments
      • +
      • When deciding what to comment or not, try to think from the perspective of people maintaining the code after you're gone. Is it likely that someone will need some extra context to understand your code? Add a comment.
      • +
      +
      +
      +
    • + +
    • + Const +
      +
      +
        +
      • Make liberal use of const. Any member function that does not modify its object should be const. Any function parameter that references an object, but doesn't actually change it, should be passed as a const reference.
      • +
      • For function parameters passed by value, const has no effect on the caller, and is not needed
      • +
      • When declaring something as const, follow this pattern: const int *foo (const comes first)
      • +
      +
      +
      +
    • + +
    • + Functions +
      +
      +

      Write Short Functions

      +
        +
      • Write short functions, whenever possible. Sometimes it makes sense for a function to be a bit longer, but if the code in a function exceeds ~40 lines, start thinking about whether it could be broken up.
      • +
      • Short functions are easier to read, easier to test, easier to debug, and easier to modify.
      • +
      +
      +
      +
    • + +
    • + Getters and Setters +
      +
      +
        +
      • Group getters and setters for class members together in pairs; put the getter for X next to the setter for X. Avoid spreading them out to different sections of a file. Grouping them up makes the code easier to read, maintain and debug:
      • +
        auto CItem::GetType( void ) const -> ItemTypes
        +{
        +	return type;
        +}
        +auto CItem::SetType( ItemTypes newValue ) -> void
        +{
        +	type = newValue;
        +}
        +
      +
      +
      +
    • + +
    • + Variable Scope +
      +
      +
        +
      • Declare local variables when you need to use them, and not a moment sooner. The narrower the scope for a variable, and the closer it is declared to where it is actually used, the easier it becomes to read and understand the code for future code maintainers (or yourself a month from now).
      • +
      • If possible initialize variables as they are declared, instead of declaring and then assigning values to them separately, so whoever reads the code can see at a glance both the type and value the variable was initialized to.
      • +

        Example: +

        // Not ideal
        +std::string myString;
        +myString = "Hello";
        +
        +// Better
        +std::string myString = "Hello";
        +
        +// Preferred
        +auto myString = "Hello"s; // note the 's' at the end
        +
        +
          +
        • Exception: If the variable is an object, and it's used in a for-loop, declare it outside the for-loop so the constructor and destructor of the object doesn't get invoked multiple times as it loops.
        • +
        +
      +
      +
      +
    • + +
    • + Auto keyword +
      +
      +
        +
      • Use the auto keyword when declaring variables to automatically deduct the variable type based on the initializer. Same can be done with return types for functions. Examples:
      • +
        // Using auto with a variable
        +auto myChar = "Hello"; // type is const char* pointer to const char[5] array
        +auto myString = "Hello, World!"s; // type is std::string (note the 's' at the end)
        +auto myVar = GetMyVarValue(); // type depends on what GetMyVarValue() returns
        +
        +// Using auto with functions
        +auto CItem::SetRegion( UI16 newValue ) -> void
        +{
        +	regionNum = newValue;
        +	UpdateRegion();
        +}
        +auto CItem::GetRegionNum( void ) const -> UI16
        +{
        +	return regionNum;
        +}
        +
      +
      +
      +
    • + +
    • + Variable Types and Casting +
      +
      +
        +
      • Use the UOX3-defined type aliases like UI16, SI32, etc. for different integer types where possible, to increase readability and maintainability of the code. These are defined as follows: +
        using R32 = float;
        +using R64 = double;
        +using UI08 = std::uint8_t;	// 0 to 255
        +using SI08 = std::int8_t;	// -128 to 127
        +using UI16 = std::uint16_t;	// 0 to 65535
        +using SI16 = std::int16_t;	// -32768 to 32767
        +using UI32 = std::uint32_t;	// 0 to 4294967295
        +using SI32 = std::int32_t;	// -2147483648 to 2147483647
        +using UI64 = std::uint64_t;	// 0 to 18446744073709551615
        +using SI64 = std::int64_t;	// -9223372036854775808 to 9223372036854775807
      • +
      • Use C++-style casts, and avoid C-style casts. Example: +
        // Good - C++-style cast
        +static_cast<R32>( double_value )
        +
        +// Avoid - C-style cast
        +( R32 )double_value
      • +
      • When in doubt about how large integer type is needed, prefer the larger type unless(i.e. UI64 over UI32, or SI32 over SI16)
      • +
      +
      +
      +
    • + +
    • + Whitespace, Indentation and Braces +
      +
      +

      Tabs vs Spaces

      +

      For consistency with the rest of the code base, indent your code using tabs (size: 4), not spaces.

      +

      Indentation

      +
        +
      • Vertical alignment can be done to increase readability in certain situations, like:
      • +
        case CCP_FAME:			*vp = INT_TO_JSVAL( gPriv->GetFame() );					break;
        +case CCP_KARMA:			*vp = INT_TO_JSVAL( gPriv->GetKarma() );				break;
        +case CCP_ATTACK:		*vp = INT_TO_JSVAL( Combat->calcAtt( gPriv, true ));	break;
        +case CCP_CANATTACK:		*vp = BOOLEAN_TO_JSVAL( gPriv->GetCanAttack() );		break;
        +case CCP_BRKPEACE:		*vp = INT_TO_JSVAL( gPriv->GetBrkPeaceChance() );		break;
        +case CCP_HUNGER:		*vp = INT_TO_JSVAL( gPriv->GetHunger() );				break;
        +
        pStream.ReserveSize( 44 );
        +pStream.WriteByte(   0, 0x1C );
        +pStream.WriteShort(  1, 44 );
        +pStream.WriteLong(   3, 0xFFFFFFFF );
        +pStream.WriteShort(  7, 0xFFFF );
        +pStream.WriteString( 14, "System", 6 );
        +pStream.WriteByte(   20, 0 );
        +
      +

      Whitespace Guidelines

      +
        +
      • Spaces inside parentheses
      • +
        ( x, y, z )
        +
      • Spaces after commas in list/function/method parameters
      • +
        void MyFunction( std::string myString, int myInt )
        +
      • Spaces around operators
      • +
        var foo = x - 1;
        +var bar = x <= 10;
        +
      • No spaces before parentheses in function or method declarations
      • +
        bool myClass::MyMethod()
        +
      • No spaces before parentheses in control statements
      • +
        if( x == 1 )
        +for( int i = 0; i < 10; ++i )
        +
      • No spaces between multiple parentheses in control statements
      • +
        if( foo || ( !bar ))
        +if(( x == y ) && ( z != x ))
        +
      • No spaces inside angled or square brackets, except after comma, or between operators
      • +
        [x, y, z]
        +static_cast<SI16>
        +
      +

      Braces

      +
        +
      • Braces ALWAYS on their own lines (Allman style)
      • +
        if( something )
        +{
        +  ...
        +}
        +
        +void myFunction( std::string myString )
        +{
        +}
        +
      • Always use braces with if & else statements, even for one liners, to prevent easy mistakes by future maintainers
      • +
        if( something )
        +{
        +	// one liner
        +}
        +
        +
      • Exception to the previous point: Braces can be skipped for one-liners that are intended to return early, continue/break a loop, etc. In those cases, try to leave an empty line after the early return/continue/break and the rest of the code in the function/method in question
      • +
        bool cScript::OnCreate( CBaseObject *thingCreated, bool dfnCreated )
        +{
        +	if( !ValidateObject( thingCreated ))
        +		return false;
        +
        +	std::string functionName = "onCreateDFN";
        +	...
        +}
        +
        for( auto &MapArea : MapRegion->PopulateList( this ))
        +{
        +	if( MapArea == nullptr )
        +		continue;
        +
        +	// First remove nearby characters from sight
        +	...
        +}
        +
      +
      +
      +
    • + +
    +
    + + + Close + + +
    +
    +

    UOX3 Style Guide for Code by Geir Ove Alnes @ Copyright 2022

    +

    Built upon FAQ Template framwork provided by CodyHouse.

    +
    + + + + + \ No newline at end of file diff --git a/source/UOX3_Official.sln b/make/VS2017/uox3.sln similarity index 90% rename from source/UOX3_Official.sln rename to make/VS2017/uox3.sln index bdd835a22..e1306244a 100644 --- a/source/UOX3_Official.sln +++ b/make/VS2017/uox3.sln @@ -2,7 +2,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 15 VisualStudioVersion = 15.0.26430.16 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "UOX3_Official", "UOX3_Official.vcxproj", "{82A66DAD-C555-416B-94DF-9784AFBB11FC}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "uox3", "uox3.vcxproj", "{82A66DAD-C555-416B-94DF-9784AFBB11FC}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution diff --git a/source/UOX3_Official.vcxproj b/make/VS2017/uox3.vcxproj similarity index 90% rename from source/UOX3_Official.vcxproj rename to make/VS2017/uox3.vcxproj index 9647dd501..48baf8638 100644 --- a/source/UOX3_Official.vcxproj +++ b/make/VS2017/uox3.vcxproj @@ -33,6 +33,7 @@ {82A66DAD-C555-416B-94DF-9784AFBB11FC} 8.1 + UOX3 @@ -100,18 +101,18 @@ .\Release\x86\ .\Release\x86\ false - ..\spidermonkey\Release\x86;..\zlib\Release;$(LibraryPath) - ..\spidermonkey;..\zlib;$(SourcePath) - ..\spidermonkey;..\zlib;$(IncludePath) + ..\..\spidermonkey\make\VS2017\jscript\Release\;..\..\zlib\make\VS2017\Release;$(LibraryPath) + ..\..\spidermonkey;..\..\zlib;$(SourcePath) + ..\..\spidermonkey;..\..\zlib;$(IncludePath) UOX3 NativeRecommendedRules.ruleset false false - ..\zlib\x64\Release;..\spidermonkey\Release\x64;$(LibraryPath) - ..\zlib;..\spidermonkey;$(SourcePath) - ..\zlib;..\spidermonkey;$(IncludePath) + ..\..\zlib\make\VS2017\x64\Release;..\..\spidermonkey\make\VS2017\jscript\x64\Release;$(LibraryPath) + ..\..\zlib;..\..\spidermonkey;$(SourcePath) + ..\..\zlib;..\..\spidermonkey;$(IncludePath) UOX3 NativeRecommendedRules.ruleset false @@ -130,16 +131,16 @@ .\Debug\x86\ .\Debug\x86\ true - ..\spidermonkey\Release\x86;..\zlib\Debug;$(LibraryPath) - ..\spidermonkey;..\zlib;$(SourcePath) - ..\spidermonkey;..\zlib;$(IncludePath) + ..\..\spidermonkey\make\VS2017\jscript\Debug;..\..\zlib\make\VS2017\Debug;$(LibraryPath) + ..\..\spidermonkey;..\..\zlib;$(SourcePath) + ..\..\spidermonkey;..\..\zlib;$(IncludePath) UOX3_debug true - ..\spidermonkey\Release\x64;..\zlib\x64\Debug;$(LibraryPath) - ..\spidermonkey;..\zlib;$(SourcePath) - ..\spidermonkey;..\zlib;$(IncludePath) + ..\..\spidermonkey\make\VS2017\jscript\x64\Debug;..\..\zlib\make\VS2017\x64\Debug;$(LibraryPath) + ..\..\spidermonkey;..\..\zlib;$(SourcePath) + ..\..\spidermonkey;..\..\zlib;$(IncludePath) UOX3_debug .\Debug\x64\ .\Debug\x64\ @@ -154,7 +155,7 @@ true /J - $(OutDir)/UOX3_Official.pch + $(OutDir)/uox3.pch $(OutDir) $(OutDir) $(OutDir) @@ -170,17 +171,17 @@ true - wsock32.lib;ws2_32.lib;js32.lib;zlib-static.lib;%(AdditionalDependencies) + wsock32.lib;ws2_32.lib;jscript.lib;zlib-static.lib;%(AdditionalDependencies) $(OutDir)$(TargetName).exe true - ..\spidermonkey\Release\x86;..\zlib\Release;%(AdditionalLibraryDirectories) + ..\..\spidermonkey\make\VS2017\Release;..\zlib\make\VS2017\Release;%(AdditionalLibraryDirectories) $(OutDir)$(TargetName).pdb Console MachineX86 UseLinkTimeCodeGeneration - .\Release/UOX3_Official.tlb + .\Release/uox3.tlb @@ -199,7 +200,7 @@ /J - $(OutDir)/UOX3_Official.pch + $(OutDir)/uox3.pch $(OutDir) $(OutDir) $(OutDir) @@ -215,16 +216,16 @@ true - wsock32.lib;ws2_32.lib;js32.lib;zlib-static.lib;%(AdditionalDependencies) + wsock32.lib;ws2_32.lib;jscript.lib;zlib-static.lib;%(AdditionalDependencies) $(OutDir)$(TargetName).exe true - ..\zlib\x64\Release\;..\spidermonkey\Release\x64;%(AdditionalLibraryDirectories) + ..\..\zlib\make\VS2017\x64\Release\;..\..\spidermonkey\make\VS2017\x64\Release;%(AdditionalLibraryDirectories) $(OutDir)$(TargetName).pdb Console UseLinkTimeCodeGeneration - .\Release/UOX3_Official.tlb + .\Release/uox3.tlb @@ -240,7 +241,7 @@ MultiThreadedDebug /J - .\DebugProfile/UOX3_Official.pch + .\DebugProfile/uox3.pch .\DebugProfile/ .\DebugProfile/ .\DebugProfile/ @@ -250,7 +251,7 @@ EditAndContinue - odbc32.lib;odbccp32.lib;ws2_32.lib;js32.lib;%(AdditionalDependencies) + odbc32.lib;odbccp32.lib;ws2_32.lib;jscript.lib;%(AdditionalDependencies) DebugProfile\UOX3.exe true JavaScript;%(AdditionalLibraryDirectories) @@ -260,7 +261,7 @@ MachineX86 - .\DebugProfile/UOX3_Official.tlb + .\DebugProfile/uox3.tlb @@ -276,7 +277,7 @@ /J - .\DebugProfile/UOX3_Official.pch + .\DebugProfile/uox3.pch .\DebugProfile/ .\DebugProfile/ .\DebugProfile/ @@ -286,7 +287,7 @@ ProgramDatabase - odbc32.lib;odbccp32.lib;ws2_32.lib;js32.lib;%(AdditionalDependencies) + odbc32.lib;odbccp32.lib;ws2_32.lib;jscript.lib;%(AdditionalDependencies) DebugProfile\UOX3.exe true JavaScript;%(AdditionalLibraryDirectories) @@ -295,7 +296,7 @@ Console - .\DebugProfile/UOX3_Official.tlb + .\DebugProfile/uox3.tlb @@ -311,7 +312,7 @@ MultiThreadedDebug /J - $(OutDir)/UOX3_Official.pch + $(OutDir)/uox3.pch $(OutDir) $(OutDir) $(OutDir) @@ -326,10 +327,10 @@ false - ws2_32.lib;js32.lib;zlib-static.lib;%(AdditionalDependencies) + ws2_32.lib;jscript.lib;zlib-static.lib;%(AdditionalDependencies) $(OutDir)$(TargetName).exe true - ..\spidermonkey\Release\x86;..\zlib\Debug;%(AdditionalLibraryDirectories) + ..\..\spidermonkey\make\VS2017\Release;..\..\zlib\make\VS2017\Debug;%(AdditionalLibraryDirectories) true $(OutDir)$(TargetName).pdb Console @@ -338,7 +339,7 @@ LIBCMT;%(IgnoreSpecificDefaultLibraries) - .\Debug/UOX3_Official.tlb + .\Debug/uox3.tlb @@ -354,7 +355,7 @@ /J - $(OutDir)/UOX3_Official.pch + $(OutDir)/uox3.pch $(OutDir) $(OutDir) $(OutDir) @@ -368,10 +369,10 @@ true - ws2_32.lib;js32.lib;zlib-static.lib;%(AdditionalDependencies) + ws2_32.lib;jscript.lib;zlib-static.lib;%(AdditionalDependencies) $(OutDir)$(TargetName).exe true - ..\spidermonkey\Release\x64;..\zlib\x64\Debug;%(AdditionalLibraryDirectories) + ..\..\spidermonkey\make\VS2017\x64\Release;..\..\zlib\make\VS2017\x64\Debug;%(AdditionalLibraryDirectories) true $(OutDir)$(TargetName).pdb Console @@ -379,7 +380,7 @@ LIBCMT;%(IgnoreSpecificDefaultLibraries) - .\Debug/UOX3_Official.tlb + .\Debug/uox3.tlb @@ -389,7 +390,7 @@ - + Disabled Disabled true @@ -403,7 +404,7 @@ true true - + Disabled Disabled true @@ -417,7 +418,7 @@ true true - + Disabled Disabled true @@ -431,7 +432,7 @@ true true - + Disabled Disabled true @@ -445,7 +446,7 @@ true true - + Disabled Disabled true @@ -459,7 +460,7 @@ true true - + Disabled Disabled true @@ -473,7 +474,7 @@ true true - + Disabled Disabled true @@ -487,7 +488,7 @@ true true - + Disabled Disabled true @@ -501,7 +502,7 @@ true true - + Disabled Disabled true @@ -515,7 +516,7 @@ true true - + Disabled Disabled true @@ -529,7 +530,7 @@ true true - + Disabled Disabled true @@ -543,7 +544,7 @@ true true - + Disabled Disabled true @@ -557,7 +558,7 @@ true true - + Disabled Disabled true @@ -571,7 +572,7 @@ true true - + Disabled Disabled true @@ -585,9 +586,9 @@ true true - - - + + + Disabled Disabled true @@ -601,7 +602,7 @@ true true - + Disabled Disabled true @@ -615,7 +616,7 @@ true true - + Disabled Disabled true @@ -629,7 +630,7 @@ true true - + Disabled Disabled true @@ -643,7 +644,7 @@ true true - + Disabled Disabled true @@ -657,7 +658,7 @@ true true - + Disabled Disabled true @@ -671,7 +672,7 @@ true true - + Disabled Disabled true @@ -685,7 +686,7 @@ true true - + Disabled Disabled true @@ -699,7 +700,7 @@ true true - + Disabled Disabled true @@ -713,7 +714,7 @@ true true - + Disabled Disabled true @@ -727,7 +728,7 @@ true true - + Disabled Disabled true @@ -741,7 +742,7 @@ true true - + Disabled Disabled true @@ -755,7 +756,7 @@ true true - + Disabled Disabled true @@ -769,7 +770,7 @@ true true - + Disabled Disabled true @@ -783,7 +784,7 @@ true true - + Disabled Disabled true @@ -797,7 +798,7 @@ true true - + Disabled Disabled true @@ -811,7 +812,7 @@ true true - + Disabled Disabled true @@ -825,7 +826,7 @@ true true - + Disabled Disabled true @@ -839,7 +840,7 @@ true true - + Disabled Disabled true @@ -853,7 +854,7 @@ true true - + Disabled Disabled true @@ -867,8 +868,8 @@ true true - - + + Disabled Disabled true @@ -882,7 +883,7 @@ true true - + Disabled Disabled true @@ -896,7 +897,7 @@ true true - + Disabled Disabled true @@ -910,7 +911,7 @@ true true - + Disabled Disabled true @@ -924,8 +925,8 @@ true true - - + + Disabled Disabled true @@ -939,7 +940,7 @@ true true - + Disabled Disabled true @@ -953,7 +954,7 @@ true true - + Disabled Disabled true @@ -967,7 +968,7 @@ true true - + Disabled Disabled true @@ -981,7 +982,7 @@ true true - + Disabled Disabled true @@ -995,7 +996,7 @@ true true - + Disabled Disabled true @@ -1009,7 +1010,7 @@ true true - + Disabled Disabled true @@ -1023,7 +1024,7 @@ true true - + Disabled Disabled true @@ -1037,8 +1038,8 @@ true true - - + + Disabled Disabled true @@ -1052,7 +1053,7 @@ true true - + Disabled Disabled true @@ -1066,7 +1067,7 @@ true true - + Disabled Disabled true @@ -1080,8 +1081,8 @@ true true - - + + Disabled Disabled true @@ -1095,7 +1096,7 @@ true true - + Disabled Disabled true @@ -1109,7 +1110,7 @@ true true - + Disabled Disabled true @@ -1123,7 +1124,7 @@ true true - + Disabled Disabled true @@ -1137,7 +1138,7 @@ true true - + Disabled Disabled true @@ -1151,7 +1152,7 @@ true true - + Disabled Disabled true @@ -1165,7 +1166,7 @@ true true - + Disabled Disabled true @@ -1179,7 +1180,7 @@ true true - + Disabled Disabled true @@ -1193,7 +1194,7 @@ true true - + Disabled Disabled true @@ -1207,7 +1208,7 @@ true true - + Disabled Disabled true @@ -1221,9 +1222,9 @@ true true - - - + + + Disabled Disabled true @@ -1237,7 +1238,7 @@ true true - + Disabled Disabled true @@ -1251,7 +1252,7 @@ true true - + Disabled Disabled true @@ -1265,8 +1266,8 @@ true true - - + + Disabled Disabled true @@ -1280,7 +1281,7 @@ true true - + Disabled Disabled true @@ -1294,7 +1295,7 @@ true true - + Disabled Disabled true @@ -1308,7 +1309,7 @@ true true - + Disabled Disabled true @@ -1322,7 +1323,7 @@ true true - + Disabled Disabled true @@ -1336,7 +1337,7 @@ true true - + Disabled Disabled true @@ -1350,7 +1351,7 @@ true true - + Disabled Disabled true @@ -1364,7 +1365,7 @@ true true - + Disabled Disabled true @@ -1380,90 +1381,90 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + diff --git a/source/UOX3_Official.vcxproj.filters b/make/VS2017/uox3.vcxproj.filters similarity index 60% rename from source/UOX3_Official.vcxproj.filters rename to make/VS2017/uox3.vcxproj.filters index 480241cd7..022e4f485 100644 --- a/source/UOX3_Official.vcxproj.filters +++ b/make/VS2017/uox3.vcxproj.filters @@ -62,490 +62,490 @@ - + Source Files - + Source Files\Script - + Source Files\Script - + Source Files\Script - + Source Files\Script - + Source Files\Base Objects - + Source Files\Base Objects - + Source Files\Base Objects - + Source Files\Base Objects - + Source Files\Base Objects - + Source Files\Base Objects - + Source Files\Base Objects - + Source Files\Base Objects - + Source Files\Base Objects - + Source Files\Base Objects - + Source Files\Base Objects - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Other - + Source Files\Other - + Source Files\Other - + Source Files\Other - + Source Files\Other - + Source Files\Other - + Source Files\Other - + Source Files\Other - + Source Files\Other - + Source Files\Other - + Source Files\Other - + Source Files\Other - + Source Files\Other - + Source Files\JS Engine - + Source Files\JS Engine - + Source Files\JS Engine - + Source Files\JS Engine - + Source Files\JS Engine - + Source Files\JS Engine - + Source Files\JS Engine - + Source Files\Network - + Source Files\Network - + Source Files\UOData - + Source Files\UOData - + Source Files\Network - + Source Files\Network - + Source Files\Utility - + Source Files\Utility - + Source Files\Utility - + Source Files\Subsystem - + Source Files - + Source Files - + Header Files - + Header Files - + Header Files - + Header Files\Base Objects - + Header Files\Base Objects - + Header Files\Base Objects - + Header Files\Base Objects - + Header Files\Base Objects - + Header Files\Base Objects - + Header Files\Base Objects - + Header Files\Base Objects - + Header Files\Base Objects - + Header Files\Base Objects - + Header Files\Base Objects - + Header Files\Script - + Header Files\Script - + Header Files\Script - + Header Files\Script - + Header Files\Script - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Subsystem - + Header Files\Other - + Header Files\Other - + Header Files\Other - + Header Files\Other - + Header Files\Other - + Header Files\Other - + Header Files\Other - + Header Files\Other - + Header Files\Other - + Header Files\Other - + Header Files\Other - + Header Files\Other - + Header Files\Other - + Header Files\Other - + Header Files\JS Engine - + Header Files\JS Engine - + Header Files\JS Engine - + Header Files\JS Engine - + Header Files\JS Engine - + Header Files\JS Engine - + Header Files\JS Engine - + Header Files\JS Engine - + Header Files\JS Engine - + Header Files\JS Engine - + Header Files\Network - + Header Files\Network - + Header Files\Network - + Header Files - + Header Files\UOData - + Header Files\UOData - + Header Files\Network No. 1 - + Header Files\Network - + Header Files\Utility - + Header Files\Utility - + Header Files\Base Objects - + Header Files\Utility - + Header Files\Subsystem - + Header Files - + Header Files - + Resource Files - + Resource Files diff --git a/make/VS2022/uox3.sln b/make/VS2022/uox3.sln new file mode 100644 index 000000000..7666b71d6 --- /dev/null +++ b/make/VS2022/uox3.sln @@ -0,0 +1,37 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.4.33122.133 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "uox3", "uox3.vcxproj", "{062AE4B6-C989-4919-ADBF-7CD5A2CF30C5}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jscript", "..\..\spidermonkey\make\vs2022\jscript\jscript.vcxproj", "{2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib", "..\..\zlib\make\vs2022\zlib.vcxproj", "{091529FD-5075-45F1-9D96-5708B3AB7C2B}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x64 = Debug|x64 + Release|x64 = Release|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {062AE4B6-C989-4919-ADBF-7CD5A2CF30C5}.Debug|x64.ActiveCfg = Debug|x64 + {062AE4B6-C989-4919-ADBF-7CD5A2CF30C5}.Debug|x64.Build.0 = Debug|x64 + {062AE4B6-C989-4919-ADBF-7CD5A2CF30C5}.Release|x64.ActiveCfg = Release|x64 + {062AE4B6-C989-4919-ADBF-7CD5A2CF30C5}.Release|x64.Build.0 = Release|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Debug|x64.ActiveCfg = Debug|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Debug|x64.Build.0 = Debug|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Release|x64.ActiveCfg = Release|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Release|x64.Build.0 = Release|x64 + {091529FD-5075-45F1-9D96-5708B3AB7C2B}.Debug|x64.ActiveCfg = Debug|x64 + {091529FD-5075-45F1-9D96-5708B3AB7C2B}.Debug|x64.Build.0 = Debug|x64 + {091529FD-5075-45F1-9D96-5708B3AB7C2B}.Release|x64.ActiveCfg = Release|x64 + {091529FD-5075-45F1-9D96-5708B3AB7C2B}.Release|x64.Build.0 = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {CF21F62F-540E-4063-B542-B2421969D2C0} + EndGlobalSection +EndGlobal diff --git a/make/VS2022/uox3.vcxproj b/make/VS2022/uox3.vcxproj new file mode 100644 index 000000000..2e2d14e49 --- /dev/null +++ b/make/VS2022/uox3.vcxproj @@ -0,0 +1,269 @@ + + + + + Debug + x64 + + + Release + x64 + + + + 16.0 + Win32Proj + {062ae4b6-c989-4919-adbf-7cd5a2cf30c5} + uox3 + 10.0 + + + + Application + true + v143 + MultiByte + + + Application + false + v143 + true + MultiByte + + + + + + + + + + + + + + + false + + + + Level3 + true + _DEBUG;_CONSOLE;_CRT_NO_VA_START_VALIDATION;_ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH;EXPORT_JS_API;_CRT_SECURE_NO_WARNINGS;_SILENCE_CXX17_CODECVT_HEADER_DEPRECATION + true + stdcpp17 + stdc11 + + true + /J + ..\..\source;..\..\zlib;..\..\spidermonkey + MultiThreadedDebug + + + Console + true + + + + + Level3 + true + true + true + NDEBUG;_CONSOLE;_CRT_NO_VA_START_VALIDATION;_ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH;EXPORT_JS_API;_CRT_SECURE_NO_WARNINGS;_SILENCE_CXX17_CODECVT_HEADER_DEPRECATION + true + stdcpp17 + stdc11 + + true + /J + ..\..\source;..\..\zlib;..\..\spidermonkey + MultiThreaded + + + Console + false + true + false + UseLinkTimeCodeGeneration + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {2af3a5ea-0cec-4d24-80f7-05e0b8b300c5} + + + {091529fd-5075-45f1-9d96-5708b3ab7c2b} + + + + + + \ No newline at end of file diff --git a/vs2022/uox3.vcxproj.filters b/make/VS2022/uox3.vcxproj.filters similarity index 54% rename from vs2022/uox3.vcxproj.filters rename to make/VS2022/uox3.vcxproj.filters index 80290ca49..ae0e11fa8 100644 --- a/vs2022/uox3.vcxproj.filters +++ b/make/VS2022/uox3.vcxproj.filters @@ -13,537 +13,533 @@ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms - - {274e96e8-de7a-41ad-8594-90bd68f0f353} + + {cd40ad04-825d-48bb-9a86-ff3ee1b2925e} - - {0bfc6dfc-539a-4feb-926a-7dcf248b105a} + + {f1c80722-7193-47b7-8c33-b900a0063ae4} - - {0e099317-e932-45be-996c-fcb43d4d42ab} + + {803b199d-3be5-4df0-a1a3-606c8ee008df} - - {8898a532-b7e0-4f91-8755-27d7100c6c45} + + {9070ad2d-6668-48f5-a867-d62bf7e1c2ce} + + + {5dc0e64e-1161-4bdd-b7a9-08309a58eb14} - {e7c93d8f-387d-4b78-b573-51b5cce671eb} + {e69fb852-15bb-499d-a73e-13f7b97c87b5} - - {701247da-b7de-4859-81f3-42a84d34a445} + + {5fcfac04-c4f0-4c48-804a-8b4f49e615c4} - {3b23bdce-f84c-4264-b241-5c745928b4c0} + {d191cb74-b6ab-4daa-9a7d-23c417c8efa5} - {30d280c4-5fd2-41c6-97ee-f9a8f03fcc63} + {39d50936-dc83-4b6c-b219-2f79d292d75b} - - {0bfee963-d056-4eb6-9f61-8861eb79d979} - - - {1c962ff3-a42a-4894-acc5-898005fb981d} + + {6a0862ae-8f52-4d2e-bac1-51e13e865632} - - {5450e04f-62a4-441f-ba5e-7fad214a483b} + + {9a0e0d95-1028-413d-916f-c79b93d05203} - - {1f38c55b-c2ca-4548-9384-dc297d476d71} + + {d08079d3-ca4f-47c2-834e-b2982e2cc5d2} - - {926f0a88-1049-4700-bded-7ccd6524e438} + + {6120db4f-bb2e-449f-b847-1547b395dee6} - - {da730940-f39f-41b5-96c1-05e690d46584} + + {b53b55e3-1e33-4ebf-a60f-a7e98258942c} - - {309ef513-f9c9-426d-aa44-6e03659b6d44} + + {4e9f44ee-ffe6-4241-9ba9-faa06b8bcd9b} - - {65548359-8d35-4132-98a1-d9e33044a8f7} + + {47123d74-35f3-41ba-b7ee-c4d15af5c6af} - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files\Base Objects - - - Header Files\Base Objects - - - Header Files\Base Objects - - - Header Files\Base Objects - - - Header Files\Base Objects - - - Header Files\Base Objects - - - Header Files\Base Objects - - - Header Files\Base Objects - - - Header Files\Base Objects - - - Header Files\Base Objects - - - Header Files\Base Objects - - - Header Files\Base Objects - - - Header Files\JS Engine - - - Header Files\JS Engine - - - Header Files\JS Engine - - - Header Files\JS Engine - - - Header Files\JS Engine - - - Header Files\JS Engine - - - Header Files\JS Engine - - - Header Files\JS Engine - - - Header Files\JS Engine - - - Header Files\JS Engine - - - Header Files\Network - - - Header Files\Network - - - Header Files\Network - - - Header Files\Network - - - Header Files\Other - - - Header Files\Other - - - Header Files\Other - - - Header Files\Other - - - Header Files\Other - - - Header Files\Other - - - Header Files\Other - - - Header Files\Other - - - Header Files\Other - - - Header Files\Other - - - Header Files\Other - - - Header Files\Other - - - Header Files\Other - - - Header Files\Other - - - Header Files\Script - - - Header Files\Script - - - Header Files\Script - - - Header Files\Script - - - Header Files\Script - - - Header Files\Subsystem - - - Header Files\Subsystem - - - Header Files\Subsystem - - - Header Files\Subsystem - - - Header Files\Subsystem - - - Header Files\Subsystem - - - Header Files\Subsystem - - - Header Files\Subsystem - - - Header Files\Subsystem - - - Header Files\Subsystem - - - Header Files\Subsystem - - - Header Files\Subsystem - - - Header Files\Subsystem - - - Header Files\Subsystem - - - Header Files\Subsystem - - - Header Files\Subsystem - - - Header Files\Subsystem - - - Header Files\UOData - - - Header Files\UOData - - - Header Files\Utility - - - Header Files\Utility - - - Header Files\Utility - - - Header Files\Subsystem - - - Header Files\Subsystem - - - Header Files\Other - - - Header Files\Other - - - Header Files\Other - - - Header Files - - - Header Files - + + Resource Files + - + Source Files - - Source Files\UOData - - - Source Files\UOData - - - Source Files\Utility - - - Source Files\Utility - - - Source Files\Utility - - - Source Files\JS Engine - - - Source Files\JS Engine - - - Source Files\JS Engine - - - Source Files\JS Engine - - - Source Files\JS Engine + + Source Files\Script - - Source Files\JS Engine + + Source Files\Script - - Source Files\JS Engine + + Source Files\Script - - Source Files\Network + + Source Files\Script - - Source Files\Network + + Source Files\Base Objects - - Source Files\Network + + Source Files\Base Objects - - Source Files\Network + + Source Files\Base Objects - - Source Files\Network + + Source Files\Base Objects - + Source Files\Base Objects - + Source Files\Base Objects - + Source Files\Base Objects - + Source Files\Base Objects - + Source Files\Base Objects - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - - Source Files\Other - - - Source Files\Other - - - Source Files\Other - - - Source Files\Other - - - Source Files\Other - - - Source Files\Other - - - Source Files\Other - - - Source Files\Other - - - Source Files\Other - - - Source Files\Other - - - Source Files\Other - - - Source Files\Other - - - Source Files\Other - - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - + Source Files\Subsystem - - Source Files\Subsystem + + Source Files\Other - - Source Files\Script + + Source Files\Other - - Source Files\Script + + Source Files\Other - - Source Files\Script + + Source Files\Other - - Source Files\Script + + Source Files\Other - - Source Files\Base Objects + + Source Files\Other - - Source Files\Base Objects + + Source Files\Other - - Source Files\Base Objects + + Source Files\Other - - Source Files\Base Objects + + Source Files\Other - - Source Files\Base Objects + + Source Files\Other + + + Source Files\Other + + + Source Files\Other + + + Source Files\Other + + + Source Files\JS Engine + + + Source Files\JS Engine + + + Source Files\JS Engine + + + Source Files\JS Engine + + + Source Files\JS Engine + + + Source Files\JS Engine + + + Source Files\JS Engine + + + Source Files\Network + + + Source Files\Network - + + Source Files\UOData + + + Source Files\UOData + + + Source Files\Network + + + Source Files\Network + + + Source Files\Utility + + + Source Files\Utility + + + Source Files\Utility + + Source Files\Subsystem - + Source Files - + + Source Files + + + + Source Files + + Source Files - - Resource Files - + + Header Files + + + Header Files + + + Header Files + + + Header Files\Base Objects + + + Header Files\Base Objects + + + Header Files\Base Objects + + + Header Files\Base Objects + + + Header Files\Base Objects + + + Header Files\Base Objects + + + Header Files\Base Objects + + + Header Files\Base Objects + + + Header Files\Base Objects + + + Header Files\Base Objects + + + Header Files\Base Objects + + + Header Files\Script + + + Header Files\Script + + + Header Files\Script + + + Header Files\Script + + + Header Files\Script + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Subsystem + + + Header Files\Other + + + Header Files\Other + + + Header Files\Other + + + Header Files\Other + + + Header Files\Other + + + Header Files\Other + + + Header Files\Other + + + Header Files\Other + + + Header Files\Other + + + Header Files\Other + + + Header Files\Other + + + Header Files\Other + + + Header Files\Other + + + Header Files\JS Engine + + + Header Files\JS Engine + + + Header Files\JS Engine + + + Header Files\JS Engine + + + Header Files\JS Engine + + + Header Files\JS Engine + + + Header Files\JS Engine + + + Header Files\JS Engine + + + Header Files\JS Engine + + + Header Files\Network + + + Header Files\Network + + + Header Files\Network + + + Header Files + + + Header Files\UOData + + + Header Files\UOData + + + Header Files\Network No. 1 + + + Header Files\Network + + + Header Files\Utility + + + Header Files\Utility + + + Header Files\Base Objects + + + Header Files\Utility + + + Header Files\Subsystem + + + Header Files + + + Header Files + + - + Resource Files diff --git a/make/XCode/uox3.xcodeproj/project.pbxproj b/make/XCode/uox3.xcodeproj/project.pbxproj new file mode 100644 index 000000000..c28b1510b --- /dev/null +++ b/make/XCode/uox3.xcodeproj/project.pbxproj @@ -0,0 +1,857 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 56; + objects = { + +/* Begin PBXBuildFile section */ + 648153CA29466EF400784170 /* libjscript.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 648153C929466EF400784170 /* libjscript.a */; }; + 64A9011A293E3DD4009B54DA /* ai.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A90075293E3DD4009B54DA /* ai.cpp */; }; + 64A9011B293E3DD4009B54DA /* archive.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A90076293E3DD4009B54DA /* archive.cpp */; }; + 64A9011C293E3DD4009B54DA /* boats.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A90077293E3DD4009B54DA /* boats.cpp */; }; + 64A9011D293E3DD4009B54DA /* books.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A90078293E3DD4009B54DA /* books.cpp */; }; + 64A9011E293E3DD4009B54DA /* cAccountClass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A9007A293E3DD4009B54DA /* cAccountClass.cpp */; }; + 64A9011F293E3DD4009B54DA /* calcfuncs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A9007C293E3DD4009B54DA /* calcfuncs.cpp */; }; + 64A90120293E3DD4009B54DA /* cBaseobject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A9007D293E3DD4009B54DA /* cBaseobject.cpp */; }; + 64A90121293E3DD4009B54DA /* cChar.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A9007F293E3DD4009B54DA /* cChar.cpp */; }; + 64A90122293E3DD4009B54DA /* cConsole.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A90081293E3DD4009B54DA /* cConsole.cpp */; }; + 64A90123293E3DD4009B54DA /* cDice.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A90083293E3DD4009B54DA /* cDice.cpp */; }; + 64A90124293E3DD4009B54DA /* cGuild.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A90086293E3DD4009B54DA /* cGuild.cpp */; }; + 64A90125293E3DD4009B54DA /* CGump.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A90088293E3DD4009B54DA /* CGump.cpp */; }; + 64A90126293E3DD4009B54DA /* cHTMLSystem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A9008A293E3DD4009B54DA /* cHTMLSystem.cpp */; }; + 64A90127293E3DD4009B54DA /* cItem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A9008C293E3DD4009B54DA /* cItem.cpp */; }; + 64A90128293E3DD4009B54DA /* CJSEngine.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A9008E293E3DD4009B54DA /* CJSEngine.cpp */; }; + 64A90129293E3DD4009B54DA /* CJSMapping.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A90090293E3DD4009B54DA /* CJSMapping.cpp */; }; + 64A9012A293E3DD4009B54DA /* cmdtable.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A90095293E3DD4009B54DA /* cmdtable.cpp */; }; + 64A9012B293E3DD4009B54DA /* cMultiObj.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A90097293E3DD4009B54DA /* cMultiObj.cpp */; }; + 64A9012C293E3DD4009B54DA /* combat.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A90099293E3DD4009B54DA /* combat.cpp */; }; + 64A9012D293E3DD4009B54DA /* commands.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A9009B293E3DD4009B54DA /* commands.cpp */; }; + 64A9012E293E3DD4009B54DA /* CPacketReceive.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A9009E293E3DD4009B54DA /* CPacketReceive.cpp */; }; + 64A9012F293E3DD4009B54DA /* CPacketSend.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900A0293E3DD4009B54DA /* CPacketSend.cpp */; }; + 64A90130293E3DD4009B54DA /* cPlayerAction.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900A2293E3DD4009B54DA /* cPlayerAction.cpp */; }; + 64A90131293E3DD4009B54DA /* cRaces.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900A3293E3DD4009B54DA /* cRaces.cpp */; }; + 64A90132293E3DD4009B54DA /* CResponse.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900A5293E3DD4009B54DA /* CResponse.cpp */; }; + 64A90133293E3DD4009B54DA /* cScript.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900A7293E3DD4009B54DA /* cScript.cpp */; }; + 64A90134293E3DD4009B54DA /* cServerData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900A9293E3DD4009B54DA /* cServerData.cpp */; }; + 64A90135293E3DD4009B54DA /* cServerDefinitions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900AB293E3DD4009B54DA /* cServerDefinitions.cpp */; }; + 64A90136293E3DD4009B54DA /* cSocket.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900AE293E3DD4009B54DA /* cSocket.cpp */; }; + 64A90137293E3DD4009B54DA /* cSpawnRegion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900B0293E3DD4009B54DA /* cSpawnRegion.cpp */; }; + 64A90138293E3DD4009B54DA /* cThreadQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900B2293E3DD4009B54DA /* cThreadQueue.cpp */; }; + 64A90139293E3DD4009B54DA /* cVersionClass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900B4293E3DD4009B54DA /* cVersionClass.cpp */; }; + 64A9013A293E3DD4009B54DA /* cWeather.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900B6293E3DD4009B54DA /* cWeather.cpp */; }; + 64A9013B293E3DD4009B54DA /* Dictionary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900B8293E3DD4009B54DA /* Dictionary.cpp */; }; + 64A9013C293E3DD4009B54DA /* dist.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900BA293E3DD4009B54DA /* dist.cpp */; }; + 64A9013D293E3DD4009B54DA /* effect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900BB293E3DD4009B54DA /* effect.cpp */; }; + 64A9013E293E3DD4009B54DA /* EventTimer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900BD293E3DD4009B54DA /* EventTimer.cpp */; }; + 64A9013F293E3DD4009B54DA /* fileio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900BF293E3DD4009B54DA /* fileio.cpp */; }; + 64A90140293E3DD4009B54DA /* findfuncs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900C0293E3DD4009B54DA /* findfuncs.cpp */; }; + 64A90141293E3DD4009B54DA /* gumps.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900C4293E3DD4009B54DA /* gumps.cpp */; }; + 64A90142293E3DD4009B54DA /* house.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900C5293E3DD4009B54DA /* house.cpp */; }; + 64A90143293E3DD4009B54DA /* IP4Address.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900C6293E3DD4009B54DA /* IP4Address.cpp */; }; + 64A90144293E3DD4009B54DA /* items.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900C8293E3DD4009B54DA /* items.cpp */; }; + 64A90145293E3DD4009B54DA /* jail.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900C9293E3DD4009B54DA /* jail.cpp */; }; + 64A90146293E3DD4009B54DA /* JSEncapsulate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900CB293E3DD4009B54DA /* JSEncapsulate.cpp */; }; + 64A90147293E3DD4009B54DA /* lineofsight.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900CD293E3DD4009B54DA /* lineofsight.cpp */; }; + 64A90148293E3DD4009B54DA /* magic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900CE293E3DD4009B54DA /* magic.cpp */; }; + 64A9014A293E3DD4009B54DA /* mapstuff.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900D2293E3DD4009B54DA /* mapstuff.cpp */; }; + 64A9014B293E3DD4009B54DA /* movement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900D4293E3DD4009B54DA /* movement.cpp */; }; + 64A9014C293E3DD4009B54DA /* msgboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900D6293E3DD4009B54DA /* msgboard.cpp */; }; + 64A9014D293E3DD4009B54DA /* MultiMul.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900D8293E3DD4009B54DA /* MultiMul.cpp */; }; + 64A9014E293E3DD4009B54DA /* network.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900DA293E3DD4009B54DA /* network.cpp */; }; + 64A9014F293E3DD4009B54DA /* npcs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900DC293E3DD4009B54DA /* npcs.cpp */; }; + 64A90150293E3DD4009B54DA /* ObjectFactory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900DD293E3DD4009B54DA /* ObjectFactory.cpp */; }; + 64A90151293E3DD4009B54DA /* osunique.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900DF293E3DD4009B54DA /* osunique.cpp */; }; + 64A90152293E3DD4009B54DA /* PartySystem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900E2293E3DD4009B54DA /* PartySystem.cpp */; }; + 64A90153293E3DD4009B54DA /* pcmanage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900E4293E3DD4009B54DA /* pcmanage.cpp */; }; + 64A90154293E3DD4009B54DA /* quantityfuncs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900E7293E3DD4009B54DA /* quantityfuncs.cpp */; }; + 64A90155293E3DD4009B54DA /* queue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900E8293E3DD4009B54DA /* queue.cpp */; }; + 64A90156293E3DD4009B54DA /* regions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900E9293E3DD4009B54DA /* regions.cpp */; }; + 64A90157293E3DD4009B54DA /* scriptc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900EC293E3DD4009B54DA /* scriptc.cpp */; }; + 64A90158293E3DD4009B54DA /* SEFunctions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900EE293E3DD4009B54DA /* SEFunctions.cpp */; }; + 64A90159293E3DD4009B54DA /* skills.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900F0293E3DD4009B54DA /* skills.cpp */; }; + 64A9015A293E3DD4009B54DA /* sound.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900F2293E3DD4009B54DA /* sound.cpp */; }; + 64A9015B293E3DD4009B54DA /* speech.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900F3293E3DD4009B54DA /* speech.cpp */; }; + 64A9015C293E3DD4009B54DA /* ssection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900F5293E3DD4009B54DA /* ssection.cpp */; }; + 64A9015D293E3DD4009B54DA /* StringUtility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900F7293E3DD4009B54DA /* StringUtility.cpp */; }; + 64A9015E293E3DD4009B54DA /* targeting.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900F9293E3DD4009B54DA /* targeting.cpp */; }; + 64A9015F293E3DD4009B54DA /* TimeUtility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900FB293E3DD4009B54DA /* TimeUtility.cpp */; }; + 64A90160293E3DD4009B54DA /* townregion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900FD293E3DD4009B54DA /* townregion.cpp */; }; + 64A90161293E3DD4009B54DA /* trade.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A900FF293E3DD4009B54DA /* trade.cpp */; }; + 64A90162293E3DD4009B54DA /* UOPData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A90101293E3DD4009B54DA /* UOPData.cpp */; }; + 64A90163293E3DD4009B54DA /* uox3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A90103293E3DD4009B54DA /* uox3.cpp */; }; + 64A90164293E3DD4009B54DA /* UOXJSMethods.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A9010B293E3DD4009B54DA /* UOXJSMethods.cpp */; }; + 64A90165293E3DD4009B54DA /* UOXJSPropertyFuncs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A9010E293E3DD4009B54DA /* UOXJSPropertyFuncs.cpp */; }; + 64A90166293E3DD4009B54DA /* vendor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A90113293E3DD4009B54DA /* vendor.cpp */; }; + 64A90167293E3DD4009B54DA /* weight.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A90114293E3DD4009B54DA /* weight.cpp */; }; + 64A90168293E3DD4009B54DA /* wholist.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A90116293E3DD4009B54DA /* wholist.cpp */; }; + 64A90169293E3DD4009B54DA /* worldmain.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 64A90118293E3DD4009B54DA /* worldmain.cpp */; }; + 64A9016F293E3EFD009B54DA /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 64A9016E293E3EF5009B54DA /* libz.tbd */; }; +/* End PBXBuildFile section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 64A90068293E3DA3009B54DA /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = /usr/share/man/man1/; + dstSubfolderSpec = 0; + files = ( + ); + runOnlyForDeploymentPostprocessing = 1; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 648153C929466EF400784170 /* libjscript.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = libjscript.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 64A9006A293E3DA3009B54DA /* uox3 */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = uox3; sourceTree = BUILT_PRODUCTS_DIR; }; + 64A90075293E3DD4009B54DA /* ai.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ai.cpp; sourceTree = ""; }; + 64A90076293E3DD4009B54DA /* archive.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = archive.cpp; sourceTree = ""; }; + 64A90077293E3DD4009B54DA /* boats.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = boats.cpp; sourceTree = ""; }; + 64A90078293E3DD4009B54DA /* books.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = books.cpp; sourceTree = ""; }; + 64A90079293E3DD4009B54DA /* books.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = books.h; sourceTree = ""; }; + 64A9007A293E3DD4009B54DA /* cAccountClass.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cAccountClass.cpp; sourceTree = ""; }; + 64A9007B293E3DD4009B54DA /* cAccountClass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cAccountClass.h; sourceTree = ""; }; + 64A9007C293E3DD4009B54DA /* calcfuncs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = calcfuncs.cpp; sourceTree = ""; }; + 64A9007D293E3DD4009B54DA /* cBaseobject.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cBaseobject.cpp; sourceTree = ""; }; + 64A9007E293E3DD4009B54DA /* cBaseObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cBaseObject.h; sourceTree = ""; }; + 64A9007F293E3DD4009B54DA /* cChar.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cChar.cpp; sourceTree = ""; }; + 64A90080293E3DD4009B54DA /* cChar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cChar.h; sourceTree = ""; }; + 64A90081293E3DD4009B54DA /* cConsole.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cConsole.cpp; sourceTree = ""; }; + 64A90082293E3DD4009B54DA /* cConsole.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cConsole.h; sourceTree = ""; }; + 64A90083293E3DD4009B54DA /* cDice.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cDice.cpp; sourceTree = ""; }; + 64A90084293E3DD4009B54DA /* cdice.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cdice.h; sourceTree = ""; }; + 64A90085293E3DD4009B54DA /* cEffects.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cEffects.h; sourceTree = ""; }; + 64A90086293E3DD4009B54DA /* cGuild.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cGuild.cpp; sourceTree = ""; }; + 64A90087293E3DD4009B54DA /* cGuild.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cGuild.h; sourceTree = ""; }; + 64A90088293E3DD4009B54DA /* CGump.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CGump.cpp; sourceTree = ""; }; + 64A90089293E3DD4009B54DA /* Changelog.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Changelog.txt; sourceTree = ""; }; + 64A9008A293E3DD4009B54DA /* cHTMLSystem.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cHTMLSystem.cpp; sourceTree = ""; }; + 64A9008B293E3DD4009B54DA /* cHTMLSystem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cHTMLSystem.h; sourceTree = ""; }; + 64A9008C293E3DD4009B54DA /* cItem.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cItem.cpp; sourceTree = ""; }; + 64A9008D293E3DD4009B54DA /* cItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cItem.h; sourceTree = ""; }; + 64A9008E293E3DD4009B54DA /* CJSEngine.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CJSEngine.cpp; sourceTree = ""; }; + 64A9008F293E3DD4009B54DA /* CJSEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CJSEngine.h; sourceTree = ""; }; + 64A90090293E3DD4009B54DA /* CJSMapping.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CJSMapping.cpp; sourceTree = ""; }; + 64A90091293E3DD4009B54DA /* CJSMapping.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CJSMapping.h; sourceTree = ""; }; + 64A90092293E3DD4009B54DA /* classes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = classes.h; sourceTree = ""; }; + 64A90093293E3DD4009B54DA /* cMagic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cMagic.h; sourceTree = ""; }; + 64A90095293E3DD4009B54DA /* cmdtable.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cmdtable.cpp; sourceTree = ""; }; + 64A90096293E3DD4009B54DA /* cmdtable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cmdtable.h; sourceTree = ""; }; + 64A90097293E3DD4009B54DA /* cMultiObj.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cMultiObj.cpp; sourceTree = ""; }; + 64A90098293E3DD4009B54DA /* cMultiObj.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cMultiObj.h; sourceTree = ""; }; + 64A90099293E3DD4009B54DA /* combat.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = combat.cpp; sourceTree = ""; }; + 64A9009A293E3DD4009B54DA /* combat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = combat.h; sourceTree = ""; }; + 64A9009B293E3DD4009B54DA /* commands.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = commands.cpp; sourceTree = ""; }; + 64A9009C293E3DD4009B54DA /* commands.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = commands.h; sourceTree = ""; }; + 64A9009D293E3DD4009B54DA /* ConfigOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConfigOS.h; sourceTree = ""; }; + 64A9009E293E3DD4009B54DA /* CPacketReceive.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CPacketReceive.cpp; sourceTree = ""; }; + 64A9009F293E3DD4009B54DA /* CPacketReceive.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CPacketReceive.h; sourceTree = ""; }; + 64A900A0293E3DD4009B54DA /* CPacketSend.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CPacketSend.cpp; sourceTree = ""; }; + 64A900A1293E3DD4009B54DA /* CPacketSend.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CPacketSend.h; sourceTree = ""; }; + 64A900A2293E3DD4009B54DA /* cPlayerAction.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cPlayerAction.cpp; sourceTree = ""; }; + 64A900A3293E3DD4009B54DA /* cRaces.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cRaces.cpp; sourceTree = ""; }; + 64A900A4293E3DD4009B54DA /* cRaces.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cRaces.h; sourceTree = ""; }; + 64A900A5293E3DD4009B54DA /* CResponse.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CResponse.cpp; sourceTree = ""; }; + 64A900A6293E3DD4009B54DA /* CResponse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CResponse.h; sourceTree = ""; }; + 64A900A7293E3DD4009B54DA /* cScript.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cScript.cpp; sourceTree = ""; }; + 64A900A8293E3DD4009B54DA /* cScript.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cScript.h; sourceTree = ""; }; + 64A900A9293E3DD4009B54DA /* cServerData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cServerData.cpp; sourceTree = ""; }; + 64A900AA293E3DD4009B54DA /* cServerData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cServerData.h; sourceTree = ""; }; + 64A900AB293E3DD4009B54DA /* cServerDefinitions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cServerDefinitions.cpp; sourceTree = ""; }; + 64A900AC293E3DD4009B54DA /* cServerDefinitions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cServerDefinitions.h; sourceTree = ""; }; + 64A900AD293E3DD4009B54DA /* cSkillClass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cSkillClass.h; sourceTree = ""; }; + 64A900AE293E3DD4009B54DA /* cSocket.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cSocket.cpp; sourceTree = ""; }; + 64A900AF293E3DD4009B54DA /* cSocket.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cSocket.h; sourceTree = ""; }; + 64A900B0293E3DD4009B54DA /* cSpawnRegion.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cSpawnRegion.cpp; sourceTree = ""; }; + 64A900B1293E3DD4009B54DA /* cSpawnRegion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cSpawnRegion.h; sourceTree = ""; }; + 64A900B2293E3DD4009B54DA /* cThreadQueue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cThreadQueue.cpp; sourceTree = ""; }; + 64A900B3293E3DD4009B54DA /* cThreadQueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cThreadQueue.h; sourceTree = ""; }; + 64A900B4293E3DD4009B54DA /* cVersionClass.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cVersionClass.cpp; sourceTree = ""; }; + 64A900B5293E3DD4009B54DA /* cVersionClass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cVersionClass.h; sourceTree = ""; }; + 64A900B6293E3DD4009B54DA /* cWeather.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cWeather.cpp; sourceTree = ""; }; + 64A900B7293E3DD4009B54DA /* cWeather.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = cWeather.hpp; sourceTree = ""; }; + 64A900B8293E3DD4009B54DA /* Dictionary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Dictionary.cpp; sourceTree = ""; }; + 64A900B9293E3DD4009B54DA /* Dictionary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Dictionary.h; sourceTree = ""; }; + 64A900BA293E3DD4009B54DA /* dist.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = dist.cpp; sourceTree = ""; }; + 64A900BB293E3DD4009B54DA /* effect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = effect.cpp; sourceTree = ""; }; + 64A900BC293E3DD4009B54DA /* enums.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = enums.h; sourceTree = ""; }; + 64A900BD293E3DD4009B54DA /* EventTimer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = EventTimer.cpp; sourceTree = ""; }; + 64A900BE293E3DD4009B54DA /* EventTimer.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = EventTimer.hpp; sourceTree = ""; }; + 64A900BF293E3DD4009B54DA /* fileio.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = fileio.cpp; sourceTree = ""; }; + 64A900C0293E3DD4009B54DA /* findfuncs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = findfuncs.cpp; sourceTree = ""; }; + 64A900C1293E3DD4009B54DA /* funcdecl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = funcdecl.h; sourceTree = ""; }; + 64A900C2293E3DD4009B54DA /* GenericList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GenericList.h; sourceTree = ""; }; + 64A900C3293E3DD4009B54DA /* gump.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = gump.h; sourceTree = ""; }; + 64A900C4293E3DD4009B54DA /* gumps.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = gumps.cpp; sourceTree = ""; }; + 64A900C5293E3DD4009B54DA /* house.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = house.cpp; sourceTree = ""; }; + 64A900C6293E3DD4009B54DA /* IP4Address.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = IP4Address.cpp; sourceTree = ""; }; + 64A900C7293E3DD4009B54DA /* IP4Address.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = IP4Address.hpp; sourceTree = ""; }; + 64A900C8293E3DD4009B54DA /* items.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = items.cpp; sourceTree = ""; }; + 64A900C9293E3DD4009B54DA /* jail.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = jail.cpp; sourceTree = ""; }; + 64A900CA293E3DD4009B54DA /* jail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jail.h; sourceTree = ""; }; + 64A900CB293E3DD4009B54DA /* JSEncapsulate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSEncapsulate.cpp; sourceTree = ""; }; + 64A900CC293E3DD4009B54DA /* JSEncapsulate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSEncapsulate.h; sourceTree = ""; }; + 64A900CD293E3DD4009B54DA /* lineofsight.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = lineofsight.cpp; sourceTree = ""; }; + 64A900CE293E3DD4009B54DA /* magic.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = magic.cpp; sourceTree = ""; }; + 64A900CF293E3DD4009B54DA /* magic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = magic.h; sourceTree = ""; }; + 64A900D1293E3DD4009B54DA /* mapclasses.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mapclasses.h; sourceTree = ""; }; + 64A900D2293E3DD4009B54DA /* mapstuff.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = mapstuff.cpp; sourceTree = ""; }; + 64A900D3293E3DD4009B54DA /* mapstuff.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mapstuff.h; sourceTree = ""; }; + 64A900D4293E3DD4009B54DA /* movement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = movement.cpp; sourceTree = ""; }; + 64A900D5293E3DD4009B54DA /* movement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = movement.h; sourceTree = ""; }; + 64A900D6293E3DD4009B54DA /* msgboard.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = msgboard.cpp; sourceTree = ""; }; + 64A900D7293E3DD4009B54DA /* msgboard.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = msgboard.h; sourceTree = ""; }; + 64A900D8293E3DD4009B54DA /* MultiMul.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MultiMul.cpp; sourceTree = ""; }; + 64A900D9293E3DD4009B54DA /* MultiMul.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = MultiMul.hpp; sourceTree = ""; }; + 64A900DA293E3DD4009B54DA /* network.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = network.cpp; sourceTree = ""; }; + 64A900DB293E3DD4009B54DA /* network.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = network.h; sourceTree = ""; }; + 64A900DC293E3DD4009B54DA /* npcs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = npcs.cpp; sourceTree = ""; }; + 64A900DD293E3DD4009B54DA /* ObjectFactory.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ObjectFactory.cpp; sourceTree = ""; }; + 64A900DE293E3DD4009B54DA /* ObjectFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ObjectFactory.h; sourceTree = ""; }; + 64A900DF293E3DD4009B54DA /* osunique.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = osunique.cpp; sourceTree = ""; }; + 64A900E0293E3DD4009B54DA /* osunique.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = osunique.hpp; sourceTree = ""; }; + 64A900E1293E3DD4009B54DA /* PageVector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PageVector.h; sourceTree = ""; }; + 64A900E2293E3DD4009B54DA /* PartySystem.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PartySystem.cpp; sourceTree = ""; }; + 64A900E3293E3DD4009B54DA /* PartySystem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PartySystem.h; sourceTree = ""; }; + 64A900E4293E3DD4009B54DA /* pcmanage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = pcmanage.cpp; sourceTree = ""; }; + 64A900E5293E3DD4009B54DA /* power.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = power.h; sourceTree = ""; }; + 64A900E6293E3DD4009B54DA /* Prerequisites.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Prerequisites.h; sourceTree = ""; }; + 64A900E7293E3DD4009B54DA /* quantityfuncs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = quantityfuncs.cpp; sourceTree = ""; }; + 64A900E8293E3DD4009B54DA /* queue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = queue.cpp; sourceTree = ""; }; + 64A900E9293E3DD4009B54DA /* regions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = regions.cpp; sourceTree = ""; }; + 64A900EA293E3DD4009B54DA /* regions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = regions.h; sourceTree = ""; }; + 64A900EC293E3DD4009B54DA /* scriptc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = scriptc.cpp; sourceTree = ""; }; + 64A900ED293E3DD4009B54DA /* scriptc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptc.h; sourceTree = ""; }; + 64A900EE293E3DD4009B54DA /* SEFunctions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SEFunctions.cpp; sourceTree = ""; }; + 64A900EF293E3DD4009B54DA /* SEFunctions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SEFunctions.h; sourceTree = ""; }; + 64A900F0293E3DD4009B54DA /* skills.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = skills.cpp; sourceTree = ""; }; + 64A900F1293E3DD4009B54DA /* skills.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = skills.h; sourceTree = ""; }; + 64A900F2293E3DD4009B54DA /* sound.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sound.cpp; sourceTree = ""; }; + 64A900F3293E3DD4009B54DA /* speech.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = speech.cpp; sourceTree = ""; }; + 64A900F4293E3DD4009B54DA /* speech.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = speech.h; sourceTree = ""; }; + 64A900F5293E3DD4009B54DA /* ssection.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ssection.cpp; sourceTree = ""; }; + 64A900F6293E3DD4009B54DA /* ssection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ssection.h; sourceTree = ""; }; + 64A900F7293E3DD4009B54DA /* StringUtility.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StringUtility.cpp; sourceTree = ""; }; + 64A900F8293E3DD4009B54DA /* StringUtility.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = StringUtility.hpp; sourceTree = ""; }; + 64A900F9293E3DD4009B54DA /* targeting.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = targeting.cpp; sourceTree = ""; }; + 64A900FA293E3DD4009B54DA /* teffect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = teffect.h; sourceTree = ""; }; + 64A900FB293E3DD4009B54DA /* TimeUtility.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TimeUtility.cpp; sourceTree = ""; }; + 64A900FC293E3DD4009B54DA /* TimeUtility.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = TimeUtility.hpp; sourceTree = ""; }; + 64A900FD293E3DD4009B54DA /* townregion.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = townregion.cpp; sourceTree = ""; }; + 64A900FE293E3DD4009B54DA /* townregion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = townregion.h; sourceTree = ""; }; + 64A900FF293E3DD4009B54DA /* trade.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = trade.cpp; sourceTree = ""; }; + 64A90100293E3DD4009B54DA /* typedefs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = typedefs.h; sourceTree = ""; }; + 64A90101293E3DD4009B54DA /* UOPData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UOPData.cpp; sourceTree = ""; }; + 64A90102293E3DD4009B54DA /* UOPData.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = UOPData.hpp; sourceTree = ""; }; + 64A90103293E3DD4009B54DA /* uox3.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = uox3.cpp; sourceTree = ""; }; + 64A90104293E3DD4009B54DA /* uox3.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = uox3.h; sourceTree = ""; }; + 64A9010A293E3DD4009B54DA /* UOXJSClasses.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UOXJSClasses.h; sourceTree = ""; }; + 64A9010B293E3DD4009B54DA /* UOXJSMethods.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UOXJSMethods.cpp; sourceTree = ""; }; + 64A9010C293E3DD4009B54DA /* UOXJSMethods.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UOXJSMethods.h; sourceTree = ""; }; + 64A9010D293E3DD4009B54DA /* UOXJSPropertyEnums.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UOXJSPropertyEnums.h; sourceTree = ""; }; + 64A9010E293E3DD4009B54DA /* UOXJSPropertyFuncs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UOXJSPropertyFuncs.cpp; sourceTree = ""; }; + 64A9010F293E3DD4009B54DA /* UOXJSPropertyFuncs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UOXJSPropertyFuncs.h; sourceTree = ""; }; + 64A90110293E3DD4009B54DA /* UOXJSPropertySpecs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UOXJSPropertySpecs.h; sourceTree = ""; }; + 64A90111293E3DD4009B54DA /* UOXStdHeaders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UOXStdHeaders.h; sourceTree = ""; }; + 64A90112293E3DD4009B54DA /* uoxstruct.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = uoxstruct.h; sourceTree = ""; }; + 64A90113293E3DD4009B54DA /* vendor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = vendor.cpp; sourceTree = ""; }; + 64A90114293E3DD4009B54DA /* weight.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = weight.cpp; sourceTree = ""; }; + 64A90115293E3DD4009B54DA /* weight.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = weight.h; sourceTree = ""; }; + 64A90116293E3DD4009B54DA /* wholist.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = wholist.cpp; sourceTree = ""; }; + 64A90117293E3DD4009B54DA /* wholist.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = wholist.h; sourceTree = ""; }; + 64A90118293E3DD4009B54DA /* worldmain.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = worldmain.cpp; sourceTree = ""; }; + 64A90119293E3DD4009B54DA /* worldmain.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = worldmain.h; sourceTree = ""; }; + 64A9016E293E3EF5009B54DA /* libz.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 64A90067293E3DA3009B54DA /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 64A9016F293E3EFD009B54DA /* libz.tbd in Frameworks */, + 648153CA29466EF400784170 /* libjscript.a in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 64A90061293E3DA3009B54DA = { + isa = PBXGroup; + children = ( + 64A90074293E3DD4009B54DA /* source */, + 64A9006B293E3DA3009B54DA /* Products */, + 64A9016B293E3EED009B54DA /* Frameworks */, + ); + sourceTree = ""; + }; + 64A9006B293E3DA3009B54DA /* Products */ = { + isa = PBXGroup; + children = ( + 64A9006A293E3DA3009B54DA /* uox3 */, + ); + name = Products; + sourceTree = ""; + }; + 64A90074293E3DD4009B54DA /* source */ = { + isa = PBXGroup; + children = ( + 64E2F798293FD53200546A08 /* Leftover */, + 64E2F791293FCE4800546A08 /* Subsystem */, + 64E2F797293FCE8C00546A08 /* Utility */, + 64E2F796293FCE8400546A08 /* UOData */, + 64E2F795293FCE7500546A08 /* Script */, + 64E2F792293FCE5900546A08 /* Other */, + 64E2F794293FCE6C00546A08 /* Network */, + 64E2F793293FCE6200546A08 /* JS Engine */, + 64E2F790293FCE3800546A08 /* Base Objects */, + 64A90089293E3DD4009B54DA /* Changelog.txt */, + 64A90103293E3DD4009B54DA /* uox3.cpp */, + 64A90104293E3DD4009B54DA /* uox3.h */, + ); + name = source; + path = ../../source; + sourceTree = ""; + }; + 64A9016B293E3EED009B54DA /* Frameworks */ = { + isa = PBXGroup; + children = ( + 648153C929466EF400784170 /* libjscript.a */, + 64A9016E293E3EF5009B54DA /* libz.tbd */, + ); + name = Frameworks; + sourceTree = ""; + }; + 64E2F790293FCE3800546A08 /* Base Objects */ = { + isa = PBXGroup; + children = ( + 64A90112293E3DD4009B54DA /* uoxstruct.h */, + 64A900E1293E3DD4009B54DA /* PageVector.h */, + 64A900C1293E3DD4009B54DA /* funcdecl.h */, + 64A900DD293E3DD4009B54DA /* ObjectFactory.cpp */, + 64A900DE293E3DD4009B54DA /* ObjectFactory.h */, + 64A9007D293E3DD4009B54DA /* cBaseobject.cpp */, + 64A9007E293E3DD4009B54DA /* cBaseObject.h */, + 64A90081293E3DD4009B54DA /* cConsole.cpp */, + 64A90082293E3DD4009B54DA /* cConsole.h */, + 64A90086293E3DD4009B54DA /* cGuild.cpp */, + 64A90087293E3DD4009B54DA /* cGuild.h */, + 64A9008C293E3DD4009B54DA /* cItem.cpp */, + 64A9008D293E3DD4009B54DA /* cItem.h */, + 64A90097293E3DD4009B54DA /* cMultiObj.cpp */, + 64A90098293E3DD4009B54DA /* cMultiObj.h */, + 64A900AE293E3DD4009B54DA /* cSocket.cpp */, + 64A900AF293E3DD4009B54DA /* cSocket.h */, + 64A900B0293E3DD4009B54DA /* cSpawnRegion.cpp */, + 64A900B1293E3DD4009B54DA /* cSpawnRegion.h */, + 64A900B2293E3DD4009B54DA /* cThreadQueue.cpp */, + 64A900B3293E3DD4009B54DA /* cThreadQueue.h */, + 64A900E8293E3DD4009B54DA /* queue.cpp */, + ); + name = "Base Objects"; + sourceTree = ""; + }; + 64E2F791293FCE4800546A08 /* Subsystem */ = { + isa = PBXGroup; + children = ( + 64A900FA293E3DD4009B54DA /* teffect.h */, + 64A900E7293E3DD4009B54DA /* quantityfuncs.cpp */, + 64A900CA293E3DD4009B54DA /* jail.h */, + 64A900C3293E3DD4009B54DA /* gump.h */, + 64A90093293E3DD4009B54DA /* cMagic.h */, + 64A90085293E3DD4009B54DA /* cEffects.h */, + 64A90077293E3DD4009B54DA /* boats.cpp */, + 64A90078293E3DD4009B54DA /* books.cpp */, + 64A90079293E3DD4009B54DA /* books.h */, + 64A9007A293E3DD4009B54DA /* cAccountClass.cpp */, + 64A9007B293E3DD4009B54DA /* cAccountClass.h */, + 64A9007F293E3DD4009B54DA /* cChar.cpp */, + 64A90080293E3DD4009B54DA /* cChar.h */, + 64A90088293E3DD4009B54DA /* CGump.cpp */, + 64A9008A293E3DD4009B54DA /* cHTMLSystem.cpp */, + 64A9008B293E3DD4009B54DA /* cHTMLSystem.h */, + 64A90095293E3DD4009B54DA /* cmdtable.cpp */, + 64A90096293E3DD4009B54DA /* cmdtable.h */, + 64A90099293E3DD4009B54DA /* combat.cpp */, + 64A9009A293E3DD4009B54DA /* combat.h */, + 64A9009B293E3DD4009B54DA /* commands.cpp */, + 64A9009C293E3DD4009B54DA /* commands.h */, + 64A900A3293E3DD4009B54DA /* cRaces.cpp */, + 64A900A4293E3DD4009B54DA /* cRaces.h */, + 64A900A9293E3DD4009B54DA /* cServerData.cpp */, + 64A900AA293E3DD4009B54DA /* cServerData.h */, + 64A900B6293E3DD4009B54DA /* cWeather.cpp */, + 64A900B7293E3DD4009B54DA /* cWeather.hpp */, + 64A900C4293E3DD4009B54DA /* gumps.cpp */, + 64A900C5293E3DD4009B54DA /* house.cpp */, + 64A900C8293E3DD4009B54DA /* items.cpp */, + 64A900C9293E3DD4009B54DA /* jail.cpp */, + 64A900CD293E3DD4009B54DA /* lineofsight.cpp */, + 64A900CE293E3DD4009B54DA /* magic.cpp */, + 64A900CF293E3DD4009B54DA /* magic.h */, + 64A900D2293E3DD4009B54DA /* mapstuff.cpp */, + 64A900D3293E3DD4009B54DA /* mapstuff.h */, + 64A900D4293E3DD4009B54DA /* movement.cpp */, + 64A900D5293E3DD4009B54DA /* movement.h */, + 64A900D6293E3DD4009B54DA /* msgboard.cpp */, + 64A900D7293E3DD4009B54DA /* msgboard.h */, + 64A900E2293E3DD4009B54DA /* PartySystem.cpp */, + 64A900E3293E3DD4009B54DA /* PartySystem.h */, + 64A900E9293E3DD4009B54DA /* regions.cpp */, + 64A900EA293E3DD4009B54DA /* regions.h */, + 64A900F0293E3DD4009B54DA /* skills.cpp */, + 64A900F1293E3DD4009B54DA /* skills.h */, + 64A900F2293E3DD4009B54DA /* sound.cpp */, + 64A900F3293E3DD4009B54DA /* speech.cpp */, + 64A900F4293E3DD4009B54DA /* speech.h */, + 64A900F9293E3DD4009B54DA /* targeting.cpp */, + 64A900FF293E3DD4009B54DA /* trade.cpp */, + 64A90113293E3DD4009B54DA /* vendor.cpp */, + 64A90114293E3DD4009B54DA /* weight.cpp */, + 64A90115293E3DD4009B54DA /* weight.h */, + 64A90116293E3DD4009B54DA /* wholist.cpp */, + 64A90117293E3DD4009B54DA /* wholist.h */, + 64A90118293E3DD4009B54DA /* worldmain.cpp */, + 64A90119293E3DD4009B54DA /* worldmain.h */, + ); + name = Subsystem; + sourceTree = ""; + }; + 64E2F792293FCE5900546A08 /* Other */ = { + isa = PBXGroup; + children = ( + 64A90100293E3DD4009B54DA /* typedefs.h */, + 64A900E5293E3DD4009B54DA /* power.h */, + 64A900D1293E3DD4009B54DA /* mapclasses.h */, + 64A900BC293E3DD4009B54DA /* enums.h */, + 64A900AD293E3DD4009B54DA /* cSkillClass.h */, + 64A90092293E3DD4009B54DA /* classes.h */, + 64A90075293E3DD4009B54DA /* ai.cpp */, + 64A90076293E3DD4009B54DA /* archive.cpp */, + 64A9007C293E3DD4009B54DA /* calcfuncs.cpp */, + 64A90083293E3DD4009B54DA /* cDice.cpp */, + 64A90084293E3DD4009B54DA /* cdice.h */, + 64A900A2293E3DD4009B54DA /* cPlayerAction.cpp */, + 64A900A5293E3DD4009B54DA /* CResponse.cpp */, + 64A900A6293E3DD4009B54DA /* CResponse.h */, + 64A900B4293E3DD4009B54DA /* cVersionClass.cpp */, + 64A900B5293E3DD4009B54DA /* cVersionClass.h */, + 64A900BA293E3DD4009B54DA /* dist.cpp */, + 64A900BB293E3DD4009B54DA /* effect.cpp */, + 64A900BF293E3DD4009B54DA /* fileio.cpp */, + 64A900C0293E3DD4009B54DA /* findfuncs.cpp */, + 64A900DC293E3DD4009B54DA /* npcs.cpp */, + 64A900E4293E3DD4009B54DA /* pcmanage.cpp */, + ); + name = Other; + sourceTree = ""; + }; + 64E2F793293FCE6200546A08 /* JS Engine */ = { + isa = PBXGroup; + children = ( + 64A9008E293E3DD4009B54DA /* CJSEngine.cpp */, + 64A9008F293E3DD4009B54DA /* CJSEngine.h */, + 64A90090293E3DD4009B54DA /* CJSMapping.cpp */, + 64A90091293E3DD4009B54DA /* CJSMapping.h */, + 64A900A7293E3DD4009B54DA /* cScript.cpp */, + 64A900A8293E3DD4009B54DA /* cScript.h */, + 64A900CB293E3DD4009B54DA /* JSEncapsulate.cpp */, + 64A900CC293E3DD4009B54DA /* JSEncapsulate.h */, + 64A900EE293E3DD4009B54DA /* SEFunctions.cpp */, + 64A900EF293E3DD4009B54DA /* SEFunctions.h */, + 64A9010A293E3DD4009B54DA /* UOXJSClasses.h */, + 64A9010B293E3DD4009B54DA /* UOXJSMethods.cpp */, + 64A9010C293E3DD4009B54DA /* UOXJSMethods.h */, + 64A9010D293E3DD4009B54DA /* UOXJSPropertyEnums.h */, + 64A9010E293E3DD4009B54DA /* UOXJSPropertyFuncs.cpp */, + 64A9010F293E3DD4009B54DA /* UOXJSPropertyFuncs.h */, + 64A90110293E3DD4009B54DA /* UOXJSPropertySpecs.h */, + ); + name = "JS Engine"; + sourceTree = ""; + }; + 64E2F794293FCE6C00546A08 /* Network */ = { + isa = PBXGroup; + children = ( + 64A9009E293E3DD4009B54DA /* CPacketReceive.cpp */, + 64A9009F293E3DD4009B54DA /* CPacketReceive.h */, + 64A900A0293E3DD4009B54DA /* CPacketSend.cpp */, + 64A900A1293E3DD4009B54DA /* CPacketSend.h */, + 64A900C6293E3DD4009B54DA /* IP4Address.cpp */, + 64A900C7293E3DD4009B54DA /* IP4Address.hpp */, + 64A900DA293E3DD4009B54DA /* network.cpp */, + 64A900DB293E3DD4009B54DA /* network.h */, + ); + name = Network; + sourceTree = ""; + }; + 64E2F795293FCE7500546A08 /* Script */ = { + isa = PBXGroup; + children = ( + 64A900AB293E3DD4009B54DA /* cServerDefinitions.cpp */, + 64A900AC293E3DD4009B54DA /* cServerDefinitions.h */, + 64A900B8293E3DD4009B54DA /* Dictionary.cpp */, + 64A900B9293E3DD4009B54DA /* Dictionary.h */, + 64A900EC293E3DD4009B54DA /* scriptc.cpp */, + 64A900ED293E3DD4009B54DA /* scriptc.h */, + 64A900F5293E3DD4009B54DA /* ssection.cpp */, + 64A900F6293E3DD4009B54DA /* ssection.h */, + ); + name = Script; + sourceTree = ""; + }; + 64E2F796293FCE8400546A08 /* UOData */ = { + isa = PBXGroup; + children = ( + 64A900D8293E3DD4009B54DA /* MultiMul.cpp */, + 64A900D9293E3DD4009B54DA /* MultiMul.hpp */, + 64A90101293E3DD4009B54DA /* UOPData.cpp */, + 64A90102293E3DD4009B54DA /* UOPData.hpp */, + ); + name = UOData; + sourceTree = ""; + }; + 64E2F797293FCE8C00546A08 /* Utility */ = { + isa = PBXGroup; + children = ( + 64A900BD293E3DD4009B54DA /* EventTimer.cpp */, + 64A900BE293E3DD4009B54DA /* EventTimer.hpp */, + 64A900F7293E3DD4009B54DA /* StringUtility.cpp */, + 64A900F8293E3DD4009B54DA /* StringUtility.hpp */, + 64A900FB293E3DD4009B54DA /* TimeUtility.cpp */, + 64A900FC293E3DD4009B54DA /* TimeUtility.hpp */, + ); + name = Utility; + sourceTree = ""; + }; + 64E2F798293FD53200546A08 /* Leftover */ = { + isa = PBXGroup; + children = ( + 64A9009D293E3DD4009B54DA /* ConfigOS.h */, + 64A900C2293E3DD4009B54DA /* GenericList.h */, + 64A900DF293E3DD4009B54DA /* osunique.cpp */, + 64A900E0293E3DD4009B54DA /* osunique.hpp */, + 64A900E6293E3DD4009B54DA /* Prerequisites.h */, + 64A900FD293E3DD4009B54DA /* townregion.cpp */, + 64A900FE293E3DD4009B54DA /* townregion.h */, + 64A90111293E3DD4009B54DA /* UOXStdHeaders.h */, + ); + name = Leftover; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 64A90069293E3DA3009B54DA /* uox3 */ = { + isa = PBXNativeTarget; + buildConfigurationList = 64A90071293E3DA3009B54DA /* Build configuration list for PBXNativeTarget "uox3" */; + buildPhases = ( + 64A90066293E3DA3009B54DA /* Sources */, + 64A90067293E3DA3009B54DA /* Frameworks */, + 64A90068293E3DA3009B54DA /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = uox3; + productName = uox3; + productReference = 64A9006A293E3DA3009B54DA /* uox3 */; + productType = "com.apple.product-type.tool"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 64A90062293E3DA3009B54DA /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = 1; + LastUpgradeCheck = 1410; + TargetAttributes = { + 64A90069293E3DA3009B54DA = { + CreatedOnToolsVersion = 14.1; + }; + }; + }; + buildConfigurationList = 64A90065293E3DA3009B54DA /* Build configuration list for PBXProject "uox3" */; + compatibilityVersion = "Xcode 14.0"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 64A90061293E3DA3009B54DA; + productRefGroup = 64A9006B293E3DA3009B54DA /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 64A90069293E3DA3009B54DA /* uox3 */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXSourcesBuildPhase section */ + 64A90066293E3DA3009B54DA /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 64A9014E293E3DD4009B54DA /* network.cpp in Sources */, + 64A90168293E3DD4009B54DA /* wholist.cpp in Sources */, + 64A90124293E3DD4009B54DA /* cGuild.cpp in Sources */, + 64A90160293E3DD4009B54DA /* townregion.cpp in Sources */, + 64A90139293E3DD4009B54DA /* cVersionClass.cpp in Sources */, + 64A90122293E3DD4009B54DA /* cConsole.cpp in Sources */, + 64A90152293E3DD4009B54DA /* PartySystem.cpp in Sources */, + 64A90163293E3DD4009B54DA /* uox3.cpp in Sources */, + 64A90125293E3DD4009B54DA /* CGump.cpp in Sources */, + 64A9014C293E3DD4009B54DA /* msgboard.cpp in Sources */, + 64A9015F293E3DD4009B54DA /* TimeUtility.cpp in Sources */, + 64A90169293E3DD4009B54DA /* worldmain.cpp in Sources */, + 64A9013D293E3DD4009B54DA /* effect.cpp in Sources */, + 64A9011F293E3DD4009B54DA /* calcfuncs.cpp in Sources */, + 64A9013E293E3DD4009B54DA /* EventTimer.cpp in Sources */, + 64A90155293E3DD4009B54DA /* queue.cpp in Sources */, + 64A9014A293E3DD4009B54DA /* mapstuff.cpp in Sources */, + 64A9015D293E3DD4009B54DA /* StringUtility.cpp in Sources */, + 64A90159293E3DD4009B54DA /* skills.cpp in Sources */, + 64A90162293E3DD4009B54DA /* UOPData.cpp in Sources */, + 64A9014D293E3DD4009B54DA /* MultiMul.cpp in Sources */, + 64A9015C293E3DD4009B54DA /* ssection.cpp in Sources */, + 64A90127293E3DD4009B54DA /* cItem.cpp in Sources */, + 64A90123293E3DD4009B54DA /* cDice.cpp in Sources */, + 64A9012E293E3DD4009B54DA /* CPacketReceive.cpp in Sources */, + 64A9012A293E3DD4009B54DA /* cmdtable.cpp in Sources */, + 64A90120293E3DD4009B54DA /* cBaseobject.cpp in Sources */, + 64A90135293E3DD4009B54DA /* cServerDefinitions.cpp in Sources */, + 64A90166293E3DD4009B54DA /* vendor.cpp in Sources */, + 64A9015B293E3DD4009B54DA /* speech.cpp in Sources */, + 64A90161293E3DD4009B54DA /* trade.cpp in Sources */, + 64A9011D293E3DD4009B54DA /* books.cpp in Sources */, + 64A90128293E3DD4009B54DA /* CJSEngine.cpp in Sources */, + 64A90130293E3DD4009B54DA /* cPlayerAction.cpp in Sources */, + 64A90147293E3DD4009B54DA /* lineofsight.cpp in Sources */, + 64A90156293E3DD4009B54DA /* regions.cpp in Sources */, + 64A90131293E3DD4009B54DA /* cRaces.cpp in Sources */, + 64A90134293E3DD4009B54DA /* cServerData.cpp in Sources */, + 64A90143293E3DD4009B54DA /* IP4Address.cpp in Sources */, + 64A90144293E3DD4009B54DA /* items.cpp in Sources */, + 64A90138293E3DD4009B54DA /* cThreadQueue.cpp in Sources */, + 64A9014B293E3DD4009B54DA /* movement.cpp in Sources */, + 64A90145293E3DD4009B54DA /* jail.cpp in Sources */, + 64A9014F293E3DD4009B54DA /* npcs.cpp in Sources */, + 64A9013B293E3DD4009B54DA /* Dictionary.cpp in Sources */, + 64A90136293E3DD4009B54DA /* cSocket.cpp in Sources */, + 64A90126293E3DD4009B54DA /* cHTMLSystem.cpp in Sources */, + 64A90150293E3DD4009B54DA /* ObjectFactory.cpp in Sources */, + 64A90121293E3DD4009B54DA /* cChar.cpp in Sources */, + 64A90154293E3DD4009B54DA /* quantityfuncs.cpp in Sources */, + 64A90165293E3DD4009B54DA /* UOXJSPropertyFuncs.cpp in Sources */, + 64A9012C293E3DD4009B54DA /* combat.cpp in Sources */, + 64A90153293E3DD4009B54DA /* pcmanage.cpp in Sources */, + 64A90129293E3DD4009B54DA /* CJSMapping.cpp in Sources */, + 64A90132293E3DD4009B54DA /* CResponse.cpp in Sources */, + 64A90164293E3DD4009B54DA /* UOXJSMethods.cpp in Sources */, + 64A9011E293E3DD4009B54DA /* cAccountClass.cpp in Sources */, + 64A90148293E3DD4009B54DA /* magic.cpp in Sources */, + 64A9011B293E3DD4009B54DA /* archive.cpp in Sources */, + 64A9015A293E3DD4009B54DA /* sound.cpp in Sources */, + 64A90167293E3DD4009B54DA /* weight.cpp in Sources */, + 64A90133293E3DD4009B54DA /* cScript.cpp in Sources */, + 64A90146293E3DD4009B54DA /* JSEncapsulate.cpp in Sources */, + 64A9013F293E3DD4009B54DA /* fileio.cpp in Sources */, + 64A90141293E3DD4009B54DA /* gumps.cpp in Sources */, + 64A90142293E3DD4009B54DA /* house.cpp in Sources */, + 64A90151293E3DD4009B54DA /* osunique.cpp in Sources */, + 64A9012F293E3DD4009B54DA /* CPacketSend.cpp in Sources */, + 64A9013C293E3DD4009B54DA /* dist.cpp in Sources */, + 64A90158293E3DD4009B54DA /* SEFunctions.cpp in Sources */, + 64A9011A293E3DD4009B54DA /* ai.cpp in Sources */, + 64A9013A293E3DD4009B54DA /* cWeather.cpp in Sources */, + 64A90140293E3DD4009B54DA /* findfuncs.cpp in Sources */, + 64A9011C293E3DD4009B54DA /* boats.cpp in Sources */, + 64A90137293E3DD4009B54DA /* cSpawnRegion.cpp in Sources */, + 64A9015E293E3DD4009B54DA /* targeting.cpp in Sources */, + 64A9012B293E3DD4009B54DA /* cMultiObj.cpp in Sources */, + 64A90157293E3DD4009B54DA /* scriptc.cpp in Sources */, + 64A9012D293E3DD4009B54DA /* commands.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 64A9006F293E3DA3009B54DA /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 13.0; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = macosx; + }; + name = Debug; + }; + 64A90070293E3DA3009B54DA /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 13.0; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = macosx; + }; + name = Release; + }; + 64A90072293E3DA3009B54DA /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_CXX_LANGUAGE_STANDARD = "c++17"; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = CF264WE69M; + ENABLE_HARDENED_RUNTIME = YES; + GCC_CHAR_IS_UNSIGNED_CHAR = YES; + GCC_C_LANGUAGE_STANDARD = c11; + GCC_WARN_64_TO_32_BIT_CONVERSION = NO; + PRODUCT_NAME = "$(TARGET_NAME)"; + USER_HEADER_SEARCH_PATHS = ( + ../../source, + ../../spidermonkey, + ); + WARNING_CFLAGS = "-Wno-shift-negative-value"; + }; + name = Debug; + }; + 64A90073293E3DA3009B54DA /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_CXX_LANGUAGE_STANDARD = "c++17"; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = CF264WE69M; + ENABLE_HARDENED_RUNTIME = YES; + GCC_CHAR_IS_UNSIGNED_CHAR = YES; + GCC_C_LANGUAGE_STANDARD = c11; + GCC_WARN_64_TO_32_BIT_CONVERSION = NO; + PRODUCT_NAME = "$(TARGET_NAME)"; + USER_HEADER_SEARCH_PATHS = ( + ../../source, + ../../spidermonkey, + ); + WARNING_CFLAGS = "-Wno-shift-negative-value"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 64A90065293E3DA3009B54DA /* Build configuration list for PBXProject "uox3" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 64A9006F293E3DA3009B54DA /* Debug */, + 64A90070293E3DA3009B54DA /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 64A90071293E3DA3009B54DA /* Build configuration list for PBXNativeTarget "uox3" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 64A90072293E3DA3009B54DA /* Debug */, + 64A90073293E3DA3009B54DA /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 64A90062293E3DA3009B54DA /* Project object */; +} diff --git a/make/XCode/uox3.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/make/XCode/uox3.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..919434a62 --- /dev/null +++ b/make/XCode/uox3.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/make/XCode/uox3.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/make/XCode/uox3.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/make/XCode/uox3.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/uox3.xcodeproj/xcshareddata/xcschemes/uox3.xcscheme b/make/XCode/uox3.xcodeproj/xcshareddata/xcschemes/uox3.xcscheme similarity index 84% rename from uox3.xcodeproj/xcshareddata/xcschemes/uox3.xcscheme rename to make/XCode/uox3.xcodeproj/xcshareddata/xcschemes/uox3.xcscheme index 8a032dba6..1330b5053 100644 --- a/uox3.xcodeproj/xcshareddata/xcschemes/uox3.xcscheme +++ b/make/XCode/uox3.xcodeproj/xcshareddata/xcschemes/uox3.xcscheme @@ -14,7 +14,7 @@ buildForAnalyzing = "YES"> @@ -41,27 +41,18 @@ debugDocumentVersioning = "YES" debugServiceExtension = "internal" allowLocationSimulation = "YES" + viewDebuggingEnabled = "No" consoleMode = "1"> - - - - - - diff --git a/make/XCode/uox3.xcworkspace/contents.xcworkspacedata b/make/XCode/uox3.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..8724e25f3 --- /dev/null +++ b/make/XCode/uox3.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,10 @@ + + + + + + + diff --git a/make/XCode/uox3.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/make/XCode/uox3.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/make/XCode/uox3.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/make/cmake/CMakeLists.txt b/make/cmake/CMakeLists.txt new file mode 100644 index 000000000..0ca04a77c --- /dev/null +++ b/make/cmake/CMakeLists.txt @@ -0,0 +1,245 @@ +cmake_minimum_required(VERSION 3.18) +project(uox3 VERSION 0.1 LANGUAGES CXX) +set(CMAKE_CXX_STANDARD 17) + +# ************************************************************************* +# The basic executable we are making +# ************************************************************************* + +add_executable(uox3 + ../../source/ai.cpp + ../../source/archive.cpp + ../../source/boats.cpp + ../../source/books.cpp + ../../source/cAccountClass.cpp + ../../source/calcfuncs.cpp + ../../source/cBaseobject.cpp + ../../source/cChar.cpp + ../../source/cConsole.cpp + ../../source/cDice.cpp + ../../source/cGuild.cpp + ../../source/CGump.cpp + ../../source/cHTMLSystem.cpp + ../../source/cItem.cpp + ../../source/CJSEngine.cpp + ../../source/CJSMapping.cpp + ../../source/cmdtable.cpp + ../../source/cMultiObj.cpp + ../../source/combat.cpp + ../../source/commands.cpp + ../../source/CPacketReceive.cpp + ../../source/CPacketSend.cpp + ../../source/cPlayerAction.cpp + ../../source/cRaces.cpp + ../../source/CResponse.cpp + ../../source/cScript.cpp + ../../source/cServerData.cpp + ../../source/cServerDefinitions.cpp + ../../source/cSocket.cpp + ../../source/cSpawnRegion.cpp + ../../source/cThreadQueue.cpp + ../../source/cVersionClass.cpp + ../../source/cWeather.cpp + ../../source/Dictionary.cpp + ../../source/dist.cpp + ../../source/effect.cpp + ../../source/EventTimer.cpp + ../../source/fileio.cpp + ../../source/findfuncs.cpp + ../../source/gumps.cpp + ../../source/house.cpp + ../../source/IP4Address.cpp + ../../source/items.cpp + ../../source/jail.cpp + ../../source/JSEncapsulate.cpp + ../../source/lineofsight.cpp + ../../source/magic.cpp + ../../source/mapstuff.cpp + ../../source/movement.cpp + ../../source/msgboard.cpp + ../../source/MultiMul.cpp + ../../source/network.cpp + ../../source/npcs.cpp + ../../source/ObjectFactory.cpp + ../../source/PartySystem.cpp + ../../source/pcmanage.cpp + ../../source/quantityfuncs.cpp + ../../source/queue.cpp + ../../source/regions.cpp + ../../source/scriptc.cpp + ../../source/SEFunctions.cpp + ../../source/skills.cpp + ../../source/sound.cpp + ../../source/speech.cpp + ../../source/ssection.cpp + ../../source/osunique.cpp + ../../source/StringUtility.cpp + ../../source/targeting.cpp + ../../source/townregion.cpp + ../../source/trade.cpp + ../../source/UOPData.cpp + ../../source/uox3.cpp + ../../source/UOXJSMethods.cpp + ../../source/UOXJSPropertyFuncs.cpp + ../../source/vendor.cpp + ../../source/weight.cpp + ../../source/wholist.cpp + ../../source/worldmain.cpp + ../../source/TimeUtility.cpp + ../../source/osunique.hpp + ../../source/books.h + ../../source/cAccountClass.h + ../../source/cBaseObject.h + ../../source/cChar.h + ../../source/cConsole.h + ../../source/cdice.h + ../../source/cEffects.h + ../../source/cGuild.h + ../../source/cHTMLSystem.h + ../../source/cItem.h + ../../source/CJSEngine.h + ../../source/CJSMapping.h + ../../source/classes.h + ../../source/cMagic.h + ../../source/cmdtable.h + ../../source/cMultiObj.h + ../../source/combat.h + ../../source/commands.h + ../../source/ConfigOS.h + ../../source/CPacketReceive.h + ../../source/CPacketSend.h + ../../source/cRaces.h + ../../source/CResponse.h + ../../source/cScript.h + ../../source/cServerData.h + ../../source/cServerDefinitions.h + ../../source/cSkillClass.h + ../../source/cSocket.h + ../../source/cSpawnRegion.h + ../../source/cThreadQueue.h + ../../source/cVersionClass.h + ../../source/cWeather.hpp + ../../source/Dictionary.h + ../../source/enums.h + ../../source/EventTimer.hpp + ../../source/funcdecl.h + ../../source/GenericList.h + ../../source/gump.h + ../../source/IP4Address.hpp + ../../source/jail.h + ../../source/JSEncapsulate.h + ../../source/magic.h + ../../source/mapclasses.h + ../../source/mapstuff.h + ../../source/movement.h + ../../source/msgboard.h + ../../source/MultiMul.hpp + ../../source/network.h + ../../source/ObjectFactory.h + ../../source/PageVector.h + ../../source/PartySystem.h + ../../source/power.h + ../../source/Prerequisites.h + ../../source/regions.h + ../../source/scriptc.h + ../../source/SEFunctions.h + ../../source/skills.h + ../../source/speech.h + ../../source/ssection.h + ../../source/StringUtility.hpp + ../../source/teffect.h + ../../source/townregion.h + ../../source/typedefs.h + ../../source/UOPData.hpp + ../../source/uox3.h + ../../source/UOXJSClasses.h + ../../source/UOXJSMethods.h + ../../source/UOXJSPropertyEnums.h + ../../source/UOXJSPropertyFuncs.h + ../..//source/UOXJSPropertySpecs.h + ../../source/UOXStdHeaders.h + ../../source/uoxstruct.h + ../../source/weight.h + ../../source/wholist.h + ../../source/worldmain.h + ../../source/TimeUtility.hpp + $<$:${PROJECT_SOURCE_DIR}/../../assets/uox3.rc> +) + +# ************************************************************************* +# Platform specific settings +# ************************************************************************* + +if (WIN32) +set (CMAKE_RC_STANDARD_INCLUDE_DIRECTORIES ${PROJECT_SOURCE_DIR}/../../assets/) + +target_compile_definitions(uox3 PRIVATE + _WINDOWS + EXPORT_JS_API + _SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING + _CRT_NO_VA_START_VALIDATION + _CRT_SECURE_NO_DEPRECATE + _CRT_NONSTDC_NO_DEPRECATE + _CONSOLE + $<$:NDEBUG> + $<$:_DEBUG> + $<$:_ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH> + ) + + target_compile_options( uox3 PRIVATE + /J + $<$:/O2> + ) +else() + + target_compile_definitions( uox3 PRIVATE + EXPORT_JS_API + $<$:_DEBUG> + ) + + target_compile_options( uox3 PRIVATE + -funsigned-char + -Wno-shift-negative-value + ) + if (APPLE) + target_compile_options( uox3 PRIVATE + $<$:-Os> + ) + else() + target_compile_options(uox3 PRIVATE + $<$:-O2> + -Wno-attributes + ) + endif(APPLE) +endif(WIN32) + + + +# ************************************************************************* +# the directories we need on the include path +# ************************************************************************* + +target_include_directories(uox3 + PUBLIC + ${PROJECT_SOURCE_DIR}/../../source + ${PROJECT_SOURCE_DIR}/../../spidermonkey + ${PROJECT_SOURCE_DIR}/../../zlib +) + +# ************************************************************************* +# The libraries we need +# ************************************************************************* +target_link_libraries(uox3 PRIVATE + jscript + zlib + $<$:ws2_32> + $<$:Kernel32> + $<$:pthread> + $<$:pthread> +) + +# ************************************************************************* +# The items we need built first +# ************************************************************************* +add_subdirectory(${PROJECT_SOURCE_DIR}/../../spidermonkey/make/cmake subproject/jscript) +add_subdirectory(${PROJECT_SOURCE_DIR}/../../zlib/make/cmake subproject/zlib) \ No newline at end of file diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt deleted file mode 100644 index 2451dfb66..000000000 --- a/source/CMakeLists.txt +++ /dev/null @@ -1,102 +0,0 @@ -add_library(uox - STATIC - CGump.cpp - boats.cpp - cSocket.cpp - items.cpp - speech.cpp - CJSEngine.cpp - books.cpp - cSpawnRegion.cpp - jail.cpp - ssection.cpp - CJSMapping.cpp - cAccountClass.cpp - cThreadQueue.cpp - lineofsight.cpp - targeting.cpp - CPacketReceive.cpp - cBaseobject.cpp - cVersionClass.cpp - magic.cpp - CPacketSend.cpp - cChar.cpp - cWeather.cpp - mapstuff.cpp - townregion.cpp - CResponse.cpp - cConsole.cpp - calcfuncs.cpp - movement.cpp - trade.cpp - Dictionary.cpp - cDice.cpp - cmdtable.cpp - msgboard.cpp - uox3.cpp - JSEncapsulate.cpp - cGuild.cpp - combat.cpp - network.cpp - cHTMLSystem.cpp - commands.cpp - npcs.cpp - vendor.cpp - ObjectFactory.cpp - cItem.cpp - cPlayerAction.cpp - pcmanage.cpp - weight.cpp - PartySystem.cpp - cMultiObj.cpp - dist.cpp - quantityfuncs.cpp - wholist.cpp - SEFunctions.cpp - effect.cpp - queue.cpp - worldmain.cpp - UOXJSMethods.cpp - cRaces.cpp - fileio.cpp - regions.cpp - UOXJSPropertyFuncs.cpp - cScript.cpp - findfuncs.cpp - scriptc.cpp - ai.cpp - cServerData.cpp - gumps.cpp - skills.cpp - archive.cpp - cServerDefinitions.cpp - house.cpp - sound.cpp - StringUtility.cpp - UOPData.cpp - MultiMul.cpp - IP4Address.cpp - TimeUtility.cpp - EventTimer.cpp - osunique.cpp -) - -target_include_directories(uox - PUBLIC - ${PROJECT_SOURCE_DIR}/spidermonkey - ${PROJECT_SOURCE_DIR}/zlib -) - -target_compile_definitions(uox - PRIVATE - _CRT_NO_VA_START_VALIDATION - $<$:_ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH> - $<$:EXPORT_JS_API> -) - -target_link_libraries(uox - PUBLIC - js32 - zlibstatic - $<$:ws2_32> -) diff --git a/source/CPacketSend.cpp b/source/CPacketSend.cpp index 3efb77e3c..2fad42aef 100644 --- a/source/CPacketSend.cpp +++ b/source/CPacketSend.cpp @@ -2986,15 +2986,20 @@ CPDyeVat &CPDyeVat::operator = ( CBaseObject &target ) //| Purpose - Handles outgoing packet to bring up house/boat placement preview //o------------------------------------------------------------------------------------------------o //| Notes - Packet: 0x99 (Bring Up House/Boat Placement View) -//| Size: 26 bytes +//| Size: 26/30 bytes //| //| Packet Build //| BYTE cmd //| BYTE request (0x01 from server, 0x00 from client) -//| BYTE[4] ID of deed -//| BYTE[12] unknown (all 0) +//| BYTE[4] SERIAL of deed +//| BYTE cursorFlags (0?) +//| BYTE[11] unknown (all 0) //| BYTE[2] multi model (item model - 0x4000) -//| BYTE[6] unknown (all 0) +//| BYTE[2] xOffset +//| BYTE[2] yOffset +//| BYTE[2] zOffset +//| clientVer > 7.0.9.0, 30 byte size packet +//| BYTE[4] Hue //o------------------------------------------------------------------------------------------------o void CPMultiPlacementView::InternalReset( void ) { diff --git a/source/CResponse.cpp b/source/CResponse.cpp index 4d5d5eb71..d7155188d 100644 --- a/source/CResponse.cpp +++ b/source/CResponse.cpp @@ -74,6 +74,12 @@ auto FindNearbyNPCs( CChar *mChar, distLocs distance ) -> std::vector } } } + + // Sort NPCs by their distance to the player + std::sort( ourNpcs.begin(), ourNpcs.end(), [&]( CChar *a, CChar *b ) + { + return GetDist( a, mChar ) < GetDist( b, mChar ); + }); return ourNpcs; } diff --git a/source/Changelog.txt b/source/Changelog.txt index 167d0b153..3a0490ea6 100644 --- a/source/Changelog.txt +++ b/source/Changelog.txt @@ -1,3 +1,70 @@ +31/12/2022 - Xuri + Extended GetSpawnRegion JS Function to fetch spawn region reference based on a set of coordinates. Supported syntax are now: + GetSpawnRegion( spawnRegionID ) + GetSpawnRegion( x, y, worldNum, instanceID ) + Added new DFN tags for Items and NPC: + SECTIONID // Override which [sectionID] is stored for an object + ORIGIN // Store reference to which expansion/era of UO an item/NPC originated in + Added new Item/Character JS property: + .origin // Get reference to expansion/era of UO an item/NPC originated in + Fixed an issue with IsInBuilding JS Function which could only handled a limited subset of instance ID values + Corrected name of tag used to attach scripts to ore types - from SCRIPTID to SCRIPT + +24/12/2022 - Xuri, punt, ldilley (0.99.6-RC2) + CMake is now default build system on Linux/FreeBSD, and an alternative for Windows/macOS-users instead of VS/XCode, though the old GCC/Make build process is still intact (for now) + Resource files (uox3.rc and uox3.ico) have been moved from UOX3/source to UOX3/assets + Build/project-related files have been moved to /make/[buildsystem] sub-directories, for both UOX3 and sub-projects: + UOX3/make/cmake + UOX3/make/VS2017 + UOX3/make/VS2022 + UOX3/make/XCode + spidermonkey/make/cmake + spidermonkey/make/VS2017 + spidermonkey/make/VS2022 + spidermonkey/make/XCode + zlib/make/cmake + zlib/make/VS2017 + zlib/make/VS2022 + zlib/make/XCode + CMake, VS2022 and XCode will compile sub-projects automatically when UOX3 is compiled, while VS2017 requires compiling sub-projects prior to UOX3 + automake.sh script (still in root of repository) now uses CMake instead of GCC/Make, and supports optional arguments for creating debug/clean builds + Updated instructions on compiling UOX3 can be found on GitHub and/or in the UOX3 documentation + Some redundant files have been deleted from the repository (like DLL folder and file) + Code style guide added to UOX3/docs directory (styleguide.html) + Updated GitHub workflows to use cmake for Linux and to ignore changes to .txt/.html/.sln/.vcxproj files for both Linux & Windows workflows + +17/12/2022 - Xuri + When a player says "vendor buy" or "vendor sell", NPC shopkeepers (and related JS events) will now respond in priority of distance to the player + +11/12/2022 - Xuri + Added support for a SCRIPT tag in ore definitions in dfndata/skills/skills.dfn, which will be applied to any ore of that type that's mined + +08/12/2022 - Dragon Slayer + Replaced orc Spawns with Savages in T2A orc fort. this would bring the spawns up to date with LBR. + +03/12/2022 - Xuri + Updated .ResourceCount() and .UseResource() JS Object Methods to include optional parameter for sectionId. New supported syntax: + int ResourceCount( realId, colour ) + int ResourceCount( realId, colour, moreVal ) + int ResourceCount( realId, colour, moreVal, sectionId ) + int UseResource( amount, realItemId ) + int UseResource( amount, realItemId, colour ) + int UseResource( amount, realItemId, colour, moreVal ) + int UseResource( amount, realItemId, colour, moreVal, sectionId ) + Fixed an issue where the bit flag for the HirelingCombatTraining setting was not set properly + Fixed an issue in SpiderMonkey VS project that prevented compiling a x64 debug build (thanks, punt!) + Some minor cleanup + +03/12/2022 - Dragon Slayer + GM and Counselors can now go though the wind teleporter + +03/12/2022 - ldilley + Comment line in jsconfig.mk that attempts to cat a non-existent Version file. This causes an error otherwise during the SpiderMonkey build. + Initialize totalPlayerGold in vendor.cpp. + Flag unused variable in gumps.cpp. + Update README.md to include references to FreeBSD and also alter the command (libtool instead of ar) used to generate the JavaScript library on macOS. + Improve automake.sh. + 29/11/2022 - Xuri Added some validation checks for attacker object in onDamage JS event in several scripts Enabled onSellToVendor, onSoldToVendor, onBuyFromVendor and onBoughtFromVendor JS events to also run if attached to NPCs diff --git a/source/SEFunctions.cpp b/source/SEFunctions.cpp index 71de98716..a8a150c7a 100644 --- a/source/SEFunctions.cpp +++ b/source/SEFunctions.cpp @@ -3420,20 +3420,28 @@ JSBool SE_GetTownRegion( JSContext *cx, [[maybe_unused]] JSObject *obj, uintN ar //o------------------------------------------------------------------------------------------------o JSBool SE_GetSpawnRegion( JSContext *cx, [[maybe_unused]] JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { - if( argc != 1 ) + if( argc != 1 && argc != 4 ) { - DoSEErrorMessage( "GetSpawnRegion: Invalid number of parameters (1)" ); + DoSEErrorMessage( "GetSpawnRegion: Invalid number of parameters (1 - spawnRegionID, or 4 - x, y, world and instanceID)" ); return JS_FALSE; } - UI16 spawnRegNum = static_cast( JSVAL_TO_INT( argv[0] )); - if( cwmWorldState->spawnRegions.find( spawnRegNum ) != cwmWorldState->spawnRegions.end() ) + if( argc == 1 ) { - CSpawnRegion *spawnReg = cwmWorldState->spawnRegions[spawnRegNum]; - if( spawnReg != nullptr ) + // Assume spawn region number was provided + UI16 spawnRegNum = static_cast( JSVAL_TO_INT( argv[0] )); + if( cwmWorldState->spawnRegions.find( spawnRegNum ) != cwmWorldState->spawnRegions.end() ) { - JSObject *myObj = JSEngine->AcquireObject( IUE_SPAWNREGION, spawnReg, JSEngine->FindActiveRuntime( JS_GetRuntime( cx ))); - *rval = OBJECT_TO_JSVAL( myObj ); + CSpawnRegion *spawnReg = cwmWorldState->spawnRegions[spawnRegNum]; + if( spawnReg != nullptr ) + { + JSObject *myObj = JSEngine->AcquireObject( IUE_SPAWNREGION, spawnReg, JSEngine->FindActiveRuntime( JS_GetRuntime( cx ))); + *rval = OBJECT_TO_JSVAL( myObj ); + } + else + { + *rval = JSVAL_NULL; + } } else { @@ -3442,8 +3450,31 @@ JSBool SE_GetSpawnRegion( JSContext *cx, [[maybe_unused]] JSObject *obj, uintN a } else { - *rval = JSVAL_NULL; + // Assume coordinates were provided + UI16 x = static_cast( JSVAL_TO_INT( argv[0] )); + UI16 y = static_cast( JSVAL_TO_INT( argv[1] )); + UI08 worldNum = static_cast( JSVAL_TO_INT( argv[2] )); + UI16 instanceID = static_cast( JSVAL_TO_INT( argv[3] )); + + // Iterate over each spawn region to find the right one + auto iter = std::find_if( cwmWorldState->spawnRegions.begin(), cwmWorldState->spawnRegions.end(), [&x, &y, &worldNum, &instanceID, &cx, &rval]( std::pair entry ) + { + if( entry.second && x >= entry.second->GetX1() && x <= entry.second->GetX2() && y >= entry.second->GetY1() + && y <= entry.second->GetY2() && entry.second->GetInstanceId() == instanceID && entry.second->WorldNumber() == worldNum ) + { + JSObject *myObj = JSEngine->AcquireObject( IUE_SPAWNREGION, entry.second, JSEngine->FindActiveRuntime( JS_GetRuntime( cx ))); + *rval = OBJECT_TO_JSVAL( myObj ); + return true; + } + return false; + }); + + if( iter == cwmWorldState->spawnRegions.end() ) + { + *rval = JSVAL_NULL; + } } + return JS_TRUE; } @@ -3504,7 +3535,7 @@ JSBool SE_IsInBuilding( [[maybe_unused]] JSContext *cx, [[maybe_unused]] JSObjec SI16 y = static_cast( JSVAL_TO_INT( argv[1] )); SI08 z = static_cast( JSVAL_TO_INT( argv[2] )); UI08 worldNum = static_cast( JSVAL_TO_INT( argv[3] )); - UI08 instanceId = static_cast( JSVAL_TO_INT( argv[4] )); + UI16 instanceId = static_cast( JSVAL_TO_INT( argv[4] )); bool checkHeight = ( JSVAL_TO_BOOLEAN( argv[5] ) == JS_TRUE ); bool isInBuilding = Map->InBuilding( x, y, z, worldNum, instanceId ); if( !isInBuilding ) diff --git a/source/UOXJSMethods.cpp b/source/UOXJSMethods.cpp index 84392e727..cd63b7224 100644 --- a/source/UOXJSMethods.cpp +++ b/source/UOXJSMethods.cpp @@ -3580,8 +3580,9 @@ JSBool CGuild_AcceptRecruit( JSContext *cx, JSObject *obj, uintN argc, jsval *ar //o------------------------------------------------------------------------------------------------o //| Function - CChar_ResourceCount() -//| Prototype - int ResourceCount( realitemid, colour ) -//| int ResourceCount( realitemid, colour, moreVal ) +//| Prototype - int ResourceCount( realId, colour ) +//| int ResourceCount( realId, colour, moreVal ) +//| int ResourceCount( realId, colour, moreVal, sectionId ) //o------------------------------------------------------------------------------------------------o //| Purpose - Returns the amount of the items of given ID, colour and moreVal character has in packs //o------------------------------------------------------------------------------------------------o @@ -3597,11 +3598,12 @@ JSBool CChar_ResourceCount( JSContext *cx, JSObject *obj, uintN argc, jsval *arg UI16 realId = static_cast( JSVAL_TO_INT( argv[0] )); SI32 itemColour = 0; - UI32 moreVal = 0; + SI64 moreVal = -1; + std::string sectionId = ""; - if(( argc < 1 ) || ( argc > 3 )) + if(( argc < 1 ) || ( argc > 4 )) { - MethodError( "(ResourceCount) Invalid count of parameters: %d, either needs 1, 2 or 3", argc ); + MethodError( "(ResourceCount) Invalid count of parameters: %d, needs from 1 to 4 parameters", argc ); return JS_FALSE; } @@ -3611,20 +3613,26 @@ JSBool CChar_ResourceCount( JSContext *cx, JSObject *obj, uintN argc, jsval *arg } if( argc >= 3 ) { - moreVal = static_cast( JSVAL_TO_INT( argv[2] )); + moreVal = static_cast( JSVAL_TO_INT( argv[2] )); + } + if( argc >= 4 ) + { + sectionId = JS_GetStringBytes( JS_ValueToString( cx, argv[3] )); } bool colorCheck = ( itemColour != -1 ? true : false ); + bool moreCheck = ( moreVal != -1 ? true : false ); - *rval = INT_TO_JSVAL( GetItemAmount( myChar, realId, static_cast( itemColour ), moreVal, colorCheck )); + *rval = INT_TO_JSVAL( GetItemAmount( myChar, realId, static_cast( itemColour ), static_cast( moreVal ), colorCheck, moreCheck, sectionId )); return JS_TRUE; } //o------------------------------------------------------------------------------------------------o //| Function - CBase_UseResource() -//| Prototype - int UseResource( amount, realitemid ) -//| int UseResource( amount, realitemid, colour ) -//| int UseResource( amount, realitemid, colour, moreVal ) +//| Prototype - int UseResource( amount, realItemId ) +//| int UseResource( amount, realItemId, colour ) +//| int UseResource( amount, realItemId, colour, moreVal ) +//| int UseResource( amount, realItemId, colour, moreVal, sectionId ) //o------------------------------------------------------------------------------------------------o //| Purpose - Removes specified amount of items of given ID, colour and MORE value from //| char's packs, and returns amount deleted @@ -3642,36 +3650,44 @@ JSBool CBase_UseResource( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, UI32 amount = static_cast( JSVAL_TO_INT( argv[0] )); UI16 realId = static_cast( JSVAL_TO_INT( argv[1] )); - UI16 itemColour = 0; - UI32 moreVal = 0; + SI32 itemColour = 0; + SI64 moreVal = -1; + std::string sectionId = ""; - // Min. 2 Arguments (amount + id) or max 4 (amount + id + color + moreVal) - if(( argc < 2 ) || ( argc > 4 )) + // Min. 2 Arguments (amount + id) or max 5 (amount + id + color + moreVal + sectionId) + if(( argc < 2 ) || ( argc > 5 )) { - MethodError( "(UseResource) Invalid count of parameters: %d, either needs 2, 3 or 4", argc ); + MethodError( "(UseResource) Invalid count of parameters: %d, needs from 2 to 5 parameters", argc ); return JS_FALSE; } if( argc >= 3 ) { - itemColour = static_cast( JSVAL_TO_INT( argv[2] )); + itemColour = static_cast( JSVAL_TO_INT( argv[2] )); } if( argc >= 4 ) { - moreVal = static_cast( JSVAL_TO_INT( argv[3] )); + moreVal = static_cast( JSVAL_TO_INT( argv[3] )); } + if( argc >= 5 ) + { + sectionId = JS_GetStringBytes( JS_ValueToString( cx, argv[4] )); + } + + bool colorCheck = ( itemColour != -1 ? true : false ); + bool moreCheck = ( moreVal != -1 ? true : false ); UI32 retVal = 0; if( myClass.ClassName() == "UOXChar" ) { CChar *myChar = static_cast( myObj ); - retVal = DeleteItemAmount( myChar, amount, realId, itemColour, moreVal ); + retVal = DeleteItemAmount( myChar, amount, realId, static_cast( itemColour ), static_cast( moreVal ), colorCheck, moreCheck, sectionId ); } else { CItem *myItem = static_cast( myObj ); - retVal = DeleteSubItemAmount( myItem, amount, realId, itemColour, moreVal ); + retVal = DeleteSubItemAmount( myItem, amount, realId, static_cast( itemColour ), static_cast( moreVal ), colorCheck, moreCheck, sectionId ); } *rval = INT_TO_JSVAL( retVal ); return JS_TRUE; diff --git a/source/UOXJSPropertyEnums.h b/source/UOXJSPropertyEnums.h index f29a97043..b6a1348b5 100644 --- a/source/UOXJSPropertyEnums.h +++ b/source/UOXJSPropertyEnums.h @@ -382,6 +382,7 @@ enum CC_Properties CCP_LOYALTY, CCP_LOYALTYRATE, CCP_SHOULDSAVE, + CCP_ORIGIN, CCP_PARTYLOOTABLE, CCP_PARTY, CCP_MULTI, @@ -512,6 +513,7 @@ enum CI_Properties CIP_BASERANGE, CIP_REGION, CIP_SPAWNSERIAL, + CIP_ORIGIN, CIP_ISITEMHELD, CIP_SECTIONID, diff --git a/source/UOXJSPropertyFuncs.cpp b/source/UOXJSPropertyFuncs.cpp index 73da5e4af..04640cef8 100644 --- a/source/UOXJSPropertyFuncs.cpp +++ b/source/UOXJSPropertyFuncs.cpp @@ -343,7 +343,7 @@ JSBool CCreateEntryProps_getProperty( JSContext *cx, JSObject *obj, jsval id, js jsval amountNeeded = 0; jsval targColour = 0; JSObject *resources = JS_NewArrayObject( cx, 0, nullptr ); - for( size_t i = 0; i < resourcesNeeded.size(); i++ ) + for( auto i = 0; i < static_cast( resourcesNeeded.size() ); i++ ) { resEntry = resourcesNeeded[i]; amountNeeded = INT_TO_JSVAL( resEntry.amountNeeded ); @@ -356,7 +356,7 @@ JSBool CCreateEntryProps_getProperty( JSContext *cx, JSObject *obj, jsval id, js // Make a child object with all the supported resource IDs JSObject *idList = JS_NewArrayObject( cx, 0, nullptr ); - for( size_t j = 0; j < resEntry.idList.size(); j++ ) + for( auto j = 0; j < static_cast( resEntry.idList.size() ); j++ ) { jsval targId = INT_TO_JSVAL( resEntry.idList[j] ); JS_SetElement( cx, idList, j, &targId ); @@ -382,7 +382,7 @@ JSBool CCreateEntryProps_getProperty( JSContext *cx, JSObject *obj, jsval id, js jsval minSkill = 0; jsval maxSkill = 0; JSObject *skills = JS_NewArrayObject( cx, 0, nullptr ); - for( size_t i = 0; i < skillReqs.size(); i++ ) + for( auto i = 0; i < static_cast( skillReqs.size() ); i++ ) { resEntry = skillReqs[i]; skillNumber = INT_TO_JSVAL( resEntry.skillNumber ); @@ -508,7 +508,7 @@ JSBool CItemProps_getProperty( JSContext *cx, JSObject *obj, jsval id, jsval *vp JSObject *scriptTriggersJS = JS_NewArrayObject( cx, 0, nullptr ); std::vector scriptTriggers = gPriv->GetScriptTriggers(); - for( size_t i = 0; i < scriptTriggers.size(); i++ ) + for( auto i = 0; i < static_cast( scriptTriggers.size() ); i++ ) { scriptId = INT_TO_JSVAL( scriptTriggers[i] ); JS_SetElement( cx, scriptTriggersJS, i, &scriptId ); @@ -733,6 +733,10 @@ JSBool CItemProps_getProperty( JSContext *cx, JSObject *obj, jsval id, jsval *vp break; } case CIP_SPAWNSERIAL: *vp = INT_TO_JSVAL( gPriv->GetSpawn() ); break; + case CIP_ORIGIN: + tString = JS_NewStringCopyZ( cx, gPriv->GetOrigin().c_str() ); + *vp = STRING_TO_JSVAL( tString ); + break; case CIP_ISITEMHELD: *vp = BOOLEAN_TO_JSVAL( gPriv->IsHeldOnCursor() ); break; // The following entries are specifically for CSpawnItem objects @@ -1269,6 +1273,7 @@ JSBool CItemProps_setProperty( JSContext *cx, JSObject *obj, jsval id, jsval *vp case CIP_MAXRANGE: gPriv->SetMaxRange( static_cast( encaps.toInt() )); break; case CIP_BASERANGE: gPriv->SetBaseRange( static_cast( encaps.toInt() )); break; case CIP_REGION: gPriv->SetRegion( static_cast( encaps.toInt() )); break; + case CIP_ORIGIN: gPriv->SetOrigin( encaps.toString() ); break; case CIP_ISITEMHELD: gPriv->SetHeldOnCursor( encaps.toBool() ); break; // The following entries are specifically for CSpawnItem objects @@ -1519,7 +1524,7 @@ JSBool CCharacterProps_getProperty( JSContext *cx, JSObject *obj, jsval id, jsva JSObject *scriptTriggersJS = JS_NewArrayObject( cx, 0, nullptr ); std::vector scriptTriggers = gPriv->GetScriptTriggers(); - for( size_t i = 0; i < scriptTriggers.size(); i++ ) + for( auto i = 0; i < static_cast( scriptTriggers.size() ); i++ ) { scriptId = INT_TO_JSVAL( scriptTriggers[i] ); JS_SetElement( cx, scriptTriggersJS, i, &scriptId ); @@ -2482,7 +2487,7 @@ JSBool CRegionProps_getProperty( JSContext *cx, JSObject *obj, jsval id, jsval * JSObject *scriptTriggersJS = JS_NewArrayObject( cx, 0, nullptr ); std::vector scriptTriggers = gPriv->GetScriptTriggers(); - for( size_t i = 0; i < scriptTriggers.size(); i++ ) + for( auto i = 0; i < static_cast( scriptTriggers.size() ); i++ ) { scriptId = INT_TO_JSVAL( scriptTriggers[i] ); JS_SetElement( cx, scriptTriggersJS, i, &scriptId ); diff --git a/source/UOXJSPropertySpecs.h b/source/UOXJSPropertySpecs.h index 8021cbf5b..1e60df191 100644 --- a/source/UOXJSPropertySpecs.h +++ b/source/UOXJSPropertySpecs.h @@ -51,7 +51,7 @@ inline JSPropertySpec CSpellProperties[] = { "soundEffect", CSP_SOUNDEFFECT, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "enabled", CSP_ENABLED, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "baseDmg", CSP_BASEDMG, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } + { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } }; inline JSPropertySpec CGlobalSkillProperties[] = @@ -63,7 +63,7 @@ inline JSPropertySpec CGlobalSkillProperties[] = { "intelligence", CGSKILL_INTELLIGENCE, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "skillDelay", CGSKILL_SKILLDELAY, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "scriptID", CGSKILL_SCRIPTID, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } + { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } }; inline JSPropertySpec CCreateEntryProperties[] = @@ -81,7 +81,7 @@ inline JSPropertySpec CCreateEntryProperties[] = { "skills", CMAKE_SKILLS, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "avgMinSkill", CMAKE_AVGMINSKILL, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "avgMaxSkill", CMAKE_AVGMAXSKILL, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } + { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } }; inline JSPropertySpec CTimerProperties[] = @@ -121,7 +121,7 @@ inline JSPropertySpec CTimerProperties[] = { "SOCK_MUTETIME", TIMER_SOCK_MUTETIME, JSPROP_ENUMPERMRO, nullptr, nullptr }, { "SOCK_TRACKINGDISPLAY", TIMER_SOCK_TRACKINGDISPLAY, JSPROP_ENUMPERMRO, nullptr, nullptr }, { "SOCK_TRAFFICWARDEN", TIMER_SOCK_TRAFFICWARDEN, JSPROP_ENUMPERMRO, nullptr, nullptr }, - { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } + { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } }; inline JSPropertySpec CRaceProperties[] = @@ -140,7 +140,7 @@ inline JSPropertySpec CRaceProperties[] = { "magicResistance", CRP_MAGICRESISTANCE, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "visibleDistance", CRP_VISIBLEDISTANCE, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "nightVision", CRP_NIGHTVISION, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } + { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } }; @@ -177,7 +177,7 @@ inline JSPropertySpec CRegionProperties[] = { "music", CREGP_MUSIC, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "weather", CREGP_WEATHER, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "owner", CREGP_OWNER, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } + { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } }; inline JSPropertySpec CSpawnRegionProperties[] = @@ -205,7 +205,7 @@ inline JSPropertySpec CSpawnRegionProperties[] = { "minTime", CSPAWNREGP_MINTIME, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "maxTime", CSPAWNREGP_MAXTIME, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "call", CSPAWNREGP_CALL, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } + { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } }; inline JSPropertySpec CGuildProperties[] = @@ -221,7 +221,7 @@ inline JSPropertySpec CGuildProperties[] = { "charter", CGP_CHARTER, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "abbreviation", CGP_ABBREVIATION, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "webPage", CGP_WEBPAGE, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } + { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } }; inline JSPropertySpec CCharacterProps[] = @@ -395,6 +395,7 @@ inline JSPropertySpec CCharacterProps[] = { "loyalty", CCP_LOYALTY, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "loyaltyRate", CCP_LOYALTYRATE, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "shouldSave", CCP_SHOULDSAVE, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "origin", CCP_ORIGIN, JSPROP_ENUMANDPERM }, { "partyLootable", CCP_PARTYLOOTABLE, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "party", CCP_PARTY, JSPROP_ENUMPERMRO, nullptr, nullptr }, { "multi", CCP_MULTI, JSPROP_ENUMANDPERM, nullptr, nullptr }, @@ -403,7 +404,7 @@ inline JSPropertySpec CCharacterProps[] = { "createdOn", CCP_CREATEDON, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "housesOwned", CCP_HOUSESOWNED, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "housesCoOwned", CCP_HOUSESCOOWNED, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } + { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } }; inline JSPropertySpec CItemProps[] = @@ -523,6 +524,7 @@ inline JSPropertySpec CItemProps[] = { "baseRange", CIP_BASERANGE, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "region", CIP_REGION, JSPROP_ENUMPERMRO, nullptr, nullptr }, { "spawnSerial", CIP_SPAWNSERIAL, JSPROP_ENUMPERMRO, nullptr, nullptr }, + { "origin", CIP_ORIGIN, JSPROP_ENUMANDPERM }, { "isItemHeld", CIP_ISITEMHELD, JSPROP_ENUMANDPERM, nullptr, nullptr }, // The Following vars are specific to CSpawnItem objects @@ -554,7 +556,7 @@ inline JSPropertySpec CItemProps[] = { "tradeTimestamp", CIP_TRADETIMESTAMP, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "banX", CIP_BANX, JSPROP_ENUMANDPERM, nullptr, nullptr}, { "banY", CIP_BANY, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } + { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } }; inline JSPropertySpec CSocketProps[] = @@ -595,7 +597,7 @@ inline JSPropertySpec CSocketProps[] = { "target", CSOCKP_TARGET, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "tempObj", CSOCKP_TEMPOBJ, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "tempObj2", CSOCKP_TEMPOBJ2, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } + { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } }; inline JSPropertySpec CSkillsProps[] = @@ -664,9 +666,9 @@ inline JSPropertySpec CSkillsProps[] = inline JSPropertySpec CGumpDataProperties[] = { - { "buttons", CGumpData_Button, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "IDs", CGumpData_ID , JSPROP_ENUMANDPERM, nullptr, nullptr }, - { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } + { "buttons", CGumpData_Button, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "IDs", CGumpData_ID , JSPROP_ENUMANDPERM, nullptr, nullptr }, + { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } }; inline JSPropertySpec CAccountProperties[] = @@ -678,61 +680,61 @@ inline JSPropertySpec CAccountProperties[] = { "path", CACCOUNT_PATH, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "comment", CACCOUNT_COMMENT, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "timeban", CACCOUNT_TIMEBAN, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "firstLogin", CACCOUNT_FIRSTLOGIN, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "character1", CACCOUNT_CHARACTER1, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "character2", CACCOUNT_CHARACTER2, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "character3", CACCOUNT_CHARACTER3, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "character4", CACCOUNT_CHARACTER4, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "character5", CACCOUNT_CHARACTER5, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "character6", CACCOUNT_CHARACTER6, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "character7", CACCOUNT_CHARACTER7, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "firstLogin", CACCOUNT_FIRSTLOGIN, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "character1", CACCOUNT_CHARACTER1, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "character2", CACCOUNT_CHARACTER2, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "character3", CACCOUNT_CHARACTER3, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "character4", CACCOUNT_CHARACTER4, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "character5", CACCOUNT_CHARACTER5, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "character6", CACCOUNT_CHARACTER6, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "character7", CACCOUNT_CHARACTER7, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "currentChar", CACCOUNT_CURRENTCHAR, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "lastIP", CACCOUNT_LASTIP, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "lastIP", CACCOUNT_LASTIP, JSPROP_ENUMANDPERM, nullptr, nullptr }, // Flags - { "isBanned", CACCOUNT_BANNED, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "isSuspended", CACCOUNT_SUSPENDED, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "isPublic", CACCOUNT_PUBLIC, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "isOnline", CACCOUNT_ONLINE, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "isSlot1Blocked", CACCOUNT_CHARSLOT1BLOCKED, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "isSlot2Blocked", CACCOUNT_CHARSLOT2BLOCKED, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "isSlot3Blocked", CACCOUNT_CHARSLOT3BLOCKED, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "isSlot4Blocked", CACCOUNT_CHARSLOT4BLOCKED, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "isSlot5Blocked", CACCOUNT_CHARSLOT5BLOCKED, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "isSlot6Blocked", CACCOUNT_CHARSLOT6BLOCKED, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "isSlot7Blocked", CACCOUNT_CHARSLOT7BLOCKED, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "unused9", CACCOUNT_UNUSED9, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "unused10", CACCOUNT_UNUSED10, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "isSeer", CACCOUNT_SEER, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "isCounselor", CACCOUNT_COUNSELOR, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "isGM", CACCOUNT_GM, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } + { "isBanned", CACCOUNT_BANNED, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "isSuspended", CACCOUNT_SUSPENDED, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "isPublic", CACCOUNT_PUBLIC, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "isOnline", CACCOUNT_ONLINE, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "isSlot1Blocked", CACCOUNT_CHARSLOT1BLOCKED, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "isSlot2Blocked", CACCOUNT_CHARSLOT2BLOCKED, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "isSlot3Blocked", CACCOUNT_CHARSLOT3BLOCKED, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "isSlot4Blocked", CACCOUNT_CHARSLOT4BLOCKED, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "isSlot5Blocked", CACCOUNT_CHARSLOT5BLOCKED, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "isSlot6Blocked", CACCOUNT_CHARSLOT6BLOCKED, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "isSlot7Blocked", CACCOUNT_CHARSLOT7BLOCKED, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "unused9", CACCOUNT_UNUSED9, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "unused10", CACCOUNT_UNUSED10, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "isSeer", CACCOUNT_SEER, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "isCounselor", CACCOUNT_COUNSELOR, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "isGM", CACCOUNT_GM, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } }; inline JSPropertySpec CConsoleProperties[] = { - { "mode", CCONSOLE_MODE, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "logEcho", CCONSOLE_LOGECHO, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } + { "mode", CCONSOLE_MODE, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "logEcho", CCONSOLE_LOGECHO, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } }; inline JSPropertySpec CScriptSectionProperties[] = { - { "numTags", CSS_NUMTAGS, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "atEnd", CSS_ATEND, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "atEndTags", CSS_ATENDTAGS, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } + { "numTags", CSS_NUMTAGS, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "atEnd", CSS_ATEND, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "atEndTags", CSS_ATENDTAGS, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } }; inline JSPropertySpec CResourceProperties[] = { - { "logAmount", CRESP_LOGAMT, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "logTime", CRESP_LOGTIME, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "oreAmount", CRESP_OREAMT, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "oreTime", CRESP_ORETIME, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "fishAmount", CRESP_FISHAMT, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { "fishTime", CRESP_FISHTIME, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } + { "logAmount", CRESP_LOGAMT, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "logTime", CRESP_LOGTIME, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "oreAmount", CRESP_OREAMT, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "oreTime", CRESP_ORETIME, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "fishAmount", CRESP_FISHAMT, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { "fishTime", CRESP_FISHTIME, JSPROP_ENUMANDPERM, nullptr, nullptr }, + { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } }; inline JSPropertySpec CPartyProperties[] = @@ -740,7 +742,7 @@ inline JSPropertySpec CPartyProperties[] = { "leader", CPARTYP_LEADER, JSPROP_ENUMANDPERM, nullptr, nullptr }, { "memberCount", CPARTYP_MEMBERCOUNT, JSPROP_ENUMPERMRO, nullptr, nullptr }, { "isNPC", CPARTYP_ISNPC, JSPROP_ENUMANDPERM, nullptr, nullptr }, - { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } + { nullptr, static_cast(0), static_cast(0), nullptr, nullptr } }; #endif diff --git a/source/cBaseObject.h b/source/cBaseObject.h index 48f2ce1a0..943c43a4a 100644 --- a/source/cBaseObject.h +++ b/source/cBaseObject.h @@ -48,53 +48,54 @@ enum UpdateTypes class CBaseObject { protected: - TAGMAP2 tags; - TAGMAP2 tempTags; - std::string title; - ObjectType objType; - RACEID race; - SI16 x; - SI16 y; - SI08 z; - UI16 id; - UI16 colour; - UI08 dir; - SERIAL serial; - CMultiObj *multis; - SERIAL spawnSerial; - SERIAL owner; - UI08 worldNumber; - UI16 instanceId; - SI16 strength; - SI16 dexterity; - SI16 intelligence; - SI16 hitpoints; - VisibleTypes visible; - SI16 hiDamage; - SI16 loDamage; - SI32 weight; - SI16 mana; - SI16 stamina; - UI16 scriptTrig; - SI16 st2; - SI16 dx2; - SI16 in2; - mutable SI32 FilePosition; - SERIAL tempMulti; - std::string name; - std::string sectionId; + TAGMAP2 tags; + TAGMAP2 tempTags; + std::string title; + ObjectType objType; + RACEID race; + SI16 x; + SI16 y; + SI08 z; + UI16 id; + UI16 colour; + UI08 dir; + SERIAL serial; + CMultiObj *multis; + SERIAL spawnSerial; + SERIAL owner; + UI08 worldNumber; + UI16 instanceId; + SI16 strength; + SI16 dexterity; + SI16 intelligence; + SI16 hitpoints; + VisibleTypes visible; + SI16 hiDamage; + SI16 loDamage; + SI32 weight; + SI16 mana; + SI16 stamina; + UI16 scriptTrig; + SI16 st2; + SI16 dx2; + SI16 in2; + mutable SI32 FilePosition; + SERIAL tempMulti; + std::string name; + std::string sectionId; std::vector scriptTriggers; - UI08 poisoned; - SI16 carve; // Carve.dfn entry - SI16 oldLocX; - SI16 oldLocY; - SI08 oldLocZ; - SI16 oldTargLocX; - SI16 oldTargLocY; - SI16 fame; - SI16 karma; - SI16 kills; - UI16 subRegion; + UI08 poisoned; + SI16 carve; // Carve.dfn entry + SI16 oldLocX; + SI16 oldLocY; + SI08 oldLocZ; + SI16 oldTargLocX; + SI16 oldTargLocY; + SI16 fame; + SI16 karma; + SI16 kills; + UI16 subRegion; + std::string origin; // Stores expansion item originates from void RemoveFromMulti( bool fireTrigger = true ); void AddToMulti( bool fireTrigger = true ); @@ -103,7 +104,7 @@ class CBaseObject UI16 resistances[WEATHNUM]; - SERIAL tempContainerSerial; + SERIAL tempContainerSerial; bool nameRequestActive; @@ -111,29 +112,33 @@ class CBaseObject public: - Point3_st GetOldLocation( void ); + Point3_st GetOldLocation( void ); - size_t GetNumTags( void ) const; + size_t GetNumTags( void ) const; - TAGMAPOBJECT GetTag( std::string tagname ) const; + TAGMAPOBJECT GetTag( std::string tagname ) const; void SetTag( std::string tagname, TAGMAPOBJECT tagval ); - TAGMAPOBJECT GetTempTag( std::string tempTagName ) const; + TAGMAPOBJECT GetTempTag( std::string tempTagName ) const; void SetTempTag( std::string tempTagName, TAGMAPOBJECT tagVal ); void SetResist( UI16 newValue, WeatherType damage ); UI16 GetResist( WeatherType damage ) const; void SetTitle( std::string newtitle ); - std::string GetTitle( void ) const; - virtual void SetMana( SI16 mn ); + std::string GetTitle( void ) const; + + void SetOrigin( std::string newOrigin ); + std::string GetOrigin( void ) const; + + virtual void SetMana( SI16 mn ); SI16 GetMana( void ) const; - virtual void SetStamina( SI16 stam ); + virtual void SetStamina( SI16 stam ); SI16 GetStamina( void ) const; SI32 GetFilePosition( void ) const; SI32 SetFilePosition( SI32 filepos ); - virtual ~CBaseObject(); + virtual ~CBaseObject(); CBaseObject( void ); SI16 GetOldTargLocX( void ) const; @@ -141,7 +146,7 @@ class CBaseObject SI16 GetX( void ) const; SI16 GetY( void ) const; SI08 GetZ( void ) const; - Point3_st GetLocation( void ) const; + Point3_st GetLocation( void ) const; void SetOldTargLocX( SI16 newvalue ); void SetOldTargLocY( SI16 newvalue ); @@ -149,10 +154,10 @@ class CBaseObject void SetY( SI16 newValue ); void SetZ( SI08 newValue ); void WalkXY( SI16 newX, SI16 newY ); - virtual void SetOldLocation( SI16 newX, SI16 newY, SI08 newZ ) = 0; - virtual void SetLocation( SI16 newX, SI16 newY, SI08 newZ, UI08 world, UI16 instanceId ) = 0; - virtual void SetLocation( SI16 newX, SI16 newY, SI08 newZ ) = 0; - virtual void SetLocation( const CBaseObject *toSet ) = 0; + virtual void SetOldLocation( SI16 newX, SI16 newY, SI08 newZ ) = 0; + virtual void SetLocation( SI16 newX, SI16 newY, SI08 newZ, UI08 world, UI16 instanceId ) = 0; + virtual void SetLocation( SI16 newX, SI16 newY, SI08 newZ ) = 0; + virtual void SetLocation( const CBaseObject *toSet ) = 0; UI16 GetId( void ) const; UI16 GetColour( void ) const; @@ -164,15 +169,15 @@ class CBaseObject void SetId( UI08 newValue, UI08 part ); SI32 GetWeight( void ) const; - virtual void SetWeight( SI32 newVal, bool doWeightUpdate = true ) = 0; + virtual void SetWeight( SI32 newVal, bool doWeightUpdate = true ) = 0; - SERIAL GetSerial( void ) const; - SERIAL GetSpawn( void ) const; - SERIAL GetOwner( void ) const; - SERIAL GetMulti( void ) const; - CMultiObj * GetMultiObj( void ) const; - CSpawnItem * GetSpawnObj( void ) const; - CChar * GetOwnerObj( void ) const; + SERIAL GetSerial( void ) const; + SERIAL GetSpawn( void ) const; + SERIAL GetOwner( void ) const; + SERIAL GetMulti( void ) const; + CMultiObj * GetMultiObj( void ) const; + CSpawnItem * GetSpawnObj( void ) const; + CChar * GetOwnerObj( void ) const; UI08 GetSerial( UI08 part ) const; UI08 GetSpawn( UI08 part ) const; @@ -181,45 +186,45 @@ class CBaseObject void SetMulti( CMultiObj *newMulti, bool fireTrigger = true ); void SetSerial( SERIAL newSerial ); void SetSpawn( SERIAL newSpawn ); - virtual void SetOwner( CChar *newOwner ); + virtual void SetOwner( CChar *newOwner ); - virtual bool Save( std::ofstream &outStream ) = 0; - virtual bool DumpHeader( std::ofstream &outStream ) const = 0; - virtual bool DumpBody( std::ofstream &outStream ) const; + virtual bool Save( std::ofstream &outStream ) = 0; + virtual bool DumpHeader( std::ofstream &outStream ) const = 0; + virtual bool DumpBody( std::ofstream &outStream ) const; bool DumpFooter( std::ofstream &outStream ) const; bool Load( std::ifstream &inStream ); - virtual bool HandleLine( std::string &UTag, std::string &data ); + virtual bool HandleLine( std::string &UTag, std::string &data ); - RACEID GetRace( void ) const; + RACEID GetRace( void ) const; void SetRace( RACEID newValue ); - std::string GetNameRequest( CChar *nameRequester ); - std::string GetName( void ) const; + std::string GetNameRequest( CChar *nameRequester ); + std::string GetName( void ) const; void SetName( std::string newName ); - std::string GetSectionId( void ) const; + std::string GetSectionId( void ) const; void SetSectionId( std::string newSectionID ); - virtual SI16 GetStrength( void ) const; - virtual SI16 GetDexterity( void ) const; - virtual SI16 GetIntelligence( void ) const; + virtual SI16 GetStrength( void ) const; + virtual SI16 GetDexterity( void ) const; + virtual SI16 GetIntelligence( void ) const; SI16 GetHP( void ) const; - virtual void SetStrength( SI16 newValue ); - virtual void SetDexterity( SI16 newValue ); - virtual void SetIntelligence( SI16 newValue ); - virtual void SetHP( SI16 newValue ); + virtual void SetStrength( SI16 newValue ); + virtual void SetDexterity( SI16 newValue ); + virtual void SetIntelligence( SI16 newValue ); + virtual void SetHP( SI16 newValue ); void IncHP( SI16 amtToChange ); void SetDir( UI08 newDir, bool sendUpdate = true ); UI08 GetDir( void ) const; void SetVisible( VisibleTypes newValue ); - VisibleTypes GetVisible( void ) const; + VisibleTypes GetVisible( void ) const; - ObjectType GetObjType( void ) const; - virtual bool CanBeObjType( ObjectType toCompare ) const; + ObjectType GetObjType( void ) const; + virtual bool CanBeObjType( ObjectType toCompare ) const; SI16 GetHiDamage( void ) const; SI16 GetLoDamage( void ) const; @@ -237,16 +242,16 @@ class CBaseObject SI16 GetDexterity2( void ) const; SI16 GetIntelligence2( void ) const; - virtual void SetStrength2( SI16 nVal ); - virtual void SetDexterity2( SI16 nVal ); - virtual void SetIntelligence2( SI16 nVal ); + virtual void SetStrength2( SI16 nVal ); + virtual void SetDexterity2( SI16 nVal ); + virtual void SetIntelligence2( SI16 nVal ); void IncStrength( SI16 toInc = 1 ); void IncDexterity( SI16 toInc = 1 ); void IncIntelligence( SI16 toInc = 1 ); - virtual void PostLoadProcessing( void ); - virtual bool LoadRemnants( void ) = 0; + virtual void PostLoadProcessing( void ); + virtual bool LoadRemnants( void ) = 0; UI08 WorldNumber( void ) const; void WorldNumber( UI08 value ); @@ -258,21 +263,21 @@ class CBaseObject void SetSubRegion( UI16 value ); UI08 GetPoisoned( void ) const; - virtual void SetPoisoned( UI08 newValue ); + virtual void SetPoisoned( UI08 newValue ); SI16 GetCarve( void ) const; void SetCarve( SI16 newValue ); - virtual void Update( CSocket *mSock = nullptr, bool drawGamePlayer = false, bool sendToSelf = true ) = 0; - virtual void SendToSocket( CSocket *mSock, bool drawGamePlayer = false ) = 0; - virtual void Dirty( UpdateTypes updateType ); + virtual void Update( CSocket *mSock = nullptr, bool drawGamePlayer = false, bool sendToSelf = true ) = 0; + virtual void SendToSocket( CSocket *mSock, bool drawGamePlayer = false ) = 0; + virtual void Dirty( UpdateTypes updateType ); void RemoveFromRefreshQueue( void ); - virtual void Delete( void ) = 0; - virtual void Cleanup( void ); + virtual void Delete( void ) = 0; + virtual void Cleanup( void ); - virtual void RemoveSelfFromOwner( void ) = 0; - virtual void AddSelfToOwner( void ) = 0; + virtual void RemoveSelfFromOwner( void ) = 0; + virtual void AddSelfToOwner( void ) = 0; bool IsFree( void ) const; bool IsDeleted( void ) const; diff --git a/source/cBaseobject.cpp b/source/cBaseobject.cpp index c118878bd..a5747842b 100644 --- a/source/cBaseobject.cpp +++ b/source/cBaseobject.cpp @@ -741,6 +741,7 @@ bool CBaseObject::DumpBody( std::ofstream &outStream ) const std::string myLocation = "Location=" + std::to_string( x ) + "," + std::to_string( y ) + "," +std::to_string( z ) + "," + std::to_string( worldNumber ) + "," + std::to_string( instanceId ) + newLine; outStream << myLocation; outStream << "Title=" << title << newLine; + outStream << "Origin=" << origin << newLine; //=========== BUG (= For Characters the dex+str+int malis get saved and get rebuilt on next serverstartup = increasing malis) temp_st2 = st2; @@ -1416,6 +1417,21 @@ void CBaseObject::SetTitle( std::string newtitle ) title = newtitle.substr( 0, MAX_TITLE - 1 ); } +//o------------------------------------------------------------------------------------------------o +//| Function - CBaseObject::GetOrigin() +//| CBaseObject::SetOrigin() +//o------------------------------------------------------------------------------------------------o +//| Purpose - Gets/Sets the object's origin +//o------------------------------------------------------------------------------------------------o +std::string CBaseObject::GetOrigin( void ) const +{ + return origin; +} +void CBaseObject::SetOrigin( std::string newOrigin ) +{ + origin = newOrigin.substr( 0, MAX_ORIGIN ); +} + //o------------------------------------------------------------------------------------------------o //| Function - CBaseObject::GetScriptTriggers() //o------------------------------------------------------------------------------------------------o @@ -1896,7 +1912,11 @@ bool CBaseObject::HandleLine( std::string &UTag, std::string &data ) } break; case 'O': - if( UTag == "OWNERID" ) + if( UTag == "ORIGIN" ) + { + origin = data.substr( 0, MAX_ORIGIN - 1 ); + } + else if( UTag == "OWNERID" ) { owner = oldstrutil::value( data ); } @@ -2452,6 +2472,7 @@ void CBaseObject::CopyData( CBaseObject *target ) { target->SetSectionId( GetSectionId() ); target->SetTitle( GetTitle() ); + target->SetOrigin( GetOrigin() ); target->SetRace( GetRace() ); target->SetName( GetName() ); target->SetStrength( GetStrength() ); diff --git a/source/cChar.h b/source/cChar.h index 532f251ac..525b0ef5f 100644 --- a/source/cChar.h +++ b/source/cChar.h @@ -67,7 +67,7 @@ class CChar : public CBaseObject SI08 wanderMode; // NPC Wander Mode SI08 oldWanderMode; // Used for fleeing npcs - SERIAL fTarg; // NPC Follow Target + SERIAL fTarg; // NPC Follow Target SI16 fx[2]; //NPC Wander Point x SI16 fy[2]; //NPC Wander Point y SI08 fz; //NPC Wander Point z @@ -85,8 +85,8 @@ class CChar : public CBaseObject UI08 questDestRegion; UI08 questOrigRegion; CBaseObject * petGuarding; - cNPC_FLAG npcFlag; - std::bitset<8> boolFlags; + cNPC_FLAG npcFlag; + std::bitset<8> boolFlags; SI16 peaceing; SI16 provoing; @@ -126,23 +126,23 @@ class CChar : public CBaseObject SERIAL callNum; // Callnum GM or Counsellor is on SERIAL playerCallNum; // Players call number in GM or Counsellor requestQueue SERIAL trackingTarget; // Tracking target ID - UI08 squelched; // Squelching - UI08 commandLevel; // 0 = player, 1 = counselor, 2 = GM - UI08 postType; - UI16 hairStyle; - UI16 beardStyle; + UI08 squelched; // Squelching + UI08 commandLevel; // 0 = player, 1 = counselor, 2 = GM + UI08 postType; + UI16 hairStyle; + UI16 beardStyle; COLOUR hairColour; COLOUR beardColour; CItem * speechItem; - UI08 speechMode; - UI08 speechId; + UI08 speechMode; + UI08 speechId; cScript * speechCallback; SERIAL robe; - UI16 accountNum; - UI16 origSkin; - UI16 origId; // Backup of body type for polymorph - UI08 fixedLight; // Fixed lighting level (For chars in dungeons, where they dont see the night) - UI16 deaths; + UI16 accountNum; + UI16 origSkin; + UI16 origId; // Backup of body type for polymorph + UI08 fixedLight; // Fixed lighting level (For chars in dungeons, where they dont see the night) + UI16 deaths; CSocket * socket; std::vector trackingTargets; @@ -181,34 +181,34 @@ class CChar : public CBaseObject SI08 fontType; // Speech font to use UI16 maxHP; UI16 maxHP_oldstr; - RACEID oldRace; + RACEID oldRace; SI16 maxMana; UI16 maxMana_oldint; SI16 maxStam; UI16 maxStam_olddex; - COLOUR sayColor; - COLOUR emoteColor; - SI08 cell; // Reserved for jailing players - CItem * packItem; // Characters backpack - SERIAL targ; // Current combat target - SERIAL attacker; // Character who attacked this character + COLOUR sayColor; + COLOUR emoteColor; + SI08 cell; // Reserved for jailing players + CItem * packItem; // Characters backpack + SERIAL targ; // Current combat target + SERIAL attacker; // Character who attacked this character SI08 hunger; // Level of hungerness, 6 = full, 0 = "empty" SI08 thirst; // Level of thirstiness, 6 = full, 0 = "empty" UI16 regionNum; - UI16 town; // Matches Region number in regions.dfn + UI16 town; // Matches Region number in regions.dfn UI08 brkPeaceChanceGain; UI08 brkPeaceChance; - UI16 advObj; //Has used advance gate? - SERIAL guildFealty; // Serial of player you are loyal to (default=yourself) (DasRaetsel) - SI16 guildNumber; // Number of guild player is in (0=no guild) (DasRaetsel) - UI08 flag; //1=red 2=grey 4=Blue 8=green 10=Orange // should it not be 0x10??? sounds like we're trying to do - SI08 spellCast; - UI08 nextAct; //time to next spell action.. - SI08 stealth; // stealth ( steps already done, -1=not using ) - UI08 running; // Stamina Loose while running - RACEID raceGate; // Race gate that has been used - UI08 step; // 1 if step 1 0 if step 2 3 if step 1 skip 2 if step 2 skip + UI16 advObj; // Has used advance gate? + SERIAL guildFealty; // Serial of player you are loyal to (default=yourself) (DasRaetsel) + SI16 guildNumber; // Number of guild player is in (0=no guild) (DasRaetsel) + UI08 flag; // 1=red 2=grey 4=Blue 8=green 10=Orange // should it not be 0x10??? sounds like we're trying to do + SI08 spellCast; + UI08 nextAct; // time to next spell action.. + SI08 stealth; // stealth ( steps already done, -1=not using ) + UI08 running; // Stamina Loose while running + RACEID raceGate; // Race gate that has been used + UI08 step; // 1 if step 1 0 if step 2 3 if step 1 skip 2 if step 2 skip std::bitset<16> priv; @@ -217,14 +217,14 @@ class CChar : public CBaseObject TIMERVAL charTimers[tCHAR_COUNT]; TIMERVAL regen[3]; - TIMERVAL weathDamage[WEATHNUM]; // Light Damage timer + TIMERVAL weathDamage[WEATHNUM]; // Light Damage timer - UI08 PoisonStrength; + UI08 PoisonStrength; BodyType bodyType; - UI32 lastMoveTime; // Timestamp for when character moved last + UI32 lastMoveTime; // Timestamp for when character moved last - SKILLVAL baseskill[ALLSKILLS]; // Base skills without stat modifiers - SKILLVAL skill[INTELLECT+1]; // List of skills (with stat modifiers) + SKILLVAL baseskill[ALLSKILLS]; // Base skills without stat modifiers + SKILLVAL skill[INTELLECT+1]; // List of skills (with stat modifiers) LAYERLIST itemLayers; LAYERLIST_ITERATOR layerCtr; diff --git a/source/cItem.h b/source/cItem.h index ef5bfb74f..894427b57 100644 --- a/source/cItem.h +++ b/source/cItem.h @@ -16,55 +16,55 @@ class CItem : public CBaseObject protected: GenericList Contains; - CBaseObject * contObj; + CBaseObject * contObj; UI08 glowEffect; - SERIAL glow; // identifies glowing objects - COLOUR glowColour; - SI08 madeWith; // Store the skills used to make this item + SERIAL glow; // identifies glowing objects + COLOUR glowColour; + SI08 madeWith; // Store the skills used to make this item SI32 rndValueRate; // Store the value calculated base on RANDOMVALUE in region.dfn - SI16 good; // Store type of GOODs to trade system! (Plz not set as UNSIGNED) + SI16 good; // Store type of GOODs to trade system! (Plz not set as UNSIGNED) // for example: RANK 5 --> 5*10 = 50% of malus // this item has same values decreased by 50%.. // RANK 1 --> 1*10=10% this item has 90% of malus! // RANK 10 --> 10*10 = 100% this item has no malus! RANK 10 is automatically setted if you select RANKSYSTEM 0. // Vars: LODAMAGE, HIDAMAGE, ATT, DEF, HP, MAXHP - SI08 rank; // for rank system, this value is the LEVEL of the item from 1 to 10. Simply multiply t he rank*10 and calculate the MALUS this item has from the original. - ARMORCLASS armorClass; - UI16 restock; // Number up to which shopkeeper should restock this item - SI08 movable; // 0=Default as stored in client, 1=Always movable, 2=Never movable, 3=Owner movable. + SI08 rank; // for rank system, this value is the LEVEL of the item from 1 to 10. Simply multiply t he rank*10 and calculate the MALUS this item has from the original. + ARMORCLASS armorClass; + UI16 restock; // Number up to which shopkeeper should restock this item + SI08 movable; // 0=Default as stored in client, 1=Always movable, 2=Never movable, 3=Owner movable. TIMERVAL tempTimer; TIMERVAL decayTime; - UI08 spd; //The speed of the weapon - UI16 maxHp; // Max number of hit points an item can have. - UI16 amount; // Amount of items in pile - ItemLayers layer; // Layer if equipped on paperdoll - ItemTypes type; // For things that do special things on doubleclicking - SI08 offspell; - UI16 entryMadeFrom; - SERIAL creator; // Store the serial of the player made this item - SI08 gridLoc; + UI08 spd; // The speed of the weapon + UI16 maxHp; // Max number of hit points an item can have. + UI16 amount; // Amount of items in pile + ItemLayers layer; // Layer if equipped on paperdoll + ItemTypes type; // For things that do special things on doubleclicking + SI08 offspell; + UI16 entryMadeFrom; + SERIAL creator; // Store the serial of the player made this item + SI08 gridLoc; std::bitset<8> bools; - std::bitset<8> priv; // Bit 0, decay off/on. Bit 1, newbie item off/on. Bit 2 Dispellable + std::bitset<8> priv; // Bit 0, decay off/on. Bit 1, newbie item off/on. Bit 2 Dispellable std::string name2; std::string desc; - std::string eventName; // Name of custom event item belongs to + std::string eventName; // Name of custom event item belongs to UI32 tempVars[CITV_COUNT]; - SI32 weightMax; //Maximum weight a container can hold - SI32 baseWeight; //Base weight of item. Applied when item is created for the first time, based on weight. Primarily used to determine base weight of containers + SI32 weightMax; // Maximum weight a container can hold + SI32 baseWeight; // Base weight of item. Applied when item is created for the first time, based on weight. Primarily used to determine base weight of containers UI16 maxItems; // Maximum amount of items a container can hold UI08 maxRange; // Max range of ranged weapon - UI08 baseRange; // Base range of thrown weapon + UI08 baseRange; // Base range of thrown weapon UI16 maxUses; // Max number of uses an item can have UI16 usesLeft; // Current number of uses left on an item - UI08 dir; //direction an item can have + UI08 dir; // direction an item can have UI32 value[3]; // Price a shopkeep buys and sells items for, with price on player vendor as optional third value UI16 ammo[2]; // Ammo ID and Hue - UI16 ammoFX[3]; // Ammo-effect ID, Hue and rendermode + UI16 ammoFX[3]; // Ammo-effect ID, Hue and rendermode UI16 regionNum; diff --git a/source/cMultiObj.h b/source/cMultiObj.h index 0db47e427..40a9dd141 100644 --- a/source/cMultiObj.h +++ b/source/cMultiObj.h @@ -23,7 +23,7 @@ class CMultiObj : public CItem UI16 maxVendors; std::vector trashContainerList; - UI16 maxTrashContainers; + UI16 maxTrashContainers; std::vector vendorList; diff --git a/source/cRaces.h b/source/cRaces.h index df9f80b14..211f42afa 100644 --- a/source/cRaces.h +++ b/source/cRaces.h @@ -30,20 +30,20 @@ class CRace //SKILLVAL iSkills[SKILLS]; std::string raceName; - std::bitset<8> bools; - RANGE visDistance; + std::bitset<8> bools; + RANGE visDistance; LIGHTLEVEL nightVision; ARMORCLASS armourRestrict; LIGHTLEVEL lightLevel; - GENDER restrictGender; - SKILLVAL languageMin; - R32 poisonResistance; // % of poison to cancel - R32 magicResistance; // % of magic to cancel + GENDER restrictGender; + SKILLVAL languageMin; + R32 poisonResistance; // % of poison to cancel + R32 magicResistance; // % of magic to cancel COLOURLIST beardColours; COLOURLIST hairColours; COLOURLIST skinColours; - COLOUR bloodColour; + COLOUR bloodColour; RACEIDLIST racialEnemies; diff --git a/source/cScript.cpp b/source/cScript.cpp index 7cf69e7fc..af85794a6 100644 --- a/source/cScript.cpp +++ b/source/cScript.cpp @@ -128,7 +128,7 @@ static JSFunctionSpec my_functions[] = { "Moon", SE_Moon, 2, 0, 0 }, { "GetTownRegion", SE_GetTownRegion, 1, 0, 0 }, - { "GetSpawnRegion", SE_GetSpawnRegion, 1, 0, 0 }, + { "GetSpawnRegion", SE_GetSpawnRegion, 4, 0, 0 }, { "GetSpawnRegionCount", SE_GetSpawnRegionCount, 0, 0, 0 }, diff --git a/source/cServerData.cpp b/source/cServerData.cpp index 5c5802bc2..4f6f719c3 100644 --- a/source/cServerData.cpp +++ b/source/cServerData.cpp @@ -2808,9 +2808,9 @@ auto CServerData::HirelingCombatTraining() const -> bool { return boolVals.test( BIT_HIRELINGCOMBATTRAINING ); } -auto CServerData::HirelingCombatTraining( [[maybe_unused]] bool newVal ) -> void +auto CServerData::HirelingCombatTraining( bool newVal ) -> void { - boolVals.set( BIT_HIRELINGCOMBATTRAINING ); + boolVals.set( BIT_HIRELINGCOMBATTRAINING, newVal ); } //o------------------------------------------------------------------------------------------------o diff --git a/source/cSocket.h b/source/cSocket.h index 67b0ec982..f345de569 100644 --- a/source/cSocket.h +++ b/source/cSocket.h @@ -103,20 +103,20 @@ class CSocket bool logging; UI08 range; bool cryptclient; - size_t cliSocket; // client + size_t cliSocket; // client SI16 walkSequence; - size_t postAckCount; + size_t postAckCount; PickupLocations pSpot; - SERIAL pFrom; + SERIAL pFrom; SI16 pX; SI16 pY; SI08 pZ; - UnicodeTypes lang; - ClientTypes cliType; + UnicodeTypes lang; + ClientTypes cliType; ClientVersions cliVerShort; - UI32 clientVersion; + UI32 clientVersion; UI32 bytesReceived; UI32 bytesSent; @@ -137,7 +137,7 @@ class CSocket UI08 clientip[4]; bool loginComplete; - CItem * cursorItem; //pointer to item held on mouse cursor + CItem * cursorItem; //pointer to item held on mouse cursor UI16 bytesRecvWarningCount; UI16 bytesSentWarningCount; diff --git a/source/cVersionClass.cpp b/source/cVersionClass.cpp index 3467b8d0a..7493b717e 100644 --- a/source/cVersionClass.cpp +++ b/source/cVersionClass.cpp @@ -11,7 +11,7 @@ // product info //o------------------------------------------------------------------------------------------------o const std::string VER = "0.99"; -const std::string BUILD = "6-RC1"; +const std::string BUILD = "6-RC2"; const std::string REALBUILD = "0"; const std::string SVER = "2.0"; const std::string CVER = "2.0"; diff --git a/source/funcdecl.h b/source/funcdecl.h index d43623551..be05670e2 100644 --- a/source/funcdecl.h +++ b/source/funcdecl.h @@ -97,10 +97,10 @@ TIMERVAL GetPoisonTickTime( UI08 poisonStrength ); //o------------------------------------------------------------------------------------------------o // Amount related //o------------------------------------------------------------------------------------------------o -UI32 GetItemAmount( CChar *s, UI16 realId, UI16 realColour = 0x0000, UI32 realMoreVal = 0x0, bool colorCheck = false ); +UI32 GetItemAmount( CChar *s, UI16 realId, UI16 realColour = 0x0000, UI32 realMoreVal = 0x0, bool colorCheck = false, bool moreCheck = false, std::string sectionId = "" ); UI32 GetTotalItemCount( CItem *objCont ); -UI32 DeleteItemAmount( CChar *s, UI32 amount, UI16 realId, UI16 realColour = 0x0000, UI32 realMoreVal = 0x0 ); -UI32 DeleteSubItemAmount( CItem *p, UI32 amount, UI16 realId, UI16 realColour = 0x0000, UI32 realMoreVal = 0x0 ); +UI32 DeleteItemAmount( CChar *s, UI32 amount, UI16 realId, UI16 realColour = 0x0000, UI32 realMoreVal = 0x0, bool colorCheck = false, bool moreCheck = false, std::string sectionId = "" ); +UI32 DeleteSubItemAmount( CItem *p, UI32 amount, UI16 realId, UI16 realColour = 0x0000, UI32 realMoreVal = 0x0, bool colorCheck = false, bool moreCheck = false, std::string sectionId = "" ); UI32 GetBankCount( CChar *p, UI16 itemId, UI16 realColour = 0x0000, UI32 realMoreVal = 0x0 ); UI32 DeleteBankItem( CChar *p, UI32 amt, UI16 itemId, UI16 realColour = 0x0000, UI32 realMoreVal = 0x0 ); diff --git a/source/items.cpp b/source/items.cpp index 27f3a25e5..fe28fcff5 100644 --- a/source/items.cpp +++ b/source/items.cpp @@ -419,6 +419,7 @@ auto ApplyItemSection( CItem *applyTo, CScriptSection *toApply, std::string sect case DFNTAG_NAME2: applyTo->SetName2( cdata ); break; case DFNTAG_NEWBIE: applyTo->SetNewbie( true ); break; case DFNTAG_OFFSPELL: applyTo->SetOffSpell( static_cast( ndata )); break; + case DFNTAG_ORIGIN: applyTo->SetOrigin( cdata ); break; case DFNTAG_POISONDAMAGE: applyTo->SetWeatherDamage( POISON, ndata != 0 ); break; case DFNTAG_POISONED: applyTo->SetPoisoned( static_cast( ndata )); break; case DFNTAG_PILEABLE: applyTo->SetPileable( ndata != 0 ); break; @@ -507,6 +508,7 @@ auto ApplyItemSection( CItem *applyTo, CScriptSection *toApply, std::string sect break; } case DFNTAG_RAIN: applyTo->SetWeatherDamage( RAIN, ndata != 0 ); break; + case DFNTAG_SECTIONID: applyTo->SetSectionId( cdata ); break; case DFNTAG_SK_MADE: applyTo->SetMadeWith( static_cast( ndata )); break; case DFNTAG_SPD: applyTo->SetSpeed( static_cast( ndata )); break; case DFNTAG_STRENGTH: applyTo->SetStrength( static_cast( ndata )); break; @@ -946,7 +948,7 @@ auto cItem::CreateRandomItem( CItem *mCont, const std::string& sItemList, const // Loop through the items in the itemlist/lootlist int weightOfChosenItem = 0; - for( size_t j = 0; j < itemListSize; j++ ) + for( auto j = 0; j < static_cast( itemListSize ); j++ ) { auto csecs = oldstrutil::sections( oldstrutil::trim( oldstrutil::removeTrailing( ItemList->MoveTo( j ), "//" )), "|" ); if( csecs.size() == 2 ) @@ -1195,8 +1197,11 @@ CItem * cItem::CreateBaseScriptItem( CItem *mCont, std::string ourItem, const UI iCreated->SetAmount( iAmount ); } - // Keep reference to DFN sectionId item was created from - iCreated->SetSectionId( ourItem ); + // Keep reference to DFN sectionId item was created from (if it has not been set already via special DFN tag SECTIONID) + if( iCreated->GetSectionId() == "" ) + { + iCreated->SetSectionId( ourItem ); + } } return iCreated; diff --git a/source/magic.cpp b/source/magic.cpp index 3545c444e..20176dde0 100644 --- a/source/magic.cpp +++ b/source/magic.cpp @@ -4968,6 +4968,7 @@ void CMagic::LoadScript( void ) auto ssecs = oldstrutil::sections( data, " " ); if( ssecs.size() > 1 ) { + // This is used to load flags from old-style spells.dfn, where flags are written as FLAGS=## ## instead of FLAGS=0x#### spells[i].Flags((( static_cast( std::stoul( oldstrutil::trim( oldstrutil::removeTrailing( ssecs[0], "//" )), nullptr, 16 ))) << 8 ) | static_cast( std::stoul( oldstrutil::trim( oldstrutil::removeTrailing( ssecs[1], "//" )), nullptr, 16 ))); } @@ -5055,6 +5056,7 @@ void CMagic::LoadScript( void ) auto ssecs = oldstrutil::sections( data, " " ); if( ssecs.size() > 1 ) { + // This is used to load sounds from old-style spells.dfn, where soundfx are written as SOUNDFX=## ## instead of SOUNDFX=0x#### spells[i].Effect(((static_cast( std::stoul( oldstrutil::trim( oldstrutil::removeTrailing( ssecs[0], "//" )), nullptr, 16 )) << 8 ) | static_cast( std::stoul( oldstrutil::trim( oldstrutil::removeTrailing( ssecs[1], "//" )), nullptr, 16 )))); } diff --git a/source/mapstuff.cpp b/source/mapstuff.cpp index ee2cdfe6f..ce27cb30e 100644 --- a/source/mapstuff.cpp +++ b/source/mapstuff.cpp @@ -39,7 +39,7 @@ auto CMulHandler::LoadMapsDFN( const std::string &uodir ) -> std::mapCountOfEntries( maps_def ); std::map results; auto uopath = std::filesystem::path( uodir ); - for( size_t i = 0; i < entrycount; i++ ) + for( auto i = 0; i < static_cast( entrycount ); i++ ) { auto toFind = FileLookup->FindEntry( "MAP "s + std::to_string( i ), maps_def ); if( toFind == nullptr ) @@ -1965,7 +1965,7 @@ auto UltimaMap::ProcessEntry( [[maybe_unused]] std::size_t entry, std::size_t in { auto count = data.size() / 196; size_t block = ( static_cast( index ) * 0xC4000 ) / 196; - for( size_t i = 0; i < count; ++i ) + for( auto i = 0; i < static_cast( count ); ++i ) { auto ptr = data.data() + ( i * 196 ); if( block < _terrain.size() ) diff --git a/source/npcs.cpp b/source/npcs.cpp index 713acd976..9138fed2e 100644 --- a/source/npcs.cpp +++ b/source/npcs.cpp @@ -1427,6 +1427,7 @@ auto CCharStuff::ApplyNpcSection( CChar *applyTo, CScriptSection *NpcCreation, s applyTo->SetCanTrain( false ); } break; + case DFNTAG_ORIGIN: applyTo->SetOrigin( cdata ); break; case DFNTAG_POISONSTRENGTH: applyTo->SetPoisonStrength( static_cast( ndata )); break; case DFNTAG_PRIV: if( !isGate ) @@ -1552,6 +1553,7 @@ auto CCharStuff::ApplyNpcSection( CChar *applyTo, CScriptSection *NpcCreation, s case DFNTAG_RUNNINGSPEEDMOUNTED: applyTo->SetMountedRunningSpeed( std::stof( cdata )); break; + case DFNTAG_SECTIONID: applyTo->SetSectionId( cdata ); break; case DFNTAG_SKIN: applyTo->SetSkin( static_cast( ndata )); break; case DFNTAG_SHOPKEEPER: if( !isGate ) diff --git a/source/quantityfuncs.cpp b/source/quantityfuncs.cpp index 418cf3c2d..3dd1131ea 100644 --- a/source/quantityfuncs.cpp +++ b/source/quantityfuncs.cpp @@ -49,7 +49,7 @@ UI32 GetTotalItemCount( CItem *objCont ) //o------------------------------------------------------------------------------------------------o //| Purpose - Get the total amount of an item in a pack //o------------------------------------------------------------------------------------------------o -auto GetSubItemAmount( CItem *p, UI16 realId, UI16 realColour, UI32 realMoreVal, bool colorCheck = false ) -> UI32 +auto GetSubItemAmount( CItem *p, UI16 realId, UI16 realColour, UI32 realMoreVal, bool colorCheck = false, bool moreCheck = false, std::string sectionId = "" ) -> UI32 { UI32 total = 0; auto pCont = p->GetContainsList(); @@ -59,9 +59,12 @@ auto GetSubItemAmount( CItem *p, UI16 realId, UI16 realColour, UI32 realMoreVal, { if( i->GetId() != realId && ( i->GetType() == IT_CONTAINER || i->GetType() == IT_LOCKEDCONTAINER )) { - total += GetSubItemAmount( i, realId, realColour, realMoreVal ); + total += GetSubItemAmount( i, realId, realColour, realMoreVal, colorCheck, moreCheck, sectionId ); } - else if( i->GetId() == realId && ( !colorCheck || ( colorCheck && i->GetColour() == realColour ))) + else if( i->GetId() == realId + && ( !colorCheck || ( colorCheck && i->GetColour() == realColour )) + && ( !moreCheck || ( moreCheck && i->GetTempVar( CITV_MORE ) == realMoreVal )) + && ( sectionId == "" || sectionId == i->GetSectionId() )) { if( i->GetUsesLeft() > 0 ) { @@ -82,13 +85,13 @@ auto GetSubItemAmount( CItem *p, UI16 realId, UI16 realColour, UI32 realMoreVal, //o------------------------------------------------------------------------------------------------o //| Purpose - Get the total amount of an item on a character //o------------------------------------------------------------------------------------------------o -UI32 GetItemAmount( CChar *s, UI16 realId, UI16 realColour, UI32 realMoreVal, bool colorCheck ) +UI32 GetItemAmount( CChar *s, UI16 realId, UI16 realColour, UI32 realMoreVal, bool colorCheck, bool moreCheck, std::string sectionId ) { CItem *p = s->GetPackItem(); if( !ValidateObject( p )) return 0; - return GetSubItemAmount( p, realId, realColour, realMoreVal, colorCheck ); + return GetSubItemAmount( p, realId, realColour, realMoreVal, colorCheck, moreCheck, sectionId ); } //o------------------------------------------------------------------------------------------------o @@ -96,7 +99,7 @@ UI32 GetItemAmount( CChar *s, UI16 realId, UI16 realColour, UI32 realMoreVal, bo //o------------------------------------------------------------------------------------------------o //| Purpose - Remove a certain amount of an item of specified color in a pack //o------------------------------------------------------------------------------------------------o -auto DeleteSubItemAmount( CItem *p, UI32 amount, UI16 realId, UI16 realColour, UI32 realMoreVal ) -> UI32 +auto DeleteSubItemAmount( CItem *p, UI32 amount, UI16 realId, UI16 realColour, UI32 realMoreVal, bool colorCheck, bool moreCheck, std::string sectionId ) -> UI32 { if( !ValidateObject( p )) return 0; @@ -113,9 +116,12 @@ auto DeleteSubItemAmount( CItem *p, UI32 amount, UI16 realId, UI16 realColour, U if( i->GetId() != realId && ( i->GetType() == IT_CONTAINER || i->GetType() == IT_LOCKEDCONTAINER )) { // Is item an pack or container? - amtDeleted += DeleteSubItemAmount( i, total, realId, realColour ); + amtDeleted += DeleteSubItemAmount( i, total, realId, realColour, realMoreVal, colorCheck, moreCheck, sectionId ); } - else if( i->GetId() == realId && i->GetColour() == realColour && i->GetTempVar( CITV_MORE ) == realMoreVal ) + else if( i->GetId() == realId + && ( !colorCheck || ( colorCheck && i->GetColour() == realColour )) + && ( !moreCheck || ( moreCheck && i->GetTempVar( CITV_MORE ) == realMoreVal )) + && ( sectionId == "" || sectionId == i->GetSectionId() )) { UI16 usesLeft = i->GetUsesLeft(); if( usesLeft > 0 ) @@ -171,7 +177,7 @@ auto DeleteSubItemAmount( CItem *p, UI32 amount, UI16 realId, UI16 realColour, U //| //| Changes - 09/25/2002 - Weight Fixes //o------------------------------------------------------------------------------------------------o -UI32 DeleteItemAmount( CChar *s, UI32 amount, UI16 realId, UI16 realColour, UI32 realMoreVal ) +UI32 DeleteItemAmount( CChar *s, UI32 amount, UI16 realId, UI16 realColour, UI32 realMoreVal, bool colorCheck, bool moreCheck, std::string sectionId ) { if( !ValidateObject( s )) return 0; @@ -180,7 +186,7 @@ UI32 DeleteItemAmount( CChar *s, UI32 amount, UI16 realId, UI16 realColour, UI32 if( !ValidateObject( p )) return 0; - return DeleteSubItemAmount( p, amount, realId, realColour, realMoreVal ); + return DeleteSubItemAmount( p, amount, realId, realColour, realMoreVal, colorCheck, moreCheck, sectionId ); } //o------------------------------------------------------------------------------------------------o diff --git a/source/resource.h b/source/resource.h deleted file mode 100644 index 2203bbdd0..000000000 --- a/source/resource.h +++ /dev/null @@ -1,17 +0,0 @@ -//{{NO_DEPENDENCIES}} -// Microsoft Visual C++ generated include file. -// Used by uox3.rc -// -#define VS_VERSION_INFO 1 -#define IDI_MAINFRAME 101 - -// Next default values for new objects -// -#ifdef APSTUDIO_INVOKED -#ifndef APSTUDIO_READONLY_SYMBOLS -#define _APS_NEXT_RESOURCE_VALUE 104 -#define _APS_NEXT_COMMAND_VALUE 40001 -#define _APS_NEXT_CONTROL_VALUE 1000 -#define _APS_NEXT_SYMED_VALUE 101 -#endif -#endif diff --git a/source/skills.cpp b/source/skills.cpp index f1445086b..71b7c682b 100644 --- a/source/skills.cpp +++ b/source/skills.cpp @@ -244,6 +244,7 @@ void MakeOre( CSocket& mSock, CChar *mChar, CTownRegion *targRegion ) { const std::string oreName = found->name + " ore"; oreItem->SetName( oreName ); + oreItem->AddScriptTrigger( found->scriptID ); if( oreItem->GetCont() != nullptr ) { mSock.SysMessage( 982, oreName.c_str() ); // You place some %s in your pack. @@ -2082,6 +2083,7 @@ bool CSkills::LoadMiningData( void ) toAdd.name = oreName; toAdd.oreName = oreName; toAdd.oreChance = 0; + toAdd.scriptID = 0; for( const auto &sec : individualOre->collection() ) { tag = sec->tag; @@ -2120,6 +2122,12 @@ bool CSkills::LoadMiningData( void ) toAdd.oreChance = static_cast( std::stoul( data, nullptr, 0 )); } break; + case 'S': + if( UTag == "SCRIPT" ) + { + toAdd.scriptID = static_cast( std::stoul( data, nullptr, 0 )); + } + break; default: Console << "Unknown mining tag " << tag << " with data " << data << " in SECTION " << oreName << myendl; break; diff --git a/source/skills.h b/source/skills.h index 838822a22..fae725bc5 100644 --- a/source/skills.h +++ b/source/skills.h @@ -80,9 +80,10 @@ struct MiningData_st UI16 minSkill; // minimum skill needed to make the ingot std::string name; // name of the ingot: no need to be fixed, as we're loading it dynamically SI32 makemenu; // the makemenu required for making with - UI16 oreChance; // default chance of finding ore type if nothing else is specified + UI16 oreChance; // default chance of finding ore type if nothing else is specified + UI16 scriptID; // scriptID assigned to ore items - MiningData_st() : oreName( "" ), colour( 0 ), minSkill( 0 ), name( "" ), makemenu( 0 ), oreChance( 0 ) + MiningData_st() : oreName( "" ), colour( 0 ), minSkill( 0 ), name( "" ), makemenu( 0 ), oreChance( 0 ), scriptID( 0 ) { } }; diff --git a/source/ssection.cpp b/source/ssection.cpp index 27beef2de..b9a51973d 100644 --- a/source/ssection.cpp +++ b/source/ssection.cpp @@ -167,6 +167,7 @@ const UI08 dfnDataTypes[DFNTAG_COUNTOFTAGS] = DFN_UPPERSTRING, // DFNTAG_NPCLIST, DFN_NUMERIC, // DFNTAG_NPCWANDER, DFN_NUMERIC, // DFNTAG_OFFSPELL, + DFN_STRING, // DFNTAG_ORIGIN, DFN_STRING, // DFNTAG_PACKITEM, DFN_DOUBLENUMERIC, // DFNTAG_PARRYING, DFN_DOUBLENUMERIC, // DFNTAG_PEACEMAKING, @@ -194,6 +195,7 @@ const UI08 dfnDataTypes[DFNTAG_COUNTOFTAGS] = DFN_NODATA, // DFNTAG_RUNS, DFN_NUMERIC, // DFNTAG_SAYCOLOUR, DFN_NUMERIC, // DFNTAG_SCRIPT, + DFN_STRING, // DFNTAG_SECTIONID, DFN_STRING, // DFNTAG_SELLITEM, DFN_STRING, // DFNTAG_SHOPITEM, DFN_NODATA, // DFNTAG_SHOPKEEPER, @@ -419,6 +421,7 @@ const std::map strToDFNTag {"NPCLIST"s, DFNTAG_NPCLIST}, {"NPCWANDER"s, DFNTAG_NPCWANDER}, {"OFFSPELL"s, DFNTAG_OFFSPELL}, + {"ORIGIN"s, DFNTAG_ORIGIN}, {"PACKITEM"s, DFNTAG_PACKITEM}, {"PARRYING"s, DFNTAG_PARRYING}, {"PEACEMAKING"s, DFNTAG_PEACEMAKING}, @@ -447,6 +450,7 @@ const std::map strToDFNTag {"SAYCOLOR"s, DFNTAG_SAYCOLOUR}, {"SAYCOLOUR"s, DFNTAG_SAYCOLOUR}, {"SCRIPT"s, DFNTAG_SCRIPT}, + {"SECTIONID"s, DFNTAG_SECTIONID}, {"SELLITEM"s, DFNTAG_SELLITEM}, {"SHOPITEM"s, DFNTAG_SHOPITEM}, {"SHOPKEEPER"s, DFNTAG_SHOPKEEPER}, diff --git a/source/ssection.h b/source/ssection.h index 32819b407..9f74230fd 100644 --- a/source/ssection.h +++ b/source/ssection.h @@ -174,6 +174,7 @@ enum DFNTAGS DFNTAG_NPCLIST, DFNTAG_NPCWANDER, DFNTAG_OFFSPELL, + DFNTAG_ORIGIN, DFNTAG_PACKITEM, DFNTAG_PARRYING, DFNTAG_PEACEMAKING, @@ -201,6 +202,7 @@ enum DFNTAGS DFNTAG_RUNS, DFNTAG_SAYCOLOUR, DFNTAG_SCRIPT, + DFNTAG_SECTIONID, DFNTAG_SELLITEM, DFNTAG_SHOPITEM, DFNTAG_SHOPKEEPER, diff --git a/spidermonkey/CMakeLists.txt b/spidermonkey/CMakeLists.txt deleted file mode 100644 index 350b5f489..000000000 --- a/spidermonkey/CMakeLists.txt +++ /dev/null @@ -1,55 +0,0 @@ -add_library(js32 - STATIC - jsapi.c - jsarena.c - jsarray.c - jsatom.c - jsbool.c - jscntxt.c - jsdate.c - jsdbgapi.c - jsdhash.c - jsdtoa.c - jsemit.c - jsexn.c - jsfun.c - jsgc.c - jshash.c - jsinterp.c - jsiter.c - jslock.c - jslog2.c - jslong.c - jsmath.c - jsnum.c - jsobj.c - jsopcode.c - jsparse.c - jsprf.c - jsregexp.c - jsscan.c - jsscope.c - jsscript.c - jsstr.c - jsutil.c - jsxdrapi.c - jsxml.c - prmjtime.c -) - - - -target_compile_definitions(js32 - PRIVATE - _X86_ - $<$:XP_WIN> - $<$:JSFILE> - $<$:EXPORT_JS_API> -) - - - -set_target_properties(js32 - PROPERTIES - RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR} -) diff --git a/spidermonkey/README.md b/spidermonkey/README.md index 271863f2b..598b5e68c 100644 --- a/spidermonkey/README.md +++ b/spidermonkey/README.md @@ -1,5 +1,38 @@ # SpiderMonkey 1.7 configured for UOX3 -Herein are configured a minimum set of files required to compile a static library of SpiderMonkey 1.7 on Windows, Linux and macOS, to be linked with [Ultima Offline eXperiment 3](https://github.com/UOX3DevTeam/UOX3/). Extraneous files and folders not required for this have been removed from this configuration; for the latest full, official version of the SpiderMonkey project - which is not compatible with UOX3 - visit https://spidermonkey.dev +Herein are configured a minimum set of files required to compile a static library of SpiderMonkey 1.7 on Windows, Linux/FreeBSD and macOS, for linking with [Ultima Offline eXperiment 3](https://github.com/UOX3DevTeam/UOX3/) and utilized to access Ultima Online data files and packets. Build setups can be found in the make/ folder, but extraneous build files and folders have been removed from this configuration. For the latest full, official version of the SpiderMonkey project - which is not compatible with UOX3 - visit https://spidermonkey.dev -For detailed instructions on compiling and using this SpiderMonkey configuration with UOX3, check out https://github.com/UOX3DevTeam/UOX3 +For detailed instructions on compiling and using this SpiderMonkey configuration with UOX3, check out [Ultima Offline eXperiment 3](https://github.com/UOX3DevTeam/UOX3/). Alternatively, follow the below instructions at your own peril: + +
    + Windows + + ### Visual Studio 2017/2022 + 1. Open jscript.sln in the *make/[VS2017/VS2022]/jscript* folder + 2. Choose *Release/Debug* build type from dropdown menu + 3. Go *Build -> Build jscript* + + ### CMake + 1. Open Developer Command Prompt for VS2017 or Developer Powershell for VS2022 + 2. Traverse to the make/cmake folder, and enter the following commands: + 3. `mkdir build` + 4. `cd build` + 5. `cmake .. -DCMAKE_BUILD_TYPE=Release` + 6. `cmake --build . --config Release` +
    + +--- + +
    + Linux/FreeBSD/macOS + + ### CMake + 1. Open a new Terminal + 2. Traverse to the make/cmake folder, and enter the following commands: + 3. `mkdir build` + 4. `cd build` + 5. `cmake .. -DCMAKE_BUILD_TYPE=Release` (Linux/FreeBSD) + 5. `cmake .. -DCMAKE_BUILD_TYPE=Release -G"Unix Makefiles"` (macOS) + 6. `cmake --build . --config Release` + +
    \ No newline at end of file diff --git a/spidermonkey/SpiderMonkey.sln b/spidermonkey/SpiderMonkey.sln deleted file mode 100644 index 7ccd3df64..000000000 --- a/spidermonkey/SpiderMonkey.sln +++ /dev/null @@ -1,50 +0,0 @@ -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 15 -VisualStudioVersion = 15.0.28307.1082 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "js32", "js32.vcxproj", "{BD11B616-0F02-4DD1-B3F9-D0A5F718AA08}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jskwgen", "jskwgen.vcxproj", "{2F2FAA80-4ADC-433C-A682-B667F56D6881}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fdlibm", "fdlibm\fdlibm.vcxproj", "{0E587247-C1EF-4111-8E0B-9199DA785C25}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Win32 = Debug|Win32 - Debug|x64 = Debug|x64 - Release|Win32 = Release|Win32 - Release|x64 = Release|x64 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {BD11B616-0F02-4DD1-B3F9-D0A5F718AA08}.Debug|Win32.ActiveCfg = Debug|Win32 - {BD11B616-0F02-4DD1-B3F9-D0A5F718AA08}.Debug|Win32.Build.0 = Debug|Win32 - {BD11B616-0F02-4DD1-B3F9-D0A5F718AA08}.Debug|x64.ActiveCfg = Debug|x64 - {BD11B616-0F02-4DD1-B3F9-D0A5F718AA08}.Debug|x64.Build.0 = Debug|x64 - {BD11B616-0F02-4DD1-B3F9-D0A5F718AA08}.Release|Win32.ActiveCfg = Release|Win32 - {BD11B616-0F02-4DD1-B3F9-D0A5F718AA08}.Release|Win32.Build.0 = Release|Win32 - {BD11B616-0F02-4DD1-B3F9-D0A5F718AA08}.Release|x64.ActiveCfg = Release|x64 - {BD11B616-0F02-4DD1-B3F9-D0A5F718AA08}.Release|x64.Build.0 = Release|x64 - {2F2FAA80-4ADC-433C-A682-B667F56D6881}.Debug|Win32.ActiveCfg = Debug|Win32 - {2F2FAA80-4ADC-433C-A682-B667F56D6881}.Debug|Win32.Build.0 = Debug|Win32 - {2F2FAA80-4ADC-433C-A682-B667F56D6881}.Debug|x64.ActiveCfg = Debug|x64 - {2F2FAA80-4ADC-433C-A682-B667F56D6881}.Debug|x64.Build.0 = Debug|x64 - {2F2FAA80-4ADC-433C-A682-B667F56D6881}.Release|Win32.ActiveCfg = Release|Win32 - {2F2FAA80-4ADC-433C-A682-B667F56D6881}.Release|Win32.Build.0 = Release|Win32 - {2F2FAA80-4ADC-433C-A682-B667F56D6881}.Release|x64.ActiveCfg = Release|x64 - {2F2FAA80-4ADC-433C-A682-B667F56D6881}.Release|x64.Build.0 = Release|x64 - {0E587247-C1EF-4111-8E0B-9199DA785C25}.Debug|Win32.ActiveCfg = Debug|Win32 - {0E587247-C1EF-4111-8E0B-9199DA785C25}.Debug|Win32.Build.0 = Debug|Win32 - {0E587247-C1EF-4111-8E0B-9199DA785C25}.Debug|x64.ActiveCfg = Debug|x64 - {0E587247-C1EF-4111-8E0B-9199DA785C25}.Debug|x64.Build.0 = Debug|x64 - {0E587247-C1EF-4111-8E0B-9199DA785C25}.Release|Win32.ActiveCfg = Release|Win32 - {0E587247-C1EF-4111-8E0B-9199DA785C25}.Release|Win32.Build.0 = Release|Win32 - {0E587247-C1EF-4111-8E0B-9199DA785C25}.Release|x64.ActiveCfg = Release|x64 - {0E587247-C1EF-4111-8E0B-9199DA785C25}.Release|x64.Build.0 = Release|x64 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {82593042-816C-4CC6-94FC-DACA20ED87C1} - EndGlobalSection -EndGlobal diff --git a/spidermonkey/fdlibm/fdlibm.vcxproj b/spidermonkey/fdlibm/fdlibm.vcxproj deleted file mode 100644 index 6a95ca5ed..000000000 --- a/spidermonkey/fdlibm/fdlibm.vcxproj +++ /dev/null @@ -1,156 +0,0 @@ - - - - - Debug - Win32 - - - Debug - x64 - - - Release - Win32 - - - Release - x64 - - - - {0E587247-C1EF-4111-8E0B-9199DA785C25} - fdlibm - Win32Proj - 8.1 - - - - StaticLibrary - v141 - Unicode - true - - - StaticLibrary - v141 - Unicode - true - - - StaticLibrary - v141 - Unicode - - - StaticLibrary - v141 - Unicode - - - - - - - - - - - - - - - - - - - <_ProjectFileVersion>15.0.28307.799 - - - .\Debug\x86\ - .\Debug\x86\ - - - .\Debug\x64\ - .\Debug\x64\ - - - .\Release\x86\ - .\Release\x86\ - - - .\Release\x64\ - .\Release\x64\ - - - - Disabled - WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_DEBUG;_LIB;%(PreprocessorDefinitions) - true - EnableFastChecks - MultiThreadedDebugDLL - - Level3 - ProgramDatabase - false - - - - - Disabled - WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_DEBUG;_LIB;%(PreprocessorDefinitions) - EnableFastChecks - MultiThreadedDebugDLL - - - Level3 - ProgramDatabase - true - - - - - _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_IEEE_LIBM;_LIB;_WINDOWS;_X86_=1;NDEBUG;XP_WIN;WIN32;%(PreprocessorDefinitions) - MultiThreadedDLL - - Level3 - - true - - - - - _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_IEEE_LIBM;_LIB;_WINDOWS;_X86_=1;NDEBUG;XP_WIN;WIN32;%(PreprocessorDefinitions) - MultiThreadedDLL - - - Level3 - - - true - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/spidermonkey/js32.vcxproj b/spidermonkey/js32.vcxproj deleted file mode 100644 index 9ad0cf4f5..000000000 --- a/spidermonkey/js32.vcxproj +++ /dev/null @@ -1,215 +0,0 @@ - - - - - Debug - Win32 - - - Debug - x64 - - - Release - Win32 - - - Release - x64 - - - - {BD11B616-0F02-4DD1-B3F9-D0A5F718AA08} - js32 - 8.1 - - - - StaticLibrary - v141 - - - StaticLibrary - v141 - - - DynamicLibrary - v141 - - - StaticLibrary - v141 - - - - - - - - - - - - - - - - - - - <_ProjectFileVersion>15.0.28307.799 - - - .\Debug\x86\ - .\Debug\x86\ - - - .\Debug\x64\ - .\Debug\x64\ - - - .\Release\x86\ - .\Release\x86\ - - - .\Release\x64\ - .\Release\x64\ - - - - Disabled - _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_DEBUG;_WINDOWS;_X86_=1;DEBUG;EXPORT_JS_API;JSFILE;WIN32;XP_WIN;%(PreprocessorDefinitions) - MultiThreadedDebug - Level3 - ProgramDatabase - - - $(OutDir)$(ProjectName).dll - true - winmm.lib;%(AdditionalDependencies) - - - - - _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINDOWS;_X86_=1;EXPORT_JS_API;JSFILE;NDEBUG;WIN32;XP_WIN;%(PreprocessorDefinitions) - Level3 - Speed - true - MultiThreaded - - - winmm.lib;%(AdditionalDependencies) - C:\Storage\src\c++\SpiderMonkey\Release;%(AdditionalLibraryDirectories) - true - false - - - - - _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINDOWS;_X86_=1;EXPORT_JS_API;JSFILE;NDEBUG;WIN32;XP_WIN;%(PreprocessorDefinitions) - Level3 - Speed - true - MultiThreaded - - - winmm.lib;%(AdditionalDependencies) - C:\Storage\src\c++\SpiderMonkey\Release;%(AdditionalLibraryDirectories) - true - false - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {0e587247-c1ef-4111-8e0b-9199da785c25} - false - - - {2f2faa80-4adc-433c-a682-b667f56d6881} - false - - - - - - \ No newline at end of file diff --git a/spidermonkey/jsautocfg.h b/spidermonkey/jsautocfg.h new file mode 100644 index 000000000..78ed4bda8 --- /dev/null +++ b/spidermonkey/jsautocfg.h @@ -0,0 +1,52 @@ +#ifndef js_cpucfg___ +#define js_cpucfg___ + +/* AUTOMATICALLY GENERATED - DO NOT EDIT */ + +#define IS_LITTLE_ENDIAN 1 +#undef IS_BIG_ENDIAN + +#define JS_BYTES_PER_BYTE 1L +#define JS_BYTES_PER_SHORT 2L +#define JS_BYTES_PER_INT 4L +#define JS_BYTES_PER_INT64 8L +#define JS_BYTES_PER_LONG 8L +#define JS_BYTES_PER_FLOAT 4L +#define JS_BYTES_PER_DOUBLE 8L +#define JS_BYTES_PER_WORD 8L +#define JS_BYTES_PER_DWORD 8L + +#define JS_BITS_PER_BYTE 8L +#define JS_BITS_PER_SHORT 16L +#define JS_BITS_PER_INT 32L +#define JS_BITS_PER_INT64 64L +#define JS_BITS_PER_LONG 64L +#define JS_BITS_PER_FLOAT 32L +#define JS_BITS_PER_DOUBLE 64L +#define JS_BITS_PER_WORD 64L + +#define JS_BITS_PER_BYTE_LOG2 3L +#define JS_BITS_PER_SHORT_LOG2 4L +#define JS_BITS_PER_INT_LOG2 5L +#define JS_BITS_PER_INT64_LOG2 6L +#define JS_BITS_PER_LONG_LOG2 6L +#define JS_BITS_PER_FLOAT_LOG2 5L +#define JS_BITS_PER_DOUBLE_LOG2 6L +#define JS_BITS_PER_WORD_LOG2 6L + +#define JS_ALIGN_OF_SHORT 2L +#define JS_ALIGN_OF_INT 4L +#define JS_ALIGN_OF_LONG 8L +#define JS_ALIGN_OF_INT64 8L +#define JS_ALIGN_OF_FLOAT 4L +#define JS_ALIGN_OF_DOUBLE 8L +#define JS_ALIGN_OF_POINTER 8L +#define JS_ALIGN_OF_WORD 8L + +#define JS_BYTES_PER_WORD_LOG2 3L +#define JS_BYTES_PER_DWORD_LOG2 3L +#define JS_WORDS_PER_DWORD_LOG2 0L + +#define JS_STACK_GROWTH_DIRECTION (-1) + +#endif /* js_cpucfg___ */ diff --git a/spidermonkey/jskwgen.vcxproj b/spidermonkey/jskwgen.vcxproj deleted file mode 100644 index 380351e1e..000000000 --- a/spidermonkey/jskwgen.vcxproj +++ /dev/null @@ -1,134 +0,0 @@ - - - - - Debug - Win32 - - - Debug - x64 - - - Release - Win32 - - - Release - x64 - - - - {2F2FAA80-4ADC-433C-A682-B667F56D6881} - jskwgen - 8.1 - - - - Application - v141 - - - Application - v141 - - - Application - v141 - - - Application - v141 - - - - - - - - - - - - - - - - - - - <_ProjectFileVersion>15.0.28307.799 - - - $(SolutionDir)Debug\x86\ - $(SolutionDir)Debug\x86\ - - - .\Debug\x64\ - .\Debug\x64\ - - - .\Release\x86\ - .\Release\x86\ - - - .\Release\x64\ - .\Release\x64\ - - - - _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) - - - true - - - $(OutDir)$(ProjectName).exe $(OutDir)jsautokw.h - - - - - _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions) - true - - - true - - - .\Debug\x64\$(ProjectName).exe .\Debug\x64\jsautokw.h - - - - - _CONSOLE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;JSFILE;NDEBUG;WIN32;XP_WIN;%(PreprocessorDefinitions) - Level3 - true - - - .\Release\x86\$(ProjectName).exe .\Release\x86\jsautokw.h - - - - - _CONSOLE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;JSFILE;NDEBUG;WIN32;XP_WIN;%(PreprocessorDefinitions) - Level3 - true - - - .\Release\x64\$(ProjectName).exe .\Release\x64\jsautokw.h - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/spidermonkey/make/Spidermonkey.txt b/spidermonkey/make/Spidermonkey.txt new file mode 100644 index 000000000..fdb873183 --- /dev/null +++ b/spidermonkey/make/Spidermonkey.txt @@ -0,0 +1,5 @@ +Spidermonkey distribution consists of three components: + +1. fdlibm (math library) +2. jscript (referenced in the distribution as js32, this is the actual interpreter) +3. jskwgen (Command line tool to interactively do javascript). This is not used by UOX3 \ No newline at end of file diff --git a/spidermonkey/make/VS2017/fdlibm/fdlibm.sln b/spidermonkey/make/VS2017/fdlibm/fdlibm.sln new file mode 100644 index 000000000..389e0183b --- /dev/null +++ b/spidermonkey/make/VS2017/fdlibm/fdlibm.sln @@ -0,0 +1,31 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.4.33122.133 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fdlibm", "fdlibm.vcxproj", "{DEF425F3-E969-4696-AB8C-8D0D7EAEF868}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x64.ActiveCfg = Debug|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x64.Build.0 = Debug|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x86.ActiveCfg = Debug|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x86.Build.0 = Debug|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x64.ActiveCfg = Release|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x64.Build.0 = Release|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x86.ActiveCfg = Release|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x86.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {A06B0342-E2EF-455C-9017-49016F24C32E} + EndGlobalSection +EndGlobal diff --git a/spidermonkey/make/VS2017/fdlibm/fdlibm.vcxproj b/spidermonkey/make/VS2017/fdlibm/fdlibm.vcxproj new file mode 100644 index 000000000..708937e8c --- /dev/null +++ b/spidermonkey/make/VS2017/fdlibm/fdlibm.vcxproj @@ -0,0 +1,184 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 16.0 + Win32Proj + {def425f3-e969-4696-ab8c-8d0d7eaef868} + fdlibm + 8.1 + + + + StaticLibrary + true + v141 + Unicode + + + StaticLibrary + false + v141 + true + Unicode + + + StaticLibrary + true + v141 + Unicode + + + StaticLibrary + false + v141 + true + Unicode + + + + + + + + + + + + + + + + + + + + + + Level3 + true + WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_IEEE_LIBM;_LIB;_WINDOWS;_X86_=1;;XP_WIN + true + NotUsing + + + stdcpp17 + stdc11 + MultiThreaded + + + + + true + + + + + Level3 + true + true + true + WIN32;NDEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_IEEE_LIBM;_LIB;_WINDOWS;_X86_=1;;XP_WIN + true + NotUsing + + + stdcpp17 + stdc11 + MultiThreaded + + + + + true + true + + + true + + + + + Level3 + true + _DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_IEEE_LIBM;_LIB;_WINDOWS;_X86_=1;;XP_WIN + true + NotUsing + + + stdcpp17 + stdc11 + MultiThreaded + + + + + true + + + + + Level3 + true + true + true + NDEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_IEEE_LIBM;_LIB;_WINDOWS;_X86_=1;;XP_WIN + true + NotUsing + + + stdcpp17 + stdc11 + MultiThreaded + + + + + true + true + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/spidermonkey/fdlibm/fdlibm.vcxproj.filters b/spidermonkey/make/VS2017/fdlibm/fdlibm.vcxproj.filters similarity index 59% rename from spidermonkey/fdlibm/fdlibm.vcxproj.filters rename to spidermonkey/make/VS2017/fdlibm/fdlibm.vcxproj.filters index 312ffd4bb..db18936c3 100644 --- a/spidermonkey/fdlibm/fdlibm.vcxproj.filters +++ b/spidermonkey/make/VS2017/fdlibm/fdlibm.vcxproj.filters @@ -3,66 +3,66 @@ {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx {93995380-89BD-4b04-88EB-625FBE52EBFB} - h;hpp;hxx;hm;inl;inc;xsd + h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} - rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Header Files diff --git a/spidermonkey/make/VS2017/jscript/jscript.sln b/spidermonkey/make/VS2017/jscript/jscript.sln new file mode 100644 index 000000000..b705ba3fd --- /dev/null +++ b/spidermonkey/make/VS2017/jscript/jscript.sln @@ -0,0 +1,41 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.4.33122.133 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jscript", "jscript.vcxproj", "{2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fdlibm", "..\fdlibm\fdlibm.vcxproj", "{DEF425F3-E969-4696-AB8C-8D0D7EAEF868}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Debug|x64.ActiveCfg = Debug|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Debug|x64.Build.0 = Debug|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Debug|x86.ActiveCfg = Debug|Win32 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Debug|x86.Build.0 = Debug|Win32 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Release|x64.ActiveCfg = Release|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Release|x64.Build.0 = Release|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Release|x86.ActiveCfg = Release|Win32 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Release|x86.Build.0 = Release|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x64.ActiveCfg = Debug|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x64.Build.0 = Debug|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x86.ActiveCfg = Debug|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x86.Build.0 = Debug|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x64.ActiveCfg = Release|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x64.Build.0 = Release|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x86.ActiveCfg = Release|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x86.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {84C26C69-D33A-4ECD-A3EF-71AE6CB24595} + EndGlobalSection +EndGlobal diff --git a/spidermonkey/make/VS2017/jscript/jscript.vcxproj b/spidermonkey/make/VS2017/jscript/jscript.vcxproj new file mode 100644 index 000000000..c05e87804 --- /dev/null +++ b/spidermonkey/make/VS2017/jscript/jscript.vcxproj @@ -0,0 +1,259 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 16.0 + Win32Proj + {2af3a5ea-0cec-4d24-80f7-05e0b8b300c5} + jscript + 8.1 + + + + StaticLibrary + true + v141 + Unicode + + + StaticLibrary + false + v141 + true + Unicode + + + StaticLibrary + true + v141 + Unicode + + + StaticLibrary + false + v141 + true + Unicode + + + + + + + + + + + + + + + + + + + + + + Level3 + true + WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINDOWS;_X86_=1;EXPORT_JS_API;JSFILE;XP_WIN + true + NotUsing + + stdcpp17 + stdc11 + true + 4047;4703;4267;4146;4244 + MultiThreadedDebug + + + + + true + + + winmm.lib + + + + + Level3 + true + true + true + WIN32;NDEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINDOWS;_X86_=1;EXPORT_JS_API;JSFILE;XP_WIN + true + NotUsing + + stdcpp17 + stdc11 + true + 4047;4703;4267;4146;4244 + Speed + MultiThreaded + + + + + false + true + true + + + winmm.lib + true + + + + + Level3 + true + _DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINDOWS;_X86_=1;EXPORT_JS_API;JSFILE;XP_WIN + true + NotUsing + + stdcpp17 + stdc11 + true + 4047;4703;4267;4146;4244;4334;4090;4311 + MultiThreadedDebug + + + + + true + + + winmm.lib + + + + + Level3 + true + true + true + NDEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINDOWS;_X86_=1;EXPORT_JS_API;JSFILE;XP_WIN + true + NotUsing + + stdcpp17 + stdc11 + true + 4047;4703;4267;4146;4244;4334;4090;4311 + MultiThreaded + + + + + false + true + true + + + winmm.lib + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/spidermonkey/vs2022/jsengine.vcxproj.filters b/spidermonkey/make/VS2017/jscript/jscript.vcxproj.filters similarity index 58% rename from spidermonkey/vs2022/jsengine.vcxproj.filters rename to spidermonkey/make/VS2017/jscript/jscript.vcxproj.filters index b843d90d4..973badb26 100644 --- a/spidermonkey/vs2022/jsengine.vcxproj.filters +++ b/spidermonkey/make/VS2017/jscript/jscript.vcxproj.filters @@ -15,223 +15,229 @@
    - + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + + Header Files + + Header Files - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - + \ No newline at end of file diff --git a/spidermonkey/make/VS2017/jskwgen/jskwgen.sln b/spidermonkey/make/VS2017/jskwgen/jskwgen.sln new file mode 100644 index 000000000..5a6551bff --- /dev/null +++ b/spidermonkey/make/VS2017/jskwgen/jskwgen.sln @@ -0,0 +1,51 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.4.33122.133 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jskwgen", "jskwgen.vcxproj", "{F90F099A-C93E-4AA6-B98A-D0D50C962D6A}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fdlibm", "..\fdlibm\fdlibm.vcxproj", "{DEF425F3-E969-4696-AB8C-8D0D7EAEF868}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jscript", "..\jscript\jscript.vcxproj", "{2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {F90F099A-C93E-4AA6-B98A-D0D50C962D6A}.Debug|x64.ActiveCfg = Debug|x64 + {F90F099A-C93E-4AA6-B98A-D0D50C962D6A}.Debug|x64.Build.0 = Debug|x64 + {F90F099A-C93E-4AA6-B98A-D0D50C962D6A}.Debug|x86.ActiveCfg = Debug|Win32 + {F90F099A-C93E-4AA6-B98A-D0D50C962D6A}.Debug|x86.Build.0 = Debug|Win32 + {F90F099A-C93E-4AA6-B98A-D0D50C962D6A}.Release|x64.ActiveCfg = Release|x64 + {F90F099A-C93E-4AA6-B98A-D0D50C962D6A}.Release|x64.Build.0 = Release|x64 + {F90F099A-C93E-4AA6-B98A-D0D50C962D6A}.Release|x86.ActiveCfg = Release|Win32 + {F90F099A-C93E-4AA6-B98A-D0D50C962D6A}.Release|x86.Build.0 = Release|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x64.ActiveCfg = Debug|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x64.Build.0 = Debug|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x86.ActiveCfg = Debug|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x86.Build.0 = Debug|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x64.ActiveCfg = Release|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x64.Build.0 = Release|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x86.ActiveCfg = Release|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x86.Build.0 = Release|Win32 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Debug|x64.ActiveCfg = Debug|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Debug|x64.Build.0 = Debug|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Debug|x86.ActiveCfg = Debug|Win32 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Debug|x86.Build.0 = Debug|Win32 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Release|x64.ActiveCfg = Release|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Release|x64.Build.0 = Release|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Release|x86.ActiveCfg = Release|Win32 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Release|x86.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {D38902BF-7935-4951-A5E2-8D9D13346915} + EndGlobalSection +EndGlobal diff --git a/spidermonkey/make/VS2017/jskwgen/jskwgen.vcxproj b/spidermonkey/make/VS2017/jskwgen/jskwgen.vcxproj new file mode 100644 index 000000000..e98357481 --- /dev/null +++ b/spidermonkey/make/VS2017/jskwgen/jskwgen.vcxproj @@ -0,0 +1,166 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 16.0 + Win32Proj + {f90f099a-c93e-4aa6-b98a-d0d50c962d6a} + jskwgen + 8.1 + + + + Application + true + v143 + Unicode + + + Application + false + v143 + true + Unicode + + + Application + true + v141 + Unicode + + + Application + false + v141 + true + Unicode + + + + + + + + + + + + + + + + + + + + + + Level3 + true + WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;JSFILE;XP_WIN + true + stdcpp17 + stdc11 + true + + + + Console + true + + + + + Level3 + true + true + true + WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;JSFILE;XP_WIN + true + stdcpp17 + stdc11 + true + + + + Console + false + true + true + + + + + Level3 + true + _DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;JSFILE;XP_WIN + true + stdcpp17 + stdc11 + true + + + + Console + true + + + + + Level3 + true + true + true + NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;JSFILE;XP_WIN + true + stdcpp17 + stdc11 + true + + + + Console + false + true + true + + + + + + + + + + + + + + + {def425f3-e969-4696-ab8c-8d0d7eaef868} + + + {2af3a5ea-0cec-4d24-80f7-05e0b8b300c5} + + + + + + \ No newline at end of file diff --git a/spidermonkey/jskwgen.vcxproj.filters b/spidermonkey/make/VS2017/jskwgen/jskwgen.vcxproj.filters similarity index 69% rename from spidermonkey/jskwgen.vcxproj.filters rename to spidermonkey/make/VS2017/jskwgen/jskwgen.vcxproj.filters index 8cb0d0b1a..35f5cc355 100644 --- a/spidermonkey/jskwgen.vcxproj.filters +++ b/spidermonkey/make/VS2017/jskwgen/jskwgen.vcxproj.filters @@ -3,31 +3,31 @@ {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx {93995380-89BD-4b04-88EB-625FBE52EBFB} - h;hpp;hxx;hm;inl;inc;xsd + h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} - rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms - + Source Files - + Header Files - + Header Files - + \ No newline at end of file diff --git a/spidermonkey/make/VS2022/fdlibm/fdlibm.sln b/spidermonkey/make/VS2022/fdlibm/fdlibm.sln new file mode 100644 index 000000000..389e0183b --- /dev/null +++ b/spidermonkey/make/VS2022/fdlibm/fdlibm.sln @@ -0,0 +1,31 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.4.33122.133 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fdlibm", "fdlibm.vcxproj", "{DEF425F3-E969-4696-AB8C-8D0D7EAEF868}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x64.ActiveCfg = Debug|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x64.Build.0 = Debug|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x86.ActiveCfg = Debug|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x86.Build.0 = Debug|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x64.ActiveCfg = Release|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x64.Build.0 = Release|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x86.ActiveCfg = Release|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x86.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {A06B0342-E2EF-455C-9017-49016F24C32E} + EndGlobalSection +EndGlobal diff --git a/spidermonkey/make/VS2022/fdlibm/fdlibm.vcxproj b/spidermonkey/make/VS2022/fdlibm/fdlibm.vcxproj new file mode 100644 index 000000000..19052045a --- /dev/null +++ b/spidermonkey/make/VS2022/fdlibm/fdlibm.vcxproj @@ -0,0 +1,184 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 16.0 + Win32Proj + {def425f3-e969-4696-ab8c-8d0d7eaef868} + fdlibm + 10.0 + + + + StaticLibrary + true + v143 + Unicode + + + StaticLibrary + false + v143 + true + Unicode + + + StaticLibrary + true + v143 + Unicode + + + StaticLibrary + false + v143 + true + Unicode + + + + + + + + + + + + + + + + + + + + + + Level3 + true + WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_IEEE_LIBM;_LIB;_WINDOWS;_X86_=1;;XP_WIN + true + NotUsing + + + stdcpp17 + stdc11 + MultiThreadedDebug + + + + + true + + + + + Level3 + true + true + true + WIN32;NDEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_IEEE_LIBM;_LIB;_WINDOWS;_X86_=1;;XP_WIN + true + NotUsing + + + stdcpp17 + stdc11 + MultiThreaded + + + + + true + true + + + true + + + + + Level3 + true + _DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_IEEE_LIBM;_LIB;_WINDOWS;_X86_=1;;XP_WIN + true + NotUsing + + + stdcpp17 + stdc11 + MultiThreadedDebug + + + + + true + + + + + Level3 + true + true + true + NDEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_IEEE_LIBM;_LIB;_WINDOWS;_X86_=1;;XP_WIN + true + NotUsing + + + stdcpp17 + stdc11 + MultiThreaded + + + + + true + true + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/spidermonkey/make/VS2022/fdlibm/fdlibm.vcxproj.filters b/spidermonkey/make/VS2022/fdlibm/fdlibm.vcxproj.filters new file mode 100644 index 000000000..db18936c3 --- /dev/null +++ b/spidermonkey/make/VS2022/fdlibm/fdlibm.vcxproj.filters @@ -0,0 +1,69 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + + + Header Files + + + \ No newline at end of file diff --git a/spidermonkey/make/VS2022/jscript/jscript.sln b/spidermonkey/make/VS2022/jscript/jscript.sln new file mode 100644 index 000000000..b705ba3fd --- /dev/null +++ b/spidermonkey/make/VS2022/jscript/jscript.sln @@ -0,0 +1,41 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.4.33122.133 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jscript", "jscript.vcxproj", "{2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fdlibm", "..\fdlibm\fdlibm.vcxproj", "{DEF425F3-E969-4696-AB8C-8D0D7EAEF868}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Debug|x64.ActiveCfg = Debug|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Debug|x64.Build.0 = Debug|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Debug|x86.ActiveCfg = Debug|Win32 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Debug|x86.Build.0 = Debug|Win32 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Release|x64.ActiveCfg = Release|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Release|x64.Build.0 = Release|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Release|x86.ActiveCfg = Release|Win32 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Release|x86.Build.0 = Release|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x64.ActiveCfg = Debug|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x64.Build.0 = Debug|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x86.ActiveCfg = Debug|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x86.Build.0 = Debug|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x64.ActiveCfg = Release|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x64.Build.0 = Release|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x86.ActiveCfg = Release|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x86.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {84C26C69-D33A-4ECD-A3EF-71AE6CB24595} + EndGlobalSection +EndGlobal diff --git a/spidermonkey/make/VS2022/jscript/jscript.vcxproj b/spidermonkey/make/VS2022/jscript/jscript.vcxproj new file mode 100644 index 000000000..6d1883add --- /dev/null +++ b/spidermonkey/make/VS2022/jscript/jscript.vcxproj @@ -0,0 +1,258 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 16.0 + Win32Proj + {2af3a5ea-0cec-4d24-80f7-05e0b8b300c5} + jscript + 10.0 + + + + StaticLibrary + true + v143 + Unicode + + + StaticLibrary + false + v143 + true + Unicode + + + StaticLibrary + true + v143 + Unicode + + + StaticLibrary + false + v143 + true + Unicode + + + + + + + + + + + + + + + + + + + + + + Level3 + true + WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINDOWS;_X86_=1;EXPORT_JS_API;JSFILE;XP_WIN + true + NotUsing + + stdcpp17 + stdc11 + true + 4047;4703;4267;4146;4244 + MultiThreadedDebug + + + + + true + + + winmm.lib + + + + + Level3 + true + true + true + WIN32;NDEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINDOWS;_X86_=1;EXPORT_JS_API;JSFILE;XP_WIN + true + NotUsing + + stdcpp17 + stdc11 + true + 4047;4703;4267;4146;4244 + MultiThreaded + + + + + false + true + true + + + winmm.lib + true + + + + + Level3 + true + _DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINDOWS;_X86_=1;EXPORT_JS_API;JSFILE;XP_WIN + true + NotUsing + + stdcpp17 + stdc11 + true + 4047;4703;4267;4146;4244;4334;4090;4311 + MultiThreadedDebug + + + + + true + + + winmm.lib + + + + + Level3 + true + true + true + NDEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINDOWS;_X86_=1;EXPORT_JS_API;JSFILE;XP_WIN + true + NotUsing + + stdcpp17 + stdc11 + true + 4047;4703;4267;4146;4244;4334;4090;4311 + MultiThreaded + + + + + false + true + false + + + winmm.lib + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/spidermonkey/js32.vcxproj.filters b/spidermonkey/make/VS2022/jscript/jscript.vcxproj.filters similarity index 56% rename from spidermonkey/js32.vcxproj.filters rename to spidermonkey/make/VS2022/jscript/jscript.vcxproj.filters index d93b86455..973badb26 100644 --- a/spidermonkey/js32.vcxproj.filters +++ b/spidermonkey/make/VS2022/jscript/jscript.vcxproj.filters @@ -3,241 +3,241 @@ {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx {93995380-89BD-4b04-88EB-625FBE52EBFB} - h;hpp;hxx;hm;inl;inc;xsd + h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} - rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + \ No newline at end of file diff --git a/spidermonkey/make/VS2022/jskwgen/jskwgen.sln b/spidermonkey/make/VS2022/jskwgen/jskwgen.sln new file mode 100644 index 000000000..5a6551bff --- /dev/null +++ b/spidermonkey/make/VS2022/jskwgen/jskwgen.sln @@ -0,0 +1,51 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.4.33122.133 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jskwgen", "jskwgen.vcxproj", "{F90F099A-C93E-4AA6-B98A-D0D50C962D6A}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fdlibm", "..\fdlibm\fdlibm.vcxproj", "{DEF425F3-E969-4696-AB8C-8D0D7EAEF868}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jscript", "..\jscript\jscript.vcxproj", "{2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {F90F099A-C93E-4AA6-B98A-D0D50C962D6A}.Debug|x64.ActiveCfg = Debug|x64 + {F90F099A-C93E-4AA6-B98A-D0D50C962D6A}.Debug|x64.Build.0 = Debug|x64 + {F90F099A-C93E-4AA6-B98A-D0D50C962D6A}.Debug|x86.ActiveCfg = Debug|Win32 + {F90F099A-C93E-4AA6-B98A-D0D50C962D6A}.Debug|x86.Build.0 = Debug|Win32 + {F90F099A-C93E-4AA6-B98A-D0D50C962D6A}.Release|x64.ActiveCfg = Release|x64 + {F90F099A-C93E-4AA6-B98A-D0D50C962D6A}.Release|x64.Build.0 = Release|x64 + {F90F099A-C93E-4AA6-B98A-D0D50C962D6A}.Release|x86.ActiveCfg = Release|Win32 + {F90F099A-C93E-4AA6-B98A-D0D50C962D6A}.Release|x86.Build.0 = Release|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x64.ActiveCfg = Debug|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x64.Build.0 = Debug|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x86.ActiveCfg = Debug|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Debug|x86.Build.0 = Debug|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x64.ActiveCfg = Release|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x64.Build.0 = Release|x64 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x86.ActiveCfg = Release|Win32 + {DEF425F3-E969-4696-AB8C-8D0D7EAEF868}.Release|x86.Build.0 = Release|Win32 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Debug|x64.ActiveCfg = Debug|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Debug|x64.Build.0 = Debug|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Debug|x86.ActiveCfg = Debug|Win32 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Debug|x86.Build.0 = Debug|Win32 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Release|x64.ActiveCfg = Release|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Release|x64.Build.0 = Release|x64 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Release|x86.ActiveCfg = Release|Win32 + {2AF3A5EA-0CEC-4D24-80F7-05E0B8B300C5}.Release|x86.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {D38902BF-7935-4951-A5E2-8D9D13346915} + EndGlobalSection +EndGlobal diff --git a/spidermonkey/make/VS2022/jskwgen/jskwgen.vcxproj b/spidermonkey/make/VS2022/jskwgen/jskwgen.vcxproj new file mode 100644 index 000000000..fcb3f4ffb --- /dev/null +++ b/spidermonkey/make/VS2022/jskwgen/jskwgen.vcxproj @@ -0,0 +1,166 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 16.0 + Win32Proj + {f90f099a-c93e-4aa6-b98a-d0d50c962d6a} + jskwgen + 10.0 + + + + Application + true + v143 + Unicode + + + Application + false + v143 + true + Unicode + + + Application + true + v143 + Unicode + + + Application + false + v143 + true + Unicode + + + + + + + + + + + + + + + + + + + + + + Level3 + true + WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;JSFILE;XP_WIN + true + stdcpp17 + stdc11 + true + + + + Console + true + + + + + Level3 + true + true + true + WIN32;NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;JSFILE;XP_WIN + true + stdcpp17 + stdc11 + true + + + + Console + false + true + true + + + + + Level3 + true + _DEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;JSFILE;XP_WIN + true + stdcpp17 + stdc11 + true + + + + Console + true + + + + + Level3 + true + true + true + NDEBUG;_CONSOLE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;JSFILE;XP_WIN + true + stdcpp17 + stdc11 + true + + + + Console + false + true + true + + + + + + + + + + + + + + + {def425f3-e969-4696-ab8c-8d0d7eaef868} + + + {2af3a5ea-0cec-4d24-80f7-05e0b8b300c5} + + + + + + \ No newline at end of file diff --git a/spidermonkey/make/VS2022/jskwgen/jskwgen.vcxproj.filters b/spidermonkey/make/VS2022/jskwgen/jskwgen.vcxproj.filters new file mode 100644 index 000000000..35f5cc355 --- /dev/null +++ b/spidermonkey/make/VS2022/jskwgen/jskwgen.vcxproj.filters @@ -0,0 +1,33 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Source Files + + + + + Header Files + + + Header Files + + + + + + \ No newline at end of file diff --git a/spidermonkey/make/XCode/jscript/jscript.xcodeproj/project.pbxproj b/spidermonkey/make/XCode/jscript/jscript.xcodeproj/project.pbxproj new file mode 100644 index 000000000..337e5ef6c --- /dev/null +++ b/spidermonkey/make/XCode/jscript/jscript.xcodeproj/project.pbxproj @@ -0,0 +1,1140 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 56; + objects = { + +/* Begin PBXBuildFile section */ + 64A90006293E37E0009B54DA /* jsapi.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FEE4293E37DF009B54DA /* jsapi.c */; }; + 64A90007293E37E0009B54DA /* jsapi.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FEE5293E37DF009B54DA /* jsapi.h */; }; + 64A90008293E37E0009B54DA /* jsarena.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FEE6293E37DF009B54DA /* jsarena.c */; }; + 64A90009293E37E0009B54DA /* jsarena.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FEE7293E37DF009B54DA /* jsarena.h */; }; + 64A9000A293E37E0009B54DA /* jsarray.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FEE8293E37DF009B54DA /* jsarray.c */; }; + 64A9000B293E37E0009B54DA /* jsarray.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FEE9293E37DF009B54DA /* jsarray.h */; }; + 64A9000C293E37E0009B54DA /* jsatom.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FEEA293E37DF009B54DA /* jsatom.c */; }; + 64A9000D293E37E0009B54DA /* jsatom.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FEEB293E37DF009B54DA /* jsatom.h */; }; + 64A9000E293E37E0009B54DA /* jsautocfg.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FEEC293E37DF009B54DA /* jsautocfg.h */; }; + 64A9000F293E37E0009B54DA /* jsautokw.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FEED293E37DF009B54DA /* jsautokw.h */; }; + 64A90010293E37E0009B54DA /* jsbit.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FEEE293E37DF009B54DA /* jsbit.h */; }; + 64A90011293E37E0009B54DA /* jsbool.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FEEF293E37DF009B54DA /* jsbool.c */; }; + 64A90012293E37E0009B54DA /* jsbool.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FEF0293E37DF009B54DA /* jsbool.h */; }; + 64A90013293E37E0009B54DA /* jsclist.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FEF1293E37DF009B54DA /* jsclist.h */; }; + 64A90014293E37E0009B54DA /* jscntxt.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FEF2293E37DF009B54DA /* jscntxt.c */; }; + 64A90015293E37E0009B54DA /* jscntxt.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FEF3293E37DF009B54DA /* jscntxt.h */; }; + 64A90016293E37E0009B54DA /* jscompat.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FEF4293E37DF009B54DA /* jscompat.h */; }; + 64A90017293E37E0009B54DA /* jsconfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FEF5293E37DF009B54DA /* jsconfig.h */; }; + 64A90018293E37E0009B54DA /* jscpucfg.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FEF7293E37DF009B54DA /* jscpucfg.c */; }; + 64A90019293E37E0009B54DA /* jscpucfg.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FEF8293E37DF009B54DA /* jscpucfg.h */; }; + 64A9001A293E37E0009B54DA /* jsdate.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FEF9293E37DF009B54DA /* jsdate.c */; }; + 64A9001B293E37E0009B54DA /* jsdate.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FEFA293E37DF009B54DA /* jsdate.h */; }; + 64A9001C293E37E0009B54DA /* jsdbgapi.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FEFB293E37DF009B54DA /* jsdbgapi.c */; }; + 64A9001D293E37E0009B54DA /* jsdbgapi.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FEFC293E37DF009B54DA /* jsdbgapi.h */; }; + 64A9001E293E37E0009B54DA /* jsdhash.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FEFD293E37DF009B54DA /* jsdhash.c */; }; + 64A9001F293E37E0009B54DA /* jsdhash.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FEFE293E37DF009B54DA /* jsdhash.h */; }; + 64A90020293E37E0009B54DA /* jsdtoa.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FEFF293E37DF009B54DA /* jsdtoa.c */; }; + 64A90021293E37E0009B54DA /* jsdtoa.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF00293E37DF009B54DA /* jsdtoa.h */; }; + 64A90022293E37E0009B54DA /* jsemit.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF01293E37DF009B54DA /* jsemit.c */; }; + 64A90023293E37E0009B54DA /* jsemit.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF02293E37DF009B54DA /* jsemit.h */; }; + 64A90024293E37E0009B54DA /* jsexn.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF03293E37DF009B54DA /* jsexn.c */; }; + 64A90025293E37E0009B54DA /* jsexn.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF04293E37DF009B54DA /* jsexn.h */; }; + 64A90026293E37E0009B54DA /* jsfile.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF05293E37DF009B54DA /* jsfile.c */; }; + 64A90027293E37E0009B54DA /* jsfile.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF06293E37DF009B54DA /* jsfile.h */; }; + 64A90028293E37E0009B54DA /* jsfun.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF08293E37DF009B54DA /* jsfun.c */; }; + 64A90029293E37E0009B54DA /* jsfun.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF09293E37DF009B54DA /* jsfun.h */; }; + 64A9002A293E37E0009B54DA /* jsgc.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF0A293E37DF009B54DA /* jsgc.c */; }; + 64A9002B293E37E0009B54DA /* jsgc.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF0B293E37DF009B54DA /* jsgc.h */; }; + 64A9002C293E37E0009B54DA /* jshash.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF0C293E37DF009B54DA /* jshash.c */; }; + 64A9002D293E37E0009B54DA /* jshash.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF0D293E37DF009B54DA /* jshash.h */; }; + 64A9002E293E37E0009B54DA /* jsinterp.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF0F293E37DF009B54DA /* jsinterp.c */; }; + 64A9002F293E37E0009B54DA /* jsinterp.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF10293E37DF009B54DA /* jsinterp.h */; }; + 64A90030293E37E0009B54DA /* jsiter.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF11293E37DF009B54DA /* jsiter.c */; }; + 64A90031293E37E0009B54DA /* jsiter.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF12293E37DF009B54DA /* jsiter.h */; }; + 64A90032293E37E0009B54DA /* jskwgen.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF14293E37DF009B54DA /* jskwgen.c */; }; + 64A90033293E37E0009B54DA /* jslibmath.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF17293E37DF009B54DA /* jslibmath.h */; }; + 64A90034293E37E0009B54DA /* jslock.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF18293E37DF009B54DA /* jslock.c */; }; + 64A90035293E37E0009B54DA /* jslock.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF19293E37DF009B54DA /* jslock.h */; }; + 64A90037293E37E0009B54DA /* jslog2.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF1B293E37DF009B54DA /* jslog2.c */; }; + 64A90038293E37E0009B54DA /* jslong.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF1C293E37DF009B54DA /* jslong.c */; }; + 64A90039293E37E0009B54DA /* jslong.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF1D293E37DF009B54DA /* jslong.h */; }; + 64A9003A293E37E0009B54DA /* jsmath.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF1E293E37DF009B54DA /* jsmath.c */; }; + 64A9003B293E37E0009B54DA /* jsmath.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF1F293E37DF009B54DA /* jsmath.h */; }; + 64A9003C293E37E0009B54DA /* jsnum.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF20293E37DF009B54DA /* jsnum.c */; }; + 64A9003D293E37E0009B54DA /* jsnum.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF21293E37DF009B54DA /* jsnum.h */; }; + 64A9003E293E37E0009B54DA /* jsobj.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF22293E37DF009B54DA /* jsobj.c */; }; + 64A9003F293E37E0009B54DA /* jsobj.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF23293E37DF009B54DA /* jsobj.h */; }; + 64A90040293E37E0009B54DA /* jsopcode.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF24293E37DF009B54DA /* jsopcode.c */; }; + 64A90041293E37E0009B54DA /* jsopcode.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF25293E37DF009B54DA /* jsopcode.h */; }; + 64A90042293E37E0009B54DA /* jsosdep.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF28293E37DF009B54DA /* jsosdep.h */; }; + 64A90043293E37E0009B54DA /* jsotypes.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF29293E37DF009B54DA /* jsotypes.h */; }; + 64A90044293E37E0009B54DA /* jsparse.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF2A293E37DF009B54DA /* jsparse.c */; }; + 64A90045293E37E0009B54DA /* jsparse.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF2B293E37DF009B54DA /* jsparse.h */; }; + 64A90046293E37E0009B54DA /* jsprf.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF2C293E37DF009B54DA /* jsprf.c */; }; + 64A90047293E37E0009B54DA /* jsprf.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF2D293E37DF009B54DA /* jsprf.h */; }; + 64A90048293E37E0009B54DA /* jsprvtd.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF2F293E37DF009B54DA /* jsprvtd.h */; }; + 64A90049293E37E0009B54DA /* jspubtd.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF30293E37DF009B54DA /* jspubtd.h */; }; + 64A9004A293E37E0009B54DA /* jsregexp.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF31293E37DF009B54DA /* jsregexp.c */; }; + 64A9004B293E37E0009B54DA /* jsregexp.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF32293E37DF009B54DA /* jsregexp.h */; }; + 64A9004C293E37E0009B54DA /* jsscan.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF33293E37DF009B54DA /* jsscan.c */; }; + 64A9004D293E37E0009B54DA /* jsscan.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF34293E37DF009B54DA /* jsscan.h */; }; + 64A9004E293E37E0009B54DA /* jsscope.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF35293E37DF009B54DA /* jsscope.c */; }; + 64A9004F293E37E0009B54DA /* jsscope.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF36293E37DF009B54DA /* jsscope.h */; }; + 64A90050293E37E0009B54DA /* jsscript.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF37293E37DF009B54DA /* jsscript.c */; }; + 64A90051293E37E0009B54DA /* jsscript.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF38293E37DF009B54DA /* jsscript.h */; }; + 64A90052293E37E0009B54DA /* jsstddef.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF3A293E37DF009B54DA /* jsstddef.h */; }; + 64A90053293E37E0009B54DA /* jsstr.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF3B293E37DF009B54DA /* jsstr.c */; }; + 64A90054293E37E0009B54DA /* jsstr.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF3C293E37DF009B54DA /* jsstr.h */; }; + 64A90055293E37E0009B54DA /* jstypes.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF3D293E37DF009B54DA /* jstypes.h */; }; + 64A90056293E37E0009B54DA /* jsutil.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF3E293E37DF009B54DA /* jsutil.c */; }; + 64A90057293E37E0009B54DA /* jsutil.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF3F293E37DF009B54DA /* jsutil.h */; }; + 64A90058293E37E0009B54DA /* jsxdrapi.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF40293E37DF009B54DA /* jsxdrapi.c */; }; + 64A90059293E37E0009B54DA /* jsxdrapi.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF41293E37DF009B54DA /* jsxdrapi.h */; }; + 64A9005A293E37E0009B54DA /* jsxml.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FF42293E37DF009B54DA /* jsxml.c */; }; + 64A9005B293E37E0009B54DA /* jsxml.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FF43293E37DF009B54DA /* jsxml.h */; }; + 64A9005D293E37E0009B54DA /* prmjtime.c in Sources */ = {isa = PBXBuildFile; fileRef = 64A9FFA0293E37E0009B54DA /* prmjtime.c */; }; + 64A9005E293E37E0009B54DA /* prmjtime.h in Headers */ = {isa = PBXBuildFile; fileRef = 64A9FFA1293E37E0009B54DA /* prmjtime.h */; }; +/* End PBXBuildFile section */ + +/* Begin PBXFileReference section */ + 64A9FE47293E37BC009B54DA /* libjscript.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libjscript.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 64A9FEE4293E37DF009B54DA /* jsapi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsapi.c; sourceTree = ""; }; + 64A9FEE5293E37DF009B54DA /* jsapi.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsapi.h; sourceTree = ""; }; + 64A9FEE6293E37DF009B54DA /* jsarena.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsarena.c; sourceTree = ""; }; + 64A9FEE7293E37DF009B54DA /* jsarena.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsarena.h; sourceTree = ""; }; + 64A9FEE8293E37DF009B54DA /* jsarray.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsarray.c; sourceTree = ""; }; + 64A9FEE9293E37DF009B54DA /* jsarray.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsarray.h; sourceTree = ""; }; + 64A9FEEA293E37DF009B54DA /* jsatom.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsatom.c; sourceTree = ""; }; + 64A9FEEB293E37DF009B54DA /* jsatom.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsatom.h; sourceTree = ""; }; + 64A9FEEC293E37DF009B54DA /* jsautocfg.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsautocfg.h; sourceTree = ""; }; + 64A9FEED293E37DF009B54DA /* jsautokw.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsautokw.h; sourceTree = ""; }; + 64A9FEEE293E37DF009B54DA /* jsbit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsbit.h; sourceTree = ""; }; + 64A9FEEF293E37DF009B54DA /* jsbool.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsbool.c; sourceTree = ""; }; + 64A9FEF0293E37DF009B54DA /* jsbool.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsbool.h; sourceTree = ""; }; + 64A9FEF1293E37DF009B54DA /* jsclist.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsclist.h; sourceTree = ""; }; + 64A9FEF2293E37DF009B54DA /* jscntxt.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jscntxt.c; sourceTree = ""; }; + 64A9FEF3293E37DF009B54DA /* jscntxt.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jscntxt.h; sourceTree = ""; }; + 64A9FEF4293E37DF009B54DA /* jscompat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jscompat.h; sourceTree = ""; }; + 64A9FEF5293E37DF009B54DA /* jsconfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsconfig.h; sourceTree = ""; }; + 64A9FEF7293E37DF009B54DA /* jscpucfg.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jscpucfg.c; sourceTree = ""; }; + 64A9FEF8293E37DF009B54DA /* jscpucfg.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jscpucfg.h; sourceTree = ""; }; + 64A9FEF9293E37DF009B54DA /* jsdate.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsdate.c; sourceTree = ""; }; + 64A9FEFA293E37DF009B54DA /* jsdate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsdate.h; sourceTree = ""; }; + 64A9FEFB293E37DF009B54DA /* jsdbgapi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsdbgapi.c; sourceTree = ""; }; + 64A9FEFC293E37DF009B54DA /* jsdbgapi.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsdbgapi.h; sourceTree = ""; }; + 64A9FEFD293E37DF009B54DA /* jsdhash.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsdhash.c; sourceTree = ""; }; + 64A9FEFE293E37DF009B54DA /* jsdhash.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsdhash.h; sourceTree = ""; }; + 64A9FEFF293E37DF009B54DA /* jsdtoa.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsdtoa.c; sourceTree = ""; }; + 64A9FF00293E37DF009B54DA /* jsdtoa.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsdtoa.h; sourceTree = ""; }; + 64A9FF01293E37DF009B54DA /* jsemit.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsemit.c; sourceTree = ""; }; + 64A9FF02293E37DF009B54DA /* jsemit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsemit.h; sourceTree = ""; }; + 64A9FF03293E37DF009B54DA /* jsexn.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsexn.c; sourceTree = ""; }; + 64A9FF04293E37DF009B54DA /* jsexn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsexn.h; sourceTree = ""; }; + 64A9FF05293E37DF009B54DA /* jsfile.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsfile.c; sourceTree = ""; }; + 64A9FF06293E37DF009B54DA /* jsfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsfile.h; sourceTree = ""; }; + 64A9FF08293E37DF009B54DA /* jsfun.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsfun.c; sourceTree = ""; }; + 64A9FF09293E37DF009B54DA /* jsfun.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsfun.h; sourceTree = ""; }; + 64A9FF0A293E37DF009B54DA /* jsgc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsgc.c; sourceTree = ""; }; + 64A9FF0B293E37DF009B54DA /* jsgc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsgc.h; sourceTree = ""; }; + 64A9FF0C293E37DF009B54DA /* jshash.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jshash.c; sourceTree = ""; }; + 64A9FF0D293E37DF009B54DA /* jshash.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jshash.h; sourceTree = ""; }; + 64A9FF0F293E37DF009B54DA /* jsinterp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsinterp.c; sourceTree = ""; }; + 64A9FF10293E37DF009B54DA /* jsinterp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsinterp.h; sourceTree = ""; }; + 64A9FF11293E37DF009B54DA /* jsiter.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsiter.c; sourceTree = ""; }; + 64A9FF12293E37DF009B54DA /* jsiter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsiter.h; sourceTree = ""; }; + 64A9FF13293E37DF009B54DA /* jskeyword.tbl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = jskeyword.tbl; sourceTree = ""; }; + 64A9FF14293E37DF009B54DA /* jskwgen.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jskwgen.c; sourceTree = ""; }; + 64A9FF17293E37DF009B54DA /* jslibmath.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jslibmath.h; sourceTree = ""; }; + 64A9FF18293E37DF009B54DA /* jslock.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jslock.c; sourceTree = ""; }; + 64A9FF19293E37DF009B54DA /* jslock.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jslock.h; sourceTree = ""; }; + 64A9FF1B293E37DF009B54DA /* jslog2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jslog2.c; sourceTree = ""; }; + 64A9FF1C293E37DF009B54DA /* jslong.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jslong.c; sourceTree = ""; }; + 64A9FF1D293E37DF009B54DA /* jslong.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jslong.h; sourceTree = ""; }; + 64A9FF1E293E37DF009B54DA /* jsmath.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsmath.c; sourceTree = ""; }; + 64A9FF1F293E37DF009B54DA /* jsmath.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsmath.h; sourceTree = ""; }; + 64A9FF20293E37DF009B54DA /* jsnum.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsnum.c; sourceTree = ""; }; + 64A9FF21293E37DF009B54DA /* jsnum.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsnum.h; sourceTree = ""; }; + 64A9FF22293E37DF009B54DA /* jsobj.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsobj.c; sourceTree = ""; }; + 64A9FF23293E37DF009B54DA /* jsobj.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsobj.h; sourceTree = ""; }; + 64A9FF24293E37DF009B54DA /* jsopcode.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsopcode.c; sourceTree = ""; }; + 64A9FF25293E37DF009B54DA /* jsopcode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsopcode.h; sourceTree = ""; }; + 64A9FF26293E37DF009B54DA /* jsopcode.tbl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = jsopcode.tbl; sourceTree = ""; }; + 64A9FF28293E37DF009B54DA /* jsosdep.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsosdep.h; sourceTree = ""; }; + 64A9FF29293E37DF009B54DA /* jsotypes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsotypes.h; sourceTree = ""; }; + 64A9FF2A293E37DF009B54DA /* jsparse.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsparse.c; sourceTree = ""; }; + 64A9FF2B293E37DF009B54DA /* jsparse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsparse.h; sourceTree = ""; }; + 64A9FF2C293E37DF009B54DA /* jsprf.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsprf.c; sourceTree = ""; }; + 64A9FF2D293E37DF009B54DA /* jsprf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsprf.h; sourceTree = ""; }; + 64A9FF2E293E37DF009B54DA /* jsproto.tbl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = jsproto.tbl; sourceTree = ""; }; + 64A9FF2F293E37DF009B54DA /* jsprvtd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsprvtd.h; sourceTree = ""; }; + 64A9FF30293E37DF009B54DA /* jspubtd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jspubtd.h; sourceTree = ""; }; + 64A9FF31293E37DF009B54DA /* jsregexp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsregexp.c; sourceTree = ""; }; + 64A9FF32293E37DF009B54DA /* jsregexp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsregexp.h; sourceTree = ""; }; + 64A9FF33293E37DF009B54DA /* jsscan.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsscan.c; sourceTree = ""; }; + 64A9FF34293E37DF009B54DA /* jsscan.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsscan.h; sourceTree = ""; }; + 64A9FF35293E37DF009B54DA /* jsscope.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsscope.c; sourceTree = ""; }; + 64A9FF36293E37DF009B54DA /* jsscope.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsscope.h; sourceTree = ""; }; + 64A9FF37293E37DF009B54DA /* jsscript.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsscript.c; sourceTree = ""; }; + 64A9FF38293E37DF009B54DA /* jsscript.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsscript.h; sourceTree = ""; }; + 64A9FF3A293E37DF009B54DA /* jsstddef.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsstddef.h; sourceTree = ""; }; + 64A9FF3B293E37DF009B54DA /* jsstr.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsstr.c; sourceTree = ""; }; + 64A9FF3C293E37DF009B54DA /* jsstr.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsstr.h; sourceTree = ""; }; + 64A9FF3D293E37DF009B54DA /* jstypes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jstypes.h; sourceTree = ""; }; + 64A9FF3E293E37DF009B54DA /* jsutil.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsutil.c; sourceTree = ""; }; + 64A9FF3F293E37DF009B54DA /* jsutil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsutil.h; sourceTree = ""; }; + 64A9FF40293E37DF009B54DA /* jsxdrapi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsxdrapi.c; sourceTree = ""; }; + 64A9FF41293E37DF009B54DA /* jsxdrapi.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsxdrapi.h; sourceTree = ""; }; + 64A9FF42293E37DF009B54DA /* jsxml.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jsxml.c; sourceTree = ""; }; + 64A9FF43293E37DF009B54DA /* jsxml.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jsxml.h; sourceTree = ""; }; + 64A9FF47293E37DF009B54DA /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = ""; }; + 64A9FF48293E37DF009B54DA /* readme.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = readme.txt; sourceTree = ""; }; + 64A9FF4E293E37E0009B54DA /* 810ca97f-d2c7-45a8-83d7-dfca7422c546.vsidx */ = {isa = PBXFileReference; lastKnownFileType = file; path = "810ca97f-d2c7-45a8-83d7-dfca7422c546.vsidx"; sourceTree = ""; }; + 64A9FF4F293E37E0009B54DA /* 9988bf72-3586-4cab-a638-78a1f71359bd.vsidx */ = {isa = PBXFileReference; lastKnownFileType = file; path = "9988bf72-3586-4cab-a638-78a1f71359bd.vsidx"; sourceTree = ""; }; + 64A9FF51293E37E0009B54DA /* read.lock */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = read.lock; sourceTree = ""; }; + 64A9FF53293E37E0009B54DA /* .suo */ = {isa = PBXFileReference; lastKnownFileType = file; path = .suo; sourceTree = ""; }; + 64A9FF54293E37E0009B54DA /* Browse.VC.db */ = {isa = PBXFileReference; lastKnownFileType = file; path = Browse.VC.db; sourceTree = ""; }; + 64A9FF56293E37E0009B54DA /* a828e7f6e283d07.ipch */ = {isa = PBXFileReference; lastKnownFileType = file; path = a828e7f6e283d07.ipch; sourceTree = ""; }; + 64A9FF59293E37E0009B54DA /* FDLIBM.ipch */ = {isa = PBXFileReference; lastKnownFileType = file; path = FDLIBM.ipch; sourceTree = ""; }; + 64A9FF5B293E37E0009B54DA /* PCH.ipch */ = {isa = PBXFileReference; lastKnownFileType = file; path = PCH.ipch; sourceTree = ""; }; + 64A9FF5C293E37E0009B54DA /* fdlibm.sln */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = fdlibm.sln; sourceTree = ""; }; + 64A9FF5D293E37E0009B54DA /* fdlibm.vcxproj */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = fdlibm.vcxproj; sourceTree = ""; }; + 64A9FF5E293E37E0009B54DA /* fdlibm.vcxproj.filters */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = fdlibm.vcxproj.filters; sourceTree = ""; }; + 64A9FF5F293E37E0009B54DA /* fdlibm.vcxproj.user */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = fdlibm.vcxproj.user; sourceTree = ""; }; + 64A9FF64293E37E0009B54DA /* 790a135e-3229-466a-a1b7-49b9ec65f9a3.vsidx */ = {isa = PBXFileReference; lastKnownFileType = file; path = "790a135e-3229-466a-a1b7-49b9ec65f9a3.vsidx"; sourceTree = ""; }; + 64A9FF65293E37E0009B54DA /* 965a6886-fdd2-491e-9aae-4a8ea266abe2.vsidx */ = {isa = PBXFileReference; lastKnownFileType = file; path = "965a6886-fdd2-491e-9aae-4a8ea266abe2.vsidx"; sourceTree = ""; }; + 64A9FF66293E37E0009B54DA /* d4cebbe1-9705-4ee4-b57f-0b666b8b52d1.vsidx */ = {isa = PBXFileReference; lastKnownFileType = file; path = "d4cebbe1-9705-4ee4-b57f-0b666b8b52d1.vsidx"; sourceTree = ""; }; + 64A9FF68293E37E0009B54DA /* read.lock */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = read.lock; sourceTree = ""; }; + 64A9FF6A293E37E0009B54DA /* .suo */ = {isa = PBXFileReference; lastKnownFileType = file; path = .suo; sourceTree = ""; }; + 64A9FF6B293E37E0009B54DA /* Browse.VC.db */ = {isa = PBXFileReference; lastKnownFileType = file; path = Browse.VC.db; sourceTree = ""; }; + 64A9FF6D293E37E0009B54DA /* 5bbeeae1e78ce2.ipch */ = {isa = PBXFileReference; lastKnownFileType = file; path = 5bbeeae1e78ce2.ipch; sourceTree = ""; }; + 64A9FF70293E37E0009B54DA /* JSCRIPT.ipch */ = {isa = PBXFileReference; lastKnownFileType = file; path = JSCRIPT.ipch; sourceTree = ""; }; + 64A9FF72293E37E0009B54DA /* PCH.ipch */ = {isa = PBXFileReference; lastKnownFileType = file; path = PCH.ipch; sourceTree = ""; }; + 64A9FF73293E37E0009B54DA /* Solution.VC.db */ = {isa = PBXFileReference; lastKnownFileType = file; path = Solution.VC.db; sourceTree = ""; }; + 64A9FF74293E37E0009B54DA /* jscript.sln */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = jscript.sln; sourceTree = ""; }; + 64A9FF75293E37E0009B54DA /* jscript.vcxproj */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = jscript.vcxproj; sourceTree = ""; }; + 64A9FF76293E37E0009B54DA /* jscript.vcxproj.filters */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = jscript.vcxproj.filters; sourceTree = ""; }; + 64A9FF77293E37E0009B54DA /* jscript.vcxproj.user */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = jscript.vcxproj.user; sourceTree = ""; }; + 64A9FF7C293E37E0009B54DA /* 14b5de96-451e-4e27-9d1b-9512198c0f87.vsidx */ = {isa = PBXFileReference; lastKnownFileType = file; path = "14b5de96-451e-4e27-9d1b-9512198c0f87.vsidx"; sourceTree = ""; }; + 64A9FF7D293E37E0009B54DA /* 2d348807-00ce-4154-95b3-1be8c82c2b39.vsidx */ = {isa = PBXFileReference; lastKnownFileType = file; path = "2d348807-00ce-4154-95b3-1be8c82c2b39.vsidx"; sourceTree = ""; }; + 64A9FF7E293E37E0009B54DA /* 8698234e-b801-4c8f-b5b5-7f6d052a522c.vsidx */ = {isa = PBXFileReference; lastKnownFileType = file; path = "8698234e-b801-4c8f-b5b5-7f6d052a522c.vsidx"; sourceTree = ""; }; + 64A9FF7F293E37E0009B54DA /* b4dbece6-e0e4-4342-85a4-1d9fe8493c98.vsidx */ = {isa = PBXFileReference; lastKnownFileType = file; path = "b4dbece6-e0e4-4342-85a4-1d9fe8493c98.vsidx"; sourceTree = ""; }; + 64A9FF81293E37E0009B54DA /* read.lock */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = read.lock; sourceTree = ""; }; + 64A9FF83293E37E0009B54DA /* .suo */ = {isa = PBXFileReference; lastKnownFileType = file; path = .suo; sourceTree = ""; }; + 64A9FF84293E37E0009B54DA /* Browse.VC.db */ = {isa = PBXFileReference; lastKnownFileType = file; path = Browse.VC.db; sourceTree = ""; }; + 64A9FF88293E37E0009B54DA /* JSKWGEN.ipch */ = {isa = PBXFileReference; lastKnownFileType = file; path = JSKWGEN.ipch; sourceTree = ""; }; + 64A9FF89293E37E0009B54DA /* Solution.VC.db */ = {isa = PBXFileReference; lastKnownFileType = file; path = Solution.VC.db; sourceTree = ""; }; + 64A9FF8A293E37E0009B54DA /* jskwgen.sln */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = jskwgen.sln; sourceTree = ""; }; + 64A9FF8B293E37E0009B54DA /* jskwgen.vcxproj */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = jskwgen.vcxproj; sourceTree = ""; }; + 64A9FF8C293E37E0009B54DA /* jskwgen.vcxproj.filters */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = jskwgen.vcxproj.filters; sourceTree = ""; }; + 64A9FF8D293E37E0009B54DA /* jskwgen.vcxproj.user */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = jskwgen.vcxproj.user; sourceTree = ""; }; + 64A9FF8E293E37E0009B54DA /* Spidermonkey.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Spidermonkey.txt; sourceTree = ""; }; + 64A9FF98293E37E0009B54DA /* jscript.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; path = jscript.xcodeproj; sourceTree = ""; }; + 64A9FFA0293E37E0009B54DA /* prmjtime.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = prmjtime.c; sourceTree = ""; }; + 64A9FFA1293E37E0009B54DA /* prmjtime.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = prmjtime.h; sourceTree = ""; }; + 64A9FFA9293E37E0009B54DA /* jsengine.sln */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = jsengine.sln; sourceTree = ""; }; + 64A9FFAA293E37E0009B54DA /* jsengine.vcxproj */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = jsengine.vcxproj; sourceTree = ""; }; + 64A9FFAB293E37E0009B54DA /* jsengine.vcxproj.filters */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = jsengine.vcxproj.filters; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 64A9FE45293E37BC009B54DA /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 64A9FE3E293E37BC009B54DA = { + isa = PBXGroup; + children = ( + 64A9FE4E293E37DF009B54DA /* spidermonkey */, + 64A9FE48293E37BC009B54DA /* Products */, + ); + sourceTree = ""; + }; + 64A9FE48293E37BC009B54DA /* Products */ = { + isa = PBXGroup; + children = ( + 64A9FE47293E37BC009B54DA /* libjscript.a */, + ); + name = Products; + sourceTree = ""; + }; + 64A9FE4E293E37DF009B54DA /* spidermonkey */ = { + isa = PBXGroup; + children = ( + 64A9FEE4293E37DF009B54DA /* jsapi.c */, + 64A9FEE6293E37DF009B54DA /* jsarena.c */, + 64A9FEE8293E37DF009B54DA /* jsarray.c */, + 64A9FEEA293E37DF009B54DA /* jsatom.c */, + 64A9FEEF293E37DF009B54DA /* jsbool.c */, + 64A9FEF2293E37DF009B54DA /* jscntxt.c */, + 64A9FEF7293E37DF009B54DA /* jscpucfg.c */, + 64A9FEF9293E37DF009B54DA /* jsdate.c */, + 64A9FEFB293E37DF009B54DA /* jsdbgapi.c */, + 64A9FEFD293E37DF009B54DA /* jsdhash.c */, + 64A9FEFF293E37DF009B54DA /* jsdtoa.c */, + 64A9FF01293E37DF009B54DA /* jsemit.c */, + 64A9FF03293E37DF009B54DA /* jsexn.c */, + 64A9FF05293E37DF009B54DA /* jsfile.c */, + 64A9FF08293E37DF009B54DA /* jsfun.c */, + 64A9FF0A293E37DF009B54DA /* jsgc.c */, + 64A9FF0C293E37DF009B54DA /* jshash.c */, + 64A9FF0F293E37DF009B54DA /* jsinterp.c */, + 64A9FF11293E37DF009B54DA /* jsiter.c */, + 64A9FF14293E37DF009B54DA /* jskwgen.c */, + 64A9FF18293E37DF009B54DA /* jslock.c */, + 64A9FF1B293E37DF009B54DA /* jslog2.c */, + 64A9FF1C293E37DF009B54DA /* jslong.c */, + 64A9FF1E293E37DF009B54DA /* jsmath.c */, + 64A9FF20293E37DF009B54DA /* jsnum.c */, + 64A9FF22293E37DF009B54DA /* jsobj.c */, + 64A9FF24293E37DF009B54DA /* jsopcode.c */, + 64A9FF2A293E37DF009B54DA /* jsparse.c */, + 64A9FF2C293E37DF009B54DA /* jsprf.c */, + 64A9FF31293E37DF009B54DA /* jsregexp.c */, + 64A9FF33293E37DF009B54DA /* jsscan.c */, + 64A9FF35293E37DF009B54DA /* jsscope.c */, + 64A9FF37293E37DF009B54DA /* jsscript.c */, + 64A9FF3B293E37DF009B54DA /* jsstr.c */, + 64A9FF3E293E37DF009B54DA /* jsutil.c */, + 64A9FF40293E37DF009B54DA /* jsxdrapi.c */, + 64A9FF42293E37DF009B54DA /* jsxml.c */, + 64A9FFA0293E37E0009B54DA /* prmjtime.c */, + 64A9FEE5293E37DF009B54DA /* jsapi.h */, + 64A9FEE7293E37DF009B54DA /* jsarena.h */, + 64A9FEE9293E37DF009B54DA /* jsarray.h */, + 64A9FEEB293E37DF009B54DA /* jsatom.h */, + 64A9FEEC293E37DF009B54DA /* jsautocfg.h */, + 64A9FEED293E37DF009B54DA /* jsautokw.h */, + 64A9FEEE293E37DF009B54DA /* jsbit.h */, + 64A9FEF0293E37DF009B54DA /* jsbool.h */, + 64A9FEF1293E37DF009B54DA /* jsclist.h */, + 64A9FEF3293E37DF009B54DA /* jscntxt.h */, + 64A9FEF4293E37DF009B54DA /* jscompat.h */, + 64A9FEF5293E37DF009B54DA /* jsconfig.h */, + 64A9FEF8293E37DF009B54DA /* jscpucfg.h */, + 64A9FEFA293E37DF009B54DA /* jsdate.h */, + 64A9FEFC293E37DF009B54DA /* jsdbgapi.h */, + 64A9FEFE293E37DF009B54DA /* jsdhash.h */, + 64A9FF00293E37DF009B54DA /* jsdtoa.h */, + 64A9FF02293E37DF009B54DA /* jsemit.h */, + 64A9FF04293E37DF009B54DA /* jsexn.h */, + 64A9FF06293E37DF009B54DA /* jsfile.h */, + 64A9FF09293E37DF009B54DA /* jsfun.h */, + 64A9FF0B293E37DF009B54DA /* jsgc.h */, + 64A9FF0D293E37DF009B54DA /* jshash.h */, + 64A9FF10293E37DF009B54DA /* jsinterp.h */, + 64A9FF12293E37DF009B54DA /* jsiter.h */, + 64A9FF17293E37DF009B54DA /* jslibmath.h */, + 64A9FF19293E37DF009B54DA /* jslock.h */, + 64A9FF1D293E37DF009B54DA /* jslong.h */, + 64A9FF1F293E37DF009B54DA /* jsmath.h */, + 64A9FF21293E37DF009B54DA /* jsnum.h */, + 64A9FF23293E37DF009B54DA /* jsobj.h */, + 64A9FF25293E37DF009B54DA /* jsopcode.h */, + 64A9FF28293E37DF009B54DA /* jsosdep.h */, + 64A9FF29293E37DF009B54DA /* jsotypes.h */, + 64A9FF2B293E37DF009B54DA /* jsparse.h */, + 64A9FF2D293E37DF009B54DA /* jsprf.h */, + 64A9FF2F293E37DF009B54DA /* jsprvtd.h */, + 64A9FF30293E37DF009B54DA /* jspubtd.h */, + 64A9FF32293E37DF009B54DA /* jsregexp.h */, + 64A9FF34293E37DF009B54DA /* jsscan.h */, + 64A9FF36293E37DF009B54DA /* jsscope.h */, + 64A9FF38293E37DF009B54DA /* jsscript.h */, + 64A9FF3A293E37DF009B54DA /* jsstddef.h */, + 64A9FF3C293E37DF009B54DA /* jsstr.h */, + 64A9FF3D293E37DF009B54DA /* jstypes.h */, + 64A9FF3F293E37DF009B54DA /* jsutil.h */, + 64A9FF41293E37DF009B54DA /* jsxdrapi.h */, + 64A9FF43293E37DF009B54DA /* jsxml.h */, + 64A9FFA1293E37E0009B54DA /* prmjtime.h */, + 64A9FF13293E37DF009B54DA /* jskeyword.tbl */, + 64A9FF26293E37DF009B54DA /* jsopcode.tbl */, + 64A9FF2E293E37DF009B54DA /* jsproto.tbl */, + 64A9FF45293E37DF009B54DA /* make */, + 64A9FFA8293E37E0009B54DA /* vs2022 */, + ); + name = spidermonkey; + path = ../../..; + sourceTree = ""; + }; + 64A9FF45293E37DF009B54DA /* make */ = { + isa = PBXGroup; + children = ( + 64A9FF46293E37DF009B54DA /* cmake */, + 64A9FF49293E37DF009B54DA /* vs2022 */, + 64A9FF8F293E37E0009B54DA /* XCode */, + ); + path = make; + sourceTree = ""; + }; + 64A9FF46293E37DF009B54DA /* cmake */ = { + isa = PBXGroup; + children = ( + 64A9FF47293E37DF009B54DA /* CMakeLists.txt */, + 64A9FF48293E37DF009B54DA /* readme.txt */, + ); + path = cmake; + sourceTree = ""; + }; + 64A9FF49293E37DF009B54DA /* vs2022 */ = { + isa = PBXGroup; + children = ( + 64A9FF4A293E37DF009B54DA /* fdlibm */, + 64A9FF60293E37E0009B54DA /* jscript */, + 64A9FF78293E37E0009B54DA /* jskwgen */, + 64A9FF8E293E37E0009B54DA /* Spidermonkey.txt */, + ); + path = vs2022; + sourceTree = ""; + }; + 64A9FF4A293E37DF009B54DA /* fdlibm */ = { + isa = PBXGroup; + children = ( + 64A9FF4B293E37DF009B54DA /* .vs */, + 64A9FF5C293E37E0009B54DA /* fdlibm.sln */, + 64A9FF5D293E37E0009B54DA /* fdlibm.vcxproj */, + 64A9FF5E293E37E0009B54DA /* fdlibm.vcxproj.filters */, + 64A9FF5F293E37E0009B54DA /* fdlibm.vcxproj.user */, + ); + path = fdlibm; + sourceTree = ""; + }; + 64A9FF4B293E37DF009B54DA /* .vs */ = { + isa = PBXGroup; + children = ( + 64A9FF4C293E37DF009B54DA /* fdlibm */, + ); + path = .vs; + sourceTree = ""; + }; + 64A9FF4C293E37DF009B54DA /* fdlibm */ = { + isa = PBXGroup; + children = ( + 64A9FF4D293E37DF009B54DA /* FileContentIndex */, + 64A9FF52293E37E0009B54DA /* v17 */, + ); + path = fdlibm; + sourceTree = ""; + }; + 64A9FF4D293E37DF009B54DA /* FileContentIndex */ = { + isa = PBXGroup; + children = ( + 64A9FF4E293E37E0009B54DA /* 810ca97f-d2c7-45a8-83d7-dfca7422c546.vsidx */, + 64A9FF4F293E37E0009B54DA /* 9988bf72-3586-4cab-a638-78a1f71359bd.vsidx */, + 64A9FF50293E37E0009B54DA /* merges */, + 64A9FF51293E37E0009B54DA /* read.lock */, + ); + path = FileContentIndex; + sourceTree = ""; + }; + 64A9FF50293E37E0009B54DA /* merges */ = { + isa = PBXGroup; + children = ( + ); + path = merges; + sourceTree = ""; + }; + 64A9FF52293E37E0009B54DA /* v17 */ = { + isa = PBXGroup; + children = ( + 64A9FF53293E37E0009B54DA /* .suo */, + 64A9FF54293E37E0009B54DA /* Browse.VC.db */, + 64A9FF55293E37E0009B54DA /* ipch */, + ); + path = v17; + sourceTree = ""; + }; + 64A9FF55293E37E0009B54DA /* ipch */ = { + isa = PBXGroup; + children = ( + 64A9FF56293E37E0009B54DA /* a828e7f6e283d07.ipch */, + 64A9FF57293E37E0009B54DA /* AutoPCH */, + ); + path = ipch; + sourceTree = ""; + }; + 64A9FF57293E37E0009B54DA /* AutoPCH */ = { + isa = PBXGroup; + children = ( + 64A9FF58293E37E0009B54DA /* b45df5a691fc3a13 */, + 64A9FF5A293E37E0009B54DA /* b6faf7c289131d49 */, + ); + path = AutoPCH; + sourceTree = ""; + }; + 64A9FF58293E37E0009B54DA /* b45df5a691fc3a13 */ = { + isa = PBXGroup; + children = ( + 64A9FF59293E37E0009B54DA /* FDLIBM.ipch */, + ); + path = b45df5a691fc3a13; + sourceTree = ""; + }; + 64A9FF5A293E37E0009B54DA /* b6faf7c289131d49 */ = { + isa = PBXGroup; + children = ( + 64A9FF5B293E37E0009B54DA /* PCH.ipch */, + ); + path = b6faf7c289131d49; + sourceTree = ""; + }; + 64A9FF60293E37E0009B54DA /* jscript */ = { + isa = PBXGroup; + children = ( + 64A9FF61293E37E0009B54DA /* .vs */, + 64A9FF74293E37E0009B54DA /* jscript.sln */, + 64A9FF75293E37E0009B54DA /* jscript.vcxproj */, + 64A9FF76293E37E0009B54DA /* jscript.vcxproj.filters */, + 64A9FF77293E37E0009B54DA /* jscript.vcxproj.user */, + ); + path = jscript; + sourceTree = ""; + }; + 64A9FF61293E37E0009B54DA /* .vs */ = { + isa = PBXGroup; + children = ( + 64A9FF62293E37E0009B54DA /* jscript */, + ); + path = .vs; + sourceTree = ""; + }; + 64A9FF62293E37E0009B54DA /* jscript */ = { + isa = PBXGroup; + children = ( + 64A9FF63293E37E0009B54DA /* FileContentIndex */, + 64A9FF69293E37E0009B54DA /* v17 */, + ); + path = jscript; + sourceTree = ""; + }; + 64A9FF63293E37E0009B54DA /* FileContentIndex */ = { + isa = PBXGroup; + children = ( + 64A9FF64293E37E0009B54DA /* 790a135e-3229-466a-a1b7-49b9ec65f9a3.vsidx */, + 64A9FF65293E37E0009B54DA /* 965a6886-fdd2-491e-9aae-4a8ea266abe2.vsidx */, + 64A9FF66293E37E0009B54DA /* d4cebbe1-9705-4ee4-b57f-0b666b8b52d1.vsidx */, + 64A9FF67293E37E0009B54DA /* merges */, + 64A9FF68293E37E0009B54DA /* read.lock */, + ); + path = FileContentIndex; + sourceTree = ""; + }; + 64A9FF67293E37E0009B54DA /* merges */ = { + isa = PBXGroup; + children = ( + ); + path = merges; + sourceTree = ""; + }; + 64A9FF69293E37E0009B54DA /* v17 */ = { + isa = PBXGroup; + children = ( + 64A9FF6A293E37E0009B54DA /* .suo */, + 64A9FF6B293E37E0009B54DA /* Browse.VC.db */, + 64A9FF6C293E37E0009B54DA /* ipch */, + 64A9FF73293E37E0009B54DA /* Solution.VC.db */, + ); + path = v17; + sourceTree = ""; + }; + 64A9FF6C293E37E0009B54DA /* ipch */ = { + isa = PBXGroup; + children = ( + 64A9FF6D293E37E0009B54DA /* 5bbeeae1e78ce2.ipch */, + 64A9FF6E293E37E0009B54DA /* AutoPCH */, + ); + path = ipch; + sourceTree = ""; + }; + 64A9FF6E293E37E0009B54DA /* AutoPCH */ = { + isa = PBXGroup; + children = ( + 64A9FF6F293E37E0009B54DA /* df4888c4bcf11fbb */, + 64A9FF71293E37E0009B54DA /* e1ab84b0f2102d10 */, + ); + path = AutoPCH; + sourceTree = ""; + }; + 64A9FF6F293E37E0009B54DA /* df4888c4bcf11fbb */ = { + isa = PBXGroup; + children = ( + 64A9FF70293E37E0009B54DA /* JSCRIPT.ipch */, + ); + path = df4888c4bcf11fbb; + sourceTree = ""; + }; + 64A9FF71293E37E0009B54DA /* e1ab84b0f2102d10 */ = { + isa = PBXGroup; + children = ( + 64A9FF72293E37E0009B54DA /* PCH.ipch */, + ); + path = e1ab84b0f2102d10; + sourceTree = ""; + }; + 64A9FF78293E37E0009B54DA /* jskwgen */ = { + isa = PBXGroup; + children = ( + 64A9FF79293E37E0009B54DA /* .vs */, + 64A9FF8A293E37E0009B54DA /* jskwgen.sln */, + 64A9FF8B293E37E0009B54DA /* jskwgen.vcxproj */, + 64A9FF8C293E37E0009B54DA /* jskwgen.vcxproj.filters */, + 64A9FF8D293E37E0009B54DA /* jskwgen.vcxproj.user */, + ); + path = jskwgen; + sourceTree = ""; + }; + 64A9FF79293E37E0009B54DA /* .vs */ = { + isa = PBXGroup; + children = ( + 64A9FF7A293E37E0009B54DA /* jskwgen */, + ); + path = .vs; + sourceTree = ""; + }; + 64A9FF7A293E37E0009B54DA /* jskwgen */ = { + isa = PBXGroup; + children = ( + 64A9FF7B293E37E0009B54DA /* FileContentIndex */, + 64A9FF82293E37E0009B54DA /* v17 */, + ); + path = jskwgen; + sourceTree = ""; + }; + 64A9FF7B293E37E0009B54DA /* FileContentIndex */ = { + isa = PBXGroup; + children = ( + 64A9FF7C293E37E0009B54DA /* 14b5de96-451e-4e27-9d1b-9512198c0f87.vsidx */, + 64A9FF7D293E37E0009B54DA /* 2d348807-00ce-4154-95b3-1be8c82c2b39.vsidx */, + 64A9FF7E293E37E0009B54DA /* 8698234e-b801-4c8f-b5b5-7f6d052a522c.vsidx */, + 64A9FF7F293E37E0009B54DA /* b4dbece6-e0e4-4342-85a4-1d9fe8493c98.vsidx */, + 64A9FF80293E37E0009B54DA /* merges */, + 64A9FF81293E37E0009B54DA /* read.lock */, + ); + path = FileContentIndex; + sourceTree = ""; + }; + 64A9FF80293E37E0009B54DA /* merges */ = { + isa = PBXGroup; + children = ( + ); + path = merges; + sourceTree = ""; + }; + 64A9FF82293E37E0009B54DA /* v17 */ = { + isa = PBXGroup; + children = ( + 64A9FF83293E37E0009B54DA /* .suo */, + 64A9FF84293E37E0009B54DA /* Browse.VC.db */, + 64A9FF85293E37E0009B54DA /* ipch */, + 64A9FF89293E37E0009B54DA /* Solution.VC.db */, + ); + path = v17; + sourceTree = ""; + }; + 64A9FF85293E37E0009B54DA /* ipch */ = { + isa = PBXGroup; + children = ( + 64A9FF86293E37E0009B54DA /* AutoPCH */, + ); + path = ipch; + sourceTree = ""; + }; + 64A9FF86293E37E0009B54DA /* AutoPCH */ = { + isa = PBXGroup; + children = ( + 64A9FF87293E37E0009B54DA /* 57164e6be5c9df43 */, + ); + path = AutoPCH; + sourceTree = ""; + }; + 64A9FF87293E37E0009B54DA /* 57164e6be5c9df43 */ = { + isa = PBXGroup; + children = ( + 64A9FF88293E37E0009B54DA /* JSKWGEN.ipch */, + ); + path = 57164e6be5c9df43; + sourceTree = ""; + }; + 64A9FF8F293E37E0009B54DA /* XCode */ = { + isa = PBXGroup; + children = ( + 64A9FF90293E37E0009B54DA /* jscript */, + ); + path = XCode; + sourceTree = ""; + }; + 64A9FF90293E37E0009B54DA /* jscript */ = { + isa = PBXGroup; + children = ( + 64A9FF91293E37E0009B54DA /* Build */, + 64A9FF98293E37E0009B54DA /* jscript.xcodeproj */, + ); + path = jscript; + sourceTree = ""; + }; + 64A9FF91293E37E0009B54DA /* Build */ = { + isa = PBXGroup; + children = ( + 64A9FF92293E37E0009B54DA /* Intermediates.noindex */, + ); + path = Build; + sourceTree = ""; + }; + 64A9FF92293E37E0009B54DA /* Intermediates.noindex */ = { + isa = PBXGroup; + children = ( + 64A9FF93293E37E0009B54DA /* XCBuildData */, + ); + path = Intermediates.noindex; + sourceTree = ""; + }; + 64A9FF93293E37E0009B54DA /* XCBuildData */ = { + isa = PBXGroup; + children = ( + 64A9FF94293E37E0009B54DA /* PIFCache */, + ); + path = XCBuildData; + sourceTree = ""; + }; + 64A9FF94293E37E0009B54DA /* PIFCache */ = { + isa = PBXGroup; + children = ( + 64A9FF95293E37E0009B54DA /* project */, + 64A9FF96293E37E0009B54DA /* target */, + 64A9FF97293E37E0009B54DA /* workspace */, + ); + path = PIFCache; + sourceTree = ""; + }; + 64A9FF95293E37E0009B54DA /* project */ = { + isa = PBXGroup; + children = ( + ); + path = project; + sourceTree = ""; + }; + 64A9FF96293E37E0009B54DA /* target */ = { + isa = PBXGroup; + children = ( + ); + path = target; + sourceTree = ""; + }; + 64A9FF97293E37E0009B54DA /* workspace */ = { + isa = PBXGroup; + children = ( + ); + path = workspace; + sourceTree = ""; + }; + 64A9FF99293E37E0009B54DA /* Products */ = { + isa = PBXGroup; + name = Products; + sourceTree = ""; + }; + 64A9FFA8293E37E0009B54DA /* vs2022 */ = { + isa = PBXGroup; + children = ( + 64A9FFA9293E37E0009B54DA /* jsengine.sln */, + 64A9FFAA293E37E0009B54DA /* jsengine.vcxproj */, + 64A9FFAB293E37E0009B54DA /* jsengine.vcxproj.filters */, + ); + path = vs2022; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + 64A9FE43293E37BC009B54DA /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 64A90027293E37E0009B54DA /* jsfile.h in Headers */, + 64A9002D293E37E0009B54DA /* jshash.h in Headers */, + 64A90057293E37E0009B54DA /* jsutil.h in Headers */, + 64A9005B293E37E0009B54DA /* jsxml.h in Headers */, + 64A9005E293E37E0009B54DA /* prmjtime.h in Headers */, + 64A9001D293E37E0009B54DA /* jsdbgapi.h in Headers */, + 64A90007293E37E0009B54DA /* jsapi.h in Headers */, + 64A90029293E37E0009B54DA /* jsfun.h in Headers */, + 64A9003B293E37E0009B54DA /* jsmath.h in Headers */, + 64A9004D293E37E0009B54DA /* jsscan.h in Headers */, + 64A90009293E37E0009B54DA /* jsarena.h in Headers */, + 64A90031293E37E0009B54DA /* jsiter.h in Headers */, + 64A90059293E37E0009B54DA /* jsxdrapi.h in Headers */, + 64A9004F293E37E0009B54DA /* jsscope.h in Headers */, + 64A9003D293E37E0009B54DA /* jsnum.h in Headers */, + 64A90043293E37E0009B54DA /* jsotypes.h in Headers */, + 64A90017293E37E0009B54DA /* jsconfig.h in Headers */, + 64A90048293E37E0009B54DA /* jsprvtd.h in Headers */, + 64A90025293E37E0009B54DA /* jsexn.h in Headers */, + 64A90035293E37E0009B54DA /* jslock.h in Headers */, + 64A90013293E37E0009B54DA /* jsclist.h in Headers */, + 64A90047293E37E0009B54DA /* jsprf.h in Headers */, + 64A90019293E37E0009B54DA /* jscpucfg.h in Headers */, + 64A90042293E37E0009B54DA /* jsosdep.h in Headers */, + 64A90021293E37E0009B54DA /* jsdtoa.h in Headers */, + 64A9002F293E37E0009B54DA /* jsinterp.h in Headers */, + 64A90041293E37E0009B54DA /* jsopcode.h in Headers */, + 64A9003F293E37E0009B54DA /* jsobj.h in Headers */, + 64A90010293E37E0009B54DA /* jsbit.h in Headers */, + 64A9000B293E37E0009B54DA /* jsarray.h in Headers */, + 64A90023293E37E0009B54DA /* jsemit.h in Headers */, + 64A90015293E37E0009B54DA /* jscntxt.h in Headers */, + 64A9001F293E37E0009B54DA /* jsdhash.h in Headers */, + 64A90039293E37E0009B54DA /* jslong.h in Headers */, + 64A90012293E37E0009B54DA /* jsbool.h in Headers */, + 64A9000F293E37E0009B54DA /* jsautokw.h in Headers */, + 64A90055293E37E0009B54DA /* jstypes.h in Headers */, + 64A90045293E37E0009B54DA /* jsparse.h in Headers */, + 64A9004B293E37E0009B54DA /* jsregexp.h in Headers */, + 64A90054293E37E0009B54DA /* jsstr.h in Headers */, + 64A90033293E37E0009B54DA /* jslibmath.h in Headers */, + 64A9000D293E37E0009B54DA /* jsatom.h in Headers */, + 64A9002B293E37E0009B54DA /* jsgc.h in Headers */, + 64A9001B293E37E0009B54DA /* jsdate.h in Headers */, + 64A90016293E37E0009B54DA /* jscompat.h in Headers */, + 64A90049293E37E0009B54DA /* jspubtd.h in Headers */, + 64A90051293E37E0009B54DA /* jsscript.h in Headers */, + 64A90052293E37E0009B54DA /* jsstddef.h in Headers */, + 64A9000E293E37E0009B54DA /* jsautocfg.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + 64A9FE46293E37BC009B54DA /* jscript */ = { + isa = PBXNativeTarget; + buildConfigurationList = 64A9FE4B293E37BC009B54DA /* Build configuration list for PBXNativeTarget "jscript" */; + buildPhases = ( + 64A9FE43293E37BC009B54DA /* Headers */, + 64A9FE44293E37BC009B54DA /* Sources */, + 64A9FE45293E37BC009B54DA /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = jscript; + productName = jscript; + productReference = 64A9FE47293E37BC009B54DA /* libjscript.a */; + productType = "com.apple.product-type.library.static"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 64A9FE3F293E37BC009B54DA /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = 1; + LastUpgradeCheck = 1410; + TargetAttributes = { + 64A9FE46293E37BC009B54DA = { + CreatedOnToolsVersion = 14.1; + }; + }; + }; + buildConfigurationList = 64A9FE42293E37BC009B54DA /* Build configuration list for PBXProject "jscript" */; + compatibilityVersion = "Xcode 14.0"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 64A9FE3E293E37BC009B54DA; + productRefGroup = 64A9FE48293E37BC009B54DA /* Products */; + projectDirPath = ""; + projectReferences = ( + { + ProductGroup = 64A9FF99293E37E0009B54DA /* Products */; + ProjectRef = 64A9FF98293E37E0009B54DA /* jscript.xcodeproj */; + }, + ); + projectRoot = ""; + targets = ( + 64A9FE46293E37BC009B54DA /* jscript */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXSourcesBuildPhase section */ + 64A9FE44293E37BC009B54DA /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 64A90053293E37E0009B54DA /* jsstr.c in Sources */, + 64A90038293E37E0009B54DA /* jslong.c in Sources */, + 64A9002E293E37E0009B54DA /* jsinterp.c in Sources */, + 64A9003C293E37E0009B54DA /* jsnum.c in Sources */, + 64A90056293E37E0009B54DA /* jsutil.c in Sources */, + 64A9000A293E37E0009B54DA /* jsarray.c in Sources */, + 64A90030293E37E0009B54DA /* jsiter.c in Sources */, + 64A90050293E37E0009B54DA /* jsscript.c in Sources */, + 64A9001A293E37E0009B54DA /* jsdate.c in Sources */, + 64A90046293E37E0009B54DA /* jsprf.c in Sources */, + 64A90037293E37E0009B54DA /* jslog2.c in Sources */, + 64A9000C293E37E0009B54DA /* jsatom.c in Sources */, + 64A90026293E37E0009B54DA /* jsfile.c in Sources */, + 64A9002A293E37E0009B54DA /* jsgc.c in Sources */, + 64A90034293E37E0009B54DA /* jslock.c in Sources */, + 64A90044293E37E0009B54DA /* jsparse.c in Sources */, + 64A90028293E37E0009B54DA /* jsfun.c in Sources */, + 64A9001C293E37E0009B54DA /* jsdbgapi.c in Sources */, + 64A90024293E37E0009B54DA /* jsexn.c in Sources */, + 64A90018293E37E0009B54DA /* jscpucfg.c in Sources */, + 64A90040293E37E0009B54DA /* jsopcode.c in Sources */, + 64A9005D293E37E0009B54DA /* prmjtime.c in Sources */, + 64A9001E293E37E0009B54DA /* jsdhash.c in Sources */, + 64A90006293E37E0009B54DA /* jsapi.c in Sources */, + 64A9003E293E37E0009B54DA /* jsobj.c in Sources */, + 64A90011293E37E0009B54DA /* jsbool.c in Sources */, + 64A9004E293E37E0009B54DA /* jsscope.c in Sources */, + 64A9002C293E37E0009B54DA /* jshash.c in Sources */, + 64A90008293E37E0009B54DA /* jsarena.c in Sources */, + 64A90058293E37E0009B54DA /* jsxdrapi.c in Sources */, + 64A9005A293E37E0009B54DA /* jsxml.c in Sources */, + 64A9004A293E37E0009B54DA /* jsregexp.c in Sources */, + 64A9004C293E37E0009B54DA /* jsscan.c in Sources */, + 64A90014293E37E0009B54DA /* jscntxt.c in Sources */, + 64A90022293E37E0009B54DA /* jsemit.c in Sources */, + 64A90032293E37E0009B54DA /* jskwgen.c in Sources */, + 64A90020293E37E0009B54DA /* jsdtoa.c in Sources */, + 64A9003A293E37E0009B54DA /* jsmath.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 64A9FE49293E37BC009B54DA /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 13.0; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = macosx; + }; + name = Debug; + }; + 64A9FE4A293E37BC009B54DA /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 13.0; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = macosx; + }; + name = Release; + }; + 64A9FE4C293E37BC009B54DA /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_CXX_LANGUAGE_STANDARD = "c++17"; + CLANG_WARN_BOOL_CONVERSION = NO; + CLANG_WARN_COMMA = NO; + CLANG_WARN_CONSTANT_CONVERSION = NO; + CLANG_WARN_ENUM_CONVERSION = NO; + CLANG_WARN_INT_CONVERSION = NO; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = NO; + CLANG_WARN_STRICT_PROTOTYPES = NO; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = CF264WE69M; + EXECUTABLE_PREFIX = lib; + GCC_C_LANGUAGE_STANDARD = c11; + GCC_PREPROCESSOR_DEFINITIONS = ( + XP_UNIX, + EXPORT_JS_API, + HAVE_VA_LIST_AS_ARRAY, + SVR4, + SYSV, + POSIX_SOURCE, + _DEFAULT_SOURCE, + HAVE_LOCALTIME_R, + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = NO; + GCC_WARN_ABOUT_POINTER_SIGNEDNESS = NO; + GCC_WARN_ABOUT_RETURN_TYPE = NO; + GCC_WARN_CHECK_SWITCH_STATEMENTS = NO; + GCC_WARN_MISSING_PARENTHESES = NO; + GCC_WARN_UNINITIALIZED_AUTOS = NO; + GCC_WARN_UNUSED_VALUE = NO; + GCC_WARN_UNUSED_VARIABLE = NO; + PRODUCT_NAME = "$(TARGET_NAME)"; + SKIP_INSTALL = YES; + USER_HEADER_SEARCH_PATHS = ../../../..; + WARNING_CFLAGS = ( + "-Wno-shift-negative-value", + "-Wno-non-literal-null-conversion", + "-Wno-tautological-constant-out-of-range-compare", + "-Wno-pointer-to-int-cast", + ); + }; + name = Debug; + }; + 64A9FE4D293E37BC009B54DA /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_CXX_LANGUAGE_STANDARD = "c++17"; + CLANG_WARN_BOOL_CONVERSION = NO; + CLANG_WARN_COMMA = NO; + CLANG_WARN_CONSTANT_CONVERSION = NO; + CLANG_WARN_ENUM_CONVERSION = NO; + CLANG_WARN_INT_CONVERSION = NO; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = NO; + CLANG_WARN_STRICT_PROTOTYPES = NO; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = CF264WE69M; + EXECUTABLE_PREFIX = lib; + GCC_C_LANGUAGE_STANDARD = c11; + GCC_PREPROCESSOR_DEFINITIONS = ( + XP_UNIX, + EXPORT_JS_API, + HAVE_VA_LIST_AS_ARRAY, + SVR4, + SYSV, + POSIX_SOURCE, + _DEFAULT_SOURCE, + HAVE_LOCALTIME_R, + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = NO; + GCC_WARN_ABOUT_POINTER_SIGNEDNESS = NO; + GCC_WARN_ABOUT_RETURN_TYPE = NO; + GCC_WARN_CHECK_SWITCH_STATEMENTS = NO; + GCC_WARN_MISSING_PARENTHESES = NO; + GCC_WARN_UNINITIALIZED_AUTOS = NO; + GCC_WARN_UNUSED_VALUE = NO; + GCC_WARN_UNUSED_VARIABLE = NO; + PRODUCT_NAME = "$(TARGET_NAME)"; + SKIP_INSTALL = YES; + USER_HEADER_SEARCH_PATHS = ../../../..; + WARNING_CFLAGS = ( + "-Wno-shift-negative-value", + "-Wno-non-literal-null-conversion", + "-Wno-tautological-constant-out-of-range-compare", + "-Wno-pointer-to-int-cast", + ); + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 64A9FE42293E37BC009B54DA /* Build configuration list for PBXProject "jscript" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 64A9FE49293E37BC009B54DA /* Debug */, + 64A9FE4A293E37BC009B54DA /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 64A9FE4B293E37BC009B54DA /* Build configuration list for PBXNativeTarget "jscript" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 64A9FE4C293E37BC009B54DA /* Debug */, + 64A9FE4D293E37BC009B54DA /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 64A9FE3F293E37BC009B54DA /* Project object */; +} diff --git a/spidermonkey/make/XCode/jscript/jscript.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/spidermonkey/make/XCode/jscript/jscript.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..919434a62 --- /dev/null +++ b/spidermonkey/make/XCode/jscript/jscript.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/spidermonkey/make/XCode/jscript/jscript.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/spidermonkey/make/XCode/jscript/jscript.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/spidermonkey/make/XCode/jscript/jscript.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/spidermonkey/make/cmake/CMakeLists.txt b/spidermonkey/make/cmake/CMakeLists.txt new file mode 100644 index 000000000..3f78e88ec --- /dev/null +++ b/spidermonkey/make/cmake/CMakeLists.txt @@ -0,0 +1,152 @@ +cmake_minimum_required(VERSION 3.18) +project(jscript VERSION 1.7 LANGUAGES C) + +add_library(jscript STATIC + ../../jsapi.c + ../../jsarena.c + ../../jsarray.c + ../../jsatom.c + ../../jsbool.c + ../../jscntxt.c + ../../jsdate.c + ../../jsdbgapi.c + ../../jsdhash.c + ../../jsdtoa.c + ../../jsemit.c + ../../jsexn.c + ../../jsfun.c + ../../jsgc.c + ../../jshash.c + ../../jsinterp.c + ../../jsiter.c + ../../jslock.c + ../../jslog2.c + ../../jslong.c + ../../jsmath.c + ../../jsnum.c + ../../jsobj.c + ../../jsopcode.c + ../../jsparse.c + ../../jsprf.c + ../../jsregexp.c + ../../jsscan.c + ../../jsscope.c + ../../jsscript.c + ../../jsstr.c + ../../jsutil.c + ../../jsxdrapi.c + ../../jsxml.c + ../../prmjtime.c + ../../jsapi.h + ../../jsarena.h + ../../jsarray.h + ../../jsatom.h + ../../jsbool.h + ../../jscntxt.h + ../../jsdate.h + ../../jsdbgapi.h + ../../jsdhash.h + ../../jsdtoa.h + ../../jsemit.h + ../../jsexn.h + ../../jsfun.h + ../../jsgc.h + ../../jshash.h + ../../jsinterp.h + ../../jsiter.h + ../../jslock.h + ../../jslong.h + ../../jsmath.h + ../../jsnum.h + ../../jsobj.h + ../../jsopcode.h + ../../jsparse.h + ../../jsprf.h + ../../jsprvtd.h + ../../jspubtd.h + ../../jsregexp.h + ../../jsscan.h + ../../jsscope.h + ../../jsscript.h + ../../jsstddef.h + ../../jsstr.h + ../../jstypes.h + ../../jsutil.h + ../../jsxdrapi.h + ../../jsxml.h + ../../prmjtime.h + ../../jsopcode.tbl +) + +if (WIN32) + + target_compile_definitions( jscript PRIVATE + _LIB + _CRT_SECURE_NO_DEPRECATE + _CRT_NONSTDC_NO_DEPRECATE + _WINDOWS + _X86_=1 + EXPORT_JS_API + JSFILE + XP_WIN + ) + + target_compile_options( jscript PRIVATE + /W3 + /sdl- + /wd4244 + /wd4267 + /wd4047 + /wd4146 + /wd4334 + /wd4311 + /WX- + $<$:/O2> + ) +# ************************************************************************* +# The libraries we need +# ************************************************************************* +target_link_libraries(jscript PRIVATE + $<$:winmm> +) + + +else() + + target_compile_definitions( jscript PRIVATE + XP_UNIX + EXPORT_JS_API + HAVE_VA_LIST_AS_ARRAY + SVR4 + SYSV + POSIX_SOURCE + _DEFAULT_SOURCE + HAVE_LOCALTIME_R + ) + + target_compile_options( jscript PRIVATE + + -Wno-shift-negative-value + -Wno-implicit-function-declaration + -Wno-strict-prototypes + -Wno-logical-not-parentheses + -Wno-int-to-void-pointer-cast + -Wno-pointer-to-int-cast + -Wno-switch + -Wno-incompatible-pointer-types + -Wno-non-literal-null-conversion + -Wno-tautological-constant-out-of-range-compare + ) + if (APPLE) + target_compile_options( jscript PRIVATE + $<$:-Os> + ) + else() + target_compile_options(jscript PRIVATE + $<$:-O2> + ) + endif() +endif(WIN32) + + + diff --git a/spidermonkey/vs2022/jsengine.sln b/spidermonkey/vs2022/jsengine.sln deleted file mode 100644 index 1d9f6b6ef..000000000 --- a/spidermonkey/vs2022/jsengine.sln +++ /dev/null @@ -1,25 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 17 -VisualStudioVersion = 17.0.32112.339 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jsengine", "jsengine.vcxproj", "{4366F707-C296-4510-85AA-A61DD77DE34B}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x64 = Debug|x64 - Release|x64 = Release|x64 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {4366F707-C296-4510-85AA-A61DD77DE34B}.Debug|x64.ActiveCfg = Debug|x64 - {4366F707-C296-4510-85AA-A61DD77DE34B}.Debug|x64.Build.0 = Debug|x64 - {4366F707-C296-4510-85AA-A61DD77DE34B}.Release|x64.ActiveCfg = Release|x64 - {4366F707-C296-4510-85AA-A61DD77DE34B}.Release|x64.Build.0 = Release|x64 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {418FA150-25A2-43A4-9A91-550E18C1F4E5} - EndGlobalSection -EndGlobal diff --git a/spidermonkey/vs2022/jsengine.vcxproj b/spidermonkey/vs2022/jsengine.vcxproj deleted file mode 100644 index 299886f7c..000000000 --- a/spidermonkey/vs2022/jsengine.vcxproj +++ /dev/null @@ -1,176 +0,0 @@ - - - - - Debug - x64 - - - Release - x64 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 16.0 - Win32Proj - {4366f707-c296-4510-85aa-a61dd77de34b} - jsengine - 10.0 - - - - StaticLibrary - true - v143 - Unicode - - - StaticLibrary - false - v143 - Unicode - - - - - - - - - - - - - - - true - - - false - - - - _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINDOWS;_X86_=1;EXPORT_JS_API;JSFILE;WIN32;_DEBUG;XP_WIN;_LIB;%(PreprocessorDefinitions) - NotUsing - stdcpp17 - stdc11 - ..\ - Neither - MultiThreadedDebug - ProgramDatabase - true - 4090;5105;4047;4311 - - - - - false - true - - - winmm.lib - - - - - _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINDOWS;_X86_=1;EXPORT_JS_API;JSFILE;WIN32;XP_WIN;NDEBUG;_LIB;%(PreprocessorDefinitions) - NotUsing - stdcpp17 - stdc11 - ..\ - true - Speed - MultiThreaded - 4090;5105;4047;4311 - - - - - false - true - true - - - winmm.lib - - - - - - \ No newline at end of file diff --git a/uox3.xcodeproj/project.pbxproj b/uox3.xcodeproj/project.pbxproj deleted file mode 100644 index 766e87105..000000000 --- a/uox3.xcodeproj/project.pbxproj +++ /dev/null @@ -1,933 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 56; - objects = { - -/* Begin PBXBuildFile section */ - 6452D32227D3A7CB00E5AFB4 /* osunique.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6452D32127D3A7CB00E5AFB4 /* osunique.cpp */; }; - 648AF79627CFF2CD009327DE /* cConsole.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF6F627CFF2CC009327DE /* cConsole.cpp */; }; - 648AF79727CFF2CD009327DE /* dist.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF6F727CFF2CC009327DE /* dist.cpp */; }; - 648AF79827CFF2CD009327DE /* calcfuncs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF6FA27CFF2CC009327DE /* calcfuncs.cpp */; }; - 648AF79927CFF2CD009327DE /* CPacketReceive.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF6FC27CFF2CC009327DE /* CPacketReceive.cpp */; }; - 648AF79A27CFF2CD009327DE /* cScript.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF6FD27CFF2CC009327DE /* cScript.cpp */; }; - 648AF79B27CFF2CD009327DE /* uox3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF70027CFF2CC009327DE /* uox3.cpp */; }; - 648AF79C27CFF2CD009327DE /* boats.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF70127CFF2CC009327DE /* boats.cpp */; }; - 648AF79D27CFF2CD009327DE /* IP4Address.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF70227CFF2CC009327DE /* IP4Address.cpp */; }; - 648AF79E27CFF2CD009327DE /* cItem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF70527CFF2CC009327DE /* cItem.cpp */; }; - 648AF79F27CFF2CD009327DE /* worldmain.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF70727CFF2CC009327DE /* worldmain.cpp */; }; - 648AF7A027CFF2CD009327DE /* cBaseobject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF70827CFF2CC009327DE /* cBaseobject.cpp */; }; - 648AF7A127CFF2CD009327DE /* cServerData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF70A27CFF2CC009327DE /* cServerData.cpp */; }; - 648AF7A227CFF2CD009327DE /* cMultiObj.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF70E27CFF2CC009327DE /* cMultiObj.cpp */; }; - 648AF7A327CFF2CD009327DE /* jail.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF71227CFF2CC009327DE /* jail.cpp */; }; - 648AF7A427CFF2CD009327DE /* cSocket.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF71427CFF2CC009327DE /* cSocket.cpp */; }; - 648AF7A627CFF2CD009327DE /* queue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF71727CFF2CC009327DE /* queue.cpp */; }; - 648AF7A827CFF2CD009327DE /* SEFunctions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF71B27CFF2CC009327DE /* SEFunctions.cpp */; }; - 648AF7A927CFF2CD009327DE /* archive.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF71D27CFF2CC009327DE /* archive.cpp */; }; - 648AF7AA27CFF2CD009327DE /* lineofsight.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF72027CFF2CC009327DE /* lineofsight.cpp */; }; - 648AF7AB27CFF2CD009327DE /* TimeUtility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF72527CFF2CC009327DE /* TimeUtility.cpp */; }; - 648AF7AC27CFF2CD009327DE /* townregion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF72627CFF2CC009327DE /* townregion.cpp */; }; - 648AF7AD27CFF2CD009327DE /* house.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF72B27CFF2CC009327DE /* house.cpp */; }; - 648AF7AE27CFF2CD009327DE /* CResponse.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF72D27CFF2CC009327DE /* CResponse.cpp */; }; - 648AF7AF27CFF2CD009327DE /* UOXJSPropertyFuncs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF72F27CFF2CC009327DE /* UOXJSPropertyFuncs.cpp */; }; - 648AF7B027CFF2CD009327DE /* UOPData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF73227CFF2CC009327DE /* UOPData.cpp */; }; - 648AF7B127CFF2CD009327DE /* UOXJSMethods.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF73327CFF2CC009327DE /* UOXJSMethods.cpp */; }; - 648AF7B227CFF2CD009327DE /* cRaces.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF73427CFF2CC009327DE /* cRaces.cpp */; }; - 648AF7B327CFF2CD009327DE /* MultiMul.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF73627CFF2CD009327DE /* MultiMul.cpp */; }; - 648AF7B427CFF2CD009327DE /* targeting.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF73727CFF2CD009327DE /* targeting.cpp */; }; - 648AF7B527CFF2CD009327DE /* skills.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF73827CFF2CD009327DE /* skills.cpp */; }; - 648AF7B627CFF2CD009327DE /* findfuncs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF73A27CFF2CD009327DE /* findfuncs.cpp */; }; - 648AF7B727CFF2CD009327DE /* Dictionary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF73B27CFF2CD009327DE /* Dictionary.cpp */; }; - 648AF7B827CFF2CD009327DE /* CJSEngine.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF73D27CFF2CD009327DE /* CJSEngine.cpp */; }; - 648AF7B927CFF2CD009327DE /* magic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF73F27CFF2CD009327DE /* magic.cpp */; }; - 648AF7BA27CFF2CD009327DE /* cGuild.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF74227CFF2CD009327DE /* cGuild.cpp */; }; - 648AF7BB27CFF2CD009327DE /* EventTimer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF74327CFF2CD009327DE /* EventTimer.cpp */; }; - 648AF7BC27CFF2CD009327DE /* cChar.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF74427CFF2CD009327DE /* cChar.cpp */; }; - 648AF7BD27CFF2CD009327DE /* commands.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF74527CFF2CD009327DE /* commands.cpp */; }; - 648AF7BE27CFF2CD009327DE /* cThreadQueue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF74727CFF2CD009327DE /* cThreadQueue.cpp */; }; - 648AF7BF27CFF2CD009327DE /* cHTMLSystem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF74827CFF2CD009327DE /* cHTMLSystem.cpp */; }; - 648AF7C027CFF2CD009327DE /* network.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF74A27CFF2CD009327DE /* network.cpp */; }; - 648AF7C127CFF2CD009327DE /* gumps.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF74C27CFF2CD009327DE /* gumps.cpp */; }; - 648AF7C227CFF2CD009327DE /* sound.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF74D27CFF2CD009327DE /* sound.cpp */; }; - 648AF7C327CFF2CD009327DE /* cmdtable.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF75127CFF2CD009327DE /* cmdtable.cpp */; }; - 648AF7C427CFF2CD009327DE /* cDice.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF75227CFF2CD009327DE /* cDice.cpp */; }; - 648AF7C527CFF2CD009327DE /* items.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF75327CFF2CD009327DE /* items.cpp */; }; - 648AF7C627CFF2CD009327DE /* cVersionClass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF75427CFF2CD009327DE /* cVersionClass.cpp */; }; - 648AF7C727CFF2CD009327DE /* regions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF75627CFF2CD009327DE /* regions.cpp */; }; - 648AF7C827CFF2CD009327DE /* cServerDefinitions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF75827CFF2CD009327DE /* cServerDefinitions.cpp */; }; - 648AF7C927CFF2CD009327DE /* ssection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF75927CFF2CD009327DE /* ssection.cpp */; }; - 648AF7CA27CFF2CD009327DE /* scriptc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF75E27CFF2CD009327DE /* scriptc.cpp */; }; - 648AF7CB27CFF2CD009327DE /* mapstuff.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF76127CFF2CD009327DE /* mapstuff.cpp */; }; - 648AF7CC27CFF2CD009327DE /* msgboard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF76427CFF2CD009327DE /* msgboard.cpp */; }; - 648AF7CD27CFF2CD009327DE /* cWeather.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF76527CFF2CD009327DE /* cWeather.cpp */; }; - 648AF7CE27CFF2CD009327DE /* cPlayerAction.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF76627CFF2CD009327DE /* cPlayerAction.cpp */; }; - 648AF7CF27CFF2CD009327DE /* movement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF76827CFF2CD009327DE /* movement.cpp */; }; - 648AF7D027CFF2CD009327DE /* cSpawnRegion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF76927CFF2CD009327DE /* cSpawnRegion.cpp */; }; - 648AF7D127CFF2CD009327DE /* PartySystem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF76B27CFF2CD009327DE /* PartySystem.cpp */; }; - 648AF7D227CFF2CD009327DE /* vendor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF76E27CFF2CD009327DE /* vendor.cpp */; }; - 648AF7D327CFF2CD009327DE /* fileio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF77027CFF2CD009327DE /* fileio.cpp */; }; - 648AF7D427CFF2CD009327DE /* CJSMapping.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF77227CFF2CD009327DE /* CJSMapping.cpp */; }; - 648AF7D527CFF2CD009327DE /* books.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF77527CFF2CD009327DE /* books.cpp */; }; - 648AF7D627CFF2CD009327DE /* CPacketSend.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF77627CFF2CD009327DE /* CPacketSend.cpp */; }; - 648AF7D727CFF2CD009327DE /* StringUtility.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF77927CFF2CD009327DE /* StringUtility.cpp */; }; - 648AF7D827CFF2CD009327DE /* quantityfuncs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF77A27CFF2CD009327DE /* quantityfuncs.cpp */; }; - 648AF7D927CFF2CD009327DE /* cAccountClass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF77F27CFF2CD009327DE /* cAccountClass.cpp */; }; - 648AF7DA27CFF2CD009327DE /* ObjectFactory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF78027CFF2CD009327DE /* ObjectFactory.cpp */; }; - 648AF7DB27CFF2CD009327DE /* npcs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF78127CFF2CD009327DE /* npcs.cpp */; }; - 648AF7DC27CFF2CD009327DE /* wholist.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF78427CFF2CD009327DE /* wholist.cpp */; }; - 648AF7DD27CFF2CD009327DE /* combat.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF78527CFF2CD009327DE /* combat.cpp */; }; - 648AF7DE27CFF2CD009327DE /* CGump.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF78727CFF2CD009327DE /* CGump.cpp */; }; - 648AF7DF27CFF2CD009327DE /* JSEncapsulate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF78927CFF2CD009327DE /* JSEncapsulate.cpp */; }; - 648AF7E027CFF2CD009327DE /* ai.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF78A27CFF2CD009327DE /* ai.cpp */; }; - 648AF7E127CFF2CD009327DE /* pcmanage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF78B27CFF2CD009327DE /* pcmanage.cpp */; }; - 648AF7E227CFF2CD009327DE /* trade.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF78E27CFF2CD009327DE /* trade.cpp */; }; - 648AF7E327CFF2CD009327DE /* weight.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF79127CFF2CD009327DE /* weight.cpp */; }; - 648AF7E427CFF2CD009327DE /* effect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF79327CFF2CD009327DE /* effect.cpp */; }; - 648AF7E527CFF2CD009327DE /* speech.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 648AF79527CFF2CD009327DE /* speech.cpp */; }; - 64E0066C2935A37500BEBA8F /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 64E0066829354B1800BEBA8F /* libz.tbd */; }; - 64E0066E2935A39A00BEBA8F /* libjs.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 64E0066D2935A38900BEBA8F /* libjs.a */; }; -/* End PBXBuildFile section */ - -/* Begin PBXCopyFilesBuildPhase section */ - 648AF6E227CFEF79009327DE /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = /usr/share/man/man1/; - dstSubfolderSpec = 0; - files = ( - ); - runOnlyForDeploymentPostprocessing = 1; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 6452D32027D2E13B00E5AFB4 /* osunique.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = osunique.hpp; sourceTree = ""; }; - 6452D32127D3A7CB00E5AFB4 /* osunique.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = osunique.cpp; sourceTree = ""; }; - 6453667D2859FB340064E649 /* Changelog.txt */ = {isa = PBXFileReference; lastKnownFileType = text; path = Changelog.txt; sourceTree = ""; }; - 6453667E285A04130064E649 /* CMakeLists.txt */ = {isa = PBXFileReference; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = ""; }; - 648AF6E427CFEF79009327DE /* uox3 */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = uox3; sourceTree = BUILT_PRODUCTS_DIR; }; - 648AF6F627CFF2CC009327DE /* cConsole.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cConsole.cpp; sourceTree = ""; }; - 648AF6F727CFF2CC009327DE /* dist.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = dist.cpp; sourceTree = ""; }; - 648AF6F827CFF2CC009327DE /* cSpawnRegion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cSpawnRegion.h; sourceTree = ""; }; - 648AF6F927CFF2CC009327DE /* skills.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = skills.h; sourceTree = ""; }; - 648AF6FA27CFF2CC009327DE /* calcfuncs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = calcfuncs.cpp; sourceTree = ""; }; - 648AF6FB27CFF2CC009327DE /* books.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = books.h; sourceTree = ""; }; - 648AF6FC27CFF2CC009327DE /* CPacketReceive.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CPacketReceive.cpp; sourceTree = ""; }; - 648AF6FD27CFF2CC009327DE /* cScript.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cScript.cpp; sourceTree = ""; }; - 648AF6FE27CFF2CC009327DE /* ConfigOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConfigOS.h; sourceTree = ""; }; - 648AF6FF27CFF2CC009327DE /* msgboard.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = msgboard.h; sourceTree = ""; }; - 648AF70027CFF2CC009327DE /* uox3.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = uox3.cpp; sourceTree = ""; }; - 648AF70127CFF2CC009327DE /* boats.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = boats.cpp; sourceTree = ""; }; - 648AF70227CFF2CC009327DE /* IP4Address.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = IP4Address.cpp; sourceTree = ""; }; - 648AF70327CFF2CC009327DE /* cGuild.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cGuild.h; sourceTree = ""; }; - 648AF70427CFF2CC009327DE /* UOXJSMethods.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UOXJSMethods.h; sourceTree = ""; }; - 648AF70527CFF2CC009327DE /* cItem.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cItem.cpp; sourceTree = ""; }; - 648AF70627CFF2CC009327DE /* worldmain.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = worldmain.h; sourceTree = ""; }; - 648AF70727CFF2CC009327DE /* worldmain.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = worldmain.cpp; sourceTree = ""; }; - 648AF70827CFF2CC009327DE /* cBaseobject.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cBaseobject.cpp; sourceTree = ""; }; - 648AF70A27CFF2CC009327DE /* cServerData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cServerData.cpp; sourceTree = ""; }; - 648AF70B27CFF2CC009327DE /* TimeUtility.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = TimeUtility.hpp; sourceTree = ""; }; - 648AF70C27CFF2CC009327DE /* townregion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = townregion.h; sourceTree = ""; }; - 648AF70D27CFF2CC009327DE /* magic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = magic.h; sourceTree = ""; }; - 648AF70E27CFF2CC009327DE /* cMultiObj.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cMultiObj.cpp; sourceTree = ""; }; - 648AF70F27CFF2CC009327DE /* cmdtable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cmdtable.h; sourceTree = ""; }; - 648AF71027CFF2CC009327DE /* jail.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jail.h; sourceTree = ""; }; - 648AF71127CFF2CC009327DE /* cServerDefinitions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cServerDefinitions.h; sourceTree = ""; }; - 648AF71227CFF2CC009327DE /* jail.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = jail.cpp; sourceTree = ""; }; - 648AF71327CFF2CC009327DE /* movement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = movement.h; sourceTree = ""; }; - 648AF71427CFF2CC009327DE /* cSocket.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cSocket.cpp; sourceTree = ""; }; - 648AF71527CFF2CC009327DE /* mapstuff.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mapstuff.h; sourceTree = ""; }; - 648AF71727CFF2CC009327DE /* queue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = queue.cpp; sourceTree = ""; }; - 648AF71927CFF2CC009327DE /* CResponse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CResponse.h; sourceTree = ""; }; - 648AF71A27CFF2CC009327DE /* UOXJSPropertySpecs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UOXJSPropertySpecs.h; sourceTree = ""; }; - 648AF71B27CFF2CC009327DE /* SEFunctions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SEFunctions.cpp; sourceTree = ""; }; - 648AF71C27CFF2CC009327DE /* cEffects.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cEffects.h; sourceTree = ""; }; - 648AF71D27CFF2CC009327DE /* archive.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = archive.cpp; sourceTree = ""; }; - 648AF71E27CFF2CC009327DE /* Dictionary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Dictionary.h; sourceTree = ""; }; - 648AF71F27CFF2CC009327DE /* mapclasses.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mapclasses.h; sourceTree = ""; }; - 648AF72027CFF2CC009327DE /* lineofsight.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = lineofsight.cpp; sourceTree = ""; }; - 648AF72127CFF2CC009327DE /* uoxstruct.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = uoxstruct.h; sourceTree = ""; }; - 648AF72227CFF2CC009327DE /* ObjectFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ObjectFactory.h; sourceTree = ""; }; - 648AF72327CFF2CC009327DE /* uox3.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = uox3.h; sourceTree = ""; }; - 648AF72427CFF2CC009327DE /* cAccountClass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cAccountClass.h; sourceTree = ""; }; - 648AF72527CFF2CC009327DE /* TimeUtility.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TimeUtility.cpp; sourceTree = ""; }; - 648AF72627CFF2CC009327DE /* townregion.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = townregion.cpp; sourceTree = ""; }; - 648AF72727CFF2CC009327DE /* StringUtility.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = StringUtility.hpp; sourceTree = ""; }; - 648AF72827CFF2CC009327DE /* cScript.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cScript.h; sourceTree = ""; }; - 648AF72927CFF2CC009327DE /* SEFunctions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SEFunctions.h; sourceTree = ""; }; - 648AF72A27CFF2CC009327DE /* UOXJSClasses.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UOXJSClasses.h; sourceTree = ""; }; - 648AF72B27CFF2CC009327DE /* house.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = house.cpp; sourceTree = ""; }; - 648AF72C27CFF2CC009327DE /* cMagic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cMagic.h; sourceTree = ""; }; - 648AF72D27CFF2CC009327DE /* CResponse.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CResponse.cpp; sourceTree = ""; }; - 648AF72E27CFF2CC009327DE /* cRaces.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cRaces.h; sourceTree = ""; }; - 648AF72F27CFF2CC009327DE /* UOXJSPropertyFuncs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UOXJSPropertyFuncs.cpp; sourceTree = ""; }; - 648AF73027CFF2CC009327DE /* cChar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cChar.h; sourceTree = ""; }; - 648AF73127CFF2CC009327DE /* GenericList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GenericList.h; sourceTree = ""; }; - 648AF73227CFF2CC009327DE /* UOPData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UOPData.cpp; sourceTree = ""; }; - 648AF73327CFF2CC009327DE /* UOXJSMethods.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UOXJSMethods.cpp; sourceTree = ""; }; - 648AF73427CFF2CC009327DE /* cRaces.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cRaces.cpp; sourceTree = ""; }; - 648AF73527CFF2CC009327DE /* cItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cItem.h; sourceTree = ""; }; - 648AF73627CFF2CD009327DE /* MultiMul.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MultiMul.cpp; sourceTree = ""; }; - 648AF73727CFF2CD009327DE /* targeting.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = targeting.cpp; sourceTree = ""; }; - 648AF73827CFF2CD009327DE /* skills.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = skills.cpp; sourceTree = ""; }; - 648AF73927CFF2CD009327DE /* power.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = power.h; sourceTree = ""; }; - 648AF73A27CFF2CD009327DE /* findfuncs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = findfuncs.cpp; sourceTree = ""; }; - 648AF73B27CFF2CD009327DE /* Dictionary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Dictionary.cpp; sourceTree = ""; }; - 648AF73C27CFF2CD009327DE /* CJSEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CJSEngine.h; sourceTree = ""; }; - 648AF73D27CFF2CD009327DE /* CJSEngine.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CJSEngine.cpp; sourceTree = ""; }; - 648AF73E27CFF2CD009327DE /* UOXJSPropertyFuncs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UOXJSPropertyFuncs.h; sourceTree = ""; }; - 648AF73F27CFF2CD009327DE /* magic.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = magic.cpp; sourceTree = ""; }; - 648AF74027CFF2CD009327DE /* commands.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = commands.h; sourceTree = ""; }; - 648AF74127CFF2CD009327DE /* funcdecl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = funcdecl.h; sourceTree = ""; }; - 648AF74227CFF2CD009327DE /* cGuild.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cGuild.cpp; sourceTree = ""; }; - 648AF74327CFF2CD009327DE /* EventTimer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = EventTimer.cpp; sourceTree = ""; }; - 648AF74427CFF2CD009327DE /* cChar.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cChar.cpp; sourceTree = ""; }; - 648AF74527CFF2CD009327DE /* commands.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = commands.cpp; sourceTree = ""; }; - 648AF74627CFF2CD009327DE /* cServerData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cServerData.h; sourceTree = ""; }; - 648AF74727CFF2CD009327DE /* cThreadQueue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cThreadQueue.cpp; sourceTree = ""; }; - 648AF74827CFF2CD009327DE /* cHTMLSystem.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cHTMLSystem.cpp; sourceTree = ""; }; - 648AF74927CFF2CD009327DE /* combat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = combat.h; sourceTree = ""; }; - 648AF74A27CFF2CD009327DE /* network.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = network.cpp; sourceTree = ""; }; - 648AF74B27CFF2CD009327DE /* scriptc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scriptc.h; sourceTree = ""; }; - 648AF74C27CFF2CD009327DE /* gumps.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = gumps.cpp; sourceTree = ""; }; - 648AF74D27CFF2CD009327DE /* sound.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sound.cpp; sourceTree = ""; }; - 648AF74E27CFF2CD009327DE /* teffect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = teffect.h; sourceTree = ""; }; - 648AF74F27CFF2CD009327DE /* cHTMLSystem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cHTMLSystem.h; sourceTree = ""; }; - 648AF75027CFF2CD009327DE /* cConsole.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cConsole.h; sourceTree = ""; }; - 648AF75127CFF2CD009327DE /* cmdtable.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cmdtable.cpp; sourceTree = ""; }; - 648AF75227CFF2CD009327DE /* cDice.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cDice.cpp; sourceTree = ""; }; - 648AF75327CFF2CD009327DE /* items.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = items.cpp; sourceTree = ""; }; - 648AF75427CFF2CD009327DE /* cVersionClass.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cVersionClass.cpp; sourceTree = ""; }; - 648AF75527CFF2CD009327DE /* cdice.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cdice.h; sourceTree = ""; }; - 648AF75627CFF2CD009327DE /* regions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = regions.cpp; sourceTree = ""; }; - 648AF75727CFF2CD009327DE /* Prerequisites.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Prerequisites.h; sourceTree = ""; }; - 648AF75827CFF2CD009327DE /* cServerDefinitions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cServerDefinitions.cpp; sourceTree = ""; }; - 648AF75927CFF2CD009327DE /* ssection.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ssection.cpp; sourceTree = ""; }; - 648AF75A27CFF2CD009327DE /* UOXJSPropertyEnums.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UOXJSPropertyEnums.h; sourceTree = ""; }; - 648AF75B27CFF2CD009327DE /* UOXStdHeaders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UOXStdHeaders.h; sourceTree = ""; }; - 648AF75C27CFF2CD009327DE /* CPacketReceive.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CPacketReceive.h; sourceTree = ""; }; - 648AF75D27CFF2CD009327DE /* weight.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = weight.h; sourceTree = ""; }; - 648AF75E27CFF2CD009327DE /* scriptc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = scriptc.cpp; sourceTree = ""; }; - 648AF75F27CFF2CD009327DE /* EventTimer.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = EventTimer.hpp; sourceTree = ""; }; - 648AF76027CFF2CD009327DE /* JSEncapsulate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSEncapsulate.h; sourceTree = ""; }; - 648AF76127CFF2CD009327DE /* mapstuff.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = mapstuff.cpp; sourceTree = ""; }; - 648AF76227CFF2CD009327DE /* cMultiObj.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cMultiObj.h; sourceTree = ""; }; - 648AF76327CFF2CD009327DE /* cBaseObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cBaseObject.h; sourceTree = ""; }; - 648AF76427CFF2CD009327DE /* msgboard.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = msgboard.cpp; sourceTree = ""; }; - 648AF76527CFF2CD009327DE /* cWeather.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cWeather.cpp; sourceTree = ""; }; - 648AF76627CFF2CD009327DE /* cPlayerAction.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cPlayerAction.cpp; sourceTree = ""; }; - 648AF76727CFF2CD009327DE /* gump.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = gump.h; sourceTree = ""; }; - 648AF76827CFF2CD009327DE /* movement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = movement.cpp; sourceTree = ""; }; - 648AF76927CFF2CD009327DE /* cSpawnRegion.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cSpawnRegion.cpp; sourceTree = ""; }; - 648AF76A27CFF2CD009327DE /* cWeather.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = cWeather.hpp; sourceTree = ""; }; - 648AF76B27CFF2CD009327DE /* PartySystem.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PartySystem.cpp; sourceTree = ""; }; - 648AF76C27CFF2CD009327DE /* regions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = regions.h; sourceTree = ""; }; - 648AF76D27CFF2CD009327DE /* MultiMul.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = MultiMul.hpp; sourceTree = ""; }; - 648AF76E27CFF2CD009327DE /* vendor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = vendor.cpp; sourceTree = ""; }; - 648AF76F27CFF2CD009327DE /* cThreadQueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cThreadQueue.h; sourceTree = ""; }; - 648AF77027CFF2CD009327DE /* fileio.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = fileio.cpp; sourceTree = ""; }; - 648AF77127CFF2CD009327DE /* CPacketSend.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CPacketSend.h; sourceTree = ""; }; - 648AF77227CFF2CD009327DE /* CJSMapping.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CJSMapping.cpp; sourceTree = ""; }; - 648AF77327CFF2CD009327DE /* ssection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ssection.h; sourceTree = ""; }; - 648AF77427CFF2CD009327DE /* IP4Address.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = IP4Address.hpp; sourceTree = ""; }; - 648AF77527CFF2CD009327DE /* books.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = books.cpp; sourceTree = ""; }; - 648AF77627CFF2CD009327DE /* CPacketSend.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CPacketSend.cpp; sourceTree = ""; }; - 648AF77727CFF2CD009327DE /* network.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = network.h; sourceTree = ""; }; - 648AF77827CFF2CD009327DE /* PageVector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PageVector.h; sourceTree = ""; }; - 648AF77927CFF2CD009327DE /* StringUtility.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StringUtility.cpp; sourceTree = ""; }; - 648AF77A27CFF2CD009327DE /* quantityfuncs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = quantityfuncs.cpp; sourceTree = ""; }; - 648AF77C27CFF2CD009327DE /* typedefs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = typedefs.h; sourceTree = ""; }; - 648AF77E27CFF2CD009327DE /* wholist.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = wholist.h; sourceTree = ""; }; - 648AF77F27CFF2CD009327DE /* cAccountClass.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cAccountClass.cpp; sourceTree = ""; }; - 648AF78027CFF2CD009327DE /* ObjectFactory.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ObjectFactory.cpp; sourceTree = ""; }; - 648AF78127CFF2CD009327DE /* npcs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = npcs.cpp; sourceTree = ""; }; - 648AF78227CFF2CD009327DE /* PartySystem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PartySystem.h; sourceTree = ""; }; - 648AF78327CFF2CD009327DE /* resource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = resource.h; sourceTree = ""; }; - 648AF78427CFF2CD009327DE /* wholist.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = wholist.cpp; sourceTree = ""; }; - 648AF78527CFF2CD009327DE /* combat.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = combat.cpp; sourceTree = ""; }; - 648AF78627CFF2CD009327DE /* classes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = classes.h; sourceTree = ""; }; - 648AF78727CFF2CD009327DE /* CGump.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CGump.cpp; sourceTree = ""; }; - 648AF78827CFF2CD009327DE /* UOPData.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = UOPData.hpp; sourceTree = ""; }; - 648AF78927CFF2CD009327DE /* JSEncapsulate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSEncapsulate.cpp; sourceTree = ""; }; - 648AF78A27CFF2CD009327DE /* ai.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ai.cpp; sourceTree = ""; }; - 648AF78B27CFF2CD009327DE /* pcmanage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = pcmanage.cpp; sourceTree = ""; }; - 648AF78C27CFF2CD009327DE /* CJSMapping.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CJSMapping.h; sourceTree = ""; }; - 648AF78D27CFF2CD009327DE /* cVersionClass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cVersionClass.h; sourceTree = ""; }; - 648AF78E27CFF2CD009327DE /* trade.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = trade.cpp; sourceTree = ""; }; - 648AF78F27CFF2CD009327DE /* enums.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = enums.h; sourceTree = ""; }; - 648AF79027CFF2CD009327DE /* speech.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = speech.h; sourceTree = ""; }; - 648AF79127CFF2CD009327DE /* weight.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = weight.cpp; sourceTree = ""; }; - 648AF79227CFF2CD009327DE /* cSkillClass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cSkillClass.h; sourceTree = ""; }; - 648AF79327CFF2CD009327DE /* effect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = effect.cpp; sourceTree = ""; }; - 648AF79427CFF2CD009327DE /* cSocket.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cSocket.h; sourceTree = ""; }; - 648AF79527CFF2CD009327DE /* speech.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = speech.cpp; sourceTree = ""; }; - 64E0066829354B1800BEBA8F /* libz.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; }; - 64E0066D2935A38900BEBA8F /* libjs.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libjs.a; path = ../spidermonkey/libjs.a; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 648AF6E127CFEF79009327DE /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 64E0066E2935A39A00BEBA8F /* libjs.a in Frameworks */, - 64E0066C2935A37500BEBA8F /* libz.tbd in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 6400D388284CE45700AADA54 /* Base Objects */ = { - isa = PBXGroup; - children = ( - 648AF70127CFF2CC009327DE /* boats.cpp */, - 648AF70827CFF2CC009327DE /* cBaseobject.cpp */, - 648AF76327CFF2CD009327DE /* cBaseObject.h */, - 648AF74427CFF2CD009327DE /* cChar.cpp */, - 648AF73027CFF2CC009327DE /* cChar.h */, - 648AF74227CFF2CD009327DE /* cGuild.cpp */, - 648AF70327CFF2CC009327DE /* cGuild.h */, - 648AF70527CFF2CC009327DE /* cItem.cpp */, - 648AF73527CFF2CC009327DE /* cItem.h */, - 648AF70E27CFF2CC009327DE /* cMultiObj.cpp */, - 648AF76227CFF2CD009327DE /* cMultiObj.h */, - 648AF74127CFF2CD009327DE /* funcdecl.h */, - 648AF78027CFF2CD009327DE /* ObjectFactory.cpp */, - 648AF72227CFF2CC009327DE /* ObjectFactory.h */, - 648AF77827CFF2CD009327DE /* PageVector.h */, - 648AF71727CFF2CC009327DE /* queue.cpp */, - 648AF79527CFF2CD009327DE /* speech.cpp */, - 648AF79027CFF2CD009327DE /* speech.h */, - 648AF72627CFF2CC009327DE /* townregion.cpp */, - 648AF70C27CFF2CC009327DE /* townregion.h */, - 648AF72127CFF2CC009327DE /* uoxstruct.h */, - ); - name = "Base Objects"; - sourceTree = ""; - }; - 6400D389284CE53500AADA54 /* JSEngine */ = { - isa = PBXGroup; - children = ( - 648AF73D27CFF2CD009327DE /* CJSEngine.cpp */, - 648AF73C27CFF2CD009327DE /* CJSEngine.h */, - 648AF77227CFF2CD009327DE /* CJSMapping.cpp */, - 648AF78C27CFF2CD009327DE /* CJSMapping.h */, - 648AF6FD27CFF2CC009327DE /* cScript.cpp */, - 648AF72827CFF2CC009327DE /* cScript.h */, - 648AF78927CFF2CD009327DE /* JSEncapsulate.cpp */, - 648AF76027CFF2CD009327DE /* JSEncapsulate.h */, - 648AF71B27CFF2CC009327DE /* SEFunctions.cpp */, - 648AF72927CFF2CC009327DE /* SEFunctions.h */, - 648AF72A27CFF2CC009327DE /* UOXJSClasses.h */, - 648AF73327CFF2CC009327DE /* UOXJSMethods.cpp */, - 648AF70427CFF2CC009327DE /* UOXJSMethods.h */, - 648AF75A27CFF2CD009327DE /* UOXJSPropertyEnums.h */, - 648AF72F27CFF2CC009327DE /* UOXJSPropertyFuncs.cpp */, - 648AF73E27CFF2CD009327DE /* UOXJSPropertyFuncs.h */, - 648AF71A27CFF2CC009327DE /* UOXJSPropertySpecs.h */, - ); - name = JSEngine; - sourceTree = ""; - }; - 6400D38A284CE5A200AADA54 /* Network */ = { - isa = PBXGroup; - children = ( - 648AF6FC27CFF2CC009327DE /* CPacketReceive.cpp */, - 648AF75C27CFF2CD009327DE /* CPacketReceive.h */, - 648AF77627CFF2CD009327DE /* CPacketSend.cpp */, - 648AF77127CFF2CD009327DE /* CPacketSend.h */, - 648AF71427CFF2CC009327DE /* cSocket.cpp */, - 648AF79427CFF2CD009327DE /* cSocket.h */, - 648AF70227CFF2CC009327DE /* IP4Address.cpp */, - 648AF77427CFF2CD009327DE /* IP4Address.hpp */, - 648AF74A27CFF2CD009327DE /* network.cpp */, - 648AF77727CFF2CD009327DE /* network.h */, - ); - name = Network; - sourceTree = ""; - }; - 6400D38B284CE5EC00AADA54 /* Other */ = { - isa = PBXGroup; - children = ( - 648AF78A27CFF2CD009327DE /* ai.cpp */, - 648AF71D27CFF2CC009327DE /* archive.cpp */, - 648AF6FA27CFF2CC009327DE /* calcfuncs.cpp */, - 648AF75227CFF2CD009327DE /* cDice.cpp */, - 648AF75527CFF2CD009327DE /* cdice.h */, - 648AF78627CFF2CD009327DE /* classes.h */, - 648AF75127CFF2CD009327DE /* cmdtable.cpp */, - 648AF70F27CFF2CC009327DE /* cmdtable.h */, - 648AF76627CFF2CD009327DE /* cPlayerAction.cpp */, - 648AF73427CFF2CC009327DE /* cRaces.cpp */, - 648AF72E27CFF2CC009327DE /* cRaces.h */, - 648AF72D27CFF2CC009327DE /* CResponse.cpp */, - 648AF71927CFF2CC009327DE /* CResponse.h */, - 648AF79227CFF2CD009327DE /* cSkillClass.h */, - 648AF76927CFF2CD009327DE /* cSpawnRegion.cpp */, - 648AF6F827CFF2CC009327DE /* cSpawnRegion.h */, - 648AF75427CFF2CD009327DE /* cVersionClass.cpp */, - 648AF78D27CFF2CD009327DE /* cVersionClass.h */, - 648AF6F727CFF2CC009327DE /* dist.cpp */, - 648AF79327CFF2CD009327DE /* effect.cpp */, - 648AF77027CFF2CD009327DE /* fileio.cpp */, - 648AF73A27CFF2CD009327DE /* findfuncs.cpp */, - 648AF76727CFF2CD009327DE /* gump.h */, - 648AF74C27CFF2CD009327DE /* gumps.cpp */, - 648AF76427CFF2CD009327DE /* msgboard.cpp */, - 648AF6FF27CFF2CC009327DE /* msgboard.h */, - 648AF78127CFF2CD009327DE /* npcs.cpp */, - 648AF78B27CFF2CD009327DE /* pcmanage.cpp */, - 648AF73927CFF2CD009327DE /* power.h */, - 648AF78327CFF2CD009327DE /* resource.h */, - ); - name = Other; - sourceTree = ""; - }; - 6400D38C284CE68600AADA54 /* Script */ = { - isa = PBXGroup; - children = ( - 648AF73B27CFF2CD009327DE /* Dictionary.cpp */, - 648AF71E27CFF2CC009327DE /* Dictionary.h */, - 648AF75E27CFF2CD009327DE /* scriptc.cpp */, - 648AF74B27CFF2CD009327DE /* scriptc.h */, - 648AF75927CFF2CD009327DE /* ssection.cpp */, - 648AF77327CFF2CD009327DE /* ssection.h */, - ); - name = Script; - sourceTree = ""; - }; - 6400D38D284CE6C300AADA54 /* Subsystem */ = { - isa = PBXGroup; - children = ( - 642E11B028549716003AA848 /* BaseWorld */, - 648AF77527CFF2CD009327DE /* books.cpp */, - 648AF6FB27CFF2CC009327DE /* books.h */, - 648AF77F27CFF2CD009327DE /* cAccountClass.cpp */, - 648AF72427CFF2CC009327DE /* cAccountClass.h */, - 648AF71C27CFF2CC009327DE /* cEffects.h */, - 648AF78727CFF2CD009327DE /* CGump.cpp */, - 648AF74827CFF2CD009327DE /* cHTMLSystem.cpp */, - 648AF74F27CFF2CD009327DE /* cHTMLSystem.h */, - 648AF72C27CFF2CC009327DE /* cMagic.h */, - 648AF78527CFF2CD009327DE /* combat.cpp */, - 648AF74927CFF2CD009327DE /* combat.h */, - 648AF74527CFF2CD009327DE /* commands.cpp */, - 648AF74027CFF2CD009327DE /* commands.h */, - 648AF76527CFF2CD009327DE /* cWeather.cpp */, - 648AF76A27CFF2CD009327DE /* cWeather.hpp */, - 648AF72B27CFF2CC009327DE /* house.cpp */, - 648AF75327CFF2CD009327DE /* items.cpp */, - 648AF71227CFF2CC009327DE /* jail.cpp */, - 648AF71027CFF2CC009327DE /* jail.h */, - 648AF72027CFF2CC009327DE /* lineofsight.cpp */, - 648AF73F27CFF2CD009327DE /* magic.cpp */, - 648AF70D27CFF2CC009327DE /* magic.h */, - 648AF76827CFF2CD009327DE /* movement.cpp */, - 648AF71327CFF2CC009327DE /* movement.h */, - 648AF76B27CFF2CD009327DE /* PartySystem.cpp */, - 648AF78227CFF2CD009327DE /* PartySystem.h */, - 648AF77A27CFF2CD009327DE /* quantityfuncs.cpp */, - 648AF75627CFF2CD009327DE /* regions.cpp */, - 648AF76C27CFF2CD009327DE /* regions.h */, - 648AF73827CFF2CD009327DE /* skills.cpp */, - 648AF6F927CFF2CC009327DE /* skills.h */, - 648AF74D27CFF2CD009327DE /* sound.cpp */, - 648AF73727CFF2CD009327DE /* targeting.cpp */, - 648AF74E27CFF2CD009327DE /* teffect.h */, - 648AF78E27CFF2CD009327DE /* trade.cpp */, - 648AF76E27CFF2CD009327DE /* vendor.cpp */, - 648AF79127CFF2CD009327DE /* weight.cpp */, - 648AF75D27CFF2CD009327DE /* weight.h */, - 648AF78427CFF2CD009327DE /* wholist.cpp */, - 648AF77E27CFF2CD009327DE /* wholist.h */, - ); - name = Subsystem; - sourceTree = ""; - }; - 6400D38E284CE74C00AADA54 /* UOData */ = { - isa = PBXGroup; - children = ( - 648AF71F27CFF2CC009327DE /* mapclasses.h */, - 648AF76127CFF2CD009327DE /* mapstuff.cpp */, - 648AF71527CFF2CC009327DE /* mapstuff.h */, - 648AF73627CFF2CD009327DE /* MultiMul.cpp */, - 648AF76D27CFF2CD009327DE /* MultiMul.hpp */, - 648AF73227CFF2CC009327DE /* UOPData.cpp */, - 648AF78827CFF2CD009327DE /* UOPData.hpp */, - ); - name = UOData; - sourceTree = ""; - }; - 6400D38F284CE78000AADA54 /* Utility */ = { - isa = PBXGroup; - children = ( - 648AF74327CFF2CD009327DE /* EventTimer.cpp */, - 648AF75F27CFF2CD009327DE /* EventTimer.hpp */, - 648AF73127CFF2CC009327DE /* GenericList.h */, - 648AF77927CFF2CD009327DE /* StringUtility.cpp */, - 648AF72727CFF2CC009327DE /* StringUtility.hpp */, - 648AF72527CFF2CC009327DE /* TimeUtility.cpp */, - 648AF70B27CFF2CC009327DE /* TimeUtility.hpp */, - ); - name = Utility; - sourceTree = ""; - }; - 6400D390284CE7A300AADA54 /* General */ = { - isa = PBXGroup; - children = ( - 648AF75B27CFF2CD009327DE /* UOXStdHeaders.h */, - 6452D32127D3A7CB00E5AFB4 /* osunique.cpp */, - 6452D32027D2E13B00E5AFB4 /* osunique.hpp */, - 648AF6FE27CFF2CC009327DE /* ConfigOS.h */, - 648AF75727CFF2CD009327DE /* Prerequisites.h */, - 648AF77C27CFF2CD009327DE /* typedefs.h */, - 648AF78F27CFF2CD009327DE /* enums.h */, - ); - name = General; - sourceTree = ""; - }; - 6400D391284CE7C000AADA54 /* Not Used */ = { - isa = PBXGroup; - children = ( - ); - name = "Not Used"; - sourceTree = ""; - }; - 642E11B028549716003AA848 /* BaseWorld */ = { - isa = PBXGroup; - children = ( - 648AF6F627CFF2CC009327DE /* cConsole.cpp */, - 648AF75027CFF2CD009327DE /* cConsole.h */, - 648AF74727CFF2CD009327DE /* cThreadQueue.cpp */, - 648AF76F27CFF2CD009327DE /* cThreadQueue.h */, - 648AF70727CFF2CC009327DE /* worldmain.cpp */, - 648AF70627CFF2CC009327DE /* worldmain.h */, - 648AF70A27CFF2CC009327DE /* cServerData.cpp */, - 648AF74627CFF2CD009327DE /* cServerData.h */, - 648AF75827CFF2CD009327DE /* cServerDefinitions.cpp */, - 648AF71127CFF2CC009327DE /* cServerDefinitions.h */, - ); - name = BaseWorld; - sourceTree = ""; - }; - 648AF6D927CFEEC5009327DE = { - isa = PBXGroup; - children = ( - 648AF6F527CFF1F2009327DE /* source */, - 648AF6E527CFEF79009327DE /* Products */, - 648AF6EC27CFEF94009327DE /* Frameworks */, - ); - sourceTree = ""; - }; - 648AF6E527CFEF79009327DE /* Products */ = { - isa = PBXGroup; - children = ( - 648AF6E427CFEF79009327DE /* uox3 */, - ); - name = Products; - sourceTree = ""; - }; - 648AF6EC27CFEF94009327DE /* Frameworks */ = { - isa = PBXGroup; - children = ( - 64E0066D2935A38900BEBA8F /* libjs.a */, - 64E0066829354B1800BEBA8F /* libz.tbd */, - ); - name = Frameworks; - sourceTree = ""; - }; - 648AF6F527CFF1F2009327DE /* source */ = { - isa = PBXGroup; - children = ( - 6453667E285A04130064E649 /* CMakeLists.txt */, - 6453667D2859FB340064E649 /* Changelog.txt */, - 6400D391284CE7C000AADA54 /* Not Used */, - 6400D390284CE7A300AADA54 /* General */, - 6400D38F284CE78000AADA54 /* Utility */, - 6400D38E284CE74C00AADA54 /* UOData */, - 6400D38D284CE6C300AADA54 /* Subsystem */, - 6400D38C284CE68600AADA54 /* Script */, - 6400D38B284CE5EC00AADA54 /* Other */, - 6400D38A284CE5A200AADA54 /* Network */, - 6400D389284CE53500AADA54 /* JSEngine */, - 6400D388284CE45700AADA54 /* Base Objects */, - 648AF70027CFF2CC009327DE /* uox3.cpp */, - 648AF72327CFF2CC009327DE /* uox3.h */, - ); - path = source; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 648AF6E327CFEF79009327DE /* uox3 */ = { - isa = PBXNativeTarget; - buildConfigurationList = 648AF6EB27CFEF79009327DE /* Build configuration list for PBXNativeTarget "uox3" */; - buildPhases = ( - 648AF6E027CFEF79009327DE /* Sources */, - 648AF6E127CFEF79009327DE /* Frameworks */, - 648AF6E227CFEF79009327DE /* CopyFiles */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = uox3; - productName = uox3; - productReference = 648AF6E427CFEF79009327DE /* uox3 */; - productType = "com.apple.product-type.tool"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 648AF6DA27CFEEC5009327DE /* Project object */ = { - isa = PBXProject; - attributes = { - BuildIndependentTargetsInParallel = 1; - LastUpgradeCheck = 1410; - ORGANIZATIONNAME = "Charles Kerr"; - TargetAttributes = { - 648AF6E327CFEF79009327DE = { - CreatedOnToolsVersion = 13.2.1; - }; - }; - }; - buildConfigurationList = 648AF6DD27CFEEC5009327DE /* Build configuration list for PBXProject "uox3" */; - compatibilityVersion = "Xcode 14.0"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = 648AF6D927CFEEC5009327DE; - productRefGroup = 648AF6E527CFEF79009327DE /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 648AF6E327CFEF79009327DE /* uox3 */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXSourcesBuildPhase section */ - 648AF6E027CFEF79009327DE /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 648AF7CF27CFF2CD009327DE /* movement.cpp in Sources */, - 648AF7CD27CFF2CD009327DE /* cWeather.cpp in Sources */, - 648AF7BB27CFF2CD009327DE /* EventTimer.cpp in Sources */, - 648AF79827CFF2CD009327DE /* calcfuncs.cpp in Sources */, - 648AF7AC27CFF2CD009327DE /* townregion.cpp in Sources */, - 648AF7CC27CFF2CD009327DE /* msgboard.cpp in Sources */, - 648AF7C327CFF2CD009327DE /* cmdtable.cpp in Sources */, - 648AF7B027CFF2CD009327DE /* UOPData.cpp in Sources */, - 648AF7B427CFF2CD009327DE /* targeting.cpp in Sources */, - 648AF7B627CFF2CD009327DE /* findfuncs.cpp in Sources */, - 648AF7A327CFF2CD009327DE /* jail.cpp in Sources */, - 648AF7BE27CFF2CD009327DE /* cThreadQueue.cpp in Sources */, - 648AF7BC27CFF2CD009327DE /* cChar.cpp in Sources */, - 648AF7A927CFF2CD009327DE /* archive.cpp in Sources */, - 648AF79F27CFF2CD009327DE /* worldmain.cpp in Sources */, - 648AF7BF27CFF2CD009327DE /* cHTMLSystem.cpp in Sources */, - 648AF7C027CFF2CD009327DE /* network.cpp in Sources */, - 648AF7E127CFF2CD009327DE /* pcmanage.cpp in Sources */, - 648AF7DD27CFF2CD009327DE /* combat.cpp in Sources */, - 648AF7E527CFF2CD009327DE /* speech.cpp in Sources */, - 648AF7D027CFF2CD009327DE /* cSpawnRegion.cpp in Sources */, - 648AF7B827CFF2CD009327DE /* CJSEngine.cpp in Sources */, - 648AF79927CFF2CD009327DE /* CPacketReceive.cpp in Sources */, - 648AF7D627CFF2CD009327DE /* CPacketSend.cpp in Sources */, - 648AF7CA27CFF2CD009327DE /* scriptc.cpp in Sources */, - 648AF7DA27CFF2CD009327DE /* ObjectFactory.cpp in Sources */, - 648AF7B327CFF2CD009327DE /* MultiMul.cpp in Sources */, - 648AF79D27CFF2CD009327DE /* IP4Address.cpp in Sources */, - 648AF7E427CFF2CD009327DE /* effect.cpp in Sources */, - 648AF7D527CFF2CD009327DE /* books.cpp in Sources */, - 648AF7A227CFF2CD009327DE /* cMultiObj.cpp in Sources */, - 648AF7A427CFF2CD009327DE /* cSocket.cpp in Sources */, - 648AF7B527CFF2CD009327DE /* skills.cpp in Sources */, - 648AF7CB27CFF2CD009327DE /* mapstuff.cpp in Sources */, - 648AF7AF27CFF2CD009327DE /* UOXJSPropertyFuncs.cpp in Sources */, - 648AF7A127CFF2CD009327DE /* cServerData.cpp in Sources */, - 648AF7B727CFF2CD009327DE /* Dictionary.cpp in Sources */, - 648AF7E027CFF2CD009327DE /* ai.cpp in Sources */, - 648AF7C927CFF2CD009327DE /* ssection.cpp in Sources */, - 648AF7A627CFF2CD009327DE /* queue.cpp in Sources */, - 648AF7B227CFF2CD009327DE /* cRaces.cpp in Sources */, - 648AF7BA27CFF2CD009327DE /* cGuild.cpp in Sources */, - 648AF7B127CFF2CD009327DE /* UOXJSMethods.cpp in Sources */, - 648AF7AA27CFF2CD009327DE /* lineofsight.cpp in Sources */, - 648AF7A827CFF2CD009327DE /* SEFunctions.cpp in Sources */, - 648AF79B27CFF2CD009327DE /* uox3.cpp in Sources */, - 648AF7A027CFF2CD009327DE /* cBaseobject.cpp in Sources */, - 648AF7C427CFF2CD009327DE /* cDice.cpp in Sources */, - 648AF79C27CFF2CD009327DE /* boats.cpp in Sources */, - 648AF7C727CFF2CD009327DE /* regions.cpp in Sources */, - 648AF7D727CFF2CD009327DE /* StringUtility.cpp in Sources */, - 648AF7B927CFF2CD009327DE /* magic.cpp in Sources */, - 648AF7E227CFF2CD009327DE /* trade.cpp in Sources */, - 648AF7AE27CFF2CD009327DE /* CResponse.cpp in Sources */, - 648AF7D327CFF2CD009327DE /* fileio.cpp in Sources */, - 648AF79A27CFF2CD009327DE /* cScript.cpp in Sources */, - 648AF7AB27CFF2CD009327DE /* TimeUtility.cpp in Sources */, - 648AF7C627CFF2CD009327DE /* cVersionClass.cpp in Sources */, - 648AF7DF27CFF2CD009327DE /* JSEncapsulate.cpp in Sources */, - 648AF7D927CFF2CD009327DE /* cAccountClass.cpp in Sources */, - 648AF7E327CFF2CD009327DE /* weight.cpp in Sources */, - 648AF7C227CFF2CD009327DE /* sound.cpp in Sources */, - 648AF7D127CFF2CD009327DE /* PartySystem.cpp in Sources */, - 648AF79627CFF2CD009327DE /* cConsole.cpp in Sources */, - 648AF7CE27CFF2CD009327DE /* cPlayerAction.cpp in Sources */, - 648AF7DE27CFF2CD009327DE /* CGump.cpp in Sources */, - 6452D32227D3A7CB00E5AFB4 /* osunique.cpp in Sources */, - 648AF7D227CFF2CD009327DE /* vendor.cpp in Sources */, - 648AF7C827CFF2CD009327DE /* cServerDefinitions.cpp in Sources */, - 648AF7C127CFF2CD009327DE /* gumps.cpp in Sources */, - 648AF79E27CFF2CD009327DE /* cItem.cpp in Sources */, - 648AF7DB27CFF2CD009327DE /* npcs.cpp in Sources */, - 648AF7DC27CFF2CD009327DE /* wholist.cpp in Sources */, - 648AF7C527CFF2CD009327DE /* items.cpp in Sources */, - 648AF7D827CFF2CD009327DE /* quantityfuncs.cpp in Sources */, - 648AF7AD27CFF2CD009327DE /* house.cpp in Sources */, - 648AF79727CFF2CD009327DE /* dist.cpp in Sources */, - 648AF7D427CFF2CD009327DE /* CJSMapping.cpp in Sources */, - 648AF7BD27CFF2CD009327DE /* commands.cpp in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin XCBuildConfiguration section */ - 648AF6DE27CFEEC5009327DE /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_CXX_LANGUAGE_STANDARD = "c++17"; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - DEAD_CODE_STRIPPING = YES; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - LIBRARY_SEARCH_PATHS = ./spidermonkey; - ONLY_ACTIVE_ARCH = YES; - USER_HEADER_SEARCH_PATHS = ./spidermonkey; - }; - name = Debug; - }; - 648AF6DF27CFEEC5009327DE /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_CXX_LANGUAGE_STANDARD = "c++17"; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - DEAD_CODE_STRIPPING = YES; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - LIBRARY_SEARCH_PATHS = ./spidermonkey; - USER_HEADER_SEARCH_PATHS = ./spidermonkey; - }; - name = Release; - }; - 648AF6E927CFEF79009327DE /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "c++17"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "-"; - CODE_SIGN_STYLE = Automatic; - COPY_PHASE_STRIP = NO; - DEAD_CODE_STRIPPING = YES; - DEBUG_INFORMATION_FORMAT = dwarf; - DEVELOPMENT_TEAM = CF264WE69M; - ENABLE_HARDENED_RUNTIME = YES; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = c11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - HEADER_SEARCH_PATHS = "$(PROJECT_DIR)/../spidermonkey"; - LIBRARY_SEARCH_PATHS = "$(PROJECT_DIR)/../spidermonkey"; - MACOSX_DEPLOYMENT_TARGET = 13.0; - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = macosx; - WARNING_CFLAGS = "-Wno-shift-negative-value"; - }; - name = Debug; - }; - 648AF6EA27CFEF79009327DE /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "c++17"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "-"; - CODE_SIGN_STYLE = Automatic; - COPY_PHASE_STRIP = NO; - DEAD_CODE_STRIPPING = YES; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_TEAM = CF264WE69M; - ENABLE_HARDENED_RUNTIME = YES; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = c11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - HEADER_SEARCH_PATHS = "$(PROJECT_DIR)/../spidermonkey"; - LIBRARY_SEARCH_PATHS = "$(PROJECT_DIR)/../spidermonkey"; - MACOSX_DEPLOYMENT_TARGET = 13.0; - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = macosx; - WARNING_CFLAGS = "-Wno-shift-negative-value"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 648AF6DD27CFEEC5009327DE /* Build configuration list for PBXProject "uox3" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 648AF6DE27CFEEC5009327DE /* Debug */, - 648AF6DF27CFEEC5009327DE /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 648AF6EB27CFEF79009327DE /* Build configuration list for PBXNativeTarget "uox3" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 648AF6E927CFEF79009327DE /* Debug */, - 648AF6EA27CFEF79009327DE /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 648AF6DA27CFEEC5009327DE /* Project object */; -} diff --git a/vs2022/readme-vs2022.txt b/vs2022/readme-vs2022.txt deleted file mode 100644 index a47e72275..000000000 --- a/vs2022/readme-vs2022.txt +++ /dev/null @@ -1,73 +0,0 @@ -This project is setup to run from the directory you cloned UOX3 into: - - -Yourdirectory <========= This directory is where the project will set the working directory as - | - | - --UOX3 (git version of uox) - -It does that to allow you to put yor uox.ini file in that directory and create a directory (data) -for uox3 to use, without corrupte the files in the git resporistory. - -For instance: - -Yourdirectory - | - | - ----UOX3 - | - | - | - -uoxdata - | - | - ---access - | - --accounts - | - | - --archives - | - | - --books - | - | - --html - | - | - --jsdata - | - | - --logs - | - | - --msgboards - | - | - --shared - -And this in your uox.ini file (locations in Yourdirectory): -[directories] -{ -DIRECTORY=./ -DATADIRECTORY=C:/Program Files (x86)/Electronic Arts/Ultima Online Classic/ -DEFSDIRECTORY=UOX3/data/dfndata/ -BOOKSDIRECTORY=uoxdata/books/ -ACTSDIRECTORY=uoxdata/accounts/ -SCRIPTSDIRECTORY=UOX3/data/js/ -SCRIPTDATADIRECTORY=uoxdata/jsdata/ -BACKUPDIRECTORY=uoxdata/archives/ -MSGBOARDDIRECTORY=uoxdata/msgboards/ -SHAREDDIRECTORY=uoxdata/shared/ -ACCESSDIRECTORY=uoxdata/access/ -HTMLDIRECTORY=uoxdata/html/ -LOGSDIRECTORY=uoxdata/logs/ -DICTIONARYDIRECTORY=UOX3/data/dictionaries/ -} - -results in running out of the git repo, without corrupt int. - -One should copy the accounts.adm from the UOX3\data\accounts directory into the uoxdata\accounts -and the UOX3\data\js\jsdata worldtemplates folder into the uoxdata\jsdata folder. - -This is just examples, mainly for allowing one to run from the git repo without corrupting it. \ No newline at end of file diff --git a/vs2022/uox3.sln b/vs2022/uox3.sln deleted file mode 100644 index adb31620c..000000000 --- a/vs2022/uox3.sln +++ /dev/null @@ -1,37 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 17 -VisualStudioVersion = 17.0.32112.339 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "uox3", "uox3.vcxproj", "{874C3F38-3B02-407B-823F-CE8F73B52580}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jsengine", "..\spidermonkey\VS2022\jsengine.vcxproj", "{4366F707-C296-4510-85AA-A61DD77DE34B}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib", "..\zlib\vs2022\zlib.vcxproj", "{7DDBF2DC-F199-4F38-B56D-C75270C3922D}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x64 = Debug|x64 - Release|x64 = Release|x64 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {874C3F38-3B02-407B-823F-CE8F73B52580}.Debug|x64.ActiveCfg = Debug|x64 - {874C3F38-3B02-407B-823F-CE8F73B52580}.Debug|x64.Build.0 = Debug|x64 - {874C3F38-3B02-407B-823F-CE8F73B52580}.Release|x64.ActiveCfg = Release|x64 - {874C3F38-3B02-407B-823F-CE8F73B52580}.Release|x64.Build.0 = Release|x64 - {4366F707-C296-4510-85AA-A61DD77DE34B}.Debug|x64.ActiveCfg = Debug|x64 - {4366F707-C296-4510-85AA-A61DD77DE34B}.Debug|x64.Build.0 = Debug|x64 - {4366F707-C296-4510-85AA-A61DD77DE34B}.Release|x64.ActiveCfg = Release|x64 - {4366F707-C296-4510-85AA-A61DD77DE34B}.Release|x64.Build.0 = Release|x64 - {7DDBF2DC-F199-4F38-B56D-C75270C3922D}.Debug|x64.ActiveCfg = Debug|x64 - {7DDBF2DC-F199-4F38-B56D-C75270C3922D}.Debug|x64.Build.0 = Debug|x64 - {7DDBF2DC-F199-4F38-B56D-C75270C3922D}.Release|x64.ActiveCfg = Release|x64 - {7DDBF2DC-F199-4F38-B56D-C75270C3922D}.Release|x64.Build.0 = Release|x64 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {356E900D-8220-47C9-AF00-B965C5D986B3} - EndGlobalSection -EndGlobal diff --git a/vs2022/uox3.vcxproj b/vs2022/uox3.vcxproj deleted file mode 100644 index a73ac515c..000000000 --- a/vs2022/uox3.vcxproj +++ /dev/null @@ -1,283 +0,0 @@ - - - - - Debug - x64 - - - Release - x64 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {4366f707-c296-4510-85aa-a61dd77de34b} - - - {7ddbf2dc-f199-4f38-b56d-c75270c3922d} - - - - 16.0 - Win32Proj - {874c3f38-3b02-407b-823f-ce8f73b52580} - uox3 - 10.0 - - - Application - true - v143 - MultiByte - - - - Application - false - v143 - false - MultiByte - - - - - - - - - - - - - - - true - - - false - - - - Disabled - Level3 - MultiThreadedDebug - /J - true - EditAndContinue - _ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH;EXPORT_JS_API;_SILENCE_CXX17_CODECVT_HEADER_DEPRECATION;_WARNING_CRT_NO_VA_START_VALIDATION;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) - true - stdcpp17 - stdc11 - ..\source;..\zlib;..\spidermonkey - false - true - true - false - Sync - - - Console - true - ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) - - - - - MaxSpeed - Level3 - MultiThreaded - /J - true - _SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING;_CRT_NO_VA_START_VALIDATION;EXPORT_JS_API;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - true - stdcpp17 - stdc11 - ..\source;..\zlib;..\spidermonkey - false - true - true - false - Sync - true - OnlyExplicitInline - true - true - - - Console - ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) - UseLinkTimeCodeGeneration - - - - - - \ No newline at end of file diff --git a/xcode.txt b/xcode.txt deleted file mode 100644 index 63340254b..000000000 --- a/xcode.txt +++ /dev/null @@ -1,42 +0,0 @@ -The uox3 xcode projectd is setup for the following directory structure: - -UserDirectory(can be anything) - | - | - ----UOX3 (the cloned git repot) - | - | - |--- spidermonkey (this is a copy of the spidermonkey in the UOX3 repo - | that is built for your specific Mac) - | - | - |---uoxdata << this a directory for your uox data - | - | - |---accounts - | - |---archives - | - |---books - | - |---html - | - |---jsdata - | - |---logs - | - |---msgboards - | - |---shared - - -the uox.ini is placed the the UoserDirectory, with the ini file updated. -The uoxdata directories are populated as needed from the repo (like default -acctounts, jsdata/worldtemplates). - -This setup allows one to run the source code, without impacting -the repo by the fact uox3 makes/edit data (and that would impact the git) -If you dont use thes setup, the schema needs to be changed (working directory) -entry, and possibly the command line argument. -If you dont have spidermonkey in this location, then the search paths and library path -in the build settings will need to be changed. \ No newline at end of file diff --git a/zlib/CMakeLists.txt b/zlib/CMakeLists.txt deleted file mode 100644 index 0fe939df6..000000000 --- a/zlib/CMakeLists.txt +++ /dev/null @@ -1,249 +0,0 @@ -cmake_minimum_required(VERSION 2.4.4) -set(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS ON) - -project(zlib C) - -set(VERSION "1.2.11") - -option(ASM686 "Enable building i686 assembly implementation") -option(AMD64 "Enable building amd64 assembly implementation") - -set(INSTALL_BIN_DIR "${CMAKE_INSTALL_PREFIX}/bin" CACHE PATH "Installation directory for executables") -set(INSTALL_LIB_DIR "${CMAKE_INSTALL_PREFIX}/lib" CACHE PATH "Installation directory for libraries") -set(INSTALL_INC_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "Installation directory for headers") -set(INSTALL_MAN_DIR "${CMAKE_INSTALL_PREFIX}/share/man" CACHE PATH "Installation directory for manual pages") -set(INSTALL_PKGCONFIG_DIR "${CMAKE_INSTALL_PREFIX}/share/pkgconfig" CACHE PATH "Installation directory for pkgconfig (.pc) files") - -include(CheckTypeSize) -include(CheckFunctionExists) -include(CheckIncludeFile) -include(CheckCSourceCompiles) -enable_testing() - -check_include_file(sys/types.h HAVE_SYS_TYPES_H) -check_include_file(stdint.h HAVE_STDINT_H) -check_include_file(stddef.h HAVE_STDDEF_H) - -# -# Check to see if we have large file support -# -set(CMAKE_REQUIRED_DEFINITIONS -D_LARGEFILE64_SOURCE=1) -# We add these other definitions here because CheckTypeSize.cmake -# in CMake 2.4.x does not automatically do so and we want -# compatibility with CMake 2.4.x. -if(HAVE_SYS_TYPES_H) - list(APPEND CMAKE_REQUIRED_DEFINITIONS -DHAVE_SYS_TYPES_H) -endif() -if(HAVE_STDINT_H) - list(APPEND CMAKE_REQUIRED_DEFINITIONS -DHAVE_STDINT_H) -endif() -if(HAVE_STDDEF_H) - list(APPEND CMAKE_REQUIRED_DEFINITIONS -DHAVE_STDDEF_H) -endif() -check_type_size(off64_t OFF64_T) -if(HAVE_OFF64_T) - add_definitions(-D_LARGEFILE64_SOURCE=1) -endif() -set(CMAKE_REQUIRED_DEFINITIONS) # clear variable - -# -# Check for fseeko -# -check_function_exists(fseeko HAVE_FSEEKO) -if(NOT HAVE_FSEEKO) - add_definitions(-DNO_FSEEKO) -endif() - -# -# Check for unistd.h -# -check_include_file(unistd.h Z_HAVE_UNISTD_H) - -if(MSVC) - set(CMAKE_DEBUG_POSTFIX "d") - add_definitions(-D_CRT_SECURE_NO_DEPRECATE) - add_definitions(-D_CRT_NONSTDC_NO_DEPRECATE) - include_directories(${CMAKE_CURRENT_SOURCE_DIR}) -endif() - -if(NOT CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_CURRENT_BINARY_DIR) - # If we're doing an out of source build and the user has a zconf.h - # in their source tree... - if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/zconf.h) - message(STATUS "Renaming") - message(STATUS " ${CMAKE_CURRENT_SOURCE_DIR}/zconf.h") - message(STATUS "to 'zconf.h.included' because this file is included with zlib") - message(STATUS "but CMake generates it automatically in the build directory.") - file(RENAME ${CMAKE_CURRENT_SOURCE_DIR}/zconf.h ${CMAKE_CURRENT_SOURCE_DIR}/zconf.h.included) - endif() -endif() - -set(ZLIB_PC ${CMAKE_CURRENT_BINARY_DIR}/zlib.pc) -configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/zlib.pc.cmakein - ${ZLIB_PC} @ONLY) -configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/zconf.h.cmakein - ${CMAKE_CURRENT_BINARY_DIR}/zconf.h @ONLY) -include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR}) - - -#============================================================================ -# zlib -#============================================================================ - -set(ZLIB_PUBLIC_HDRS - ${CMAKE_CURRENT_BINARY_DIR}/zconf.h - zlib.h -) -set(ZLIB_PRIVATE_HDRS - crc32.h - deflate.h - gzguts.h - inffast.h - inffixed.h - inflate.h - inftrees.h - trees.h - zutil.h -) -set(ZLIB_SRCS - adler32.c - compress.c - crc32.c - deflate.c - gzclose.c - gzlib.c - gzread.c - gzwrite.c - inflate.c - infback.c - inftrees.c - inffast.c - trees.c - uncompr.c - zutil.c -) - -if(NOT MINGW) - set(ZLIB_DLL_SRCS - win32/zlib1.rc # If present will override custom build rule below. - ) -endif() - -if(CMAKE_COMPILER_IS_GNUCC) - if(ASM686) - set(ZLIB_ASMS contrib/asm686/match.S) - elseif (AMD64) - set(ZLIB_ASMS contrib/amd64/amd64-match.S) - endif () - - if(ZLIB_ASMS) - add_definitions(-DASMV) - set_source_files_properties(${ZLIB_ASMS} PROPERTIES LANGUAGE C COMPILE_FLAGS -DNO_UNDERLINE) - endif() -endif() - -if(MSVC) - if(ASM686) - ENABLE_LANGUAGE(ASM_MASM) - set(ZLIB_ASMS - contrib/masmx86/inffas32.asm - contrib/masmx86/match686.asm - ) - elseif (AMD64) - ENABLE_LANGUAGE(ASM_MASM) - set(ZLIB_ASMS - contrib/masmx64/gvmat64.asm - contrib/masmx64/inffasx64.asm - ) - endif() - - if(ZLIB_ASMS) - add_definitions(-DASMV -DASMINF) - endif() -endif() - -# parse the full version number from zlib.h and include in ZLIB_FULL_VERSION -file(READ ${CMAKE_CURRENT_SOURCE_DIR}/zlib.h _zlib_h_contents) -string(REGEX REPLACE ".*#define[ \t]+ZLIB_VERSION[ \t]+\"([-0-9A-Za-z.]+)\".*" - "\\1" ZLIB_FULL_VERSION ${_zlib_h_contents}) - -if(MINGW) - # This gets us DLL resource information when compiling on MinGW. - if(NOT CMAKE_RC_COMPILER) - set(CMAKE_RC_COMPILER windres.exe) - endif() - - add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/zlib1rc.obj - COMMAND ${CMAKE_RC_COMPILER} - -D GCC_WINDRES - -I ${CMAKE_CURRENT_SOURCE_DIR} - -I ${CMAKE_CURRENT_BINARY_DIR} - -o ${CMAKE_CURRENT_BINARY_DIR}/zlib1rc.obj - -i ${CMAKE_CURRENT_SOURCE_DIR}/win32/zlib1.rc) - set(ZLIB_DLL_SRCS ${CMAKE_CURRENT_BINARY_DIR}/zlib1rc.obj) -endif(MINGW) - -add_library(zlib SHARED ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_DLL_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS}) -add_library(zlibstatic STATIC ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS}) -set_target_properties(zlib PROPERTIES DEFINE_SYMBOL ZLIB_DLL) -set_target_properties(zlib PROPERTIES SOVERSION 1) - -if(NOT CYGWIN) - # This property causes shared libraries on Linux to have the full version - # encoded into their final filename. We disable this on Cygwin because - # it causes cygz-${ZLIB_FULL_VERSION}.dll to be created when cygz.dll - # seems to be the default. - # - # This has no effect with MSVC, on that platform the version info for - # the DLL comes from the resource file win32/zlib1.rc - set_target_properties(zlib PROPERTIES VERSION ${ZLIB_FULL_VERSION}) -endif() - -if(UNIX) - # On unix-like platforms the library is almost always called libz - set_target_properties(zlib zlibstatic PROPERTIES OUTPUT_NAME z) - if(NOT APPLE) - set_target_properties(zlib PROPERTIES LINK_FLAGS "-Wl,--version-script,\"${CMAKE_CURRENT_SOURCE_DIR}/zlib.map\"") - endif() -elseif(BUILD_SHARED_LIBS AND WIN32) - # Creates zlib1.dll when building shared library version - set_target_properties(zlib PROPERTIES SUFFIX "1.dll") -endif() - -if(NOT SKIP_INSTALL_LIBRARIES AND NOT SKIP_INSTALL_ALL ) - install(TARGETS zlib zlibstatic - RUNTIME DESTINATION "${INSTALL_BIN_DIR}" - ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" - LIBRARY DESTINATION "${INSTALL_LIB_DIR}" ) -endif() -if(NOT SKIP_INSTALL_HEADERS AND NOT SKIP_INSTALL_ALL ) - install(FILES ${ZLIB_PUBLIC_HDRS} DESTINATION "${INSTALL_INC_DIR}") -endif() -if(NOT SKIP_INSTALL_FILES AND NOT SKIP_INSTALL_ALL ) - install(FILES zlib.3 DESTINATION "${INSTALL_MAN_DIR}/man3") -endif() -if(NOT SKIP_INSTALL_FILES AND NOT SKIP_INSTALL_ALL ) - install(FILES ${ZLIB_PC} DESTINATION "${INSTALL_PKGCONFIG_DIR}") -endif() - -#============================================================================ -# Example binaries -#============================================================================ - -add_executable(example test/example.c) -target_link_libraries(example zlib) -add_test(example example) - -add_executable(minigzip test/minigzip.c) -target_link_libraries(minigzip zlib) - -if(HAVE_OFF64_T) - add_executable(example64 test/example.c) - target_link_libraries(example64 zlib) - set_target_properties(example64 PROPERTIES COMPILE_FLAGS "-D_FILE_OFFSET_BITS=64") - add_test(example64 example64) - - add_executable(minigzip64 test/minigzip.c) - target_link_libraries(minigzip64 zlib) - set_target_properties(minigzip64 PROPERTIES COMPILE_FLAGS "-D_FILE_OFFSET_BITS=64") -endif() diff --git a/zlib/README.md b/zlib/README.md index 19b9d1134..386461785 100644 --- a/zlib/README.md +++ b/zlib/README.md @@ -1,21 +1,38 @@ # zlib-1.2.11 configured for UOX3 -Herein are configured a minimum set of files required to compile a static library of zlib-1-2.11 on Windows, Linux and macOS, to be linked with [Ultima Offline eXperiment 3](https://github.com/UOX3DevTeam/UOX3/). Extraneous files and folders not required for this have been removed from this configuration; for the full, official zlib project complete with compilation solutions for other platforms and third party contributions, visit https://github.com/madler/zlib +Herein are configured a minimum set of files required to compile a static library of zlib on Windows, Linux/FreeBSD and macOS, for linking with [Ultima Offline eXperiment 3](https://github.com/UOX3DevTeam/UOX3/) and utilized to access Ultima Online data files and packets. Build setups can be found in the make/ folder, but extraneous build files and folders have been removed from this configuration. For the full, official zlib project complete with compilation solutions for other platforms and third party contributions, visit https://github.com/madler/zlib For detailed instructions on compiling and using this zlib configuration with UOX3, check out https://github.com/UOX3DevTeam/UOX3. Alternatively, follow the below instructions at your own peril:
    - Windows 10 (and 7/8?) - - To compile on Windows, open zlib.sln (VS2017 or newer) in the root zlib folder, choose your build type (release/debug, x64/x86) and go to Build -> Build zlib-static - + Windows + + ### Visual Studio 2017/2022 + 1. Open zlib.sln in the *make/[VS2017/VS2022]/* folder + 2. Choose *Release/Debug* build type from dropdown menu + 3. Go *Build -> Build zlib-static* + + ### CMake + 1. Open Developer Command Prompt for VS2017 or Developer Powershell for VS2022 + 2. Traverse to the make/cmake folder, and enter the following commands: + 3. `mkdir build` + 4. `cd build` + 5. `cmake .. -DCMAKE_BUILD_TYPE=Release` + 6. `cmake --build . --config Release`
    -
    - Linux/macOS - - To compile on Linux/macOS, open a new terminal window, navigate to the root zlib directory, and use the following commands: -./configure -make +--- +
    + Linux/FreeBSD/macOS + + ### CMake + 1. Open a new Terminal + 2. Traverse to the make/cmake folder, and enter the following commands: + 3. `mkdir build` + 4. `cd build` + 5. `cmake .. -DCMAKE_BUILD_TYPE=Release` (Linux/FreeBSD) + 5. `cmake .. -DCMAKE_BUILD_TYPE=Release -G"Unix Makefiles"` (macOS) + 6. `cmake --build . --config Release` +
    \ No newline at end of file diff --git a/zlib/zlib.sln b/zlib/make/VS2017/zlib.sln similarity index 89% rename from zlib/zlib.sln rename to zlib/make/VS2017/zlib.sln index aa6029c86..6bd668ebd 100644 --- a/zlib/zlib.sln +++ b/zlib/make/VS2017/zlib.sln @@ -3,7 +3,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 15 VisualStudioVersion = 15.0.26228.4 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib-static", "zlib-static\zlib-static.vcxproj", "{B56D17BC-072B-42F3-844A-870A07AFBAAA}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib", "zlib.vcxproj", "{B56D17BC-072B-42F3-844A-870A07AFBAAA}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution diff --git a/zlib/zlib-static/zlib-static.vcxproj b/zlib/make/VS2017/zlib.vcxproj similarity index 86% rename from zlib/zlib-static/zlib-static.vcxproj rename to zlib/make/VS2017/zlib.vcxproj index 24e7954e3..460945c66 100644 --- a/zlib/zlib-static/zlib-static.vcxproj +++ b/zlib/make/VS2017/zlib.vcxproj @@ -131,34 +131,34 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + diff --git a/zlib/zlib-static/zlib-static.vcxproj.filters b/zlib/make/VS2017/zlib.vcxproj.filters similarity index 67% rename from zlib/zlib-static/zlib-static.vcxproj.filters rename to zlib/make/VS2017/zlib.vcxproj.filters index 77209ddd6..e1906bb87 100644 --- a/zlib/zlib-static/zlib-static.vcxproj.filters +++ b/zlib/make/VS2017/zlib.vcxproj.filters @@ -15,84 +15,84 @@ - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files - + Header Files diff --git a/zlib/make/VS2022/zlib.sln b/zlib/make/VS2022/zlib.sln new file mode 100644 index 000000000..ff3b53abc --- /dev/null +++ b/zlib/make/VS2022/zlib.sln @@ -0,0 +1,31 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.4.33122.133 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib", "zlib.vcxproj", "{091529FD-5075-45F1-9D96-5708B3AB7C2B}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {091529FD-5075-45F1-9D96-5708B3AB7C2B}.Debug|x64.ActiveCfg = Debug|x64 + {091529FD-5075-45F1-9D96-5708B3AB7C2B}.Debug|x64.Build.0 = Debug|x64 + {091529FD-5075-45F1-9D96-5708B3AB7C2B}.Debug|x86.ActiveCfg = Debug|Win32 + {091529FD-5075-45F1-9D96-5708B3AB7C2B}.Debug|x86.Build.0 = Debug|Win32 + {091529FD-5075-45F1-9D96-5708B3AB7C2B}.Release|x64.ActiveCfg = Release|x64 + {091529FD-5075-45F1-9D96-5708B3AB7C2B}.Release|x64.Build.0 = Release|x64 + {091529FD-5075-45F1-9D96-5708B3AB7C2B}.Release|x86.ActiveCfg = Release|Win32 + {091529FD-5075-45F1-9D96-5708B3AB7C2B}.Release|x86.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {0614A13A-089E-40B8-B413-350C21671685} + EndGlobalSection +EndGlobal diff --git a/zlib/make/VS2022/zlib.vcxproj b/zlib/make/VS2022/zlib.vcxproj new file mode 100644 index 000000000..6e9a4c9af --- /dev/null +++ b/zlib/make/VS2022/zlib.vcxproj @@ -0,0 +1,202 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 16.0 + Win32Proj + {091529fd-5075-45f1-9d96-5708b3ab7c2b} + zlib + 10.0 + + + + StaticLibrary + true + v143 + Unicode + + + StaticLibrary + false + v143 + true + Unicode + + + StaticLibrary + true + v143 + Unicode + + + StaticLibrary + false + v143 + true + Unicode + + + + + + + + + + + + + + + + + + + + + + Level3 + true + WIN32;_DEBUG;_LIB;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE + true + NotUsing + + + stdcpp17 + stdc11 + true + MultiThreadedDebug + + + + + true + + + + + Level3 + true + true + true + WIN32;NDEBUG;_LIB;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE + true + NotUsing + + + stdcpp17 + stdc11 + true + MultiThreaded + + + + + true + true + true + + + true + + + + + Level3 + true + _DEBUG;_LIB;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE + true + NotUsing + + + stdcpp17 + stdc11 + true + 4267 + MultiThreadedDebug + + + + + true + + + + + Level3 + true + true + true + NDEBUG;_LIB;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE + true + NotUsing + + + stdcpp17 + stdc11 + true + 4267 + MultiThreaded + + + + + false + true + true + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/zlib/vs2022/zlib.vcxproj.filters b/zlib/make/VS2022/zlib.vcxproj.filters similarity index 67% rename from zlib/vs2022/zlib.vcxproj.filters rename to zlib/make/VS2022/zlib.vcxproj.filters index 3f7feda68..aa831d34b 100644 --- a/zlib/vs2022/zlib.vcxproj.filters +++ b/zlib/make/VS2022/zlib.vcxproj.filters @@ -15,85 +15,85 @@ - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files - + Source Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + \ No newline at end of file diff --git a/zlib/make/XCode/Why-No-Project.txt b/zlib/make/XCode/Why-No-Project.txt new file mode 100644 index 000000000..fdc328871 --- /dev/null +++ b/zlib/make/XCode/Why-No-Project.txt @@ -0,0 +1,2 @@ +XCode uses the zlib that comes with macOS. No reason to build +a separate project. \ No newline at end of file diff --git a/zlib/make/cmake/CMakeLists.txt b/zlib/make/cmake/CMakeLists.txt new file mode 100644 index 000000000..b10a668e7 --- /dev/null +++ b/zlib/make/cmake/CMakeLists.txt @@ -0,0 +1,74 @@ +cmake_minimum_required(VERSION 3.18) +project(zlib VERSION 1 LANGUAGES C) + +add_library(zlib STATIC + ../../adler32.c + ../../compress.c + ../../crc32.c + ../../deflate.c + ../../gzclose.c + ../../gzlib.c + ../../gzread.c + ../../gzwrite.c + ../../infback.c + ../../inffast.c + ../../inflate.c + ../../inftrees.c + ../../trees.c + ../../uncompr.c + ../../zutil.c + ../../crc32.h + ../../deflate.h + ../../gzguts.h + ../../inffast.h + ../../inffixed.h + ../../inflate.h + ../../inftrees.h + ../../trees.h + ../../zconf.h + ../../zlib.h + ../../zutil.h +) + +if (WIN32) + + target_compile_definitions(zlib PRIVATE + _LIB + _WINDOWS + _CRT_SECURE_NO_DEPRECATE + _CRT_NONSTDC_NO_DEPRECATE + ) + + target_compile_options( zlib PRIVATE + /W3 + /sdl- + /wd4244 + /wd4267 + /wd4047 + /wd4146 + /wd4334 + /wd4311 + /WX- + $<$:/O2> + ) + +else() + + target_compile_definitions( zlib PRIVATE + ) + + target_compile_options( zlib PRIVATE + -Wno-implicit-function-declaration + ) + if (APPLE) + target_compile_options( zlib PRIVATE + $<$:-Os> + ) + else() + target_compile_options(zlib PRIVATE + $<$:-O2> + ) + endif(APPLE) +endif(WIN32) + + diff --git a/zlib/vs2022/zlib.sln b/zlib/vs2022/zlib.sln deleted file mode 100644 index 52c7a96e5..000000000 --- a/zlib/vs2022/zlib.sln +++ /dev/null @@ -1,25 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 17 -VisualStudioVersion = 17.0.32112.339 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib", "zlib.vcxproj", "{7DDBF2DC-F199-4F38-B56D-C75270C3922D}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x64 = Debug|x64 - Release|x64 = Release|x64 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {7DDBF2DC-F199-4F38-B56D-C75270C3922D}.Debug|x64.ActiveCfg = Debug|x64 - {7DDBF2DC-F199-4F38-B56D-C75270C3922D}.Debug|x64.Build.0 = Debug|x64 - {7DDBF2DC-F199-4F38-B56D-C75270C3922D}.Release|x64.ActiveCfg = Release|x64 - {7DDBF2DC-F199-4F38-B56D-C75270C3922D}.Release|x64.Build.0 = Release|x64 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {7E286C55-7CB3-45F6-9EB3-204552ABAE75} - EndGlobalSection -EndGlobal diff --git a/zlib/vs2022/zlib.vcxproj b/zlib/vs2022/zlib.vcxproj deleted file mode 100644 index 4f3c05c1a..000000000 --- a/zlib/vs2022/zlib.vcxproj +++ /dev/null @@ -1,133 +0,0 @@ - - - - - Debug - x64 - - - Release - x64 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 16.0 - Win32Proj - {7ddbf2dc-f199-4f38-b56d-c75270c3922d} - zlib - 10.0 - - - - StaticLibrary - true - v143 - NotSet - - - StaticLibrary - false - v143 - true - Unicode - - - - - - - - - - - - - - true - - - false - - - - Level3 - Disabled - true - WIN32;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_DEBUG;_LIB;%(PreprocessorDefinitions) - Default - NotUsing - pch.h - stdcpp17 - stdc11 - ..\ - MultiThreadedDebug - true - ProgramDatabase - 4267 - - - - - true - - - - - Level3 - MaxSpeed - true - true - true - WIN32;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;NDEBUG;_LIB;%(PreprocessorDefinitions) - Default - NotUsing - pch.h - stdcpp17 - stdc11 - ..\ - true - MultiThreaded - 4267 - - - - - true - true - true - - - - - - \ No newline at end of file diff --git a/zlib/zlib-static/zlib-static.vcxproj.user b/zlib/zlib-static/zlib-static.vcxproj.user deleted file mode 100644 index be2507870..000000000 --- a/zlib/zlib-static/zlib-static.vcxproj.user +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file