Commit b61b06cf authored by mercury233's avatar mercury233

Merge branch 'sound' into link

parents 1cf89afc b8e25078
This diff is collapsed.
......@@ -124,6 +124,7 @@ bool ClientField::OnEvent(const irr::SEvent& event) {
if(mainGame->dInfo.player_type == 7) {
DuelClient::StopClient();
mainGame->dInfo.isStarted = false;
mainGame->dInfo.isFinished = false;
mainGame->device->setEventReceiver(&mainGame->menuHandler);
mainGame->wCardImg->setVisible(false);
mainGame->wInfos->setVisible(false);
......
......@@ -684,13 +684,13 @@ void Game::MainLoop() {
driver->beginScene(true, true, SColor(0, 0, 0, 0));
gMutex.Lock();
if(dInfo.isStarted) {
if(mainGame->showcardcode == 1 || mainGame->showcardcode == 3)
if(mainGame->dInfo.isFinished && mainGame->showcardcode == 1)
PlayBGM(BGM_WIN);
else if(mainGame->showcardcode == 2)
else if(mainGame->dInfo.isFinished && (mainGame->showcardcode == 2 || mainGame->showcardcode == 3))
PlayBGM(BGM_LOSE);
else if(mainGame->dInfo.lp[0] > 0 && mainGame->dInfo.lp[LocalPlayer(0)] <= mainGame->dInfo.lp[LocalPlayer(1)] / 2)
else if(mainGame->dInfo.lp[0] > 0 && mainGame->dInfo.lp[0] <= mainGame->dInfo.lp[1] / 2)
PlayBGM(BGM_DISADVANTAGE);
else if(mainGame->dInfo.lp[0] > 0 && mainGame->dInfo.lp[LocalPlayer(0)] >= mainGame->dInfo.lp[LocalPlayer(1)] * 2)
else if(mainGame->dInfo.lp[0] > 0 && mainGame->dInfo.lp[0] >= mainGame->dInfo.lp[1] * 2)
PlayBGM(BGM_ADVANTAGE);
else
PlayBGM(BGM_DUEL);
......@@ -1210,6 +1210,10 @@ void Game::PlaySoundEffect(int sound) {
engineSound->play2D("./sound/banished.wav");
break;
}
case SOUND_TOKEN: {
engineSound->play2D("./sound/token.wav");
break;
}
case SOUND_ATTACK: {
engineSound->play2D("./sound/attack.wav");
break;
......
......@@ -48,6 +48,7 @@ struct Config {
struct DuelInfo {
bool isStarted;
bool isFinished;
bool isReplay;
bool isReplaySkiping;
bool isFirst;
......@@ -594,6 +595,7 @@ extern Game* mainGame;
#define SOUND_EQUIP 107
#define SOUND_DESTROYED 108
#define SOUND_BANISHED 109
#define SOUND_TOKEN 110
#define SOUND_ATTACK 201
#define SOUND_DIRECT_ATTACK 202
......
......@@ -138,6 +138,7 @@ int ReplayMode::ReplayThread(void* param) {
ReplayRefreshExtra(0);
ReplayRefreshExtra(1);
mainGame->dInfo.isStarted = true;
mainGame->dInfo.isFinished = false;
mainGame->dInfo.isReplay = true;
char engineBuffer[0x1000];
is_continuing = true;
......@@ -179,6 +180,7 @@ int ReplayMode::ReplayThread(void* param) {
mainGame->actionSignal.Wait();
mainGame->gMutex.Lock();
mainGame->dInfo.isStarted = false;
mainGame->dInfo.isFinished = true;
mainGame->dInfo.isReplay = false;
mainGame->gMutex.Unlock();
mainGame->closeDoneSignal.Reset();
......@@ -196,6 +198,7 @@ int ReplayMode::ReplayThread(void* param) {
void ReplayMode::Restart(bool refresh) {
end_duel(pduel);
mainGame->dInfo.isStarted = false;
mainGame->dInfo.isFinished = false;
mainGame->dField.panel = 0;
mainGame->dField.hovered_card = 0;
mainGame->dField.clicked_card = 0;
......
......@@ -84,6 +84,7 @@ int SingleMode::SinglePlayThread(void* param) {
mainGame->dField.Clear();
mainGame->dInfo.isFirst = true;
mainGame->dInfo.isStarted = true;
mainGame->dInfo.isFinished = false;
mainGame->dInfo.isSingleMode = true;
mainGame->device->setEventReceiver(&mainGame->dField);
mainGame->gMutex.Unlock();
......@@ -105,6 +106,7 @@ int SingleMode::SinglePlayThread(void* param) {
if(!is_closing) {
mainGame->gMutex.Lock();
mainGame->dInfo.isStarted = false;
mainGame->dInfo.isFinished = true;
mainGame->dInfo.isSingleMode = false;
mainGame->gMutex.Unlock();
mainGame->closeDoneSignal.Reset();
......
......@@ -7,6 +7,7 @@ reveal.wav
equip.wav
destroyed.wav
banished.wav
token.wav
attack.wav
directattack.wav
draw.wav
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment