summaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
authorFire-Head <Fire-Head@users.noreply.github.com>2020-04-15 08:03:53 +0300
committerFire-Head <Fire-Head@users.noreply.github.com>2020-04-15 08:03:53 +0300
commitdaed13485ef47d9c8992e53e1a976fba237fca50 (patch)
treef8116c26ac5f95a77375d67daffddbeaa19177e0 /src/core
parent6473778c47efa1e8c1e2d8eea405de98f378cd69 (diff)
CWeapon done, ps2 cheats fix
Diffstat (limited to 'src/core')
-rw-r--r--src/core/General.h5
-rw-r--r--src/core/Pad.cpp2
-rw-r--r--src/core/World.cpp1
-rw-r--r--src/core/World.h2
-rw-r--r--src/core/main.cpp3
5 files changed, 12 insertions, 1 deletions
diff --git a/src/core/General.h b/src/core/General.h
index f32846eb..77828854 100644
--- a/src/core/General.h
+++ b/src/core/General.h
@@ -90,6 +90,11 @@ public:
return -Atan2(x / y, 1.0f);
}
}
+
+ static float GetAngleBetweenPoints(float x1, float y1, float x2, float y2)
+ {
+ return RADTODEG(GetRadianAngleBetweenPoints(x1, y1, x2, y2));
+ }
// should return direction in 0-8 range. fits perfectly to peds' path directions.
static int GetNodeHeadingFromVector(float x, float y)
diff --git a/src/core/Pad.cpp b/src/core/Pad.cpp
index 6efbeb8e..9d00cef7 100644
--- a/src/core/Pad.cpp
+++ b/src/core/Pad.cpp
@@ -642,6 +642,8 @@ void CPad::AddToCheatString(char c)
{
for ( int32 i = ARRAY_SIZE(CheatString) - 2; i >= 0; i-- )
CheatString[i + 1] = CheatString[i];
+
+ CheatString[0] = c;
#define _CHEATCMP(str) strncmp(str, CheatString, sizeof(str)-1)
// "4414LDRULDRU" - R2 R2 L1 R2 LEFT DOWN RIGHT UP LEFT DOWN RIGHT UP
diff --git a/src/core/World.cpp b/src/core/World.cpp
index d64569b3..b4ae9346 100644
--- a/src/core/World.cpp
+++ b/src/core/World.cpp
@@ -58,6 +58,7 @@ WRAPPER void CWorld::ClearPedsFromArea(float, float, float, float, float, float)
WRAPPER void CWorld::CallOffChaseForArea(float, float, float, float) { EAXJMP(0x4B5530); }
WRAPPER void CWorld::TriggerExplosion(const CVector& a1, float a2, float a3, CEntity *a4, bool a5) { EAXJMP(0x4B1140); }
WRAPPER void CWorld::SetPedsOnFire(float, float, float, float, CEntity*) { EAXJMP(0x4B3D30); }
+WRAPPER void CWorld::UseDetonator(CEntity *) { EAXJMP(0x4B4650); }
void
CWorld::Initialise()
diff --git a/src/core/World.h b/src/core/World.h
index 07e7889f..0ee3fdda 100644
--- a/src/core/World.h
+++ b/src/core/World.h
@@ -142,6 +142,8 @@ public:
static void RemoveStaticObjects();
static void Process();
static void TriggerExplosion(const CVector &, float, float, CEntity*, bool);
+
+ static void UseDetonator(CEntity *);
};
extern CColPoint *gaTempSphereColPoints;
diff --git a/src/core/main.cpp b/src/core/main.cpp
index 93e4c71c..02f7d523 100644
--- a/src/core/main.cpp
+++ b/src/core/main.cpp
@@ -1557,8 +1557,9 @@ void SystemInit()
//
#endif
-
+#ifdef GTA_PS2_STUFF
CPad::Initialise();
+#endif
CPad::GetPad(0)->Mode = 0;
CGame::frenchGame = false;