diff --git a/.travis.yml b/.travis.yml index ee8290632..e3e70fef7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,19 +7,20 @@ before_install: - export PSPSDK="$PSPDEV/psp/sdk" - export PATH="$PATH:$PSPDEV/bin:$PSPSDK/bin" - export ANDROID="android-sdk-linux/tools/android" -install: -- sudo add-apt-repository ppa:tobydox/mingw -y +- sudo add-apt-repository --yes ppa:ubuntu-sdk-team/ppa - sudo apt-get update -qq -- if [ `uname -m` = x86_64 ]; then sudo apt-get install -qq --force-yes libgd2-xpm ia32-libs ia32-libs-multiarch jq mingw32-x-gcc mingw32-x-qt; fi -- sudo ln -s /opt/mingw32/bin/moc /opt/mingw32/bin/i686-w64-mingw32-moc +- if [ `uname -m` = x86_64 ]; then sudo apt-get install -qq --force-yes libgd2-xpm ia32-libs ia32-libs-multiarch jq; fi +- sudo apt-get install -qq qt5-qmake qtbase5-dev qtdeclarative5-dev qttools5-dev qtmultimedia5-dev pulseaudio libpulse-dev +- export QMAKE="qmake -qt=qt5" - wget -O sdk.lzma http://sourceforge.net/projects/minpspw/files/SDK%20%2B%20devpak/pspsdk%200.11.2/minpspw_0.11.2-amd64.tar.lzma/download -- tar -x --xz -f sdk.lzma - wget http://dl.google.com/android/ndk/android-ndk-r9-linux-x86_64.tar.bz2 -nv -- wget http://dl.google.com/android/android-sdk_r22-linux.tgz -nv +- wget http://dl.google.com/android/android-sdk_r23.0.2-linux.tgz -nv +install: +- tar -x --xz -f sdk.lzma - tar --absolute-names -jxf android-ndk-r9-linux-x86_64.tar.bz2 -- tar -zxf android-sdk_r22-linux.tgz +- tar -zxf android-sdk_r23.0.2-linux.tgz - $ANDROID list sdk --extended -a -- echo yes | $ANDROID update sdk -a --filter "tools","platform-tools","build-tools-19.0.1","android-10" --no-ui --force > log.txt +- echo yes | $ANDROID update sdk --filter tools,platform-tools,build-tools-20.0.0,android-10 --no-ui --force --no-https - sudo pip install pyjavaproperties script: ./travis-script.sh env: diff --git a/JGE/include/JSoundSystem.h b/JGE/include/JSoundSystem.h index 93fe4f1e3..5b50b023c 100644 --- a/JGE/include/JSoundSystem.h +++ b/JGE/include/JSoundSystem.h @@ -23,28 +23,32 @@ #include "SLES/OpenSLES_Android.h" #elif defined USE_PHONON - #include - #include +#include +#include +#elif (defined QT_CONFIG) +#include "QMediaPlayer" +#include "QMediaPlaylist" +#include "QSoundEffect" #elif defined WIN32 - #include +#include #define WITH_FMOD #elif defined (PSP) - #include - #include - #include - #include - #include - #include - #include - #include - #include +#include +#include +#include +#include +#include +#include +#include +#include +#include - #include "JAudio.h" - #include "JMP3.h" +#include "JAudio.h" +#include "JMP3.h" #endif #ifdef WITH_FMOD - #include "../Dependencies/include/fmod.h" +#include "../Dependencies/include/fmod.h" #endif //------------------------------------------------------------------------------------------------ @@ -67,7 +71,7 @@ public: #ifdef USE_PHONON Phonon::AudioOutput* mOutput; Phonon::MediaObject* mMediaObject; - public slots: +public slots: void seekAtTheBegining(); #elif defined (PSP) JMP3* mTrack; @@ -82,6 +86,10 @@ public: SLPlayItf playInterface; SLSeekItf seekInterface; SLVolumeItf musicVolumeInterface; +#elif (defined QT_CONFIG) + QMediaPlaylist* playlist; + QMediaPlayer* player; + string fullpath; #else void* mTrack; #endif //WITH_FMOD @@ -92,13 +100,16 @@ public: //------------------------------------------------------------------------------------------------ class JSample { - public: +public: JSample(); ~JSample(); unsigned long fileSize(); - -#if defined (PSP) +#if (defined QT_CONFIG) + QMediaPlayer* effect; +// QSoundEffect effect; + void* mSample; +#elif defined (PSP) WAVDATA *mSample; #elif defined (IOS) std::string filename; @@ -133,126 +144,128 @@ class JSoundSystem public: - ////////////////////////////////////////////////////////////////////////// - /// Get the singleton instance - /// - ////////////////////////////////////////////////////////////////////////// - static JSoundSystem* GetInstance(); + ////////////////////////////////////////////////////////////////////////// + /// Get the singleton instance + /// + ////////////////////////////////////////////////////////////////////////// + static JSoundSystem* GetInstance(); - static void Destroy(); + static void Destroy(); - ////////////////////////////////////////////////////////////////////////// - /// Load music. - /// - /// @note MP3 is the only supported format for the moment. - /// - /// @param filename - Name of the music file. - /// - ////////////////////////////////////////////////////////////////////////// - JMusic *LoadMusic(const char *fileName); + ////////////////////////////////////////////////////////////////////////// + /// Load music. + /// + /// @note MP3 is the only supported format for the moment. + /// + /// @param filename - Name of the music file. + /// + ////////////////////////////////////////////////////////////////////////// + JMusic *LoadMusic(const char *fileName); - ////////////////////////////////////////////////////////////////////////// - /// Delete music from memory. - /// - /// @param music - Music to be deleted. - /// - ////////////////////////////////////////////////////////////////////////// - //void FreeMusic(JMusic *music); + ////////////////////////////////////////////////////////////////////////// + /// Delete music from memory. + /// + /// @param music - Music to be deleted. + /// + ////////////////////////////////////////////////////////////////////////// + //void FreeMusic(JMusic *music); - ////////////////////////////////////////////////////////////////////////// - /// Play music. - /// - /// @param music - Music to be played. - /// @param looping - Play the music in a loop. - /// - ////////////////////////////////////////////////////////////////////////// - void PlayMusic(JMusic *music, bool looping = false); + ////////////////////////////////////////////////////////////////////////// + /// Play music. + /// + /// @param music - Music to be played. + /// @param looping - Play the music in a loop. + /// + ////////////////////////////////////////////////////////////////////////// + void PlayMusic(JMusic *music, bool looping = false); - ////////////////////////////////////////////////////////////////////////// - /// Stop playing. - /// - /// @param music - Music to be stopped. - /// - ////////////////////////////////////////////////////////////////////////// - void StopMusic(JMusic *music); + ////////////////////////////////////////////////////////////////////////// + /// Stop playing. + /// + /// @param music - Music to be stopped. + /// + ////////////////////////////////////////////////////////////////////////// + void StopMusic(JMusic *music); - ////////////////////////////////////////////////////////////////////////// - /// Resume playing. - /// - /// @param music - Music to be resumed. - /// - ////////////////////////////////////////////////////////////////////////// - void ResumeMusic(JMusic *music); + ////////////////////////////////////////////////////////////////////////// + /// Resume playing. + /// + /// @param music - Music to be resumed. + /// + ////////////////////////////////////////////////////////////////////////// + void ResumeMusic(JMusic *music); - ////////////////////////////////////////////////////////////////////////// - /// Pause playing. - /// - /// @param music - Music to be paused. - /// - ////////////////////////////////////////////////////////////////////////// - void PauseMusic(JMusic *music); + ////////////////////////////////////////////////////////////////////////// + /// Pause playing. + /// + /// @param music - Music to be paused. + /// + ////////////////////////////////////////////////////////////////////////// + void PauseMusic(JMusic *music); - ////////////////////////////////////////////////////////////////////////// - /// Load sound effect. - /// - /// @note WAV sound effect only. - /// - /// @param fileName - Sound effect for loading. - /// - ////////////////////////////////////////////////////////////////////////// - JSample *LoadSample(const char *fileName); + ////////////////////////////////////////////////////////////////////////// + /// Load sound effect. + /// + /// @note WAV sound effect only. + /// + /// @param fileName - Sound effect for loading. + /// + ////////////////////////////////////////////////////////////////////////// + JSample *LoadSample(const char *fileName); - ////////////////////////////////////////////////////////////////////////// - /// Delete sound effect from memory. - /// - /// @param sample - Sound to be deleted. - /// - ////////////////////////////////////////////////////////////////////////// - //void FreeSample(JSample *sample); + ////////////////////////////////////////////////////////////////////////// + /// Delete sound effect from memory. + /// + /// @param sample - Sound to be deleted. + /// + ////////////////////////////////////////////////////////////////////////// + //void FreeSample(JSample *sample); - ////////////////////////////////////////////////////////////////////////// - /// Play sound effect. - /// - /// @param sample - Sound for playing. - /// - ////////////////////////////////////////////////////////////////////////// - void PlaySample(JSample *sample); + ////////////////////////////////////////////////////////////////////////// + /// Play sound effect. + /// + /// @param sample - Sound for playing. + /// + ////////////////////////////////////////////////////////////////////////// + void PlaySample(JSample *sample); - ////////////////////////////////////////////////////////////////////////// - /// Set volume for audio playback. - /// - /// @param volume - New volume. - /// - ////////////////////////////////////////////////////////////////////////// - void SetVolume(int volume); + ////////////////////////////////////////////////////////////////////////// + /// Set volume for audio playback. + /// + /// @param volume - New volume. + /// + ////////////////////////////////////////////////////////////////////////// + void SetVolume(int volume); - void SetMusicVolume(int volume); + void SetMusicVolume(int volume); - void SetSfxVolume(int volume); + void SetSfxVolume(int volume); - int mChannel; + int mChannel; protected: - JSoundSystem(); - ~JSoundSystem(); + JSoundSystem(); + ~JSoundSystem(); - void InitSoundSystem(); - void DestroySoundSystem(); + void InitSoundSystem(); + void DestroySoundSystem(); private: - - JMusic *mCurrentMusic; +#if (defined PSP || defined ANDROID) + JMusic *mCurrentMusic; JSample *mCurrentSample; +#endif - int mVolume; - int mMusicVolume; - int mSampleVolume; + int mVolume; + int mMusicVolume; + int mSampleVolume; - static JSoundSystem* mInstance; + static JSoundSystem* mInstance; }; #endif + diff --git a/JGE/include/qt/corewrapper.h b/JGE/include/qt/corewrapper.h index cd019c6a7..284a878aa 100644 --- a/JGE/include/qt/corewrapper.h +++ b/JGE/include/qt/corewrapper.h @@ -137,14 +137,14 @@ private slots: private: int lastPosx(){ -#if QT_VERSION >= 0x050000 +#if QT_VERSION >= 0x050100 return m_lastPos.x()*devicePixelRatio(); #else return m_lastPos.x(); #endif } int lastPosy(){ -#if QT_VERSION >= 0x050000 +#if QT_VERSION >= 0x050100 return m_lastPos.y()*devicePixelRatio(); #else return m_lastPos.y(); diff --git a/JGE/src/pc/JSfx.cpp b/JGE/src/pc/JSfx.cpp index 4977bc831..f7d08e3ba 100644 --- a/JGE/src/pc/JSfx.cpp +++ b/JGE/src/pc/JSfx.cpp @@ -22,6 +22,8 @@ JMusic::JMusic() #ifdef USE_PHONON : mOutput(0), mMediaObject(0) +#elif defined QT_CONFIG + : playlist(0), player(0) #endif { } @@ -40,7 +42,12 @@ int JMusic::getPlayTime(){ JMusic::~JMusic() { -#ifdef USE_PHONON +#ifdef QT_CONFIG + if(player) + delete player; + if(playlist) + delete playlist; +#elif defined USE_PHONON if(mOutput) delete mOutput; if(mMediaObject) @@ -69,7 +76,10 @@ JSample::JSample() JSample::~JSample() { -#ifdef USE_PHONON +#ifdef QT_CONFIG + if(effect) + delete effect; +#elif USE_PHONON if(mOutput) delete mOutput; if(mMediaObject) @@ -144,65 +154,84 @@ void JSoundSystem::DestroySoundSystem() JMusic *JSoundSystem::LoadMusic(const char *fileName) { -#ifdef USE_PHONON - JMusic* music = new JMusic(); - if (music) - { - music->mOutput = new Phonon::AudioOutput(Phonon::GameCategory, 0); - music->mMediaObject = new Phonon::MediaObject(0); - string fullpath = JFileSystem::GetInstance()->GetResourceFile(fileName); - music->mMediaObject->setCurrentSource(QString(fullpath.c_str())); - Phonon::Path mediapath = Phonon::createPath(music->mMediaObject, music->mOutput); - Q_ASSERT(mediapath.isValid()); - } - return music; -#elif (defined WITH_FMOD) - JMusic* music = new JMusic(); - if (music) + JMusic* music = NULL; +#ifdef QT_CONFIG + music = new JMusic(); + if (music) { - JFileSystem* fileSystem = JFileSystem::GetInstance(); - if (fileSystem->OpenFile(fileName)) - { - int size = fileSystem->GetFileSize(); - char *buffer = new char[size]; - fileSystem->ReadFile(buffer, size); - music->mTrack = FSOUND_Sample_Load(FSOUND_UNMANAGED, buffer, FSOUND_LOADMEMORY, 0, size); - - delete[] buffer; - fileSystem->CloseFile(); - } + music->player = new QMediaPlayer; + music->player->setVolume(100); + music->playlist = new QMediaPlaylist; + music->fullpath = JFileSystem::GetInstance()->GetResourceFile(fileName); + music->playlist->addMedia(QUrl::fromLocalFile(music->fullpath.c_str())); + music->playlist->setCurrentIndex(0); + } +#elif defined USE_PHONON + music = new JMusic(); + if (music) + { + music->mOutput = new Phonon::AudioOutput(Phonon::GameCategory, 0); + music->mMediaObject = new Phonon::MediaObject(0); + string fullpath = JFileSystem::GetInstance()->GetResourceFile(fileName); + music->mMediaObject->setCurrentSource(QString(fullpath.c_str())); + Phonon::Path mediapath = Phonon::createPath(music->mMediaObject, music->mOutput); + Q_ASSERT(mediapath.isValid()); + } +#elif (defined WITH_FMOD) + music = new JMusic(); + if (music) + { + JFileSystem* fileSystem = JFileSystem::GetInstance(); + if (fileSystem->OpenFile(fileName)) + { + int size = fileSystem->GetFileSize(); + char *buffer = new char[size]; + fileSystem->ReadFile(buffer, size); + music->mTrack = FSOUND_Sample_Load(FSOUND_UNMANAGED, buffer, FSOUND_LOADMEMORY, 0, size); + + delete[] buffer; + fileSystem->CloseFile(); + } } - return music; #else cerr << fileName << endl; - return NULL; #endif + return music; } void JSoundSystem::PlayMusic(JMusic *music, bool looping) { -#ifdef USE_PHONON - if (music && music->mMediaObject && music->mOutput) - { - if(looping) +#ifdef QT_CONFIG + if(music && music->player && music->playlist) { - music->mMediaObject->connect(music->mMediaObject, SIGNAL(aboutToFinish()), music, SLOT(seekAtTheBegining())); + if(looping) + music->playlist->setPlaybackMode(QMediaPlaylist::Loop); + + music->player->setPlaylist(music->playlist); + music->player->play(); } - music->mOutput->setVolume((qreal)mVolume*0.01); - music->mMediaObject->play(); - - } -#elif (defined WITH_FMOD) - if (music && music->mTrack) +#elif USE_PHONON + if (music && music->mMediaObject && music->mOutput) { - mChannel = FSOUND_PlaySound(mChannel, music->mTrack); - SetMusicVolume(mVolume); + if(looping) + { + music->mMediaObject->connect(music->mMediaObject, SIGNAL(aboutToFinish()), music, SLOT(seekAtTheBegining())); + } + music->mOutput->setVolume((qreal)mVolume*0.01); + music->mMediaObject->play(); - if (looping) - FSOUND_SetLoopMode(mChannel, FSOUND_LOOP_NORMAL); - else - FSOUND_SetLoopMode(mChannel, FSOUND_LOOP_OFF); + } +#elif (defined WITH_FMOD) + if (music && music->mTrack) + { + mChannel = FSOUND_PlaySound(mChannel, music->mTrack); + SetMusicVolume(mVolume); + + if (looping) + FSOUND_SetLoopMode(mChannel, FSOUND_LOOP_NORMAL); + else + FSOUND_SetLoopMode(mChannel, FSOUND_LOOP_OFF); } #else music = 0; @@ -213,7 +242,12 @@ void JSoundSystem::PlayMusic(JMusic *music, bool looping) void JSoundSystem::StopMusic(JMusic *music) { -#ifdef USE_PHONON +#ifdef QT_CONFIG + if (music && music->player && music->playlist) + { + music->player->stop(); + } +#elif defined USE_PHONON if (music && music->mMediaObject && music->mOutput) { music->mMediaObject->stop(); @@ -264,47 +298,61 @@ void JSoundSystem::SetSfxVolume(int volume){ JSample *JSoundSystem::LoadSample(const char *fileName) { -#if (defined USE_PHONON) - JSample* sample = new JSample(); - if (sample) - { - sample->mOutput = new Phonon::AudioOutput(Phonon::GameCategory, 0); - sample->mMediaObject = new Phonon::MediaObject(0); - string fullpath = JFileSystem::GetInstance()->GetResourceFile(fileName); - sample->mMediaObject->setCurrentSource(QString(fullpath.c_str())); - Phonon::Path mediapath = Phonon::createPath(sample->mMediaObject, sample->mOutput); - Q_ASSERT(mediapath.isValid()); - } - return sample; -#elif (defined WITH_FMOD) - JSample* sample = new JSample(); - if (sample) + JSample* sample = NULL; +#ifdef QT_CONFIG + sample = new JSample(); + if (sample) { - JFileSystem* fileSystem = JFileSystem::GetInstance(); - if (fileSystem->OpenFile(fileName)) - { - int size = fileSystem->GetFileSize(); - char *buffer = new char[size]; - fileSystem->ReadFile(buffer, size); - sample->mSample = FSOUND_Sample_Load(FSOUND_UNMANAGED, buffer, FSOUND_LOADMEMORY, 0, size); + string fullpath = JFileSystem::GetInstance()->GetResourceFile(fileName); + sample->effect = new QMediaPlayer; + sample->effect->setMedia(QUrl::fromLocalFile(fullpath.c_str())); + sample->effect->setVolume(100); + sample->mSample = &(sample->effect); + } +#elif (defined USE_PHONON) + sample = new JSample(); + if (sample) + { + sample->mOutput = new Phonon::AudioOutput(Phonon::GameCategory, 0); + sample->mMediaObject = new Phonon::MediaObject(0); + string fullpath = JFileSystem::GetInstance()->GetResourceFile(fileName); + sample->mMediaObject->setCurrentSource(QString(fullpath.c_str())); + Phonon::Path mediapath = Phonon::createPath(sample->mMediaObject, sample->mOutput); + Q_ASSERT(mediapath.isValid()); + } +#elif (defined WITH_FMOD) + sample = new JSample(); + if (sample) + { + JFileSystem* fileSystem = JFileSystem::GetInstance(); + if (fileSystem->OpenFile(fileName)) + { + int size = fileSystem->GetFileSize(); + char *buffer = new char[size]; + fileSystem->ReadFile(buffer, size); + sample->mSample = FSOUND_Sample_Load(FSOUND_UNMANAGED, buffer, FSOUND_LOADMEMORY, 0, size); - delete[] buffer; - fileSystem->CloseFile(); - }else - sample->mSample = NULL; + delete[] buffer; + fileSystem->CloseFile(); + }else + sample->mSample = NULL; } - return sample; #else cerr << fileName << endl; - return NULL; #endif + return sample; } void JSoundSystem::PlaySample(JSample *sample) { -#ifdef USE_PHONON +#ifdef QT_CONFIG + if(sample) + { + sample->effect->play(); + } +#elif defined USE_PHONON if (sample && sample->mMediaObject && sample->mOutput) { sample->mOutput->setVolume((qreal)mSampleVolume*0.01); diff --git a/README.md b/README.md index 1ac0bfee0..f3eea73d2 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,8 @@ [![Build Status](https://travis-ci.org/WagicProject/wagic.png?branch=master)](https://travis-ci.org/WagicProject/wagic) +[![Build status](https://ci.appveyor.com/api/projects/status/7j4fbr6m62aqej59/branch/master)](https://ci.appveyor.com/project/xawotihs/wagic/branch/master) + ## Description @@ -19,3 +21,8 @@ It is highly customizable and allows the player to tweak the rules / create thei Info, downloads, discussions and more at http://wololo.net/forum/index.php -![alt text](http://wololo.net/wagic/wp-content/uploads/2009/10/shop.jpg "Screenshot") + + + +### Sample round play-through video +[![IMAGE ALT TEXT HERE](http://img.youtube.com/vi/WUFSAPZuDIk/0.jpg)](http://www.youtube.com/watch?v=WUFSAPZuDIk) diff --git a/projects/mtg/Android/jni/Android.mk b/projects/mtg/Android/jni/Android.mk index 31f425266..563b80b63 100644 --- a/projects/mtg/Android/jni/Android.mk +++ b/projects/mtg/Android/jni/Android.mk @@ -57,7 +57,6 @@ LOCAL_SRC_FILES := $(SDL_PATH)/src/main/android/SDL_android_main.cpp \ $(MTG_PATH)/src/DeckMetaData.cpp \ $(MTG_PATH)/src/DeckStats.cpp \ $(MTG_PATH)/src/DuelLayers.cpp \ - $(MTG_PATH)/src/Effects.cpp \ $(MTG_PATH)/src/ExtraCost.cpp \ $(MTG_PATH)/src/GameApp.cpp \ $(MTG_PATH)/src/GameLauncher.cpp \ diff --git a/projects/mtg/Makefile b/projects/mtg/Makefile index a5db9bda5..7b53ff162 100644 --- a/projects/mtg/Makefile +++ b/projects/mtg/Makefile @@ -6,7 +6,7 @@ OBJS = objs/InteractiveButton.o objs/AbilityParser.o objs/ActionElement.o\ objs/Counters.o objs/Credits.o objs/Damage.o objs/DamagerDamaged.o\ objs/DeckDataWrapper.o objs/DeckEditorMenu.o objs/DeckMenu.o\ objs/DeckMenuItem.o objs/DeckMetaData.o objs/DeckStats.o objs/DuelLayers.o\ - objs/Effects.o objs/ExtraCost.o objs/GameApp.o objs/GameLauncher.o\ + objs/ExtraCost.o objs/GameApp.o objs/GameLauncher.o\ objs/GameObserver.o objs/GameOptions.o objs/GameState.o\ objs/GameStateAwards.o objs/GameStateDeckViewer.o objs/GameStateDuel.o\ objs/DeckManager.o objs/GameStateMenu.o objs/GameStateOptions.o\ @@ -128,7 +128,7 @@ clean: endif define compile -$(CXX) -c $(CXXFLAGS) $< -o $@ +$(CXX) -c $(CXXFLAGS) $< -o $@ endef PrecompiledHeader.h.gch: ../../projects/mtg/include/PrecompiledHeader.h diff --git a/projects/mtg/include/ActionStack.h b/projects/mtg/include/ActionStack.h index 06e7f2afe..7a3bdde16 100644 --- a/projects/mtg/include/ActionStack.h +++ b/projects/mtg/include/ActionStack.h @@ -72,7 +72,7 @@ public: } Interruptible(GameObserver* observer, int inID = 0, bool hasFocus = false) - : PlayGuiObject(40, x, y, inID, hasFocus), Targetable(observer), state(NOT_RESOLVED), display(0), source(NULL) + : PlayGuiObject(40, 0.0f, 0.0f, inID, hasFocus), Targetable(observer), state(NOT_RESOLVED), display(0), source(NULL) { } diff --git a/projects/mtg/include/Effects.h b/projects/mtg/include/Effects.h deleted file mode 100644 index 248e22a3c..000000000 --- a/projects/mtg/include/Effects.h +++ /dev/null @@ -1,13 +0,0 @@ -#ifndef _EFFECTS_H_ -#define _EFFECTS_H_ - -#include - -class Effect: public JGuiObject -{ - static int id_counter; -public: - Effect() : JGuiObject(++id_counter) {}; -}; - -#endif // _EFFECTS_H_ diff --git a/projects/mtg/include/PlayGuiObject.h b/projects/mtg/include/PlayGuiObject.h index 5855c2884..c09d1a4c8 100644 --- a/projects/mtg/include/PlayGuiObject.h +++ b/projects/mtg/include/PlayGuiObject.h @@ -12,7 +12,6 @@ #define GUI_OPPONENTHAND 5 #include -#include "Effects.h" #include "WEvent.h" #include "Pos.h" @@ -65,7 +64,6 @@ public: } ; virtual ~PlayGuiObject() {}; - vector effects; }; #endif diff --git a/projects/mtg/src/Effects.cpp b/projects/mtg/src/Effects.cpp deleted file mode 100644 index 50056df0d..000000000 --- a/projects/mtg/src/Effects.cpp +++ /dev/null @@ -1,3 +0,0 @@ -#include "../include/Effects.h" - -int Effect::id_counter = 0; diff --git a/projects/mtg/src/PlayGuiObject.cpp b/projects/mtg/src/PlayGuiObject.cpp index 5d84ca3a8..56069802a 100644 --- a/projects/mtg/src/PlayGuiObject.cpp +++ b/projects/mtg/src/PlayGuiObject.cpp @@ -38,13 +38,9 @@ void PlayGuiObject::Update(float dt) if (mHeight < defaultHeight) mHeight = defaultHeight; } wave = (wave + 2 * (int) (100 * dt)) % 255; - for (vector::iterator it = effects.begin(); it != effects.end(); ++it) - (*it)->Update(dt); Pos::Update(dt); } void PlayGuiObject::Render() { - for (vector::iterator it = effects.begin(); it != effects.end(); ++it) - (*it)->Render(); } diff --git a/projects/mtg/template.vcxproj b/projects/mtg/template.vcxproj index 74ceda7ba..87e563df3 100644 --- a/projects/mtg/template.vcxproj +++ b/projects/mtg/template.vcxproj @@ -495,7 +495,6 @@ - @@ -594,4 +593,4 @@ - \ No newline at end of file + diff --git a/projects/mtg/template.vcxproj.filters b/projects/mtg/template.vcxproj.filters index 0f1a9e0d0..db78d6cfd 100644 --- a/projects/mtg/template.vcxproj.filters +++ b/projects/mtg/template.vcxproj.filters @@ -420,9 +420,6 @@ inc - - inc - inc @@ -731,4 +728,4 @@ res - \ No newline at end of file + diff --git a/projects/mtg/wagic-qt.pro b/projects/mtg/wagic-qt.pro index 487557c3f..9c547d11a 100644 --- a/projects/mtg/wagic-qt.pro +++ b/projects/mtg/wagic-qt.pro @@ -5,7 +5,7 @@ addExclusiveBuilds(graphics, Graphics, console, Console) INCLUDEPATH += ../../JGE/include/qt CONFIG(console, graphics|console){ - QT += core network + QT += core network multimedia QT -= gui DEFINES += CONSOLE_CONFIG @@ -17,7 +17,7 @@ else:CONFIG(graphics, graphics|console){ folder_01.source = qml/QmlWagic folder_01.target = /usr/share DEPLOYMENTFOLDERS = folder_01 - QT += core gui opengl network + QT += core gui opengl network multimedia QT -= declarative quick qml #maemo5:DEFINES += QT_WIDGET DEFINES += QT_WIDGET @@ -46,6 +46,7 @@ CONFIG(graphics, graphics|console){ ../../JGE/src/qt/corewrapper.cpp\ ../../JGE/src/Qtmain.cpp\ ../../JGE/src/JMD2Model.cpp\ + ../../JGE/src/pc/JSfx.cpp\ ../../JGE/src/pc/JGfx.cpp } else:CONFIG(console, graphics|console){ @@ -54,6 +55,7 @@ else:CONFIG(console, graphics|console){ SOURCES += \ ../../JGE/src/OutputCapturer.cpp\ + ../../JGE/src/pc/JSfx.cpp\ ../../JGE/src/JGfx-fake.cpp\ ../../JGE/src/Qtconsole.cpp\ } diff --git a/projects/mtg/wagic.pri b/projects/mtg/wagic.pri index 85ea223a2..7360f681e 100644 --- a/projects/mtg/wagic.pri +++ b/projects/mtg/wagic.pri @@ -11,6 +11,7 @@ unix:!*macx*:QMAKE_CXXFLAGS += -Wno-unused-local-typedefs unix:!*macx*:!maemo5:!symbian:QMAKE_CXXFLAGS += -Werror windows:DEFINES += _CRT_SECURE_NO_WARNINGS +windows|winrt:DEFINES += NOMINMAX unix|macx:DEFINES += LINUX CONFIG(debug, debug|release) { DEFINES += _DEBUG @@ -32,6 +33,7 @@ windows{ *-msvc* { INCLUDEPATH += extra DEFINES += WIN32 + DEFINES += FORCE_GL2 } } macx:INCLUDEPATH += /opt/include @@ -41,7 +43,6 @@ INCLUDEPATH += ../../Boost INCLUDEPATH += include unix:!symbian:LIBS += -lz -windows:LIBS += ../../JGE/Dependencies/lib/fmodvc.lib windows:LIBS += ../../JGE/Dependencies/lib/zlibd.lib PRECOMPILED_HEADER = include/PrecompiledHeader.h @@ -80,7 +81,6 @@ SOURCES += \ src/DeckStats.cpp\ src/DeckView.cpp\ src/DuelLayers.cpp\ - src/Effects.cpp\ src/ExtraCost.cpp\ src/GameApp.cpp\ src/GameLauncher.cpp\ @@ -271,7 +271,6 @@ HEADERS += \ include/WResourceManager.h\ include/DuelLayers.h\ include/GuiStatic.h\ - include/Effects.h\ include/StyleManager.h\ include/WFont.h\ include/DeckManager.h\ @@ -303,7 +302,6 @@ SOURCES += \ ../../JGE/src/JSpline.cpp\ ../../JGE/src/JNetwork.cpp\ ../../JGE/src/pc/JSocket.cpp\ - ../../JGE/src/pc/JSfx.cpp\ ../../JGE/src/JSprite.cpp\ ../../JGE/src/Vector2D.cpp\ ../../JGE/src/tinyxml/tinystr.cpp\ diff --git a/projects/mtg/wagic.xcodeproj/project.pbxproj b/projects/mtg/wagic.xcodeproj/project.pbxproj index 6f4b9057d..d951b708e 100755 --- a/projects/mtg/wagic.xcodeproj/project.pbxproj +++ b/projects/mtg/wagic.xcodeproj/project.pbxproj @@ -67,7 +67,6 @@ 12059DA814980B7300DAC43B /* AllAbilities.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA376F41291C60500B9016A /* AllAbilities.cpp */; }; 12059DA914980B7300DAC43B /* CardDescriptor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA376F51291C60500B9016A /* CardDescriptor.cpp */; }; 12059DAA14980B7300DAC43B /* CardDisplay.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA376F61291C60500B9016A /* CardDisplay.cpp */; }; - 12059DAB14980B7300DAC43B /* CardEffect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA376F71291C60500B9016A /* CardEffect.cpp */; }; 12059DAC14980B7300DAC43B /* CardGui.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA376F81291C60500B9016A /* CardGui.cpp */; }; 12059DAD14980B7300DAC43B /* CardPrimitive.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA376F91291C60500B9016A /* CardPrimitive.cpp */; }; 12059DAE14980B7300DAC43B /* CardSelector.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA376FA1291C60500B9016A /* CardSelector.cpp */; }; @@ -85,7 +84,6 @@ 12059DBA14980B7300DAC43B /* DeckMetaData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA377061291C60500B9016A /* DeckMetaData.cpp */; }; 12059DBB14980B7300DAC43B /* DeckStats.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA377071291C60500B9016A /* DeckStats.cpp */; }; 12059DBC14980B7300DAC43B /* DuelLayers.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA377081291C60500B9016A /* DuelLayers.cpp */; }; - 12059DBD14980B7300DAC43B /* Effects.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA377091291C60500B9016A /* Effects.cpp */; }; 12059DBE14980B7300DAC43B /* ExtraCost.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA3770A1291C60500B9016A /* ExtraCost.cpp */; }; 12059DBF14980B7300DAC43B /* GameApp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA3770B1291C60500B9016A /* GameApp.cpp */; }; 12059DC014980B7300DAC43B /* GameLauncher.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA3770C1291C60500B9016A /* GameLauncher.cpp */; }; @@ -198,7 +196,6 @@ 12059E4A14980B7300DAC43B /* libstdc++.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 12D095E014417D0500F69056 /* libstdc++.dylib */; settings = {ATTRIBUTES = (Weak, ); }; }; 12059E4B14980B7300DAC43B /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 12211EBA14934A2C00641703 /* CFNetwork.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; 12059E4C14980B7300DAC43B /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 12211EB814934A1800641703 /* MobileCoreServices.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; - 12059E4D14980B7300DAC43B /* libGoogleAdMobAds.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 128ED379148BAE7B00C58E83 /* libGoogleAdMobAds.a */; settings = {ATTRIBUTES = (Weak, ); }; }; 12059E4E14980B7300DAC43B /* libc++abi.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 1216D632148F7411000F2295 /* libc++abi.dylib */; settings = {ATTRIBUTES = (Weak, ); }; }; 12059E4F14980B7300DAC43B /* libsqlite3.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 128ED50F148BCC1900C58E83 /* libsqlite3.dylib */; settings = {ATTRIBUTES = (Weak, ); }; }; 12059E5014980B7300DAC43B /* iAd.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 129654D0148A52730031100B /* iAd.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; @@ -217,7 +214,6 @@ 12059E5D14980B7300DAC43B /* MapKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 128ED50B148BCBBC00C58E83 /* MapKit.framework */; }; 12059E5E14980B7300DAC43B /* MediaPlayer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 128ED518148BF0E000C58E83 /* MediaPlayer.framework */; }; 1216D633148F7411000F2295 /* libc++abi.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 1216D632148F7411000F2295 /* libc++abi.dylib */; settings = {ATTRIBUTES = (Weak, ); }; }; - 1216D634148F747D000F2295 /* libGoogleAdMobAds.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 128ED379148BAE7B00C58E83 /* libGoogleAdMobAds.a */; settings = {ATTRIBUTES = (Weak, ); }; }; 12211E7914931CBB00641703 /* ASIAuthenticationDialog.m in Sources */ = {isa = PBXBuildFile; fileRef = 12211E2814931CBB00641703 /* ASIAuthenticationDialog.m */; }; 12211E7A14931CBB00641703 /* ASIDataCompressor.m in Sources */ = {isa = PBXBuildFile; fileRef = 12211E2B14931CBB00641703 /* ASIDataCompressor.m */; }; 12211E7B14931CBB00641703 /* ASIDataDecompressor.m in Sources */ = {isa = PBXBuildFile; fileRef = 12211E2D14931CBB00641703 /* ASIDataDecompressor.m */; }; @@ -285,6 +281,9 @@ 1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; }; 28FD15000DC6FC520079059D /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 28FD14FF0DC6FC520079059D /* OpenGLES.framework */; }; 28FD15080DC6FC5B0079059D /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 28FD15070DC6FC5B0079059D /* QuartzCore.framework */; }; + 751E1F1518FAE53E001B1E16 /* CarouselDeckView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 751E1F1218FAE53E001B1E16 /* CarouselDeckView.cpp */; }; + 751E1F1618FAE53E001B1E16 /* DeckView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 751E1F1318FAE53E001B1E16 /* DeckView.cpp */; }; + 751E1F1718FAE53E001B1E16 /* GridDeckView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 751E1F1418FAE53E001B1E16 /* GridDeckView.cpp */; }; 75D209D3181D54FD009916AC /* Default-568h@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 75D209D1181D54FD009916AC /* Default-568h@2x.png */; }; 75D209D4181D54FD009916AC /* wagic-80x80.png in Resources */ = {isa = PBXBuildFile; fileRef = 75D209D2181D54FD009916AC /* wagic-80x80.png */; }; CE97CD1E1295AB4300FDFD3B /* SimplePopup.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE97CD1D1295AB4300FDFD3B /* SimplePopup.cpp */; }; @@ -307,7 +306,6 @@ CEA3775E1291C60500B9016A /* AllAbilities.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA376F41291C60500B9016A /* AllAbilities.cpp */; }; CEA3775F1291C60500B9016A /* CardDescriptor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA376F51291C60500B9016A /* CardDescriptor.cpp */; }; CEA377601291C60500B9016A /* CardDisplay.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA376F61291C60500B9016A /* CardDisplay.cpp */; }; - CEA377611291C60500B9016A /* CardEffect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA376F71291C60500B9016A /* CardEffect.cpp */; }; CEA377621291C60500B9016A /* CardGui.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA376F81291C60500B9016A /* CardGui.cpp */; }; CEA377631291C60500B9016A /* CardPrimitive.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA376F91291C60500B9016A /* CardPrimitive.cpp */; }; CEA377641291C60500B9016A /* CardSelector.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA376FA1291C60500B9016A /* CardSelector.cpp */; }; @@ -325,7 +323,6 @@ CEA377701291C60500B9016A /* DeckMetaData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA377061291C60500B9016A /* DeckMetaData.cpp */; }; CEA377711291C60500B9016A /* DeckStats.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA377071291C60500B9016A /* DeckStats.cpp */; }; CEA377721291C60500B9016A /* DuelLayers.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA377081291C60500B9016A /* DuelLayers.cpp */; }; - CEA377731291C60500B9016A /* Effects.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA377091291C60500B9016A /* Effects.cpp */; }; CEA377741291C60500B9016A /* ExtraCost.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA3770A1291C60500B9016A /* ExtraCost.cpp */; }; CEA377751291C60500B9016A /* GameApp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA3770B1291C60500B9016A /* GameApp.cpp */; }; CEA377761291C60500B9016A /* GameLauncher.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CEA3770C1291C60500B9016A /* GameLauncher.cpp */; }; @@ -578,6 +575,13 @@ 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; 28FD14FF0DC6FC520079059D /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; }; 28FD15070DC6FC5B0079059D /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; + 751E1F0E18FAE52D001B1E16 /* CarouselDeckView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CarouselDeckView.h; sourceTree = ""; }; + 751E1F0F18FAE52D001B1E16 /* DeckView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DeckView.h; sourceTree = ""; }; + 751E1F1018FAE52D001B1E16 /* Easing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Easing.h; sourceTree = ""; }; + 751E1F1118FAE52D001B1E16 /* GridDeckView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GridDeckView.h; sourceTree = ""; }; + 751E1F1218FAE53E001B1E16 /* CarouselDeckView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CarouselDeckView.cpp; sourceTree = ""; }; + 751E1F1318FAE53E001B1E16 /* DeckView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DeckView.cpp; sourceTree = ""; }; + 751E1F1418FAE53E001B1E16 /* GridDeckView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = GridDeckView.cpp; sourceTree = ""; }; 75D209D1181D54FD009916AC /* Default-568h@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-568h@2x.png"; sourceTree = SOURCE_ROOT; }; 75D209D2181D54FD009916AC /* wagic-80x80.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "wagic-80x80.png"; sourceTree = SOURCE_ROOT; }; 8D1107310486CEB800E47090 /* wagic-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "wagic-Info.plist"; plistStructureDefinitionIdentifier = "com.apple.xcode.plist.structure-definition.iphone.info-plist"; sourceTree = ""; }; @@ -609,7 +613,6 @@ CEA3768C1291C60500B9016A /* AllAbilities.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; fileEncoding = 4; path = AllAbilities.h; sourceTree = ""; }; CEA3768D1291C60500B9016A /* CardDescriptor.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; fileEncoding = 4; path = CardDescriptor.h; sourceTree = ""; }; CEA3768E1291C60500B9016A /* CardDisplay.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; fileEncoding = 4; path = CardDisplay.h; sourceTree = ""; }; - CEA3768F1291C60500B9016A /* CardEffect.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; fileEncoding = 4; path = CardEffect.h; sourceTree = ""; }; CEA376901291C60500B9016A /* CardGui.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; fileEncoding = 4; path = CardGui.h; sourceTree = ""; }; CEA376911291C60500B9016A /* CardPrimitive.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; fileEncoding = 4; path = CardPrimitive.h; sourceTree = ""; }; CEA376921291C60500B9016A /* CardSelector.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; fileEncoding = 4; path = CardSelector.h; sourceTree = ""; }; @@ -627,7 +630,6 @@ CEA3769E1291C60500B9016A /* DeckMetaData.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; fileEncoding = 4; path = DeckMetaData.h; sourceTree = ""; }; CEA3769F1291C60500B9016A /* DeckStats.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; fileEncoding = 4; path = DeckStats.h; sourceTree = ""; }; CEA376A01291C60500B9016A /* DuelLayers.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; fileEncoding = 4; path = DuelLayers.h; sourceTree = ""; }; - CEA376A11291C60500B9016A /* Effects.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; fileEncoding = 4; path = Effects.h; sourceTree = ""; }; CEA376A21291C60500B9016A /* ExtraCost.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; fileEncoding = 4; path = ExtraCost.h; sourceTree = ""; }; CEA376A31291C60500B9016A /* GameApp.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; fileEncoding = 4; path = GameApp.h; sourceTree = ""; }; CEA376A41291C60500B9016A /* GameObserver.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; fileEncoding = 4; path = GameObserver.h; sourceTree = ""; }; @@ -711,7 +713,6 @@ CEA376F41291C60500B9016A /* AllAbilities.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; path = AllAbilities.cpp; sourceTree = ""; }; CEA376F51291C60500B9016A /* CardDescriptor.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; path = CardDescriptor.cpp; sourceTree = ""; }; CEA376F61291C60500B9016A /* CardDisplay.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; path = CardDisplay.cpp; sourceTree = ""; }; - CEA376F71291C60500B9016A /* CardEffect.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; path = CardEffect.cpp; sourceTree = ""; }; CEA376F81291C60500B9016A /* CardGui.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; path = CardGui.cpp; sourceTree = ""; }; CEA376F91291C60500B9016A /* CardPrimitive.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; path = CardPrimitive.cpp; sourceTree = ""; }; CEA376FA1291C60500B9016A /* CardSelector.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; path = CardSelector.cpp; sourceTree = ""; }; @@ -729,7 +730,6 @@ CEA377061291C60500B9016A /* DeckMetaData.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; path = DeckMetaData.cpp; sourceTree = ""; }; CEA377071291C60500B9016A /* DeckStats.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; path = DeckStats.cpp; sourceTree = ""; }; CEA377081291C60500B9016A /* DuelLayers.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; path = DuelLayers.cpp; sourceTree = ""; }; - CEA377091291C60500B9016A /* Effects.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; path = Effects.cpp; sourceTree = ""; }; CEA3770A1291C60500B9016A /* ExtraCost.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; path = ExtraCost.cpp; sourceTree = ""; }; CEA3770B1291C60500B9016A /* GameApp.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; path = GameApp.cpp; sourceTree = ""; }; CEA3770C1291C60500B9016A /* GameLauncher.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; path = GameLauncher.cpp; sourceTree = ""; }; @@ -890,7 +890,6 @@ 12059E4A14980B7300DAC43B /* libstdc++.dylib in Frameworks */, 12059E4B14980B7300DAC43B /* CFNetwork.framework in Frameworks */, 12059E4C14980B7300DAC43B /* MobileCoreServices.framework in Frameworks */, - 12059E4D14980B7300DAC43B /* libGoogleAdMobAds.a in Frameworks */, 12059E4E14980B7300DAC43B /* libc++abi.dylib in Frameworks */, 12059E4F14980B7300DAC43B /* libsqlite3.dylib in Frameworks */, 12059E5014980B7300DAC43B /* iAd.framework in Frameworks */, @@ -922,7 +921,6 @@ 12D095E114417D0500F69056 /* libstdc++.dylib in Frameworks */, 12211EBB14934A2C00641703 /* CFNetwork.framework in Frameworks */, 12211EB914934A1900641703 /* MobileCoreServices.framework in Frameworks */, - 1216D634148F747D000F2295 /* libGoogleAdMobAds.a in Frameworks */, 1216D633148F7411000F2295 /* libc++abi.dylib in Frameworks */, 128ED510148BCC1900C58E83 /* libsqlite3.dylib in Frameworks */, 129654D1148A52740031100B /* iAd.framework in Frameworks */, @@ -1284,6 +1282,10 @@ CEA376851291C60500B9016A /* include */ = { isa = PBXGroup; children = ( + 751E1F0E18FAE52D001B1E16 /* CarouselDeckView.h */, + 751E1F0F18FAE52D001B1E16 /* DeckView.h */, + 751E1F1018FAE52D001B1E16 /* Easing.h */, + 751E1F1118FAE52D001B1E16 /* GridDeckView.h */, 12272FC114CD558C00192DC7 /* SimpleButton.h */, 12CCA032144A05DF00E343A0 /* AbilityParser.h */, 127694891441274D0088F6D3 /* AIPlayerBaka.h */, @@ -1306,7 +1308,6 @@ CEA3768C1291C60500B9016A /* AllAbilities.h */, CEA3768D1291C60500B9016A /* CardDescriptor.h */, CEA3768E1291C60500B9016A /* CardDisplay.h */, - CEA3768F1291C60500B9016A /* CardEffect.h */, CEA376901291C60500B9016A /* CardGui.h */, CEA376911291C60500B9016A /* CardPrimitive.h */, CEA376921291C60500B9016A /* CardSelector.h */, @@ -1324,7 +1325,6 @@ CEA3769E1291C60500B9016A /* DeckMetaData.h */, CEA3769F1291C60500B9016A /* DeckStats.h */, CEA376A01291C60500B9016A /* DuelLayers.h */, - CEA376A11291C60500B9016A /* Effects.h */, CEA376A21291C60500B9016A /* ExtraCost.h */, CEA376A31291C60500B9016A /* GameApp.h */, CEA376A41291C60500B9016A /* GameObserver.h */, @@ -1408,6 +1408,9 @@ CEA376ED1291C60500B9016A /* src */ = { isa = PBXGroup; children = ( + 751E1F1218FAE53E001B1E16 /* CarouselDeckView.cpp */, + 751E1F1318FAE53E001B1E16 /* DeckView.cpp */, + 751E1F1418FAE53E001B1E16 /* GridDeckView.cpp */, 12CCA02F144A05D100E343A0 /* AbilityParser.cpp */, 12769483144127380088F6D3 /* AIPlayerBaka.cpp */, 12769484144127380088F6D3 /* AIPlayerBakaB.cpp */, @@ -1427,7 +1430,6 @@ CEA376F41291C60500B9016A /* AllAbilities.cpp */, CEA376F51291C60500B9016A /* CardDescriptor.cpp */, CEA376F61291C60500B9016A /* CardDisplay.cpp */, - CEA376F71291C60500B9016A /* CardEffect.cpp */, CEA376F81291C60500B9016A /* CardGui.cpp */, CEA376F91291C60500B9016A /* CardPrimitive.cpp */, CEA376FA1291C60500B9016A /* CardSelector.cpp */, @@ -1445,7 +1447,6 @@ CEA377061291C60500B9016A /* DeckMetaData.cpp */, CEA377071291C60500B9016A /* DeckStats.cpp */, CEA377081291C60500B9016A /* DuelLayers.cpp */, - CEA377091291C60500B9016A /* Effects.cpp */, CEA3770A1291C60500B9016A /* ExtraCost.cpp */, CEA3770B1291C60500B9016A /* GameApp.cpp */, CEA3770C1291C60500B9016A /* GameLauncher.cpp */, @@ -1703,7 +1704,7 @@ 29B97313FDCFA39411CA2CEA /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0430; + LastUpgradeCheck = 0510; }; buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "wagic" */; compatibilityVersion = "Xcode 3.2"; @@ -1827,7 +1828,6 @@ 12059DA814980B7300DAC43B /* AllAbilities.cpp in Sources */, 12059DA914980B7300DAC43B /* CardDescriptor.cpp in Sources */, 12059DAA14980B7300DAC43B /* CardDisplay.cpp in Sources */, - 12059DAB14980B7300DAC43B /* CardEffect.cpp in Sources */, 12059DAC14980B7300DAC43B /* CardGui.cpp in Sources */, 12059DAD14980B7300DAC43B /* CardPrimitive.cpp in Sources */, 12059DAE14980B7300DAC43B /* CardSelector.cpp in Sources */, @@ -1845,7 +1845,6 @@ 12059DBA14980B7300DAC43B /* DeckMetaData.cpp in Sources */, 12059DBB14980B7300DAC43B /* DeckStats.cpp in Sources */, 12059DBC14980B7300DAC43B /* DuelLayers.cpp in Sources */, - 12059DBD14980B7300DAC43B /* Effects.cpp in Sources */, 12059DBE14980B7300DAC43B /* ExtraCost.cpp in Sources */, 12059DBF14980B7300DAC43B /* GameApp.cpp in Sources */, 12059DC014980B7300DAC43B /* GameLauncher.cpp in Sources */, @@ -2009,7 +2008,6 @@ CEA3775E1291C60500B9016A /* AllAbilities.cpp in Sources */, CEA3775F1291C60500B9016A /* CardDescriptor.cpp in Sources */, CEA377601291C60500B9016A /* CardDisplay.cpp in Sources */, - CEA377611291C60500B9016A /* CardEffect.cpp in Sources */, CEA377621291C60500B9016A /* CardGui.cpp in Sources */, CEA377631291C60500B9016A /* CardPrimitive.cpp in Sources */, CEA377641291C60500B9016A /* CardSelector.cpp in Sources */, @@ -2027,7 +2025,6 @@ CEA377701291C60500B9016A /* DeckMetaData.cpp in Sources */, CEA377711291C60500B9016A /* DeckStats.cpp in Sources */, CEA377721291C60500B9016A /* DuelLayers.cpp in Sources */, - CEA377731291C60500B9016A /* Effects.cpp in Sources */, CEA377741291C60500B9016A /* ExtraCost.cpp in Sources */, CEA377751291C60500B9016A /* GameApp.cpp in Sources */, CEA377761291C60500B9016A /* GameLauncher.cpp in Sources */, @@ -2057,6 +2054,7 @@ CEA3778F1291C60500B9016A /* ManaCostHybrid.cpp in Sources */, CEA377901291C60500B9016A /* MenuItem.cpp in Sources */, CEA377911291C60500B9016A /* MTGAbility.cpp in Sources */, + 751E1F1718FAE53E001B1E16 /* GridDeckView.cpp in Sources */, CEA377931291C60500B9016A /* MTGCard.cpp in Sources */, CEA377941291C60500B9016A /* MTGCardInstance.cpp in Sources */, CEA377951291C60500B9016A /* MTGDeck.cpp in Sources */, @@ -2095,6 +2093,7 @@ CEA377BA1291C60500B9016A /* utils.cpp in Sources */, CEA377BB1291C60500B9016A /* WCachedResource.cpp in Sources */, CEA377BC1291C60500B9016A /* WDataSrc.cpp in Sources */, + 751E1F1618FAE53E001B1E16 /* DeckView.cpp in Sources */, CEA377BD1291C60500B9016A /* WEvent.cpp in Sources */, CEA377BE1291C60500B9016A /* WFilter.cpp in Sources */, CEA377BF1291C60500B9016A /* WFont.cpp in Sources */, @@ -2104,6 +2103,7 @@ CE9A478512B514BA00C9F38A /* EAGLView.m in Sources */, CE9A478612B514BA00C9F38A /* EAGLViewController.m in Sources */, CE9A478912B514BA00C9F38A /* ES2Renderer.m in Sources */, + 751E1F1518FAE53E001B1E16 /* CarouselDeckView.cpp in Sources */, CE9A478A12B514BA00C9F38A /* main.m in Sources */, CE9A478D12B514BA00C9F38A /* wagicAppDelegate.m in Sources */, CE9E71DD1375A58600759DDC /* thread.cpp in Sources */, @@ -2152,10 +2152,6 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = YES; - ARCHS = ( - armv6, - "$(ARCHS_STANDARD_32_BIT)", - ); CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; @@ -2205,10 +2201,6 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - ARCHS = ( - armv6, - "$(ARCHS_STANDARD_32_BIT)", - ); CODE_SIGN_IDENTITY = "iPhone Distribution"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; COPY_PHASE_STRIP = YES; @@ -2252,10 +2244,6 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = YES; - ARCHS = ( - armv6, - "$(ARCHS_STANDARD_32_BIT)", - ); CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; @@ -2291,10 +2279,7 @@ "\"$(SRCROOT)/../../admobsdk/iOS/GoogleAdMobAdsSDKiOS-5.0.5\"", ); "New Setting" = ""; - OTHER_LDFLAGS = ( - "-no_implicit_dylibs", - "-Wl", - ); + OTHER_LDFLAGS = "-Wl"; PRODUCT_NAME = wagic; PROVISIONING_PROFILE = ""; "PROVISIONING_PROFILE[sdk=iphoneos*]" = ""; @@ -2307,10 +2292,6 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - ARCHS = ( - armv6, - "$(ARCHS_STANDARD_32_BIT)", - ); CODE_SIGN_IDENTITY = "iPhone Distribution"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; COPY_PHASE_STRIP = YES; @@ -2339,10 +2320,7 @@ "$(inherited)", "\"$(SRCROOT)/../../admobsdk/iOS/GoogleAdMobAdsSDKiOS-5.0.5\"", ); - OTHER_LDFLAGS = ( - "-no_implicit_dylibs", - "-Wl", - ); + OTHER_LDFLAGS = "-Wl"; PRODUCT_NAME = wagic; PROVISIONING_PROFILE = ""; "PROVISIONING_PROFILE[sdk=iphoneos*]" = ""; @@ -2354,7 +2332,6 @@ C01FCF4F08A954540054247B /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { - ARCHS = "$(ARCHS_UNIVERSAL_IPHONE_OS)"; CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; DEPLOYMENT_LOCATION = NO; @@ -2365,6 +2342,11 @@ GCC_WARN_UNUSED_VARIABLE = YES; HEADER_SEARCH_PATHS = ../../Boost/boost; IPHONEOS_DEPLOYMENT_TARGET = 5.1; + ONLY_ACTIVE_ARCH = YES; + OTHER_CFLAGS = ( + "-DTIXML_USE_STL", + "-fno-objc-arc", + ); PROVISIONING_PROFILE = ""; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; @@ -2374,7 +2356,6 @@ C01FCF5008A954540054247B /* Release */ = { isa = XCBuildConfiguration; buildSettings = { - ARCHS = "$(ARCHS_UNIVERSAL_IPHONE_OS)"; CODE_SIGN_IDENTITY = "iPhone Distribution"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; GCC_C_LANGUAGE_STANDARD = c99; @@ -2382,7 +2363,10 @@ GCC_WARN_UNUSED_VARIABLE = YES; HEADER_SEARCH_PATHS = ../../Boost/boost; IPHONEOS_DEPLOYMENT_TARGET = 5.1; - OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1"; + OTHER_CFLAGS = ( + "-DNS_BLOCK_ASSERTIONS=1", + "-DTIXML_USE_STL=1", + ); PROVISIONING_PROFILE = ""; "PROVISIONING_PROFILE[sdk=iphoneos*]" = ""; SDKROOT = iphoneos; diff --git a/projects/mtg/wagic.xcodeproj/xcuserdata/mnguyen.xcuserdatad/xcschemes/wagic-opengl1.1.xcscheme b/projects/mtg/wagic.xcodeproj/xcuserdata/mnguyen.xcuserdatad/xcschemes/wagic-opengl1.1.xcscheme index ff4186a80..71e41a631 100644 --- a/projects/mtg/wagic.xcodeproj/xcuserdata/mnguyen.xcuserdatad/xcschemes/wagic-opengl1.1.xcscheme +++ b/projects/mtg/wagic.xcodeproj/xcuserdata/mnguyen.xcuserdatad/xcschemes/wagic-opengl1.1.xcscheme @@ -1,6 +1,6 @@