diff --git a/sound/235737__copyc4t__tf-power-tools.ogg b/sound/235737__copyc4t__tf-power-tools.ogg new file mode 100644 index 0000000..9392b18 Binary files /dev/null and b/sound/235737__copyc4t__tf-power-tools.ogg differ diff --git a/sound/319996__kenrt__ratchet.ogg b/sound/319996__kenrt__ratchet.ogg new file mode 100644 index 0000000..142f95e Binary files /dev/null and b/sound/319996__kenrt__ratchet.ogg differ diff --git a/sound/383779__jay-you__telephone-dialing.ogg b/sound/383779__jay-you__telephone-dialing.ogg deleted file mode 100644 index 5c1c9cf..0000000 Binary files a/sound/383779__jay-you__telephone-dialing.ogg and /dev/null differ diff --git a/src/defs.h b/src/defs.h index 7754bed..d06d680 100644 --- a/src/defs.h +++ b/src/defs.h @@ -318,6 +318,7 @@ enum SND_TROPHY, SND_ELECTRIC_HIT, SND_ITEM_PAD, + SND_POWER_POOL, SND_MAX }; diff --git a/src/entities/structures/powerPool.c b/src/entities/structures/powerPool.c index 72fbb97..b343944 100644 --- a/src/entities/structures/powerPool.c +++ b/src/entities/structures/powerPool.c @@ -73,6 +73,8 @@ static void tick(void) s->spriteTime = 12; } } + + s->bobTouching = MAX(s->bobTouching - 1, 0); } static void action(void) @@ -101,6 +103,13 @@ static void touch(Entity *other) if (s->active && other->type == ET_BOB && world.bob->power < world.bob->powerMax) { world.bob->power = MIN(world.bob->power + 0.05, world.bob->powerMax); + + if (s->bobTouching == 0) + { + playSound(SND_POWER_POOL, s->uniqueId % MAX_SND_CHANNELS); + } + + s->bobTouching = 2; if (world.bob->power == world.bob->powerMax) { diff --git a/src/entities/structures/powerPool.h b/src/entities/structures/powerPool.h index 1c1aab6..e611d39 100644 --- a/src/entities/structures/powerPool.h +++ b/src/entities/structures/powerPool.h @@ -23,6 +23,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. extern Structure *createStructure(void); extern Sprite *getSprite(char *name); +extern void playSound(int snd, int ch); extern Entity *self; extern World world; diff --git a/src/system/sound.c b/src/system/sound.c index 5c312a8..1ed76f7 100644 --- a/src/system/sound.c +++ b/src/system/sound.c @@ -172,7 +172,8 @@ static void loadSounds(void) sounds[SND_CONFIRMED] = loadSound("sound/39028__wildweasel__cardlock-open.ogg"); sounds[SND_HEART_CELL] = loadSound("sound/162467__kastenfrosch__gotitem.ogg"); sounds[SND_ELECTRIC_HIT] = loadSound("sound/46501__phreaksaccount__welder1.ogg"); - sounds[SND_ITEM_PAD] = loadSound("sound/383779__jay-you__telephone-dialing.ogg"); + sounds[SND_ITEM_PAD] = loadSound("sound/319996__kenrt__ratchet.ogg"); + sounds[SND_POWER_POOL] = loadSound("sound/235737__copyc4t__tf-power-tools.ogg"); sounds[SND_MISSION_COMPLETE] = loadSound("sound/113989__kastenfrosch__gewonnen.ogg"); sounds[SND_TROPHY] = loadSound("sound/278142__ricemaster__effect-notify.ogg");