]> git.mxchange.org Git - quix0rs-blobwars.git/blobdiff - src/finalBattle.cpp
Added .gitignore to ignore certain files + fixed access rights on Makefile* as
[quix0rs-blobwars.git] / src / finalBattle.cpp
index e69b96f92016b4fe6ca98a0dab4584eb30fa366e..bec95120219e24d62b0ac42479e7432b1f463adc 100644 (file)
@@ -1,5 +1,6 @@
 /*
-Copyright (C) 2004 Parallel Realities
+Copyright (C) 2004-2011 Parallel Realities
+Copyright (C) 2011-2015 Perpendicular Dimensions
 
 This program is free software; you can redistribute it and/or
 modify it under the terms of the GNU General Public License
@@ -147,7 +148,7 @@ void galdovInitBlackDroids()
                        map.boss[i] = new Boss();
                }
                debug(("BlackDroid %d init\n", i));
-               strncpy(map.boss[i]->name, "BlackDrod", sizeof map.boss[i]->name);
+               strlcpy(map.boss[i]->name, "BlackDrod", sizeof map.boss[i]->name);
                map.boss[i]->health = -90;
                map.boss[i]->maxHealth = -90;
                map.boss[i]->setSprites(graphics.getSprite("BlackDroidRight", true), graphics.getSprite("BlackDroidLeft", true), graphics.getSprite("BlackDroidDie", true));
@@ -213,7 +214,7 @@ void galdovFinalDropCrystal()
                map.boss[0]->health = 30 * game.skill;
                map.boss[0]->setSprites(graphics.getSprite("GaldovPain", true), graphics.getSprite("GaldovPain", true), graphics.getSprite("GaldovPain", true));
                engine.setInfoMessage("Galdov has dropped the crystal! Quick! Get it!!", 99, INFO_HINT);
-               audio.playSound(SND_BOSSCUSTOM2, CH_AMBIANCE);
+               audio.playSound(SND_BOSSCUSTOM2, CH_AMBIANCE, x);
        }
 }
 
@@ -223,7 +224,7 @@ void galdovFinalDie()
        {
                game.missionOverReason = MIS_GAMECOMPLETE;
                audio.stopMusic();
-               audio.playSound(SND_BOSSCUSTOM3, CH_AMBIANCE);
+               audio.playSound(SND_BOSSCUSTOM3, CH_AMBIANCE, self->x);
                player.health = 10;
                self->dx = 5;
                self->dy = -6;
@@ -465,7 +466,7 @@ void galdovRejoin()
        self->think = &galdovFinalTeleport;
        self->currentWeapon = getRandomGaldovWeapon();
        
-       audio.playSound(SND_BOSSCUSTOM1, CH_AMBIANCE);
+       audio.playSound(SND_BOSSCUSTOM1, CH_AMBIANCE, self->x);
        
        map.setMainBossPart(map.boss[0]);
        
@@ -493,7 +494,7 @@ void galdovFinalSplit()
                if (map.boss[i] == NULL)
                {
                        map.boss[i] = new Boss();
-                       strncpy(map.boss[i]->name, "MiniGaldov", sizeof map.boss[i]->name);
+                       strlcpy(map.boss[i]->name, "MiniGaldov", sizeof map.boss[i]->name);
                        map.boss[i]->health = 10 * game.skill;
                        map.boss[i]->maxHealth = 10 * game.skill;
                }
@@ -527,13 +528,14 @@ void galdovFinalSplit()
                addTeleportParticles(map.boss[i]->x + 10 + map.boss[i]->dx, map.boss[i]->y + 10 + map.boss[i]->dy, 75, -1);
        }
        
+       audio.playSound(SND_BOSSCUSTOM1, CH_AMBIANCE, map.boss[0]->x);
+
        map.boss[0]->place(9999, 9999);
        map.boss[0]->setThinkTime(2);
        map.boss[0]->setActionFinished(Math::rrand(10, 15) * 60);
        map.boss[0]->think = &galdovRejoin;
        map.boss[0]->active = true;
        
-       audio.playSound(SND_BOSSCUSTOM1, CH_AMBIANCE);
        map.setMainBossPart(NULL);
        
        debug(("galdovFinalSplit: Done\n"));
@@ -556,7 +558,7 @@ void galdovFinalInit()
        debug(("galdovFinalInit\n"));
        
        map.boss[0] = new Boss();
-       strncpy(map.boss[0]->name, "Galdov", sizeof map.boss[0]->name);
+       strlcpy(map.boss[0]->name, "Galdov", sizeof map.boss[0]->name);
        map.boss[0]->health = 45 * game.skill;
        map.boss[0]->maxHealth = 45 * game.skill;
        map.boss[0]->setSprites(graphics.getSprite("GaldovRight", true), graphics.getSprite("GaldovLeft", true), graphics.getSprite("GaldovDie", true));
@@ -574,9 +576,9 @@ void galdovFinalInit()
        map.boss[0]->die = &galdovFinalDie;
        Math::addBit(&map.boss[0]->flags, ENT_AIMS);
        
-       audio.loadSound(SND_BOSSCUSTOM1, "sound/galdovSplit.wav");
-       audio.loadSound(SND_BOSSCUSTOM2, "sound/galdovPain.wav");
-       audio.loadSound(SND_BOSSCUSTOM3, "sound/galdovDie.wav");
+       audio.loadSound(SND_BOSSCUSTOM1, "sound/galdovSplit");
+       audio.loadSound(SND_BOSSCUSTOM2, "sound/galdovPain");
+       audio.loadSound(SND_BOSSCUSTOM3, "sound/galdovDie");
        
        map.setMainBossPart(map.boss[0]);
        
@@ -654,13 +656,13 @@ void orbSeekGaldov()
                self->setActionFinished(60);
                self->setThinkTime(60);
                addExplosion(self->x, self->y, 75, &player);
+               audio.playSound(SND_BOSSCUSTOM2, CH_AMBIANCE, self->x);
                self->place(9999, 9999);
                map.boss[0]->setSprites(graphics.getSprite("GaldovPain", true), graphics.getSprite("GaldovPain", true), graphics.getSprite("GaldovPain", true));
                map.boss[0]->think = &galdovFinalPainThrow2;
                map.boss[0]->health -= (3 * game.skill);
                Math::removeBit(&map.boss[0]->flags, ENT_FLIES);
                Math::removeBit(&map.boss[0]->flags, ENT_FIRETRAIL);
-               audio.playSound(SND_BOSSCUSTOM2, CH_AMBIANCE);
        }
 }
 
@@ -680,7 +682,7 @@ void galdovFinalShieldInit()
                        delete map.boss[i];
                }
                map.boss[i] = new Boss();
-               strncpy(map.boss[i]->name, "OrbBomb", sizeof map.boss[i]->name);
+               strlcpy(map.boss[i]->name, "OrbBomb", sizeof map.boss[i]->name);
                map.boss[i]->setSprites(graphics.getSprite("DroidOrb", true), graphics.getSprite("DroidOrb", true), graphics.getSprite("DroidOrb", true));
                map.boss[i]->health = 999999;
                map.boss[i]->maxHealth = 99999;