]> git.jsancho.org Git - lugaru.git/blobdiff - Source/Environment/Terrain.hpp
This should fix the segfault from #89
[lugaru.git] / Source / Environment / Terrain.hpp
index 8cf68e1a3080f3eaf2fc04f23d55379881d79193..f4876cf19f9c75ecdc52e363116ab05fdd45c16b 100644 (file)
@@ -1,6 +1,6 @@
 /*
 Copyright (C) 2003, 2010 - Wolfire Games
-Copyright (C) 2010-2016 - Lugaru contributors (see AUTHORS file)
+Copyright (C) 2010-2017 - Lugaru contributors (see AUTHORS file)
 
 This file is part of Lugaru.
 
@@ -26,7 +26,7 @@ along with Lugaru.  If not, see <http://www.gnu.org/licenses/>.
 #include "Graphic/gamegl.hpp"
 #include "Graphic/Texture.hpp"
 #include "Math/Frustum.hpp"
-#include "Math/Quaternions.hpp"
+#include "Math/XYZ.hpp"
 #include "Utils/ImageIO.hpp"
 
 #define max_terrain_size        256
@@ -59,8 +59,7 @@ public:
     Texture terraintexture;
     short size;
 
-    int patchobjectnum[subdivision][subdivision];
-    unsigned int patchobjects[subdivision][subdivision][300];
+    std::vector<unsigned int> patchobjects[subdivision][subdivision];
 
     float scale;
     int type;
@@ -88,6 +87,7 @@ public:
     std::vector<Decal> decals;
 
     void AddObject(XYZ where, float radius, int id);
+    void DeleteObject(unsigned int id);
     void DeleteDecal(int which);
     void MakeDecal(decal_type type, XYZ where, float size, float opacity, float rotation);
     void MakeDecalLock(decal_type type, XYZ where, int whichx, int whichy, float size, float opacity, float rotation);