From 049bbce5c00854c1446c28e6b2d15c04eaa19cdd Mon Sep 17 00:00:00 2001
From: RedEnchilada <redenchilada@derpymail.com>
Date: Mon, 3 Aug 2015 17:37:50 -0500
Subject: [PATCH] Add data to slope struct that will be useful later

---
 src/r_defs.h | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/src/r_defs.h b/src/r_defs.h
index 9f35af7e5f..6f9127ee96 100644
--- a/src/r_defs.h
+++ b/src/r_defs.h
@@ -233,11 +233,19 @@ typedef struct secplane_t
 	fixed_t a, b, c, d, ic;
 } secplane_t;
 
-// Kalaron Slopes
+// Slopes
 #ifdef ESLOPE
+typedef enum {
+	SL_NOPHYSICS = 1, // Don't do momentum adjustment with this slope
+	SL_NODYNAMIC = 1<<1, // Slope will never need to move during the level, so don't fuss with recalculating it
+	SL_ANCHORVERTEX = 1<<2, // Slope is using a Slope Vertex Thing to anchor its position
+	SL_VERTEXSLOPE = 1<<3, // Slope is built from three Slope Vertex Things
+} slopeflags_t;
 
 typedef struct pslope_s
 {
+	UINT16 id; // The number of the slope, mostly used for netgame syncing purposes
+
 	// --- Information used in clipping/projection ---
 	// Origin vector for the plane
 	vector3_t o;
@@ -262,7 +270,10 @@ typedef struct pslope_s
 
 	struct line_s *sourceline; // The line that generated the slope
 	fixed_t extent; // Distance value used for recalculating zdelta
-	UINT8 refpos; // 1=front floor 2=front ceiling 3=back floor 4=back ceiling (used for dynamic sloping) 0=disabled
+	UINT8 refpos; // 1=front floor 2=front ceiling 3=back floor 4=back ceiling (used for dynamic sloping)
+
+	UINT8 flags; // Slope options
+	struct mobj_s **vertices; // List should be three long for slopes made by vertex things, or one long for slopes using one vertex thing to anchor
 
 	struct pslope_s *next; // Make a linked list of dynamic slopes, for easy reference later
 } pslope_t;
-- 
GitLab