diff --git a/polymer/eduke32/source/duke3d.h b/polymer/eduke32/source/duke3d.h
index 1a739453d..5d9ab501d 100644
--- a/polymer/eduke32/source/duke3d.h
+++ b/polymer/eduke32/source/duke3d.h
@@ -133,6 +133,7 @@ EDUKE32_STATIC_ASSERT(7 <= MAXTILES-MAXUSERTILES);
 #include "rts.h"
 #include "soundsdyn.h"
 #include "music.h"
+#include "inv.h"
 #include "player.h"
 #include "actors.h"
 #include "quotes.h"
diff --git a/polymer/eduke32/source/inv.h b/polymer/eduke32/source/inv.h
new file mode 100644
index 000000000..44a1d1f84
--- /dev/null
+++ b/polymer/eduke32/source/inv.h
@@ -0,0 +1,67 @@
+//-------------------------------------------------------------------------
+/*
+Copyright (C) 2016 EDuke32 developers and contributors
+
+This file is part of EDuke32.
+
+EDuke32 is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License version 2
+as published by the Free Software Foundation.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+See the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+*/
+//-------------------------------------------------------------------------
+
+#pragma once
+
+enum dukeinv_t {
+    GET_STEROIDS,  // 0
+    GET_SHIELD,
+    GET_SCUBA,
+    GET_HOLODUKE,
+    GET_JETPACK,
+    GET_DUMMY1,  // 5
+    GET_ACCESS,
+    GET_HEATS,
+    GET_DUMMY2,
+    GET_FIRSTAID,
+    GET_BOOTS,  // 10
+    GET_MAX
+};
+
+// these are not in the same order as the above, and it can't be changed for compat reasons. lame!
+enum dukeinvicon_t {
+    ICON_NONE,  // 0
+    ICON_FIRSTAID,
+    ICON_STEROIDS,
+    ICON_HOLODUKE,
+    ICON_JETPACK,
+    ICON_HEATS,  // 5
+    ICON_SCUBA,
+    ICON_BOOTS,
+    ICON_MAX
+};
+
+enum dukeweapon_t {
+    KNEE_WEAPON,  // 0
+    PISTOL_WEAPON,
+    SHOTGUN_WEAPON,
+    CHAINGUN_WEAPON,
+    RPG_WEAPON,
+    HANDBOMB_WEAPON,  // 5
+    SHRINKER_WEAPON,
+    DEVISTATOR_WEAPON,
+    TRIPBOMB_WEAPON,
+    FREEZE_WEAPON,
+    HANDREMOTE_WEAPON,  // 10
+    GROW_WEAPON,
+    MAX_WEAPONS
+};
diff --git a/polymer/eduke32/source/player.h b/polymer/eduke32/source/player.h
index 29f9ab010..1094a03b6 100644
--- a/polymer/eduke32/source/player.h
+++ b/polymer/eduke32/source/player.h
@@ -49,50 +49,6 @@ extern int32_t playerswhenstarted;
 #define WEAPON_POS_RAISE            10
 #define WEAPON_POS_START             6
 
-enum dukeinv_t {
-    GET_STEROIDS,  // 0
-    GET_SHIELD,
-    GET_SCUBA,
-    GET_HOLODUKE,
-    GET_JETPACK,
-    GET_DUMMY1,  // 5
-    GET_ACCESS,
-    GET_HEATS,
-    GET_DUMMY2,
-    GET_FIRSTAID,
-    GET_BOOTS,  // 10
-    GET_MAX
-};
-
-// these are not in the same order as the above, and it can't be changed for compat reasons. lame!
-enum dukeinvicon_t {
-    ICON_NONE,  // 0
-    ICON_FIRSTAID,
-    ICON_STEROIDS,
-    ICON_HOLODUKE,
-    ICON_JETPACK,
-    ICON_HEATS,  // 5
-    ICON_SCUBA,
-    ICON_BOOTS,
-    ICON_MAX
-};
-
-enum dukeweapon_t {
-    KNEE_WEAPON,  // 0
-    PISTOL_WEAPON,
-    SHOTGUN_WEAPON,
-    CHAINGUN_WEAPON,
-    RPG_WEAPON,
-    HANDBOMB_WEAPON,  // 5
-    SHRINKER_WEAPON,
-    DEVISTATOR_WEAPON,
-    TRIPBOMB_WEAPON,
-    FREEZE_WEAPON,
-    HANDREMOTE_WEAPON,  // 10
-    GROW_WEAPON,
-    MAX_WEAPONS
-};
-
 enum weaponflags_t {
     WEAPON_SPAWNTYPE1           = 0x00000000, // just spawn
     WEAPON_HOLSTER_CLEARS_CLIP  = 0x00000001, // 'holstering' clears the current clip