mirror of
https://github.com/mwpenny/portal64-still-alive.git
synced 2024-10-20 10:37:37 -04:00
Merge pull request #367 from westonCoder/add-music-to-chambers
Added music to appropriate levels
This commit is contained in:
commit
0d21f9818b
|
@ -227,7 +227,7 @@ That will generate the rom at `/build/portal64.z64`
|
|||
|
||||
## Current New Sounds TODO List
|
||||
- [ ] Box collision sounds
|
||||
- [ ] Ambient background loop
|
||||
- [x] Ambient background loop
|
||||
- [x] Unstationary scaffolding moving sound
|
||||
|
||||
## Current Bug TODO List (Hardware Verified) (High->Low priority)
|
||||
|
|
1
assets/sound/music/portal_self_esteem_fund.msox
Normal file
1
assets/sound/music/portal_self_esteem_fund.msox
Normal file
|
@ -0,0 +1 @@
|
|||
-c 1 -r 22050
|
1
assets/sound/music/portal_subject_name_here.msox
Normal file
1
assets/sound/music/portal_subject_name_here.msox
Normal file
|
@ -0,0 +1 @@
|
|||
-c 1 -r 22050
|
1
assets/sound/music/portal_taste_of_blood.msox
Normal file
1
assets/sound/music/portal_taste_of_blood.msox
Normal file
|
@ -0,0 +1 @@
|
|||
-c 1 -r 22050
|
|
@ -9,6 +9,7 @@ cutscenes:
|
|||
- q_sound SOUNDS_01_PART1_ENTRY_1 CH_GLADOS PORTAL_01_PART1_ENTRY_1
|
||||
- q_sound SOUNDS_01_PART1_ENTRY_2 CH_GLADOS PORTAL_01_PART1_ENTRY_2
|
||||
- wait_for_channel CH_GLADOS
|
||||
- q_sound PORTAL_TASTE_OF_BLOOD CH_MUSIC SubtitleKeyNone
|
||||
- set_signal room_0_entrance
|
||||
GET_GUN:
|
||||
- close_portal 1
|
||||
|
|
|
@ -3,6 +3,8 @@ cutscenes:
|
|||
- q_sound SOUNDS_04_PART1_SUCCESS_1 CH_GLADOS PORTAL_04_PART1_SUCCESS_1
|
||||
INTRO_CUTSCENE:
|
||||
- q_sound SOUNDS_04_PART1_ENTRY_1 CH_GLADOS PORTAL_04_PART1_ENTRY_1
|
||||
- wait_for_channel CH_GLADOS
|
||||
- q_sound PORTAL_PROCEDURAL_JIGGLE_BONE CH_MUSIC SubtitleKeyNone
|
||||
DROWN_PLAYER:
|
||||
- kill_player water
|
||||
OPEN_PORTAL:
|
||||
|
|
|
@ -13,6 +13,8 @@ cutscenes:
|
|||
- rumble 2
|
||||
- delay 2
|
||||
- open_portal first_room_portal 0
|
||||
- wait_for_channel CH_GLADOS
|
||||
- q_sound PORTAL_SELF_ESTEEM_FUND CH_MUSIC SubtitleKeyNone
|
||||
OPEN_FIRST_DOOR:
|
||||
- set_signal room_0_exit
|
||||
SECOND_SUCCESS:
|
||||
|
|
|
@ -65,6 +65,8 @@ cutscenes:
|
|||
- q_sound 07_PART1_GET_DEVICE_COMPONENT_1 CH_GLADOS PORTAL_07_PART1_GET_DEVICE_COMPONENT_1
|
||||
- q_sound 07_PART1_GET_DEVICE_COMPONENT_2 CH_GLADOS PORTAL_07_PART1_GET_DEVICE_COMPONENT_2
|
||||
- q_sound 07_PART1_GET_DEVICE_COMPONENT_3 CH_GLADOS PORTAL_07_PART1_GET_DEVICE_COMPONENT_3
|
||||
- wait_for_channel CH_GLADOS
|
||||
- q_sound PORTAL_SUBJECT_NAME_HERE CH_MUSIC SubtitleKeyNone
|
||||
- wait_for_signal trapped
|
||||
- q_sound 07_PART1_TRAPPED_1 CH_GLADOS PORTAL_07_PART1_TRAPPED_1
|
||||
- q_sound 07_PART1_TRAPPED_2 CH_GLADOS PORTAL_07_PART1_TRAPPED_2
|
||||
|
|
|
@ -44,6 +44,7 @@ ALSndId gCutsceneCurrentSound[CH_COUNT];
|
|||
|
||||
float gCutsceneChannelPitch[CH_COUNT] = {
|
||||
[CH_GLADOS] = 0.5f,
|
||||
[CH_MUSIC] = 0.5f,
|
||||
};
|
||||
|
||||
void cutsceneRunnerCancel(struct CutsceneRunner* runner);
|
||||
|
@ -455,20 +456,29 @@ float cutsceneSoundQueueTime(int channel) {
|
|||
|
||||
void cutscenesUpdateSounds() {
|
||||
for (int i = 0; i < CH_COUNT; ++i) {
|
||||
int soundType = SoundTypeNone;
|
||||
int subtitleType = SubtitleTypeNone;
|
||||
if (i == CH_GLADOS){
|
||||
soundType = SoundTypeAll;
|
||||
subtitleType = SubtitleTypeCloseCaption;
|
||||
}else if (i == CH_MUSIC){
|
||||
soundType = SoundTypeMusic;
|
||||
}
|
||||
|
||||
if (!soundPlayerIsPlaying(gCutsceneCurrentSound[i])) {
|
||||
if (gCutsceneSoundQueues[i]) {
|
||||
struct QueuedSound* curr = gCutsceneSoundQueues[i];
|
||||
|
||||
gCutsceneCurrentSound[i] = soundPlayerPlay(curr->soundId, curr->volume, gCutsceneChannelPitch[i], NULL, NULL, SoundTypeAll);
|
||||
hudShowSubtitle(&gScene.hud, curr->subtitleId, SubtitleTypeCloseCaption);
|
||||
gCutsceneCurrentSound[i] = soundPlayerPlay(curr->soundId, curr->volume, gCutsceneChannelPitch[i], NULL, NULL, soundType);
|
||||
hudShowSubtitle(&gScene.hud, curr->subtitleId, subtitleType);
|
||||
|
||||
gCutsceneSoundQueues[i] = curr->next;
|
||||
|
||||
curr->next = gCutsceneNextFreeSound;
|
||||
gCutsceneNextFreeSound = curr;
|
||||
} else {
|
||||
if (gCutsceneCurrentSound[i] != SOUND_ID_NONE) {
|
||||
soundPlayerPlay(soundsIntercom[1], 1.0f, gCutsceneChannelPitch[i], NULL, NULL, SoundTypeAll);
|
||||
if (gCutsceneCurrentSound[i] != SOUND_ID_NONE && i == CH_GLADOS) {
|
||||
soundPlayerPlay(soundsIntercom[1], 1.0f, gCutsceneChannelPitch[i], NULL, NULL, soundType);
|
||||
hudResolveSubtitle(&gScene.hud);
|
||||
}
|
||||
|
||||
|
@ -646,7 +656,7 @@ void cutsceneSerializeRead(struct Serializer* serializer) {
|
|||
}
|
||||
|
||||
void cutsceneQueueSoundInChannel(int soundId, float volume, int channel, int subtitleId) {
|
||||
if (!gCutsceneSoundQueues[channel] && !soundPlayerIsPlaying(gCutsceneCurrentSound[channel])) {
|
||||
if (!gCutsceneSoundQueues[channel] && !soundPlayerIsPlaying(gCutsceneCurrentSound[channel]) && channel == CH_GLADOS) {
|
||||
cutsceneQueueSound(soundsIntercom[0], volume, channel, subtitleId);
|
||||
}
|
||||
|
||||
|
@ -656,7 +666,7 @@ void cutsceneQueueSoundInChannel(int soundId, float volume, int channel, int sub
|
|||
int cutsceneIsSoundQueued(){
|
||||
int soundQueued = 0;
|
||||
for (int i = 0; i < CH_COUNT; ++i) {
|
||||
if(gCutsceneSoundQueues[i] != NULL || gCutsceneCurrentSound[i] != SOUND_ID_NONE){
|
||||
if((gCutsceneSoundQueues[i] != NULL || gCutsceneCurrentSound[i] != SOUND_ID_NONE) && (i == CH_GLADOS)){
|
||||
soundQueued = 1;
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -68,8 +68,9 @@ enum CutscenePromptType {
|
|||
|
||||
#define CH_NONE 0xFF
|
||||
#define CH_GLADOS 0
|
||||
#define CH_MUSIC 1
|
||||
|
||||
#define CH_COUNT 1
|
||||
#define CH_COUNT 2
|
||||
|
||||
struct CutsceneStep {
|
||||
enum CutsceneStepType type;
|
||||
|
|
|
@ -100,7 +100,7 @@ void savefileNew() {
|
|||
gSaveData.controls.subtitleLanguage = 0;
|
||||
|
||||
gSaveData.audio.soundVolume = 0xFFFF;
|
||||
gSaveData.audio.musicVolume = 0xFFFF;
|
||||
gSaveData.audio.musicVolume = 0x8000;
|
||||
gSaveData.audio.audioLanguage = 0;
|
||||
|
||||
controllerSetDeadzone(gSaveData.controls.deadzone * (1.0f / 0xFFFF) * MAX_DEADZONE);
|
||||
|
|
Loading…
Reference in a new issue