about summary refs log tree commit diff
path: root/src/GameInitDispose.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/GameInitDispose.cpp')
-rw-r--r--src/GameInitDispose.cpp24
1 files changed, 5 insertions, 19 deletions
diff --git a/src/GameInitDispose.cpp b/src/GameInitDispose.cpp
index b560b48..c2e7a2f 100644
--- a/src/GameInitDispose.cpp
+++ b/src/GameInitDispose.cpp
@@ -23,7 +23,6 @@
 #include <initializer_list>
 
 #include <AL/alc.h>
-#include <GL/glu.h>
 
 #include "Game.h"
 #include "misc.h"
@@ -33,7 +32,6 @@ extern unsigned int gSampleSet[37];
 extern Camera camera;
 extern Skeleton testskeleton;
 extern Sprites sprites;
-extern Decals decals;
 
 extern Model skeletonmodels[10];
 extern Model gunmodels[11];
@@ -213,9 +211,10 @@ void loadModels(Game* game)
 	gunmodels[shotgunmodel] = loadModel("guns/shotgun.off");
 }
 
-Game* makeGame(Config config, Scores scores)
+Game* makeGame(void *decals, Config config, Scores scores)
 {
 	auto game = new Game();
+	game->decals = decals;
 	loadModels(game); // FIXME: free models
 	game->screenwidth = config.width;
 	game->screenheight = config.height;
@@ -718,7 +717,6 @@ void initGame(Game* game)
 	glClearColor(fogcolorr,fogcolorg,fogcolorb,1);
 	game->initialized = true;
 
-	decals.len = 0;
 	sprites.howmanysprites=0;
 	game->losedelay = 1;
 }
@@ -729,6 +727,9 @@ void initGl(Game* game)
 	glDepthFunc(GL_LESS);
 	glPolygonOffset(-8,0);
 	glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
+	glEnable(GL_BLEND);
+	glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP);
+	glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP);
 
 	game->text.texture = loadTexture("font.qoi");
 	buildFont(&game->text);
@@ -743,20 +744,6 @@ void initGl(Game* game)
 	sprites.bloodtextureptr = loadTexture("sprites/blood.qoi");
 	sprites.raintextureptr = loadTexture("sprites/white.qoi");
 	sprites.snowtextureptr = loadTexture("sprites/snowflake.qoi");
-
-	decals.hole_textures[0] = loadTexture("bullet-hole.qoi");
-	decals.hole_textures[1] = loadTexture("black.qoi");
-	decals.blood_textures[0u] = loadTexture("blood/00.qoi");
-	decals.blood_textures[1u] = loadTexture("blood/01.qoi");
-	decals.blood_textures[2u] = loadTexture("blood/02.qoi");
-	decals.blood_textures[3u] = loadTexture("blood/03.qoi");
-	decals.blood_textures[4u] = loadTexture("blood/04.qoi");
-	decals.blood_textures[5u] = loadTexture("blood/05.qoi");
-	decals.blood_textures[6u] = loadTexture("blood/06.qoi");
-	decals.blood_textures[7u] = loadTexture("blood/07.qoi");
-	decals.blood_textures[8u] = loadTexture("blood/08.qoi");
-	decals.blood_textures[9u] = loadTexture("blood/09.qoi");
-	decals.blood_textures[10] = loadTexture("blood/10.qoi");
 }
 
 struct Scores getScores(Game* game)
@@ -800,5 +787,4 @@ void closeGame(Game* game)
 	alDeleteSources(34 + game->musictoggle * 3, gSourceID);
 	alDeleteBuffers(34 + game->musictoggle * 3, gSampleSet);
 	destroyModels(game);
-	destroyDecals(&decals);
 }