diff --git a/Source/SM64 Diagnostic/Config/TrianglesData.xml b/Source/SM64 Diagnostic/Config/TrianglesData.xml
index aa651f47d..2d62596de 100644
--- a/Source/SM64 Diagnostic/Config/TrianglesData.xml
+++ b/Source/SM64 Diagnostic/Config/TrianglesData.xml
@@ -19,19 +19,19 @@
Normal X
Normal Y
Normal Z
- Offset
+ Normal Offset
Associated Object
- Closest Vertex
Uphill Angle
Downhill Angle
Right Hill Angle
Left Hill Angle
- Steepness
+ Steepness
Mario X
Mario Y
Mario Z
- Yaw (Intended)
- Yaw (Facing)
+ Closest Vertex
+ M. Yaw (Intended)
+ M. Yaw (Facing)
Floor Triangle
Wall Triangle
Ceiling Triangle
diff --git a/Source/SM64 Diagnostic/StroopMainForm.cs b/Source/SM64 Diagnostic/StroopMainForm.cs
index 49a7428a6..b3854e421 100644
--- a/Source/SM64 Diagnostic/StroopMainForm.cs
+++ b/Source/SM64 Diagnostic/StroopMainForm.cs
@@ -18,7 +18,7 @@ namespace SM64_Diagnostic
{
public partial class StroopMainForm : Form
{
- const string _version = "v0.2.5";
+ const string _version = "v0.2.6";
ProcessStream _sm64Stream = null;
ObjectSlotManagerGui _slotManagerGui = new ObjectSlotManagerGui();
diff --git a/Source/SM64 Diagnostic/Utilities/MarioActions.cs b/Source/SM64 Diagnostic/Utilities/MarioActions.cs
index e92a9bb4f..5653f1231 100644
--- a/Source/SM64 Diagnostic/Utilities/MarioActions.cs
+++ b/Source/SM64 Diagnostic/Utilities/MarioActions.cs
@@ -9,8 +9,6 @@ namespace SM64_Diagnostic.Utilities
{
public static class MarioActions
{
- public enum DistanceToObjType { Mario, Object, ObjectHome };
-
public static bool MoveMarioToObject(ProcessStream stream, uint objAddress)
{
// Move mario to object
@@ -200,23 +198,12 @@ public static bool RetrieveTriangle(ProcessStream stream, uint triangleAddress)
float normOffset = -(normX * marioX + normY * marioY + normZ * marioZ);
float normDiff = normOffset - oldNormOffset;
- short xOffset, yOffset, zOffset;
- xOffset = (short)(-normDiff * normX);
- yOffset = (short)(-normDiff * normY);
- zOffset = (short)(-normDiff * normZ);
+ short yOffset = (short)(-normDiff * normY);
- short v1X, v1Y, v1Z;
- short v2X, v2Y, v2Z;
- short v3X, v3Y, v3Z;
- v1X = (short)(BitConverter.ToInt16(stream.ReadRam(triangleAddress + Config.TriangleOffsets.X1, 2), 0) + xOffset);
+ short v1Y, v2Y, v3Y;
v1Y = (short)(BitConverter.ToInt16(stream.ReadRam(triangleAddress + Config.TriangleOffsets.Y1, 2), 0) + yOffset);
- v1Z = (short)(BitConverter.ToInt16(stream.ReadRam(triangleAddress + Config.TriangleOffsets.Z1, 2), 0) + zOffset);
- v2X = (short)(BitConverter.ToInt16(stream.ReadRam(triangleAddress + Config.TriangleOffsets.X2, 2), 0) + xOffset);
v2Y = (short)(BitConverter.ToInt16(stream.ReadRam(triangleAddress + Config.TriangleOffsets.Y2, 2), 0) + yOffset);
- v2Z = (short)(BitConverter.ToInt16(stream.ReadRam(triangleAddress + Config.TriangleOffsets.Z2, 2), 0) + zOffset);
- v3X = (short)(BitConverter.ToInt16(stream.ReadRam(triangleAddress + Config.TriangleOffsets.X3, 2), 0) + xOffset);
v3Y = (short)(BitConverter.ToInt16(stream.ReadRam(triangleAddress + Config.TriangleOffsets.Y3, 2), 0) + yOffset);
- v3Z = (short)(BitConverter.ToInt16(stream.ReadRam(triangleAddress + Config.TriangleOffsets.Z3, 2), 0) + zOffset);
short yMin = Math.Min(Math.Min(v1Y, v2Y), v3Y);
short yMax = Math.Max(Math.Max(v1Y, v2Y), v3Y);
@@ -225,16 +212,10 @@ public static bool RetrieveTriangle(ProcessStream stream, uint triangleAddress)
// Update triangle
bool success = true;
-
- success &= stream.WriteRam(BitConverter.GetBytes(v1X), triangleAddress + Config.TriangleOffsets.X1);
+
success &= stream.WriteRam(BitConverter.GetBytes(v1Y), triangleAddress + Config.TriangleOffsets.Y1);
- success &= stream.WriteRam(BitConverter.GetBytes(v1Z), triangleAddress + Config.TriangleOffsets.Z1);
- success &= stream.WriteRam(BitConverter.GetBytes(v2X), triangleAddress + Config.TriangleOffsets.X2);
success &= stream.WriteRam(BitConverter.GetBytes(v2Y), triangleAddress + Config.TriangleOffsets.Y2);
- success &= stream.WriteRam(BitConverter.GetBytes(v2Z), triangleAddress + Config.TriangleOffsets.Z2);
- success &= stream.WriteRam(BitConverter.GetBytes(v3X), triangleAddress + Config.TriangleOffsets.X3);
success &= stream.WriteRam(BitConverter.GetBytes(v3Y), triangleAddress + Config.TriangleOffsets.Y3);
- success &= stream.WriteRam(BitConverter.GetBytes(v3Z), triangleAddress + Config.TriangleOffsets.Z3);
success &= stream.WriteRam(BitConverter.GetBytes(yMin), triangleAddress + Config.TriangleOffsets.YMin);
success &= stream.WriteRam(BitConverter.GetBytes(yMax), triangleAddress + Config.TriangleOffsets.YMax);
success &= stream.WriteRam(BitConverter.GetBytes(normOffset), triangleAddress + Config.TriangleOffsets.Offset);
diff --git a/Windows Build/Config/Config.xml b/Windows Build/Config/Config.xml
index 782c5565e..0c9d9460f 100644
--- a/Windows Build/Config/Config.xml
+++ b/Windows Build/Config/Config.xml
@@ -18,6 +18,9 @@
0xA0
0xA4
0xA8
+ 0x164
+ 0x168
+ 0x16C
0xC8
240
300
@@ -65,6 +68,16 @@
0x5C
0xBC
+
+ 0x8033b21e
+ 0x8033b21c
+ 0x8033b218
+ 0x8033b21a
+ 2176
+ 4
+ 0
+ 120
+
0x8033d263
0x80330e94
diff --git a/Windows Build/Config/Hacks.xml b/Windows Build/Config/Hacks.xml
index 5c8419a1f..869d53935 100644
--- a/Windows Build/Config/Hacks.xml
+++ b/Windows Build/Config/Hacks.xml
@@ -3,6 +3,6 @@
Resources\Hacks\
-
+
\ No newline at end of file
diff --git a/Windows Build/Config/MarioData.xml b/Windows Build/Config/MarioData.xml
index 8bacca1b4..639c7d78b 100644
--- a/Windows Build/Config/MarioData.xml
+++ b/Windows Build/Config/MarioData.xml
@@ -19,13 +19,6 @@
Roll
Yaw Velocity
Flying Pull Back
- Floor Height
- Ceiling Height
- Dist Below Ceiling
- Dist Above Floor
- Floor Triangle
- Wall Triangle
- Ceiling Triangle
Interaction Object
Using Object
Stood On Object
diff --git a/Windows Build/Config/ObjectAssociations.xml b/Windows Build/Config/ObjectAssociations.xml
index 6776d954f..700f54b68 100644
--- a/Windows Build/Config/ObjectAssociations.xml
+++ b/Windows Build/Config/ObjectAssociations.xml
@@ -49,6 +49,9 @@
+
+
+