From daaf6934d3389d747f76c4e4ba0b9d85ed93354f Mon Sep 17 00:00:00 2001 From: Grinch_ Date: Fri, 22 Oct 2021 05:07:30 +0600 Subject: [PATCH] [III] Add teleport tab --- README.md | 8 +- resource/III/CheatMenu/json/teleport.json | 228 ++++++++++++++++++++++ src/cheatmenu.h | 6 +- src/teleport.cpp | 18 +- tools/premake5.lua | 4 + 5 files changed, 252 insertions(+), 12 deletions(-) create mode 100644 resource/III/CheatMenu/json/teleport.json diff --git a/README.md b/README.md index 03131c5..18eba42 100644 --- a/README.md +++ b/README.md @@ -8,9 +8,9 @@ ## Introduction -A mod menu for Grand Theft Auto San Andreas & Vice City which allows a large set of modifications/cheats to be applied enabling a much more easier & amusing gameplay. This is **NOT** intended for use in multiplayer, I won't be responsible for any form of bans. Use it at your own risk! +A mod menu for Grand Theft Auto III, Vice City & San Andreas which allows a large set of modifications/cheats to be applied enabling a much more easier & amusing gameplay. This is **NOT** intended for use in multiplayer, I won't be responsible for any form of bans. Use it at your own risk! -Get stable binaries from [here](https://github.com/user-grinch/Cheat-Menu/releases). Beta binaries are available at the discord server. +Get stable binaries from [here](https://github.com/user-grinch/Cheat-Menu/releases). Beta binaries are available at the discord server. Binaries for GTA III are available at the discord server too. [![Discord Banner 2](https://discordapp.com/api/guilds/689515979847237649/widget.png?style=banner2)](https://discord.com/invite/ZzW7kmf) @@ -18,9 +18,9 @@ Get stable binaries from [here](https://github.com/user-grinch/Cheat-Menu/releas 1. Install [DirectX9](https://www.microsoft.com/en-us/download/details.aspx?id=35) & [Visual C++ Redistributable 2019 x86](hhttps://aka.ms/vs/16/release/vc_redist.x86.exe) if not already installed. 2. If your game version isn't v1.0 then you'll need to [downgrade](https://gtaforums.com/topic/927016-san-andreas-downgrader/). -3. Install [asi loader](https://www.gtagarage.com/mods/show.php?id=21709) +3. Install [asi loader](https://github.com/ThirteenAG/Ultimate-ASI-Loader/releases) 4. Download **CheatMenu.7z** and extract everything in game directory (replace if necessary). -5. (Only VC) Download and install [d3d8to9 wrapper](https://github.com/crosire/d3d8to9/releases). Sometimes the asi loader may come with Globals.ini. Remove the d3d8.dll from there. +5. (For III & VC) Download and install [d3d8to9 wrapper](https://github.com/crosire/d3d8to9/releases). Sometimes the asi loader may come with Globals.ini. Remove the d3d8.dll from there. (Vice City version is available at the discord server) diff --git a/resource/III/CheatMenu/json/teleport.json b/resource/III/CheatMenu/json/teleport.json new file mode 100644 index 0000000..2b4f679 --- /dev/null +++ b/resource/III/CheatMenu/json/teleport.json @@ -0,0 +1,228 @@ +{ + "Hidden Packages": + { + "Hidden Package 1": "0, 753.84, 137.21, 3.55", + "Hidden Package 2": "0, 1018.10, -56.45, 20.67", + "Hidden Package 3": "0, 1162.27, -101.57, 12.52", + "Hidden Package 4": "0, 1213.81, -126.73, 15.06", + "Hidden Package 5": "0, 1466.15, -166.31, 55.53", + "Hidden Package 6": "0, 1538.27, -174.03, 19.19", + "Hidden Package 7": "0, 864.09, -171.23, 3.53", + "Hidden Package 8": "0, 939.96, -200.20, 5.62", + "Hidden Package 9": "0, 1006.79, -220.68, 6.67", + "Hidden Package 10": "0, 1155.77, -191.65, 14.97", + "Hidden Package 11": "0, 1138.44, -250.12, 24.27", + "Hidden Package 12": "0, 1286.12, -247.50, 42.49", + "Hidden Package 13": "0, 847.03, -441.94, 23.31", + "Hidden Package 14": "0, 898.35, -414.66, 26.58", + "Hidden Package 15": "0, 926.93, -404.27, 29.13", + "Hidden Package 16": "0, 932.10, -477.10, -10.81", + "Hidden Package 17": "0, 1023.54, -423.33, 14.96", + "Hidden Package 18": "0, 1306.49, -381.02, 39.59", + "Hidden Package 19": "0, 1320.36, -365.28, 15.28", + "Hidden Package 20": "0, 1253.51, -611.83, 22.57", + "Hidden Package 21": "0, 934.04, -719.27, 14.62", + "Hidden Package 22": "0, 876.89, -787.31, 27.58", + "Hidden Package 23": "0, 942.37, -793.30, 15.20", + "Hidden Package 24": "0, 1206.85, -821.88, 14.75", + "Hidden Package 25": "0, 1470.40, -811.39, 22.50", + "Hidden Package 26": "0, 1237.69, -853.99, 20.59", + "Hidden Package 27": "0, 1195.57, -909.42, 15.11", + "Hidden Package 28": "0, 1120.58, -926.05, 15.89", + "Hidden Package 29": "0, 1046.05, -967.06, 16.40", + "Hidden Package 30": "0, 1105.06, -1019.89, 25.20", + "Hidden Package 31": "0, 1477.73, -1150.93, 11.86", + "Hidden Package 32": "0, 978.73, -1143.09, 13.17", + "Hidden Package 33": "0, 937.84, -1258.12, 3.61", + "Hidden Package 34": "0, 120.87, 243.89, 11.53", + "Hidden Package 35": "0, 50.36, 36.41, 16.17", + "Hidden Package 36": "0, 194.74, -0.32, 19.81", + "Hidden Package 37": "0, -18.24, -222.69, 29.83", + "Hidden Package 38": "0, 223.15, -272.78, 16.17", + "Hidden Package 39": "0, 414.31, -279.15, 23.63", + "Hidden Package 40": "0, 428.05, -340.19, 16.21", + "Hidden Package 41": "0, 555.81, -231.56, 22.80", + "Hidden Package 42": "0, 77.48, -352.37, 16.17", + "Hidden Package 43": "0, 322.29, -446.83, 23.46", + "Hidden Package 44": "0, 312.24, -483.98, 29.07", + "Hidden Package 45": "0, -69.42, -468.97, 16.14", + "Hidden Package 46": "0, 36.94, -529.96, 26.18", + "Hidden Package 47": "0, -59.10, -579.89, 16.01", + "Hidden Package 48": "0, 54.43, -566.64, 26.15", + "Hidden Package 49": "0, -270.70, -631.80, 72.30", + "Hidden Package 50": "0, 68.45, -773.44, 22.93", + "Hidden Package 51": "0, 586.72, -795.66, 1.77", + "Hidden Package 52": "0, 248.86, -958.32, 26.09", + "Hidden Package 53": "0, 351.35, -980.51, 33.18", + "Hidden Package 54": "0, 504.45, -1027.73, 1.71", + "Hidden Package 55": "0, 392.68, -1135.61, 15.91", + "Hidden Package 56": "0, 354.88, -1085.14, 25.98", + "Hidden Package 57": "0, -4.05, -1128.92, 26.08", + "Hidden Package 58": "0, 112.20, -1227.37, 26.17", + "Hidden Package 59": "0, 218.08, -1237.60, 20.45", + "Hidden Package 60": "0, 202.91, -1252.40, 59.37", + "Hidden Package 61": "0, 174.24, -1259.48, 32.28", + "Hidden Package 62": "0, -134.65, -1386.74, 26.18", + "Hidden Package 63": "0, -38.32, -1434.28, 31.81", + "Hidden Package 64": "0, -221.71, -1487.56, 5.84", + "Hidden Package 65": "0, -76.70, -1490.47, 26.14", + "Hidden Package 66": "0, -24.26, -1472.00, 19.83", + "Hidden Package 67": "0, 144.77, -1583.67, 30.90", + "Hidden Package 68": "0, 308.43, -1533.27, 23.69", + "Hidden Package 69": "0, 468.36, -1457.29, 44.31", + "Hidden Package 70": "0, -1221.15, 562.94, 68.65", + "Hidden Package 71": "0, -1131.99, 605.49, 68.65", + "Hidden Package 72": "0, -1098.46, 471.39, 35.53", + "Hidden Package 73": "0, -1215.67, 347.97, 31.04", + "Hidden Package 74": "0, -1208.08, 325.14, 3.43", + "Hidden Package 75": "0, -677.90, 308.69, 59.85", + "Hidden Package 76": "0, -609.20, 286.54, 65.18", + "Hidden Package 77": "0, -736.20, 304.87, 54.18", + "Hidden Package 78": "0, -329.38, 320.10, 60.77", + "Hidden Package 79": "0, -207.36, 328.99, 3.48", + "Hidden Package 80": "0, -1090.46, 131.47, 58.84", + "Hidden Package 81": "0, -752.99, 142.51, 10.13", + "Hidden Package 82": "0, -1194.36, -7.67, 59.80", + "Hidden Package 83": "0, -1015.43, -13.13, 48.85", + "Hidden Package 84": "0, -632.92, 67.76, 18.82", + "Hidden Package 85": "0, -547.02, 10.60, 3.93", + "Hidden Package 86": "0, -489.11, -44.75, 3.86", + "Hidden Package 87": "0, -1211.86, -166.72, 58.74", + "Hidden Package 88": "0, -1193.17, -75.58, 47.50", + "Hidden Package 89": "0, -849.02, -209.24, 41.84", + "Hidden Package 90": "0, -821.75, -185.24, 33.86", + "Hidden Package 91": "0, -698.00, -182.00, 9.25", + "Hidden Package 92": "0, -837.92, -469.02, 11.12", + "Hidden Package 93": "0, -1326.95, -624.70, 11.12", + "Hidden Package 94": "0, -1032.82, -573.34, 10.98", + "Hidden Package 95": "0, -1279.62, -775.86, 11.12", + "Hidden Package 96": "0, -737.81, -745.27, 9.76", + "Hidden Package 97": "0, -748.61, -806.55, -13.67", + "Hidden Package 98": "0, -1556.93, -905.43, 14.52", + "Hidden Package 99": "0, -1494.55, -1096.81, 3.48", + "Hidden Package 100": "0, -541.86, -1046.62, 3.48" + }, + "Misc" : + { + "Mission Contact King Courtney": "0, 118.28, -271.75, 16.17", + "Hospital Staunton": "0, 183.50, -17.98, 16.22", + "Save House Staunton": "0, 108.02, -468.65, 16.05", + "Save House Portland": "0, 885.97, -309.27, 8.64", + "Salvatore Mansion": "0, 1445.94, -188.86, 55.65", + "8Ball Bomb Shop Portland": "0, 1274.13, -95.89, 14.89", + "Fire Departement Portland": "0, 1110.24, -47.61, 7.49", + "Portland - Save House": "0, 885.97, -309.27, 8.64", + "Portland - Luigi Club": "0, 902.65, -426.30, 14.90", + "Portland - Joey Garage": "0, 1194.54, -871.41, 14.97", + "Portland - Payphone Marty Chonks": "0, 1227.31, -839.08, 14.97", + "Portland - Payphone El Burro": "0, 939.11, -233.73, 4.94", + "Portland - Tony Cipriani": "0, 1217.84, -327.95, 26.07", + "Portland - Salvatore Mansion": "0, 1454.77, -189.59, 55.46", + "Portland - 8ball": "0, 1271.83, -95.52, 14.85", + "Staunton - Save House": "0, 103.00, -478.50, 15.93", + "Staunton - Asuka Condo": "0, 525.36, -646.23, 16.14", + "Staunton - Payphone King Courtney": "0, 119.29, -274.69, 16.17", + "Staunton - Kenji Casino": "0, 453.19, -1418.73, 26.12", + "Staunton - Ray The Toilet Man": "0, 36.69, -723.43, 22.76", + "Staunton - Donald Apartement": "0, 80.96, -1548.21, 28.29", + "Staunton - Asuka Paet 2": "0, 373.49, -327.06, 18.23", + "Shoreside Vale - Save House": "0, -666.75, -1.75, 18.86", + "Shoreside Vale - Payphone D Ice": "0, -443.70, -8.03, 3.86", + "Shoreside Vale - Catalina Mansion": "0, -364.10, 241.08, 60.77" + }, + "Rampages" : + { + "Rampages 1 - Primary": "0, 1197.69, -497.45, 39.56", + "Rampages 1 - Secondary": "0, 1118.21, -816.71, 27.03", + "Rampages 2 - Primary": "0, 1079.29, -860.35, 15.18", + "Rampages 2 - Secondary": "0, 983.15, -1006.13, 14.94", + "Rampages 3 - Primary": "0, 880.69, -806.71, 14.97", + "Rampages 3 - Secondary": "0, 1253.59, -570.38, 12.46", + "Rampages 4 - Primary": "0, 954.87, -428.58, 15.22", + "Rampages 4 - Secondary": "0, 987.44, -903.63, 15.84", + "Rampages 5 - Primary": "0, 1309.40, -315.41, 42.50", + "Rampages 5 - Secondary": "0, 1212.19, -380.27, 25.67", + "Rampages 6 - Primary": "0, 1272.04, -746.24, 14.95", + "Rampages 6 - Secondary": "0, 1179.76, -567.70, 27.32", + "Rampages 7 - Primary": "0, -54.06, -1070.26, 26.46", + "Rampages 7 - Secondary": "0, -105.10, -1385.80, 26.49", + "Rampages 8 - Primary": "0, -24.16, -1525.24, 26.14", + "Rampages 8 - Secondary": "0, -24.49, -1118.55, 26.08", + "Rampages 9 - Primary": "0, 204.72, -1233.97, 45.10", + "Rampages 9 - Secondary": "0, 442.91, -1393.83, 44.31", + "Rampages 10 - Primary": "0, 394.05, -790.45, 31.30", + "Rampages 10 - Secondary": "0, 371.02, -607.04, 26.17", + "Rampages 11 - Primary": "0, 10.11, -910.55, 26.45", + "Rampages 11 - Secondary": "0, 130.26, -553.96, 25.92", + "Rampages 12 - Primary": "0, 178.39, -337.05, 16.47", + "Rampages 12 - Secondary": "0, 435.25, -151.47, 20.93", + "Rampages 13 - Primary": "0, -43.14, -456.42, 16.55", + "Rampages 13 - Secondary": "0, 172.81, -360.66, 16.21", + "Rampages 14 - Primary": "0, -863.99, -146.08, 49.93", + "Rampages 14 - Secondary": "0, -942.99, -302.53, 33.66", + "Rampages 15 - Primary": "0, -1184.25, 37.87, 68.77", + "Rampages 15 - Secondary": "0, -1174.07, -43.63, 59.80", + "Rampages 16 - Primary": "0, -556.67, -22.11, 9.32", + "Rampages 16 - Secondary": "0, -631.92, -410.63, 18.78", + "Rampages 17 - Primary": "0, -703.50, -619.21, 16.36", + "Rampages 17 - Secondary": "0, -1178.73, -265.42, 46.12", + "Rampages 18 - Primary": "0, -990.28, -205.67, 33.85", + "Rampages 18 - Secondary": "0, -1082.58, 209.85, 3.76", + "Rampages 19 - Primary": "0, -433.17, 111.97, 15.74", + "Rampages 19 - Secondary": "0, -798.35, 122.37, 28.65", + "Rampages 20 - Primary": "0, -586.75, 286.69, 64.00", + "Rampages 20 - Secondary": "0, -1146.11, 158.57, 58.79" + }, + "Side missions" : + { + "Payphone Missions - El Buro": "0, 939.12, -233.42, 4.94", + "Payphone Missions - King Courtney": "0, 117.69, -273.57, 16.17", + "Payphone Missions - D Ice": "0, -440.72, -5.98, 3.86", + "Marty Chonks": "0, 1226.64, -840.08, 14.97", + "Test Drive - Patriot Playground": "0, 1301.68, -640.29, 12.21", + "Test Drive - A Ride in the Park": "0, 57.90, -595.84, 25.97", + "Test Drive - Multi-Storey Mayhem": "0, 281.42, -571.44, 26.17", + "Test Drive - Gripped!": "0, -220.45, 268.54, 3.48", + "RC Toyz - Diablo Destruction": "0, 1009.94, -113.60, 5.34", + "RC Toyz - Mafia Massacre": "0, 1165.09, -313.02, 23.04", + "RC Toyz - Casino Calamity": "0, 373.24, -1318.18, 26.24", + "RC Toyz - Rumpo Rampage": "0, -638.30, 61.31, 18.83", + "Import/Export - Portland": "0, 1494.08, -675.48, 11.83", + "Import/Export - Shoreside Vale": "0, -1106.62, 152.78, 58.80", + "Emergency Vehicle Crane": "0, 1569.32, -717.45, 11.83", + "Securicar Garage": "0, 1447.08, -808.38, 11.83", + "Paramedic Missions - Portland": "0, 1143.84, -598.08, 14.91", + "Paramedic Missions - Staunton": "0, 198.84, -9.49, 16.22", + "Paramedic Missions - Shoreside": "0, -1266.00, -85.74, 58.79", + "Vigilante Missions - Shoreside": "0, -1259.26, -46.17, 58.88", + "Vigilante Missions - Staunton": "0, 340.11, -1125.33, 24.84", + "Vigilante Missions - Portland": "0, 1140.38, -665.08, 14.90", + "Fire Fighter - Portland": "0, 1108.75, -67.34, 7.49", + "Fire Fighter - Staunton": "0, -81.86, -432.10, 16.17", + "Fire Fighter - Shoreside": "0, -863.20, -450.25, 11.12" + }, + "Unique Jumps": + { + "Unique Jump 1 - land to train track": "0, 991.20, -475.54, 17.05", + "Unique Jump 2 - cross over bridge": "0, 789.28, -579.83, 18.17", + "Unique Jump 3 - cross over 4 parking truck": "0, 1375.49, -947.07, 14.17", + "Unique Jump 4 - land on building 2 or 3": "0, 1238.28, -1129.77, 14.07", + "Unique Jump 5 - gap to the next pier": "0, 1157.87, -1155.21, 15.31", + "Unique Jump 6 - gap tthe building": "0, 1141.26, -976.84, 17.45", + "Unique Jump 7 - gap 2 steel": "0, 934.52, -934.14, 18.72", + "Unique Jump 8 - land to the green grass": "0, 788.66, -930.50, 40.56", + "Unique Jump 9 - land to the road at least 226 ft": "0, 272.29, -599.55, 37.17", + "Unique Jump 10 - gap to the next pier": "0, 471.69, -914.47, 18.63", + "Unique Jump 11 - gap the bridge (very cool)": "0, 325.64, -885.50, 39.83", + "Unique Jump 12 - jump over the road": "0, 165.04, -998.78, 28.46", + "Unique Jump 13 - jump to the next land": "0, -988.04, 244.61, 37.57", + "Unique Jump 14 - double jump (hard to explain)": "0, -1166.60, 106.54, 71.34", + "Unique Jump 15 - land on roof garage with sign 12345": "0, -1183.25, 28.55, 71.53", + "Unique Jump 16 - cross over river": "0, -698.47, -184.06, 19.16", + "Unique Jump 17 - jump over the plane": "0, -1171.49, -570.52, 12.70", + "Unique Jump 18 - cross over plane garage": "0, -1390.18, -631.67, 14.09", + "Unique Jump 19 - cross over plane garage": "0, -1383.21, -839.10, 13.57", + "Unique Jump 20 - $1000000 jumps": "0, -1107.95, -857.59, 13.49" + + } +} \ No newline at end of file diff --git a/src/cheatmenu.h b/src/cheatmenu.h index 443fbcf..5b6e1ce 100644 --- a/src/cheatmenu.h +++ b/src/cheatmenu.h @@ -11,7 +11,6 @@ #pragma once #ifndef GTA3 #include "animation.h" -#include "teleport.h" #include "player.h" #include "ped.h" #include "vehicle.h" @@ -19,13 +18,14 @@ #include "game.h" #include "visual.h" #endif +#include "teleport.h" #include "menu.h" #include "hook.h" #ifndef GTA3 class CheatMenu : Hook, Animation, Game, Menu, Ped, Player, Teleport, Vehicle, Visual, Weapon #else -class CheatMenu : Hook, Menu +class CheatMenu : Hook, Menu, Teleport #endif { private: @@ -35,7 +35,7 @@ private: #ifdef GTA3 static inline CallbackTable header { - {"Menu", &Menu::Draw} + {"Teleport", &Teleport::Draw}, {"Menu", &Menu::Draw} }; #else static inline CallbackTable header diff --git a/src/teleport.cpp b/src/teleport.cpp index f5f385c..dda4fa0 100644 --- a/src/teleport.cpp +++ b/src/teleport.cpp @@ -55,13 +55,13 @@ Teleport::Teleport() CEntity* player_entity = FindPlayerEntity(-1); m_Teleport::m_fPos.z = CWorld::FindGroundZFor3DCoord(m_Teleport::m_fPos.x, m_Teleport::m_fPos.y, m_Teleport::m_fPos.z + 100.0f, nullptr, &player_entity) + 1.0f; -#elif GTAVC +#else // GTA3 & GTAVC m_Teleport::m_fPos.z = CWorld::FindGroundZFor3DCoord(m_Teleport::m_fPos.x, m_Teleport::m_fPos.y, m_Teleport::m_fPos.z + 100.0f, nullptr) + 1.0f; #endif CVehicle* pVeh = player->m_pVehicle; - if (pVeh && BY_GAME(player->m_nPedFlags.bInVehicle, player->m_pVehicle)) + if (pVeh && BY_GAME(player->m_nPedFlags.bInVehicle, player->m_pVehicle, player->m_pVehicle)) { BY_GAME(pVeh->Teleport(m_Teleport::m_fPos, false), pVeh->Teleport(m_Teleport::m_fPos)); } @@ -115,8 +115,12 @@ void Teleport::TeleportPlayer(bool get_marker, CVector pos, int interior_id) } #endif +#ifdef GTA3 + CStreaming::LoadScene(pos); +#else CStreaming::LoadScene(&pos); CStreaming::LoadSceneCollision(&pos); +#endif CStreaming::LoadAllRequestedModels(false); #ifdef GTASA @@ -135,10 +139,12 @@ void Teleport::TeleportPlayer(bool get_marker, CVector pos, int interior_id) { pPlayer->Teleport(pos, false); } -#elif GTAVC +#else // GTA3 & GTAVC if (pVeh && pPlayer->m_pVehicle) { - BY_GAME(pVeh->m_nAreaCode, pVeh->m_nInterior) = interior_id; +#ifndef GTA3 + BY_GAME(pPlayer->m_nAreaCode, pPlayer->m_nInterior, NULL) = interior_id; +#endif pVeh->Teleport(pos); } else @@ -147,7 +153,9 @@ void Teleport::TeleportPlayer(bool get_marker, CVector pos, int interior_id) } #endif - BY_GAME(pPlayer->m_nAreaCode, pPlayer->m_nInterior) = interior_id; +#ifndef GTA3 + BY_GAME(pPlayer->m_nAreaCode, pPlayer->m_nInterior, NULL) = interior_id; +#endif Command(interior_id); } diff --git a/tools/premake5.lua b/tools/premake5.lua index d544d40..f54409d 100644 --- a/tools/premake5.lua +++ b/tools/premake5.lua @@ -70,6 +70,10 @@ project "CheatMenuIII" "../src/util.cpp", "../src/menu.h", "../src/menu.cpp", + "../src/teleport.h", + "../src/teleport.cpp", + "../src/resourcestore.h", + "../src/resourcestore.cpp", "../src/hotkeys.h", "../src/hotkeys.cpp", "../src/dllmain.cpp"