From dde5e2099fef0e09f70749ba890945bee57cea15 Mon Sep 17 00:00:00 2001 From: DerekXu Date: Mon, 1 May 2023 01:17:01 -0400 Subject: [PATCH] Add demo files --- INSTRUCTIONS.md | 24 ++ README.md | 27 ++ app/.gitignore | 1 + app/build.gradle | 64 ++++ app/proguard-rules.pro | 21 ++ .../InstrumentedBackgroundTest.java | 41 +++ .../InstrumentedGameOverTest.java | 54 +++ .../a8_bitinvader/InstrumentedGameTests.java | 71 ++++ .../InstrumentedLevelOneTest.java | 39 ++ .../a8_bitinvader/InstrumentedLevelTest.java | 47 +++ .../a8_bitinvader/InstrumentedMenuTest.java | 76 ++++ app/src/main/AndroidManifest.xml | 45 +++ app/src/main/cpp/Bullet.h | 55 +++ app/src/main/cpp/CMakeLists.txt | 30 ++ app/src/main/cpp/Sprite.h | 77 ++++ app/src/main/cpp/native-lib.cpp | 113 ++++++ app/src/main/ic_launcher-playstore.png | Bin 0 -> 7908 bytes .../com/example/a8_bitinvader/Background.java | 23 ++ .../com/example/a8_bitinvader/Bullet.java | 67 ++++ .../java/com/example/a8_bitinvader/Enemy.java | 57 +++ .../example/a8_bitinvader/GameActivity.java | 50 +++ .../a8_bitinvader/GameOverActivity.java | 80 +++++ .../com/example/a8_bitinvader/Joystick.java | 180 ++++++++++ .../java/com/example/a8_bitinvader/Level.java | 340 ++++++++++++++++++ .../com/example/a8_bitinvader/LevelOne.java | 27 ++ .../example/a8_bitinvader/MainActivity.java | 315 ++++++++++++++++ .../com/example/a8_bitinvader/Player.java | 100 ++++++ .../example/a8_bitinvader/PopUpWindow.java | 43 +++ .../a8_bitinvader/ReverseInterpolator.java | 10 + .../a8_bitinvader/ScoreFileWriter.java | 130 +++++++ .../com/example/a8_bitinvader/Sprite.java | 46 +++ .../com/example/a8_bitinvader/Writer.java | 7 + app/src/main/res/anim/blink_animation.xml | 9 + app/src/main/res/anim/fade_animation.xml | 17 + app/src/main/res/anim/move_animation.xml | 11 + app/src/main/res/anim/slide_animation.xml | 11 + app/src/main/res/anim/zoom_animation.xml | 12 + .../drawable-v24/ic_launcher_foreground.xml | 30 ++ app/src/main/res/drawable-v24/leaderboard.png | Bin 0 -> 3557 bytes app/src/main/res/drawable/axolotel.png | Bin 0 -> 378 bytes app/src/main/res/drawable/background.jpeg | Bin 0 -> 145061 bytes app/src/main/res/drawable/bullet.png | Bin 0 -> 179 bytes app/src/main/res/drawable/enemy1.png | Bin 0 -> 399 bytes app/src/main/res/drawable/enemy3.png | Bin 0 -> 520 bytes app/src/main/res/drawable/enemy3_damage.png | Bin 0 -> 515 bytes app/src/main/res/drawable/enemy4.png | Bin 0 -> 554 bytes app/src/main/res/drawable/enemy4_damage.png | Bin 0 -> 549 bytes app/src/main/res/drawable/enemy5.png | Bin 0 -> 494 bytes app/src/main/res/drawable/enemy5_damage.png | Bin 0 -> 490 bytes app/src/main/res/drawable/enemy6.png | Bin 0 -> 528 bytes app/src/main/res/drawable/enemy6_damage.png | Bin 0 -> 479 bytes .../main/res/drawable/explosion_frame_1.png | Bin 0 -> 984 bytes .../main/res/drawable/explosion_frame_2.png | Bin 0 -> 984 bytes .../main/res/drawable/explosion_frame_3.png | Bin 0 -> 1180 bytes .../main/res/drawable/explosion_frame_4.png | Bin 0 -> 1187 bytes .../main/res/drawable/explosion_frame_5.png | Bin 0 -> 873 bytes .../main/res/drawable/explosion_frame_6.png | Bin 0 -> 873 bytes app/src/main/res/drawable/finalscore.png | Bin 0 -> 10462 bytes app/src/main/res/drawable/green.png | Bin 0 -> 89 bytes app/src/main/res/drawable/green32.png | Bin 0 -> 530 bytes app/src/main/res/drawable/green64.png | Bin 0 -> 202 bytes app/src/main/res/drawable/heart.png | Bin 0 -> 4507 bytes app/src/main/res/drawable/help.png | Bin 0 -> 16900 bytes app/src/main/res/drawable/home.png | Bin 0 -> 3501 bytes .../res/drawable/ic_launcher_background.xml | 170 +++++++++ app/src/main/res/drawable/invaderslogo.png | Bin 0 -> 30198 bytes app/src/main/res/drawable/leftbutton.png | Bin 0 -> 4498 bytes app/src/main/res/drawable/logobit.png | Bin 0 -> 22455 bytes app/src/main/res/drawable/mute.png | Bin 0 -> 3300 bytes app/src/main/res/drawable/play.png | Bin 0 -> 3859 bytes app/src/main/res/drawable/playbutton.png | Bin 0 -> 5873 bytes app/src/main/res/drawable/player.png | Bin 0 -> 3391 bytes app/src/main/res/drawable/player2.png | Bin 0 -> 512 bytes app/src/main/res/drawable/player3.png | Bin 0 -> 557 bytes app/src/main/res/drawable/player4.png | Bin 0 -> 622 bytes app/src/main/res/drawable/red.png | Bin 0 -> 89 bytes app/src/main/res/drawable/red32.png | Bin 0 -> 347 bytes app/src/main/res/drawable/red64.png | Bin 0 -> 203 bytes app/src/main/res/drawable/replay.png | Bin 0 -> 3459 bytes app/src/main/res/drawable/rightbutton.png | Bin 0 -> 4585 bytes app/src/main/res/drawable/unmute.png | Bin 0 -> 2948 bytes app/src/main/res/font/ballsontherampage.ttf | Bin 0 -> 101156 bytes app/src/main/res/font/rampage.xml | 7 + app/src/main/res/layout/activity_main.xml | 158 ++++++++ app/src/main/res/layout/game_finish.xml | 136 +++++++ app/src/main/res/layout/popup_window.xml | 34 ++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + app/src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 1784 bytes .../mipmap-hdpi/ic_launcher_foreground.png | Bin 0 -> 1331 bytes .../res/mipmap-hdpi/ic_launcher_round.png | Bin 0 -> 3558 bytes app/src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 1529 bytes .../mipmap-mdpi/ic_launcher_foreground.png | Bin 0 -> 889 bytes .../res/mipmap-mdpi/ic_launcher_round.png | Bin 0 -> 2720 bytes app/src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 2066 bytes .../mipmap-xhdpi/ic_launcher_foreground.png | Bin 0 -> 1344 bytes .../res/mipmap-xhdpi/ic_launcher_round.png | Bin 0 -> 5056 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 3146 bytes .../mipmap-xxhdpi/ic_launcher_foreground.png | Bin 0 -> 2188 bytes .../res/mipmap-xxhdpi/ic_launcher_round.png | Bin 0 -> 7704 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 4220 bytes .../mipmap-xxxhdpi/ic_launcher_foreground.png | Bin 0 -> 2975 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.png | Bin 0 -> 10842 bytes app/src/main/res/raw/explosion.mp3 | Bin 0 -> 13668 bytes app/src/main/res/raw/homeaudio.mp3 | Bin 0 -> 5600959 bytes app/src/main/res/values-night/themes.xml | 16 + app/src/main/res/values/colors.xml | 10 + .../res/values/ic_launcher_background.xml | 4 + app/src/main/res/values/strings.xml | 3 + app/src/main/res/values/themes.xml | 16 + app/src/main/res/xml/backup_rules.xml | 13 + .../main/res/xml/data_extraction_rules.xml | 19 + .../com/example/a8_bitinvader/BulletTest.java | 34 ++ .../com/example/a8_bitinvader/EnemyTest.java | 16 + .../a8_bitinvader/ExampleUnitTest.java | 17 + .../a8_bitinvader/GameActivityTest.java | 15 + .../a8_bitinvader/GameOverActivityTest.java | 16 + .../example/a8_bitinvader/JoystickTest.java | 87 +++++ .../com/example/a8_bitinvader/PlayerTest.java | 31 ++ .../a8_bitinvader/PopUpWindowTest.java | 16 + .../ReverseInterpolatorTest.java | 15 + .../com/example/a8_bitinvader/SpriteTest.java | 24 ++ build.gradle | 7 + completedIssue.txt | 1 - gradle.properties | 22 ++ gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59203 bytes gradle/wrapper/gradle-wrapper.properties | 6 + gradlew | 185 ++++++++++ gradlew.bat | 89 +++++ issueCompleted.txt | 3 - settings.gradle | 16 + 131 files changed, 3542 insertions(+), 4 deletions(-) create mode 100644 INSTRUCTIONS.md create mode 100644 README.md create mode 100644 app/.gitignore create mode 100644 app/build.gradle create mode 100644 app/proguard-rules.pro create mode 100644 app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedBackgroundTest.java create mode 100644 app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedGameOverTest.java create mode 100644 app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedGameTests.java create mode 100644 app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedLevelOneTest.java create mode 100644 app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedLevelTest.java create mode 100644 app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedMenuTest.java create mode 100644 app/src/main/AndroidManifest.xml create mode 100644 app/src/main/cpp/Bullet.h create mode 100644 app/src/main/cpp/CMakeLists.txt create mode 100644 app/src/main/cpp/Sprite.h create mode 100644 app/src/main/cpp/native-lib.cpp create mode 100644 app/src/main/ic_launcher-playstore.png create mode 100644 app/src/main/java/com/example/a8_bitinvader/Background.java create mode 100644 app/src/main/java/com/example/a8_bitinvader/Bullet.java create mode 100644 app/src/main/java/com/example/a8_bitinvader/Enemy.java create mode 100644 app/src/main/java/com/example/a8_bitinvader/GameActivity.java create mode 100644 app/src/main/java/com/example/a8_bitinvader/GameOverActivity.java create mode 100644 app/src/main/java/com/example/a8_bitinvader/Joystick.java create mode 100644 app/src/main/java/com/example/a8_bitinvader/Level.java create mode 100644 app/src/main/java/com/example/a8_bitinvader/LevelOne.java create mode 100644 app/src/main/java/com/example/a8_bitinvader/MainActivity.java create mode 100644 app/src/main/java/com/example/a8_bitinvader/Player.java create mode 100644 app/src/main/java/com/example/a8_bitinvader/PopUpWindow.java create mode 100644 app/src/main/java/com/example/a8_bitinvader/ReverseInterpolator.java create mode 100644 app/src/main/java/com/example/a8_bitinvader/ScoreFileWriter.java create mode 100644 app/src/main/java/com/example/a8_bitinvader/Sprite.java create mode 100644 app/src/main/java/com/example/a8_bitinvader/Writer.java create mode 100644 app/src/main/res/anim/blink_animation.xml create mode 100644 app/src/main/res/anim/fade_animation.xml create mode 100644 app/src/main/res/anim/move_animation.xml create mode 100644 app/src/main/res/anim/slide_animation.xml create mode 100644 app/src/main/res/anim/zoom_animation.xml create mode 100644 app/src/main/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 app/src/main/res/drawable-v24/leaderboard.png create mode 100644 app/src/main/res/drawable/axolotel.png create mode 100644 app/src/main/res/drawable/background.jpeg create mode 100644 app/src/main/res/drawable/bullet.png create mode 100644 app/src/main/res/drawable/enemy1.png create mode 100644 app/src/main/res/drawable/enemy3.png create mode 100644 app/src/main/res/drawable/enemy3_damage.png create mode 100644 app/src/main/res/drawable/enemy4.png create mode 100644 app/src/main/res/drawable/enemy4_damage.png create mode 100644 app/src/main/res/drawable/enemy5.png create mode 100644 app/src/main/res/drawable/enemy5_damage.png create mode 100644 app/src/main/res/drawable/enemy6.png create mode 100644 app/src/main/res/drawable/enemy6_damage.png create mode 100644 app/src/main/res/drawable/explosion_frame_1.png create mode 100644 app/src/main/res/drawable/explosion_frame_2.png create mode 100644 app/src/main/res/drawable/explosion_frame_3.png create mode 100644 app/src/main/res/drawable/explosion_frame_4.png create mode 100644 app/src/main/res/drawable/explosion_frame_5.png create mode 100644 app/src/main/res/drawable/explosion_frame_6.png create mode 100644 app/src/main/res/drawable/finalscore.png create mode 100644 app/src/main/res/drawable/green.png create mode 100644 app/src/main/res/drawable/green32.png create mode 100644 app/src/main/res/drawable/green64.png create mode 100644 app/src/main/res/drawable/heart.png create mode 100644 app/src/main/res/drawable/help.png create mode 100644 app/src/main/res/drawable/home.png create mode 100644 app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 app/src/main/res/drawable/invaderslogo.png create mode 100644 app/src/main/res/drawable/leftbutton.png create mode 100644 app/src/main/res/drawable/logobit.png create mode 100644 app/src/main/res/drawable/mute.png create mode 100644 app/src/main/res/drawable/play.png create mode 100644 app/src/main/res/drawable/playbutton.png create mode 100644 app/src/main/res/drawable/player.png create mode 100644 app/src/main/res/drawable/player2.png create mode 100644 app/src/main/res/drawable/player3.png create mode 100644 app/src/main/res/drawable/player4.png create mode 100644 app/src/main/res/drawable/red.png create mode 100644 app/src/main/res/drawable/red32.png create mode 100644 app/src/main/res/drawable/red64.png create mode 100644 app/src/main/res/drawable/replay.png create mode 100644 app/src/main/res/drawable/rightbutton.png create mode 100644 app/src/main/res/drawable/unmute.png create mode 100644 app/src/main/res/font/ballsontherampage.ttf create mode 100644 app/src/main/res/font/rampage.xml create mode 100644 app/src/main/res/layout/activity_main.xml create mode 100644 app/src/main/res/layout/game_finish.xml create mode 100644 app/src/main/res/layout/popup_window.xml create mode 100644 app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png create mode 100644 app/src/main/res/mipmap-hdpi/ic_launcher_round.png create mode 100644 app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png create mode 100644 app/src/main/res/mipmap-mdpi/ic_launcher_round.png create mode 100644 app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png create mode 100644 app/src/main/res/mipmap-xhdpi/ic_launcher_round.png create mode 100644 app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png create mode 100644 app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png create mode 100644 app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png create mode 100644 app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png create mode 100644 app/src/main/res/raw/explosion.mp3 create mode 100644 app/src/main/res/raw/homeaudio.mp3 create mode 100644 app/src/main/res/values-night/themes.xml create mode 100644 app/src/main/res/values/colors.xml create mode 100644 app/src/main/res/values/ic_launcher_background.xml create mode 100644 app/src/main/res/values/strings.xml create mode 100644 app/src/main/res/values/themes.xml create mode 100644 app/src/main/res/xml/backup_rules.xml create mode 100644 app/src/main/res/xml/data_extraction_rules.xml create mode 100644 app/src/test/java/com/example/a8_bitinvader/BulletTest.java create mode 100644 app/src/test/java/com/example/a8_bitinvader/EnemyTest.java create mode 100644 app/src/test/java/com/example/a8_bitinvader/ExampleUnitTest.java create mode 100644 app/src/test/java/com/example/a8_bitinvader/GameActivityTest.java create mode 100644 app/src/test/java/com/example/a8_bitinvader/GameOverActivityTest.java create mode 100644 app/src/test/java/com/example/a8_bitinvader/JoystickTest.java create mode 100644 app/src/test/java/com/example/a8_bitinvader/PlayerTest.java create mode 100644 app/src/test/java/com/example/a8_bitinvader/PopUpWindowTest.java create mode 100644 app/src/test/java/com/example/a8_bitinvader/ReverseInterpolatorTest.java create mode 100644 app/src/test/java/com/example/a8_bitinvader/SpriteTest.java create mode 100644 build.gradle delete mode 100644 completedIssue.txt create mode 100644 gradle.properties create mode 100644 gradle/wrapper/gradle-wrapper.jar create mode 100644 gradle/wrapper/gradle-wrapper.properties create mode 100644 gradlew create mode 100644 gradlew.bat delete mode 100644 issueCompleted.txt create mode 100644 settings.gradle diff --git a/INSTRUCTIONS.md b/INSTRUCTIONS.md new file mode 100644 index 0000000..34ff60b --- /dev/null +++ b/INSTRUCTIONS.md @@ -0,0 +1,24 @@ +INSTALL INSTRUCTIONS + +In order to run 8-Bit Invaders, you must first have Android Studio installed [[install](https://developer.android.com/studio)] on your device. +After downloading, you are ready to create a new project in Android Studio [Do not open the repo for 8-Bit Invaders – you will need to download more software before opening the 8-Bit Invaders project code]. To create a new project, open android studio, create a new project. From templates choose Phone and Tablets -> No Activity -> next. Then pick a name (does not matter because it is temporary), choose java as a language, and then press finish. + +After you finish creating the project, please download an Android Emulator [[install](https://developer.android.com/studio/run/emulator)]. + +In order to run our project you will also need to download Android NDK and CMake. To do this please follow these instructions [[install](https://developer.android.com/studio/projects/install-ndk)]. + +After installing these components, you will need to clone the project repository to your local device. To do this, please use your computer’s terminal and use the following instructions: + +1. Make sure you have git installed on your computer [[install](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git)] +2. Then create a directory [through your file explorer or terminal -- NOT IN ANDROID STUDIO] in which you would like to clone the project, and subsequently navigate to that directory in your terminal. +3. Then you will need to clone the App branch of this project. To do this use the command: + +git clone --branch App https://agile.bu.edu/gitlab/ec327_projects/group5project.git + +NOTE: The https link is the HTTPS link when you navigate to the project repo on Gitlab, and use the blue drop down on the right hand side of the screen [the link provided may be out of date upon your cloning]. + +After downloading all of the above, you are ready to open the 8-Bit Invaders code. To do this navigate to File->Open. Then find the directory in which you cloned the project, and open the project. You may need to wait a few minutes for the project to configure everything. You will then be ready to run the project. + + + + diff --git a/README.md b/README.md new file mode 100644 index 0000000..749daa9 --- /dev/null +++ b/README.md @@ -0,0 +1,27 @@ +# Group5Project + +# Title +8-bit Invaders + +# Category: +Animated Game + +# Description: +We are building a Space Shooter-like game in an 8-bit style. + +# Roles +Lead: AnishSinha [14.29%], KrishShah [14.29%], NathanStrahs [14.29%], JamesKnee [14.29%], ThomasPoimenidis [14.29%], DerekXu [14.29%], JiaweiXiang [14.29%] + +Front: AnishSinha [14.29%], KrishShah [14.29%], NathanStrahs [14.29%], JamesKnee [14.29%], ThomasPoimenidis [14.29%], DerekXu [14.29%], JiaweiXiang [14.29%] + +Back: AnishSinha [14.29%], KrishShah [14.29%], NathanStrahs [14.29%], JamesKnee [14.29%], ThomasPoimenidis [14.29%], DerekXu [14.29%], JiaweiXiang [14.29%] + +Documenter: AnishSinha [14.29%], KrishShah [14.29%], NathanStrahs [14.29%], JamesKnee [14.29%], ThomasPoimenidis [14.29%], DerekXu [14.29%], JiaweiXiang [14.29%] + +Tester: AnishSinha [14.29%], KrishShah [14.29%], NathanStrahs [14.29%], JamesKnee [14.29%], ThomasPoimenidis [14.29%], DerekXu [14.29%], JiaweiXiang [14.29%] + +# Member Names: +Anish Sinha, Thomas Poimenidis, Jiawei Xiang(DavidXiang), Krish Shah, Nathan Strahs, Derek Xu, James Knee + +# Personalize Gitlab Task: +Completed diff --git a/app/.gitignore b/app/.gitignore new file mode 100644 index 0000000..42afabf --- /dev/null +++ b/app/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle new file mode 100644 index 0000000..9e5654e --- /dev/null +++ b/app/build.gradle @@ -0,0 +1,64 @@ +plugins { + id 'com.android.application' +} + +android { + namespace 'com.example.a8_bitinvader' + compileSdk 33 + + defaultConfig { + applicationId "com.example.a8_bitinvader" + minSdk 21 + targetSdk 33 + versionCode 1 + versionName "1.0" + + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + + +// Added this line + externalNativeBuild{ + cmake{ + cppFlags "" + } + } + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + } + } +// Added this line + externalNativeBuild{ + cmake{ + path "src/main/cpp/CMakeLists.txt" + } + } + + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } +} + +dependencies { + + implementation 'androidx.appcompat:appcompat:1.4.1' + implementation 'com.google.android.material:material:1.5.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + implementation 'androidx.viewpager:viewpager:1.1.0-alpha01' + testImplementation 'junit:junit:4.13.2' + + + androidTestImplementation "androidx.test:runner:1.5.2" + androidTestImplementation "androidx.test:rules:1.5.0" + // Optional -- UI testing with Espresso + androidTestImplementation "androidx.test.espresso:espresso-core:3.5.1" + // To use the JUnit Extension APIs + androidTestImplementation "androidx.test.ext:junit:1.1.5" + // Kotlin extensions for androidx.test.ext.junit + androidTestImplementation "androidx.test.ext:junit-ktx:1.1.5" + +} \ No newline at end of file diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro new file mode 100644 index 0000000..481bb43 --- /dev/null +++ b/app/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedBackgroundTest.java b/app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedBackgroundTest.java new file mode 100644 index 0000000..7739436 --- /dev/null +++ b/app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedBackgroundTest.java @@ -0,0 +1,41 @@ +package com.example.a8_bitinvader; + +import android.content.Context; +import android.content.res.Resources; +import android.media.AudioManager; +import android.view.View; + +import androidx.test.espresso.Espresso; +import androidx.test.espresso.ViewAssertion; +import androidx.test.espresso.action.ViewActions; +import androidx.test.espresso.assertion.PositionAssertions; +import androidx.test.espresso.assertion.ViewAssertions; +import androidx.test.espresso.matcher.ViewMatchers; +import androidx.test.platform.app.InstrumentationRegistry; +//import androidx.test.ext.junit.runners.AndroidJUnit4; +import androidx.test.runner.AndroidJUnit4; + +import org.junit.Rule; +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.junit.Assert.*; +import androidx.test.ext.junit.rules.ActivityScenarioRule; + +@RunWith(AndroidJUnit4.class) +public class InstrumentedBackgroundTest { + + // test creation of the background + @Test + public void makeBackground() { + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + Background back = new Background(500, 500, appContext.getResources()); + //Background back = null; + assertNotNull(back); + } + + + + + +} \ No newline at end of file diff --git a/app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedGameOverTest.java b/app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedGameOverTest.java new file mode 100644 index 0000000..c47f92c --- /dev/null +++ b/app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedGameOverTest.java @@ -0,0 +1,54 @@ +package com.example.a8_bitinvader; + +import android.content.Context; +import android.content.Intent; +import android.content.res.Resources; +import android.media.AudioManager; +import android.view.View; + +import androidx.test.espresso.Espresso; +import androidx.test.espresso.ViewAssertion; +import androidx.test.espresso.action.ViewActions; +import androidx.test.espresso.assertion.PositionAssertions; +import androidx.test.espresso.assertion.ViewAssertions; +import androidx.test.espresso.matcher.ViewMatchers; +import androidx.test.platform.app.InstrumentationRegistry; +//import androidx.test.ext.junit.runners.AndroidJUnit4; +import androidx.test.rule.ActivityTestRule; +import androidx.test.rule.ActivityTestRule$$ExternalSyntheticLambda0; +import androidx.test.runner.AndroidJUnit4; + +import org.junit.Rule; +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.junit.Assert.*; +import androidx.test.ext.junit.rules.ActivityScenarioRule; + +@RunWith(AndroidJUnit4.class) +public class InstrumentedGameOverTest { + @Rule + public ActivityTestRule gameOver = new ActivityTestRule<>(GameOverActivity.class); + + /** + * Test the creation of the game over activity by first launching the game over activity and then + * checking whether the replay_button exists on the screen and is clickable. + * All of the UI checks utilize {@link Espresso} in order to automate interactions + */ + @Test + public void gameOver() { + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + Intent intent = new Intent(appContext, GameOverActivity.class); + gameOver.launchActivity(intent); + + Espresso.onView(ViewMatchers.withId(R.id.replay_button)) + .check(ViewAssertions.matches(ViewMatchers.isDisplayed())); + Espresso.onView(ViewMatchers.withId(R.id.replay_button)) + .check(ViewAssertions.matches(ViewMatchers.isClickable())); + } + + + + + +} \ No newline at end of file diff --git a/app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedGameTests.java b/app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedGameTests.java new file mode 100644 index 0000000..3ddb4ee --- /dev/null +++ b/app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedGameTests.java @@ -0,0 +1,71 @@ +package com.example.a8_bitinvader; + +import android.content.Context; +import android.content.res.Resources; +import android.media.AudioManager; +import android.view.View; + +import androidx.test.espresso.Espresso; +import androidx.test.espresso.ViewAssertion; +import androidx.test.espresso.action.ViewActions; +import androidx.test.espresso.assertion.PositionAssertions; +import androidx.test.espresso.assertion.ViewAssertions; +import androidx.test.espresso.matcher.ViewMatchers; +import androidx.test.platform.app.InstrumentationRegistry; +//import androidx.test.ext.junit.runners.AndroidJUnit4; +import androidx.test.runner.AndroidJUnit4; + +import org.junit.Rule; +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.junit.Assert.*; +import androidx.test.ext.junit.rules.ActivityScenarioRule; + +/** + * Instrumented test, which will execute on an Android device. + * + * @see Testing documentation + */ +@RunWith(AndroidJUnit4.class) +public class InstrumentedGameTests { + + + @Rule + public ActivityScenarioRule activityRule = + new ActivityScenarioRule<>(MainActivity.class); + + private void play() { + Espresso.onView(ViewMatchers.withId(R.id.play_button)).perform(ViewActions.click()); + } + + // test that the player can shoot + @Test + public void testShoot() { + play(); + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + Player play = new Player(5,5,0,0,100,100, appContext.getResources()); + play.shootNewBullet(); + assertEquals(play.bulletList.size(), 1); + + } + + /** + * Test if a bullet correctly collides with an enemy + * Creates a player and enemy that are in line vertically, the player then shoots, then checks if the bullet is collided + */ + @Test + public void testCollision() { + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + Player play = new Player(10, 10, 0, 0, 100, 100, appContext.getResources()); + Enemy enemy = new Enemy(10, 10, 0, 0, 100, 100, appContext.getResources()); + + play.shootNewBullet(); + assertTrue(play.bulletList.get(0).checkForCollision(enemy)); + } + + + + + +} \ No newline at end of file diff --git a/app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedLevelOneTest.java b/app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedLevelOneTest.java new file mode 100644 index 0000000..790bee9 --- /dev/null +++ b/app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedLevelOneTest.java @@ -0,0 +1,39 @@ +package com.example.a8_bitinvader; + +import android.content.Context; +import android.content.res.Resources; +import android.media.AudioManager; +import android.view.MotionEvent; +import android.view.View; + +import androidx.test.espresso.Espresso; +import androidx.test.espresso.ViewAssertion; +import androidx.test.espresso.action.ViewActions; +import androidx.test.espresso.assertion.PositionAssertions; +import androidx.test.espresso.assertion.ViewAssertions; +import androidx.test.espresso.matcher.ViewMatchers; +import androidx.test.platform.app.InstrumentationRegistry; +//import androidx.test.ext.junit.runners.AndroidJUnit4; +import androidx.test.runner.AndroidJUnit4; + +import org.junit.Rule; +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.junit.Assert.*; +import androidx.test.ext.junit.rules.ActivityScenarioRule; + +@RunWith(AndroidJUnit4.class) +public class InstrumentedLevelOneTest { + + // test LevelOne Constructor that it creates a non-null LevelOne + @Test + public void LevelOne() + { + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + LevelOne levelOne = new LevelOne(appContext, 100, 100, 3); + assertNotNull(levelOne); + assertTrue(levelOne.enemyArrayList != null); + } + +} diff --git a/app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedLevelTest.java b/app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedLevelTest.java new file mode 100644 index 0000000..d9e2e19 --- /dev/null +++ b/app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedLevelTest.java @@ -0,0 +1,47 @@ +package com.example.a8_bitinvader; + +import android.content.Context; +import android.content.res.Resources; +import android.media.AudioManager; +import android.view.MotionEvent; +import android.view.View; + +import androidx.test.espresso.Espresso; +import androidx.test.espresso.ViewAssertion; +import androidx.test.espresso.action.ViewActions; +import androidx.test.espresso.assertion.PositionAssertions; +import androidx.test.espresso.assertion.ViewAssertions; +import androidx.test.espresso.matcher.ViewMatchers; +import androidx.test.platform.app.InstrumentationRegistry; +//import androidx.test.ext.junit.runners.AndroidJUnit4; +import androidx.test.runner.AndroidJUnit4; + +import org.junit.Rule; +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.junit.Assert.*; +import androidx.test.ext.junit.rules.ActivityScenarioRule; + +@RunWith(AndroidJUnit4.class) +public class InstrumentedLevelTest { + + + // tests Level, tests construct, run(), resume(), and onTouchEvent() + @Test + public void LevelTest() { + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + Level level = new Level(appContext, 100, 100, 4); + assertNotNull(level); + assertNotNull(level.joystick); + assertNotNull(level.player); + + //tests resume() + level.resume(); + assertTrue(level.isRunning == true); + + boolean bool = level.onTouchEvent(MotionEvent.obtain(500, 0, 5, 5, 5, 5)); + assertTrue(level.joystick.getIsPressed() == false); + + } +} diff --git a/app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedMenuTest.java b/app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedMenuTest.java new file mode 100644 index 0000000..4fd9a9a --- /dev/null +++ b/app/src/androidTest/java/com/example/a8_bitinvader/InstrumentedMenuTest.java @@ -0,0 +1,76 @@ +package com.example.a8_bitinvader; + +import android.content.Context; +import android.media.AudioManager; +import android.view.View; + +import androidx.test.espresso.Espresso; +import androidx.test.espresso.ViewAssertion; +import androidx.test.espresso.action.ViewActions; +import androidx.test.espresso.assertion.PositionAssertions; +import androidx.test.espresso.assertion.ViewAssertions; +import androidx.test.espresso.matcher.ViewMatchers; +import androidx.test.platform.app.InstrumentationRegistry; +//import androidx.test.ext.junit.runners.AndroidJUnit4; +import androidx.test.runner.AndroidJUnit4; + +import org.hamcrest.Matcher; +import org.junit.Rule; +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.junit.Assert.*; +import androidx.test.ext.junit.rules.ActivityScenarioRule; + +/** + * Instrumented test, which will execute on an Android device. + * + * @see Testing documentation + */ +@RunWith(AndroidJUnit4.class) +public class InstrumentedMenuTest { + + /** + * Wraps the class to be in the MainActivity Scenario + */ + @Rule + public ActivityScenarioRule activityRule = + new ActivityScenarioRule<>(MainActivity.class); + + + @Test + public void useAppContext() { + // Context of the app under test. + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + assertEquals("com.example.a8_bitinvader", appContext.getPackageName()); + } + + // test the play button goes away once in game + @Test + public void testPlay() { + Espresso.onView(ViewMatchers.withId(R.id.play_button)).perform(ViewActions.click()) + .check(ViewAssertions.doesNotExist()); + } + + @Test + public void testSound() { + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + AudioManager audio = (AudioManager) appContext.getSystemService(Context.AUDIO_SERVICE); + Espresso.onView(ViewMatchers.withId(R.id.mute_button)).perform(ViewActions.click()); + + int currentVolume = audio.getStreamVolume(AudioManager.STREAM_MUSIC); + assertEquals(currentVolume, 0); + } + +// @Rule +// public ActivityScenarioRule popUpActivity= new ActivityScenarioRule<>(PopUpWindow.class); + @Test + public void testLeaderBoard() { + Espresso.onView(ViewMatchers.withId(R.id.leaderboard_button)).perform(ViewActions.click()); + Espresso.onView(ViewMatchers.withId(R.id.popup_text)) + .check(ViewAssertions + .matches(ViewMatchers.isDisplayed())); + } + + +} \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..839e1dc --- /dev/null +++ b/app/src/main/AndroidManifest.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/cpp/Bullet.h b/app/src/main/cpp/Bullet.h new file mode 100644 index 0000000..86d554d --- /dev/null +++ b/app/src/main/cpp/Bullet.h @@ -0,0 +1,55 @@ +// +// Created by Nathan Strahs on 4/24/23. +// + +#ifndef GROUP5PROJECT_BULLET_H +#define GROUP5PROJECT_BULLET_H + +#include "Sprite.h" + + +class Bullet: Sprite { +/** + * Creates an instance of a bullet with an initial position and velocity. + * @param xPos Starting x position + * @param yPos Starting y position + * @param xVel X velocity of the bullet + * @param yVel Y velocity of the bullet + * @param screenWidth The screen width + * @param screenHeight The screen height + * @param res {@link Resources} object + */ +public: +Bullet(int xPos, int yPos, int xVel, int yVel, int screenWidth, int screenHeight): Sprite(xPos, yPos, xVel, yVel, screenWidth, screenHeight) { + + spriteHeight = 64; + spriteWidth = 64; + } + +/** + * Checks if the bullet is still on screen + * @return True if the bullet is off the view screen + */ +bool isOffScreen() { + return (yPos + spriteHeight < 0); +} + +/** + * Checks for collision between this bullet and sprite + * @param sprite any sprite on the screen + * @return true if this bullet collides with sprite + */ +bool checkForCollision(Sprite sprite) { + int xPosMid = xPos + spriteWidth / 2; + if( (xPosMid >= sprite.xPos + && xPosMid <= sprite.xPos + sprite.spriteWidth + && yPos <= sprite.yPos + sprite.spriteHeight + && yPos + spriteHeight >= sprite.yPos) ) { + return true; + } + return false; + } +}; + + +#endif //GROUP5PROJECT_BULLET_H diff --git a/app/src/main/cpp/CMakeLists.txt b/app/src/main/cpp/CMakeLists.txt new file mode 100644 index 0000000..4dd30d0 --- /dev/null +++ b/app/src/main/cpp/CMakeLists.txt @@ -0,0 +1,30 @@ +# For more information about using CMake with Android Studio, read the +# documentation: https://d.android.com/studio/projects/add-native-code.html + +# Sets the minimum version of CMake required to build the native library. + +cmake_minimum_required(VERSION 3.22.1) + +add_library( + native-lib + SHARED + native-lib.cpp +) + +add_library( + app-glue + STATIC + ${ANDROID_NDK}/sources/android/native_app_glue/android_native_app_glue.c ) + +find_library( + native-lib + log +) + + + +target_link_libraries( + native-lib + app-glue + ${log.lib} +) \ No newline at end of file diff --git a/app/src/main/cpp/Sprite.h b/app/src/main/cpp/Sprite.h new file mode 100644 index 0000000..561abd5 --- /dev/null +++ b/app/src/main/cpp/Sprite.h @@ -0,0 +1,77 @@ +// +// Created by Nathan Strahs on 4/19/23. +// + +#ifndef GROUP5PROJECT_SPRITE_H +#define GROUP5PROJECT_SPRITE_H +class Sprite { +public: + /** X and Y position of the sprite */ + int xPos, yPos; + + /** X and Y velocity of the sprite */ + int xVel, yVel; + + /** Screen size */ + int screenWidth, screenHeight; + + /** + * @param xPos initial x position of Sprite + * @param yPos initial y position of Sprite + * @param xVel initial x velocity of Sprite + * @param yVel initial y velocity of Sprite + */ + Sprite(int xPos, int yPos, int xVel, int yVel, int screenWidth, int screenHeight) + { + this->xPos = xPos; + this->yPos = yPos; + this->xVel = xVel; + this->yVel = yVel; + + this->screenWidth = screenWidth; + this->screenHeight = screenHeight; + } + /** + * @return height of the sprite + */ + int getSpriteHeight() + { + return spriteHeight; + } +/** + * @return width of the sprite + */ +int getSpriteWidth() + { + return spriteWidth; + } + /** + * + * @param xx + * @param yy + * @return True if xx and yy are in the current sprite + */ + // IMPLEMENT THIS LATER TO CHECK FOR COLLISION WITH PASSING BULLET OBJECTS + bool checkForCollision(int xx, int yy) + { + //implement + if((xx < (xPos+spriteWidth) && xx > xPos) && (yy < (yPos+spriteHeight) && yy > yPos)) + { + return true; + } + return false; + } + /** + * Updates the sprite to move according to a given velocity + */ +void update() { + xPos += xVel; + yPos += yVel; + } + int spriteHeight = 128, spriteWidth = 128; + + +}; + + +#endif //GROUP5PROJECT_SPRITE_H diff --git a/app/src/main/cpp/native-lib.cpp b/app/src/main/cpp/native-lib.cpp new file mode 100644 index 0000000..abb6a22 --- /dev/null +++ b/app/src/main/cpp/native-lib.cpp @@ -0,0 +1,113 @@ +#include +#include +#include +#include +#include +#include "Sprite.h" +#include "Bullet.h" +static std::vector scores; +static int totalScore; + + +extern "C" +JNIEXPORT void JNICALL +/** + * keeps a local copy of the player scores (will not save after closing the file) + * @param env + * @param thiz + * @param value + * + */ +Java_com_example_a8_1bitinvader_Level_pushScore(JNIEnv *env, jobject thiz, jint value) { + if(value >= scores[4]){ + scores.pop_back(); + scores.push_back(value); + } + std::sort(scores.begin(),scores.end()); +} + +extern "C" +JNIEXPORT jint JNICALL +/** + * retrieves a copy of the local score at some specified index + * @param env + * @param thiz + * @param index + * @return the value of that particular run + */ +Java_com_example_a8_1bitinvader_Level_getScore(JNIEnv *env, jobject thiz, jint index) { + if (index >= scores.size() && index <= 0) + return 0; + else + return scores[index]; +} + +//when you pull, please delete your .gradle folder, and build folder(this one is in app folder), and rebuild the app, there is some issue with the NDK and gradle not able to include all the c++ libraries correctly. +/** + * uses the bullet class to calculate the collision + * @param bullet + * @param sprite + * @return a boolean for the collision + */ +bool checkForCollision(Bullet bullet, Sprite sprite) { + return bullet.checkForCollision(sprite); +} + + + +/** + * Calcuates whether the bullet (what this is used for) is offscreen + * @param yPos + * @param screenHeight + * @return a boolean representing whether the bullet is offscreen + */ +extern "C" +JNIEXPORT jboolean JNICALL +Java_com_example_a8_1bitinvader_MainActivity_isOffScreen(JNIEnv *env, jobject thiz, jint yPos, jint screenHeight) { + return (yPos + screenHeight < 0); +} + + +/** Creates a sprite and bullet from all of its attributes and uses them to use the bullet class' claculates for collisions + * + * @param env + * @param thiz + * @param b_x_pos + * @param b_y_pos + * @param b_x_vel + * @param b_y_vel + * @param b_screen_width + * @param b_screen_height + * @param s_x_pos + * @param s_y_pos + * @param s_x_vel + * @param s_y_vel + * @param s_screen_width + * @param s_screen_height + * @return boolean for the event of a collision + */ + extern "C" +JNIEXPORT jboolean JNICALL +Java_com_example_a8_1bitinvader_Level_checkForCollision(JNIEnv *env, jobject thiz, jint b_x_pos, + jint b_y_pos, jint b_x_vel, jint b_y_vel, + jint b_screen_width, jint b_screen_height, + jint s_x_pos, jint s_y_pos, jint s_x_vel, + jint s_y_vel, jint s_screen_width, + jint s_screen_height) { + Bullet bullet = Bullet(b_x_pos, b_y_pos, b_x_vel, b_y_vel, b_screen_width, b_screen_height); + Sprite sprite = Sprite(s_x_pos, s_y_pos, s_x_vel, s_y_vel, s_screen_width, s_screen_height); + return checkForCollision(bullet, sprite); +} +extern "C" +JNIEXPORT jint JNICALL +/** + * keeps track of the total number of player kills + * @param env + * @param thiz + * @param points + * @return number of player kills + */ +Java_com_example_a8_1bitinvader_Level_playerKills(JNIEnv *env, jobject thiz, jint points = 1) { + totalScore+=points; + return totalScore; +} diff --git a/app/src/main/ic_launcher-playstore.png b/app/src/main/ic_launcher-playstore.png new file mode 100644 index 0000000000000000000000000000000000000000..412686339e01537531374fe0e304a8d9e1f42170 GIT binary patch literal 7908 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 sprite.xPos + && xPosMid <= sprite.xPos + sprite.spriteWidth + && yPos <= sprite.yPos + sprite.spriteHeight + && yPos + spriteHeight >= sprite.yPos) ) { + return true; + } + return false; + } +} diff --git a/app/src/main/java/com/example/a8_bitinvader/Enemy.java b/app/src/main/java/com/example/a8_bitinvader/Enemy.java new file mode 100644 index 0000000..3d4f15b --- /dev/null +++ b/app/src/main/java/com/example/a8_bitinvader/Enemy.java @@ -0,0 +1,57 @@ +package com.example.a8_bitinvader; + +import android.content.res.Resources; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; + +import java.util.ArrayList; +import java.util.Random; + +public class Enemy extends Sprite{ + + /** Health of player */ + private int health = 1; + + /** Possible enemy sprites */ + private final int[] SpriteImages = + { + R.drawable.enemy1, + R.drawable.enemy5, + R.drawable.enemy3, + R.drawable.enemy4, + }; + + /** + * Initialize an enemy with the given coordinates and initial velocity + * @param xPos X point + * @param yPos Y point + * @param xVel X velocity + * @param yVel Y velocity + * @param res Resource object + */ + public Enemy(int xPos, int yPos, int xVel, int yVel, int screenWidth, int screenHeight, Resources res) { + super(xPos, yPos, xVel, yVel, screenWidth, screenHeight); + this.xPos = xPos; + this.yPos = yPos; + + Random rand = new Random(); + int randInt = rand.nextInt(SpriteImages.length); + spriteImage = BitmapFactory.decodeResource(res, SpriteImages[randInt]); + spriteImage = Bitmap.createScaledBitmap(spriteImage, spriteWidth, spriteHeight, false); + } + + /** + * Constructor for testing + * @param xPos + * @param yPos + * @param xVel + * @param yVel + * @param screenWidth + * @param screenHeight + */ + public Enemy(int xPos, int yPos, int xVel, int yVel, int screenWidth, int screenHeight) { + super(xPos, yPos, xVel, yVel, screenWidth, screenWidth); + this.xPos = xPos; + this.yPos = yPos; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/example/a8_bitinvader/GameActivity.java b/app/src/main/java/com/example/a8_bitinvader/GameActivity.java new file mode 100644 index 0000000..132fa25 --- /dev/null +++ b/app/src/main/java/com/example/a8_bitinvader/GameActivity.java @@ -0,0 +1,50 @@ +package com.example.a8_bitinvader; + +import androidx.appcompat.app.AppCompatActivity; +import android.os.Bundle; +import android.content.Intent; +import android.util.Log; +import android.graphics.Point; // necessary to get ScreenWidth and ScreenHeight +import android.view.WindowManager; +public class GameActivity extends AppCompatActivity { + private Level currLevel; + + /** + * Create an instance of the activity based on the saved state. Then initialize the gameview and display the gameview onto the screen + * @param savedInstanceState The cached game state + */ + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + /** puts app into fullscreen when GameActivity is running */ + getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); + + Point point = new Point(); + getWindowManager().getDefaultDisplay().getSize(point); + Intent startIntent = getIntent(); + + /** get number of player lives from MainActivity */ + int inputLives = startIntent.getIntExtra("inputLives", 3); + currLevel = new LevelOne(this, point.x, point.y, inputLives); + setContentView(currLevel); + } + + /** + * Pause the game + */ + @Override + protected void onPause() { + super.onPause(); + currLevel.pause(); + } + + /** + * Resume the game + */ + @Override + protected void onResume() { + super.onResume(); + currLevel.resume(); + } +} diff --git a/app/src/main/java/com/example/a8_bitinvader/GameOverActivity.java b/app/src/main/java/com/example/a8_bitinvader/GameOverActivity.java new file mode 100644 index 0000000..714045c --- /dev/null +++ b/app/src/main/java/com/example/a8_bitinvader/GameOverActivity.java @@ -0,0 +1,80 @@ +package com.example.a8_bitinvader; + +import androidx.appcompat.app.AppCompatActivity; +import android.content.Intent; +import android.os.Bundle; +import android.view.View; +import android.widget.LinearLayout; +import android.widget.ImageView; +import android.widget.Button; +import android.content.Context; +import android.media.AudioManager; +import android.view.animation.Animation; +import android.view.animation.AnimationUtils; +import android.media.MediaPlayer; +import android.content.Context; +import android.widget. TextView; + + +public class GameOverActivity extends AppCompatActivity { + + Animation animation; + + private ScoreFileWriter scoreFW; + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + setContentView(R.layout.game_finish); + Context context = getApplicationContext(); + scoreFW = new ScoreFileWriter(context); + + /** the if statement below hides the action bar + * https://www.geeksforgeeks.org/different-ways-to-hide-action-bar-in-android-with-examples/ + */ + if (getSupportActionBar() != null) { + getSupportActionBar().hide(); + } + + /** Goes back to GameActivity once replay button is pressed */ + findViewById(R.id.replay_button).setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + startActivity(new Intent(GameOverActivity.this, GameActivity.class)); + } + }); + + /** Goes back to MainActivity Page when home button is pressed */ + findViewById(R.id.home_button).setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + startActivity(new Intent(GameOverActivity.this, MainActivity.class)); + } + }); + + /** Display Player's Score (number of kills) from previous round */ + Intent intent = getIntent(); + TextView textView = (TextView) findViewById(R.id.player_score); + String score = intent.getStringExtra("score"); + textView.setText(score); + + + //code to add the highscore on final page + LinearLayout linearLayout = findViewById(R.id.linearLayoutScore); + View view; + + + String[] highScores = scoreFW.getTopScores(); + + for(int i = 0; i < 10; i ++){ + view = linearLayout.getChildAt(i); + + if(view instanceof TextView) { + TextView scoreText = (TextView) view; + scoreText.setText(highScores[i]); + } + } + + } + +} \ No newline at end of file diff --git a/app/src/main/java/com/example/a8_bitinvader/Joystick.java b/app/src/main/java/com/example/a8_bitinvader/Joystick.java new file mode 100644 index 0000000..79bddb2 --- /dev/null +++ b/app/src/main/java/com/example/a8_bitinvader/Joystick.java @@ -0,0 +1,180 @@ +package com.example.a8_bitinvader; + +import android.graphics.Canvas; +import android.graphics.Color; +import android.graphics.Paint; + +public class Joystick { + private static final double MAX_SPEED = 3; + private int outerCircleCenterX; + private int outerCircleCenterY; + private int innerCircleCenterX; + private int innerCircleCenterY; + private int outerCircleRadii; + private int innerCircleRadii; + private Paint innerCirclePaint; + private Paint outerCirclePaint; + + private double joystickCenterToTouchDistance; + private boolean isPressed; + private double actuatorX; + private double actuatorY; + + public double XVelocity; + public double YVelocity; + + /** + * Constructs a Joystick instance + * @param CenterPositionX X position of the joystick + * @param CenterPositionY Y position of the joystick + * @param outerCircleRad Radius of outer circle of joystick + * @param innerCircleRad Radius of inner circle of joystick + */ + public Joystick(int CenterPositionX, int CenterPositionY, int outerCircleRad, int innerCircleRad){ + outerCircleCenterX = CenterPositionX; + outerCircleCenterY = CenterPositionY; + innerCircleCenterX = CenterPositionX; + innerCircleCenterY = CenterPositionY; + outerCircleRadii = outerCircleRad; + innerCircleRadii = innerCircleRad; + + outerCirclePaint= new Paint(); + outerCirclePaint.setColor(Color.CYAN); + outerCirclePaint.setStyle(Paint.Style.STROKE); + outerCirclePaint.setStrokeWidth(5); + + innerCirclePaint= new Paint(); + innerCirclePaint.setColor(Color.WHITE); + innerCirclePaint.setStyle(Paint.Style.FILL_AND_STROKE); + } + + /** + * Constructor of Joystick instance FOR TESTING + * @param CenterPositionX X position of the joystick + * @param CenterPositionY Y position of the joystick + * @param outerCircleRad Radius of outer circle of joystick + * @param innerCircleRad Radius of inner circle of joystick + */ + public Joystick(int CenterPositionX, int CenterPositionY, int outerCircleRad, int innerCircleRad, boolean test) { + outerCircleCenterX = CenterPositionX; + outerCircleCenterY = CenterPositionY; + innerCircleCenterX = CenterPositionX; + innerCircleCenterY = CenterPositionY; + outerCircleRadii = outerCircleRad; + innerCircleRadii = innerCircleRad; + } + + /** + * Draws the joystick onto the given canvas + * @param canvas The canvas object to draw on + */ + public void draw(Canvas canvas) { + //outer + canvas.drawCircle( + outerCircleCenterX, + outerCircleCenterY, + outerCircleRadii, + outerCirclePaint + ); + //inner + canvas.drawCircle( + innerCircleCenterX, + innerCircleCenterY, + innerCircleRadii, + innerCirclePaint + ); + } + + /** + * Updates the given joystick and updates the x and y velocities that are outputted from user input + * @param joystick Joystick instance to update + */ + public void update(Joystick joystick) { + XVelocity = joystick.getActuatorX() * MAX_SPEED; + YVelocity = joystick.getActuatorY() * MAX_SPEED; + updateInnerCirclePosition(); + } + + /** + * Updates the inner circle of the joystick + */ + private void updateInnerCirclePosition() { + innerCircleCenterX = (int) (outerCircleCenterX + actuatorX * outerCircleRadii); + innerCircleCenterY = (int) (outerCircleCenterY + actuatorY * outerCircleRadii); + } + + /** + * Checks whether the joystick has been touched by the user + * @param TouchPosX X position of the user's touch + * @param TouchPosY Y position of the user's touch + * @return True if the joystick has been pressed + */ + public boolean isPressed(double TouchPosX,double TouchPosY) { + joystickCenterToTouchDistance = Math.sqrt(Math.pow(outerCircleCenterX-TouchPosX,2) + + Math.pow(outerCircleCenterY-TouchPosY,2) + ); + return joystickCenterToTouchDistance < outerCircleRadii; + } + + /** + * Set the joystick to be pressed or not pressed + * @param isPressed Boolean for whether the joystick is pressed + */ + public void setIsPressed(boolean isPressed) { + this.isPressed = isPressed; + } + + /** + * + * @return True if the joystick is pressed + */ + public boolean getIsPressed() { + return isPressed; + } + + /** + * Sets the value of actuation depending on how far away the user touches from the center + * of the joystick. + * @param TouchPosX X position of the user touch + * @param TouchPosY Y position of the user touch + */ + public void setActuator(double TouchPosX,double TouchPosY) { + double deltaX = TouchPosX - outerCircleCenterX; + double deltaY = TouchPosY - outerCircleCenterY; + double deltaDistance = Math.sqrt(Math.pow(deltaX, 2) + Math.pow(deltaY,2)); + + if(deltaDistance < outerCircleRadii) { + actuatorX = deltaX/outerCircleRadii; + actuatorY = deltaY/outerCircleRadii; + }else { + actuatorX = deltaX/deltaDistance; + actuatorY = deltaY/deltaDistance; + } + + } + + /** + * Resets the value of actuation to 0 + */ + public void resetActuator() { + actuatorX = 0.0; + actuatorY = 0.0; + } + + /** + * + * @return The x value of actuation + */ + public double getActuatorX() { + return actuatorX; + } + + /** + * + * @return The Y value of actuation + */ + public double getActuatorY() { + return actuatorY; + } + +} diff --git a/app/src/main/java/com/example/a8_bitinvader/Level.java b/app/src/main/java/com/example/a8_bitinvader/Level.java new file mode 100644 index 0000000..accd4e1 --- /dev/null +++ b/app/src/main/java/com/example/a8_bitinvader/Level.java @@ -0,0 +1,340 @@ +package com.example.a8_bitinvader; + +import android.content.Context; +import android.content.Intent; +import android.graphics.BitmapFactory; +import android.graphics.Bitmap; +import android.media.MediaPlayer; +import android.util.Log; +import android.view.MotionEvent; +import android.view.SurfaceView; +import android.graphics.Canvas; +import android.graphics.Paint; // necessary when drawing Bitmaps with Canvas objects +import java.util.ArrayList; +import java.util.Random; + +public class Level extends SurfaceView implements Runnable { + private Thread thread; + private ScoreFileWriter scoreFW = new ScoreFileWriter(getContext()); + private Context context; + public boolean isRunning; + public int screenWidth, screenHeight; + private float screenRatioWidth, screenRatioHeight; + private Background background1, background2; + private Paint paint; + public int inputLives; + public int minEnemyVelocity = 6; + public int maxEnemyVelocity = 11; + + private MediaPlayer explosionSound; + + /** The {@link Joystick} */ + Joystick joystick; + + /** The {@link Player} */ + Player player; + + /** The {@link Enemy} */ + ArrayList enemyArrayList; + + int bulletCycleDelay = 0; + + /** + * Create a {@link Level} scaled based on the device size which includes the background, player, joystick, and enemies + * + * @param context Context of the device + * @param screenWidth Screen width in pixels + * @param screenHeight Screen height in pixels + */ + public Level(Context context, int screenWidth, int screenHeight, int inputLives) { + super(context); + this.context = context; + this.screenWidth = screenWidth; + this.screenHeight = screenHeight; + this.inputLives = inputLives; + + screenRatioWidth = 1080f / screenWidth; + screenRatioHeight = 1920f / screenHeight; + + background1 = new Background(screenWidth, screenHeight, getResources()); + background2 = new Background(screenWidth, screenHeight, getResources()); + explosionSound = MediaPlayer.create(context, R.raw.explosion); + + background2.yPos = -screenHeight; + + paint = new Paint(); + + /** Create Joystick and Player Objects */ + joystick = new Joystick(screenWidth / 2, screenHeight * 9 / 10, 130, 40); + player = new Player(screenWidth / 2, screenHeight * 7 / 10, 0, 0, screenWidth, screenHeight, getResources()); + player.playerLives = inputLives; + } + + /** + * Runs the app by continuously calling private methods {@link Void update()} and {@link Void draw()} based on whether the app {@link Boolean isRunning} + */ + @Override + public void run() { + while (isRunning) { + update(); + draw(); + + /** creates 30 millisecond delay in between draw() and update() */ + try { + Thread.sleep(30); + } catch (InterruptedException e) { + throw new RuntimeException(e); + } + } + } + + /** + * Updates all animated parts necessary for GameActivity + */ + private void update() { + backgroundUpdate(); + + System.loadLibrary("native-lib"); + + /** + * Updates player position based on Joystick input + */ + player.update((int) joystick.XVelocity, (int) joystick.YVelocity); + joystick.update(joystick); + + for (Enemy enemy : enemyArrayList) { + enemy.update(); + + /** + * If player collides with enemy, game over + */ + int playerMiddleX = player.xPos + (player.spriteWidth / 2); + int playerMiddleY = player.yPos + (player.spriteHeight / 2); + if(playerMiddleX > enemy.xPos && + playerMiddleX < enemy.xPos + enemy.spriteWidth && + playerMiddleY > enemy.yPos && + playerMiddleY < enemy.yPos + enemy.spriteHeight){ + explosionSound.start(); + player.playerLives = 0; + } + + /** + * Once an enemy exits the screen, the player loses a life, + * and a new enemy is drawn from the top + * Once player has 0 lives, game over + */ + if (enemy.yPos > screenHeight) { + player.playerLives--; + + Random rand = new Random(); + Enemy replacement = new Enemy(rand.nextInt(3 * screenWidth / 4), 0, 0, minEnemyVelocity + rand.nextInt(maxEnemyVelocity), screenWidth, screenHeight, getResources()); + enemyArrayList.set(enemyArrayList.indexOf(enemy), replacement); + } + + if (player.playerLives <= 0) { + /** switches to the MainActivity page */ + Intent intent = new Intent(getContext(), GameOverActivity.class); + int calcScore = player.playerKills/inputLives; + /** Sends Player's Score to GameOverActivity and Records it to Scores file */ + scoreFW.writePtsToFile(calcScore, "name"); + String score = Integer.toString(calcScore); + intent.putExtra("score", score); + context.startActivity(intent); + } + } + boolean ndkCollision; + /** + * Checks for collision between player bullets and enemies + */ + for (int ii = 0; ii < player.bulletList.size(); ii++) { + if (player.bulletList.get(ii).isOffScreen()) { + player.bulletList.remove(player.bulletList.get(ii)); + ii -= 1; + } else { + player.bulletList.get(ii).update(); + for (int jj = 0; jj < enemyArrayList.size(); jj++) { + ndkCollision = false; + if (ii > -1) { + ndkCollision = checkForCollision(player.bulletList.get(ii).xPos, player.bulletList.get(ii).yPos, player.bulletList.get(ii).xVel, player.bulletList.get(ii).yVel, player.bulletList.get(ii).screenWidth, player.bulletList.get(ii).screenHeight, enemyArrayList.get(jj).xPos, enemyArrayList.get(jj).yPos, enemyArrayList.get(jj).xVel, enemyArrayList.get(jj).yVel, enemyArrayList.get(jj).screenWidth, enemyArrayList.get(jj).screenHeight); + } + /** old condition implemented with new NDK collision + * player.bulletList.get(ii).checkForCollision(enemyArrayList.get(jj)) + */ + if (ii > -1 && ndkCollision) { + player.bulletList.remove(player.bulletList.get(ii)); + + /** Replace dead enemy with new enemy */ + Random rand = new Random(); + Enemy replacement = new Enemy(rand.nextInt(3 * screenWidth / 4), 0, 0, minEnemyVelocity + rand.nextInt(maxEnemyVelocity), screenWidth, screenHeight, getResources()); + enemyArrayList.set(jj, replacement); + ii -= 1; + + /** Add to player's kill count */ + player.playerKills++; + playerKills(1); + explosionSound.start(); + } + } + } + } + } + + /** + * Updates the position of the backgrounds to give the illusion of an infinitely moving background. + * Cycles the background within a treadmill fashion, placing one of the + * two backgrounds behind each other while slowly moving both upward. + */ + void backgroundUpdate() { + background1.yPos += (int) (5 * screenRatioHeight); + background2.yPos += (int) (5 * screenRatioHeight); + + if (background1.yPos > screenHeight) { + background1.yPos = -screenHeight; + } + + if (background2.yPos > screenHeight) { + background2.yPos = -screenHeight; + } + } + + /** + * Initializes and draws the backgrounds at a given x position and y position + */ + private void draw() { + if (getHolder().getSurface().isValid()) { + Canvas canvas = getHolder().lockCanvas(); + + /** draw background */ + canvas.drawBitmap(background1.background, background1.xPos, background1.yPos, paint); + canvas.drawBitmap(background2.background, background2.xPos, background2.yPos, paint); + + /** draw player and enemies */ + canvas.drawBitmap(player.spriteImage, player.xPos, player.yPos, paint); + for (Enemy enemy : enemyArrayList) { + canvas.drawBitmap(enemy.spriteImage, enemy.xPos, enemy.yPos, paint); + } + + /** draw bullets */ + for (Bullet bullet : player.bulletList) { + canvas.drawBitmap(bullet.spriteImage, bullet.xPos, bullet.yPos, paint); + } + joystick.draw(canvas); + + + /** + * Only fires a new bullet every 20 loops of run() + * 20 * 30ms delay = 0.6 seconds + */ + bulletCycleDelay++; + if (bulletCycleDelay == 20) { + bulletCycleDelay = 0; + player.shootNewBullet(); + } + + /** draw player lives */ + Bitmap heartImage = BitmapFactory.decodeResource(getResources(), R.drawable.heart); + heartImage = Bitmap.createScaledBitmap(heartImage, 128, 128, false); + for (int i = 0; i < player.playerLives; i++) { + canvas.drawBitmap(heartImage, 50 + i * 128, 100, paint); + } + + getHolder().unlockCanvasAndPost(canvas); + } + } + + /** + * https://developer.android.com/reference/java/lang/Thread#start() + * initializes a thread and starts it, automatically calling the overridden run() method above. + */ + public void resume() { + isRunning = true; + thread = new Thread(this); + thread.start(); + } + + /** + * https://developer.android.com/reference/java/lang/Thread#join() + * waits for thread to die if game is paused + */ + public void pause() { + try { + isRunning = false; + thread.join(); + explosionSound.release(); + explosionSound = null; + } catch (InterruptedException e) { + throw new RuntimeException(e); + } + } + + /** + * Keeps track of user touch events to trigger joystick movement and thus trigger player movement. + * This function calls the {@link Joystick} object class to change player movement as the user must touch + * the joystick specifically for movement. + * + * @param event The {@link MotionEvent} that the user triggers + * @return True if there is an action + */ + @Override + public boolean onTouchEvent(MotionEvent event) { + switch (event.getAction()) { + case MotionEvent.ACTION_DOWN: + if (joystick.isPressed((double) event.getX(), (double) event.getY())) { + joystick.setIsPressed(true); + } + return true; + case MotionEvent.ACTION_MOVE: + if (joystick.getIsPressed()) { + joystick.setActuator((double) event.getX(), (double) event.getY()); + } + return true; + case MotionEvent.ACTION_UP: + joystick.setIsPressed(false); + joystick.resetActuator(); + return true; + } + return super.onTouchEvent(event); + } + + /** + * Calculates whether a bullet has collided with an enemy sprite, and it passes in all the attributes + * of the sprite and bullet to allow the calculations to be done in c++ + * + * @param b_xPos + * @param b_yPos + * @param b_xVel + * @param b_yVel + * @param b_screenWidth + * @param b_screenHeight + * @param s_xPos + * @param s_yPos + * @param s_xVel + * @param s_yVel + * @param s_screenWidth + * @param s_screenHeight + * @return a boolean to tell whether the collision has happened + */ + public native boolean checkForCollision(int b_xPos, int b_yPos, int b_xVel, int b_yVel, int b_screenWidth, int b_screenHeight, int s_xPos, int s_yPos, int s_xVel, int s_yVel, int s_screenWidth, int s_screenHeight); + + /** + * Function to keep track of the players kills in c++ + * + * @param points represents the number of points the enemy counts as (1 per enemy) + * @return the total number of points + */ + public native int playerKills(int points); + + /** + * adds a score to a local copy of the best runs (does not save) + * @param value + */ + + private native void pushScore(int value); + + /** + * returns the index-th best score on teh local copy (does not save) + * @param index + * @return that best score + */ + private native int getScore(int index); +} \ No newline at end of file diff --git a/app/src/main/java/com/example/a8_bitinvader/LevelOne.java b/app/src/main/java/com/example/a8_bitinvader/LevelOne.java new file mode 100644 index 0000000..0a7f757 --- /dev/null +++ b/app/src/main/java/com/example/a8_bitinvader/LevelOne.java @@ -0,0 +1,27 @@ +package com.example.a8_bitinvader; + +import android.content.Context; + +import java.util.ArrayList; +import java.util.Random; + +public class LevelOne extends Level { + + public int enemiesKilled; + + public LevelOne(Context context, int screenWidth, int screenHeight, int inputLives){ + super(context, screenWidth, screenHeight, inputLives); + initEnemies(); + enemiesKilled = 0; + } + + void initEnemies(){ + Random rand = new Random(); + + /** spawn enemies with random x position and random velocity */ + enemyArrayList = new ArrayList(4); + for(int ii = 0; ii < 4; ii++){ + enemyArrayList.add( new Enemy(rand.nextInt(7*screenWidth/8), -10, 0, minEnemyVelocity + rand.nextInt(maxEnemyVelocity), screenWidth, screenHeight, getResources())); + } + } +} diff --git a/app/src/main/java/com/example/a8_bitinvader/MainActivity.java b/app/src/main/java/com/example/a8_bitinvader/MainActivity.java new file mode 100644 index 0000000..d5de195 --- /dev/null +++ b/app/src/main/java/com/example/a8_bitinvader/MainActivity.java @@ -0,0 +1,315 @@ +package com.example.a8_bitinvader; + +import androidx.appcompat.app.AppCompatActivity; +import android.content.Intent; +import android.os.Bundle; +import android.view.View; +import android.widget.ImageView; +import android.widget.Button; +import android.content.Context; +import android.media.AudioManager; +import android.view.animation.Animation; +import android.view.animation.AnimationUtils; +import android.media.MediaPlayer; +import android.content.Context; +import android.app.Dialog; +import androidx.viewpager.widget.PagerAdapter; +import androidx.viewpager.widget.ViewPager; +import android.view.ViewGroup; +import androidx.annotation.NonNull; +import android.app.AlertDialog; +import android.content.DialogInterface; +import android.text.SpannableStringBuilder; +import android.text.style.BulletSpan; +import android.text.Spanned; +public class MainActivity extends AppCompatActivity { + Animation animation; + int currentCharacter; + int inputLives = 3; + private MediaPlayer themeSound; + private CharacterPagerAdapter characterPagerAdapter; + private ViewPager characterViewPager; + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + /** initializes information about NDK */ + System.loadLibrary("native-lib"); + + setContentView(R.layout.activity_main); + + /** Initialize the CharacterPagerAdapter */ + characterPagerAdapter = new CharacterPagerAdapter(); + characterViewPager = findViewById(R.id.characterViewPager); + characterViewPager.setAdapter(characterPagerAdapter); + + /** Playing Background Music + * Music Download Link: https://hypeddit.com/track/njf8op + */ + themeSound = MediaPlayer.create(this, R.raw.homeaudio); + themeSound.start(); + + /** the if statement below hides the action bar + * https://www.geeksforgeeks.org/different-ways-to-hide-action-bar-in-android-with-examples/ + */ + if (getSupportActionBar() != null) { + getSupportActionBar().hide(); + } + + /** Initializes 8-bit Invaders Logo */ + ImageView logo = (ImageView) findViewById(R.id.image_logo); + logo.setImageResource(R.drawable.invaderslogo); + + /** Creates new Intent and starts GameActivity if 'play' is pressed on MainActivity screen. */ + findViewById(R.id.play_button).setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + /** pass number of player lives to gameActivity */ + Intent intentStart = new Intent(MainActivity.this, GameActivity.class); + intentStart.putExtra("inputLives", inputLives); + Player.setSelectedCharacterIndex(characterViewPager.getCurrentItem()); + startActivity(intentStart); + } + }); + + findViewById(R.id.help_button).setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + showHelpDialog(); + } + }); + + /** Creates new Intent and Mutes Device Audio if mute button is pressed on MainActivity screen + * Reference: https://www.youtube.com/watch?v=_Klq62-me8s&ab_channel=AppleCoders + * Reference: https://developer.android.com/reference/android/media/MediaPlayer */ + findViewById(R.id.mute_button).setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + /** Declare an audio manager */ + AudioManager audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE); + /** + *A DJUST_MUTE => mutes the device + * FLAG_SHOW_UI => Show changes made to the volume bar + */ + audioManager.adjustVolume (AudioManager.ADJUST_MUTE, AudioManager.FLAG_SHOW_UI); + } + }); + + + /** Creates new Intent and stars LeaderboardView if the leaderboard button is pressed on the MainActivity Screen */ + findViewById(R.id.leaderboard_button).setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + showLeaderboardDialog(); + } + }); + + findViewById(R.id.lives1).setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + inputLives = 1; + } + }); + findViewById(R.id.lives3).setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + inputLives = 3; + } + }); + findViewById(R.id.lives5).setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + inputLives = 5; + } + }); + + ImageView leftButton = findViewById(R.id.left_button); + leftButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + int currentPosition = characterViewPager.getCurrentItem(); + int maxPosition = characterPagerAdapter.getCount() - 1; + if (currentPosition > 0) { + characterViewPager.setCurrentItem(currentPosition - 1); + } + else { + characterViewPager.setCurrentItem(maxPosition); + } + } + }); + + ImageView rightButton = findViewById(R.id.right_button); + rightButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + int currentPosition = characterViewPager.getCurrentItem(); + int maxPosition = characterPagerAdapter.getCount() - 1; + if (currentPosition < maxPosition) { + characterViewPager.setCurrentItem(currentPosition + 1); + } + else { + characterViewPager.setCurrentItem(0); + } + } + }); + + } + + private class CharacterPagerAdapter extends PagerAdapter { + private int[] characterImages = {R.drawable.player, R.drawable.player2, R.drawable.player3, R.drawable.player4}; + private int selectedCharacterIndex = 0; + + @NonNull + @Override + public Object instantiateItem(@NonNull ViewGroup container, int position) { + ImageView characterImageView = new ImageView(MainActivity.this); + characterImageView.setImageResource(characterImages[position]); + characterImageView.setScaleType(ImageView.ScaleType.CENTER_INSIDE); + container.addView(characterImageView); + return characterImageView; + } + + @Override + public void destroyItem(@NonNull ViewGroup container, int position, @NonNull Object object) { + container.removeView((ImageView) object); + } + + @Override + public int getCount() { + return characterImages.length; + } + + @Override + public boolean isViewFromObject(@NonNull View view, @NonNull Object object) { + return view == object; + } + + /** Add a getter method to retrieve the selected character index */ + public int getSelectedCharacterIndex() { + return selectedCharacterIndex; + } + } + + /** + * Open up the popup window + */ + private void showLeaderboardDialog() { + + Context context = getApplicationContext(); + ScoreFileWriter scoreFw = new ScoreFileWriter(context); + + AlertDialog.Builder builder = new AlertDialog.Builder(this); + builder.setTitle("Leaderboard"); + String[] scores = scoreFw.getTopScores(); + + StringBuilder messageBuilder = new StringBuilder(); + for (String score : scores) { + messageBuilder.append("\u2022 ").append(score).append("\n"); + } + + builder.setMessage(messageBuilder.toString()); + + /** Add an "OK" button to close the dialog */ + builder.setPositiveButton("OK", new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + dialog.dismiss(); /** Close the dialog */ + } + }); + + /** Create and show the dialog */ + AlertDialog leaderboardDialog = builder.create(); + leaderboardDialog.show(); + } + + /** + * Pop Up Window for Help Button + */ + private void showHelpDialog() { + AlertDialog.Builder builder = new AlertDialog.Builder(this); + builder.setTitle("Game Instructions"); + String[] instructions = { + "Choose your character using the left and right arrows on the Main Screen.", + "Select the number of lives you want. The lower the lives, the higher the score multiplier!", + "Use the joystick to move your character. Shoot down as many enemies as possible!", + "Do not crash your spaceship and do not let enemies leave the screen!", + "HAVE FUN!!" + }; + + StringBuilder messageBuilder = new StringBuilder(); + for (String instruction : instructions) { + messageBuilder.append("\u2022 ").append(instruction).append("\n"); + } + + builder.setMessage(messageBuilder.toString()); + + /** Add an "OK" button to close the dialog */ + builder.setPositiveButton("OK", new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + dialog.dismiss(); /** Close the dialog */ + } + }); + + /** Create and show the dialog */ + AlertDialog helpDialog = builder.create(); + helpDialog.show(); + } + + /** This function calls the android NDK to use c++ code */ + + public native boolean isOffScreen(int yPos, int screenHeight); + + @Override + protected void onStart() { + super.onStart(); + } + + /** + * Resume the game + */ + @Override + protected void onResume() { + super.onResume(); + } + + /** + * Pause the game + */ + @Override + protected void onPause() { + super.onPause(); + themeSound.release(); + themeSound = null; + } + + /** + * Stop the game + */ + @Override + protected void onStop() { + super.onStop(); + } + + /** + * Destroy the sprite + */ + @Override + protected void onDestroy() { + super.onDestroy(); + } + + /** + * Restart the game + */ + @Override + protected void onRestart() { + super.onRestart(); + } + + @Override + public void onBackPressed() { + /** Call super.onBackPressed() to perform default back button behavior */ + super.onBackPressed(); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/example/a8_bitinvader/Player.java b/app/src/main/java/com/example/a8_bitinvader/Player.java new file mode 100644 index 0000000..8d551c0 --- /dev/null +++ b/app/src/main/java/com/example/a8_bitinvader/Player.java @@ -0,0 +1,100 @@ +package com.example.a8_bitinvader; + +import android.content.res.Resources; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; + +import java.util.ArrayList; + +public class Player extends Sprite{ + + /** Lives of player */ + public int playerLives = 3; + + /** Player Kills */ + public int playerKills = 0; + + /** Speed */ + public final int SPEED_MULTIPLIER = 10; + + /** Bullet List */ + ArrayList bulletList; + + /** Resources */ + Resources res; + + private static int selectedCharacterIndex; + + /** + * Constructs a new player at given coordinates and + * @param xPos X position of player + * @param yPos Y position of player + * @param xVel X velocity of player + * @param yVel Y velocity of player + * @param res Resource object + */ + public Player(int xPos, int yPos, int xVel, int yVel, int screenWidth, int screenHeight, Resources res) { + super(xPos,yPos,xVel,yVel, screenWidth, screenHeight); + this.xPos = xPos; + this.yPos = yPos; + this.res = res; + + int[] characterImages = {R.drawable.player, R.drawable.player2, R.drawable.player3, R.drawable.player4}; + int characterImageResource = characterImages[selectedCharacterIndex]; + + spriteImage = BitmapFactory.decodeResource(res, characterImageResource); + spriteImage = Bitmap.createScaledBitmap(spriteImage, spriteWidth, spriteHeight, false); + + bulletList = new ArrayList(10); + } + + public static void setSelectedCharacterIndex(int index) { + selectedCharacterIndex = index; + } + + /** + * CONSTRUCTOR FOR TESTINGConstructs a new player at given coordinates and + * @param xPos X position of player + * @param yPos Y position of player + * @param xVel X velocity of player + * @param yVel Y velocity of player + */ + public Player(int xPos, int yPos, int xVel, int yVel, int screenWidth, int screenHeight, boolean test, Resources res, int selectedCharacterIndex) { + super(xPos,yPos,xVel,yVel, screenWidth, screenHeight); + this.xPos = xPos; + this.yPos = yPos; + + spriteImage = Bitmap.createScaledBitmap(spriteImage, spriteWidth, spriteHeight, false); + bulletList = new ArrayList(10); + } + + /** + * Update the position of the player based on joystick offset + * @param joyStickInputX X input from joystick + * @param joyStickInputY Y input from joystick + */ + public void update(int joyStickInputX, int joyStickInputY){ + xVel = joyStickInputX * SPEED_MULTIPLIER; + yVel = joyStickInputY * SPEED_MULTIPLIER; + + /** calls Sprite update(). Updates xPos and yPos */ + update(); + + /** checks if Player is offscreen. If so, repositions them within the screen */ + if(xPos < 0){ + xPos = 5; + } else if(xPos + spriteWidth > screenWidth){ + xPos = screenWidth - spriteWidth - 5; + } + + if(yPos < 0){ + yPos = 5; + } else if(yPos + spriteHeight > screenHeight){ + yPos = screenHeight - spriteHeight - 5; + } + } + + public void shootNewBullet(){ + bulletList.add(new Bullet(this.xPos + spriteWidth/2, this.yPos, 0, -25, screenWidth, screenWidth, res)); + } +} diff --git a/app/src/main/java/com/example/a8_bitinvader/PopUpWindow.java b/app/src/main/java/com/example/a8_bitinvader/PopUpWindow.java new file mode 100644 index 0000000..546789d --- /dev/null +++ b/app/src/main/java/com/example/a8_bitinvader/PopUpWindow.java @@ -0,0 +1,43 @@ +package com.example.a8_bitinvader; + +import androidx.appcompat.app.AppCompatActivity; +import android.content.Intent; +import android.os.Bundle; +import android.view.View; +import android.view.Gravity; +import android.view.WindowManager; +import android.widget.ImageView; +import android.widget.Button; +import android.content.Context; +import android.media.AudioManager; +import android.view.animation.Animation; +import android.view.animation.AnimationUtils; +import android.util.DisplayMetrics; +public class PopUpWindow extends AppCompatActivity{ + + /** + * Handles popup windows and sets the game window to scale appropiately + * @param savedInstanceState {@link Bundle} object representing the saved state of the game + */ + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.popup_window); + + DisplayMetrics dm = new DisplayMetrics(); + getWindowManager().getDefaultDisplay().getMetrics (dm); + + int width = dm.widthPixels; + int height = dm.heightPixels; + + getWindow().setLayout((int)(width*.7), (int)(height*.5)); + + WindowManager.LayoutParams params = getWindow().getAttributes(); + params.gravity = Gravity.CENTER; + params.x = 0; + params.y = -20; + + getWindow().setAttributes(params); + } + +} diff --git a/app/src/main/java/com/example/a8_bitinvader/ReverseInterpolator.java b/app/src/main/java/com/example/a8_bitinvader/ReverseInterpolator.java new file mode 100644 index 0000000..490f10f --- /dev/null +++ b/app/src/main/java/com/example/a8_bitinvader/ReverseInterpolator.java @@ -0,0 +1,10 @@ +package com.example.a8_bitinvader; + +import android.view.animation.Interpolator; + +public class ReverseInterpolator implements Interpolator { + @Override + public float getInterpolation(float paramFloat) { + return Math.abs(paramFloat -1f); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/example/a8_bitinvader/ScoreFileWriter.java b/app/src/main/java/com/example/a8_bitinvader/ScoreFileWriter.java new file mode 100644 index 0000000..963b722 --- /dev/null +++ b/app/src/main/java/com/example/a8_bitinvader/ScoreFileWriter.java @@ -0,0 +1,130 @@ +package com.example.a8_bitinvader; + +import android.content.Context; +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileWriter; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.Map; +import java.util.Scanner; +import java.util.TreeMap; + +public class ScoreFileWriter implements Writer{ + + private File scoreLog; + + /** + * Creates ScoreFileWriter object and also creates a files named scoreLog.txt if possible + */ + public ScoreFileWriter(Context context) { + scoreLog = new File(context.getFilesDir(), "scoreLog.txt"); + try { + scoreLog.createNewFile(); + String directory = scoreLog.getParent(); + System.out.println("Directory: " + directory); + } catch(IOException e) { + e.printStackTrace(); + } + } + + /** + * function that takes current entriel of the file, if any and then adds on the new one + * Code also makes sure added entry in in order of list + * @param points point value from end game + * @param name name of the player that just set the score + */ + public void writePtsToFile(int points, String name) { + //Creates Treemap to relate relation between points and the player + TreeMap> sorted = new TreeMap>(Collections.reverseOrder()); + String[] fileLines = readFromFile(); + + //adds all the current enteries in the file to the treemap + for(String line : fileLines) { + int space = line.indexOf(" "); + int pts = Integer.valueOf(line.substring(0, space)); + String nm = line.substring(space + 1); + + if(!sorted.containsKey(pts)) { + sorted.put(pts, new ArrayList()); + } + sorted.get(pts).add(nm); + } + + //puts the new points value to be added and puts in the correct position + if(!sorted.containsKey(points)) { + sorted.put(points, new ArrayList()); + } + //adds the name to the points value just added + sorted.get(points).add(name); + + //Takes the treemap and turns it all to a string formatted in a way that we store it in the file + String sortedStr = ""; + for(Map.Entry> entry : sorted.entrySet()) { + for(String nameWPts : entry.getValue()) { + // sortedStr += entry.getKey() + " " + nameWPts + "\n"; + sortedStr += entry.getKey() + "\n"; + } + } + + writeToFile(sortedStr); + } + + /** + * Function to get the top 10 scores stored on the file + * @return Array of strings that each index has a value of Top 10 scores and player name that holds the score + */ + public String[] getTopScores() { + String[] out = new String[10]; + try { + Scanner scan = new Scanner(scoreLog); + + for(int i = 0; i < 10; i++) { + if(!scan.hasNextLine()) + break; + out[i] = scan.nextLine(); + } + + scan.close(); + } catch(IOException e) { + e.printStackTrace(); + } + return out; + } + + /** + * Writes code to the file + * @param str str of what is to be written on the file + */ + @Override + public void writeToFile(String str) { + try { + FileWriter fw = new FileWriter(scoreLog, false); + fw.write(str); + fw.close(); + } catch(IOException e) { + e.printStackTrace(); + } + } + + /** + * Reads code from the file + * @return Array of Strings that each entry is a player and their highscore + */ + @Override + public String[] readFromFile() { + ArrayList fileContents = new ArrayList(); + try { + Scanner scan = new Scanner(scoreLog); + while(scan.hasNextLine()) { + fileContents.add(scan.nextLine()); + } + scan.close(); + } catch(FileNotFoundException e) { + e.printStackTrace(); + } + return Arrays.copyOf(fileContents.toArray(), fileContents.size(), String[].class); + } +} diff --git a/app/src/main/java/com/example/a8_bitinvader/Sprite.java b/app/src/main/java/com/example/a8_bitinvader/Sprite.java new file mode 100644 index 0000000..b1f14bb --- /dev/null +++ b/app/src/main/java/com/example/a8_bitinvader/Sprite.java @@ -0,0 +1,46 @@ +package com.example.a8_bitinvader; + +import android.graphics.Bitmap; + +public class Sprite { + + /** X and Y position of the sprite */ + int xPos, yPos; + + /** X and Y velocity of the sprite */ + int xVel, yVel; + + /** Screen size */ + int screenWidth, screenHeight; + + /** Image of the sprite */ + Bitmap spriteImage; + + /** Scalable value for enemies and player */ + public int spriteHeight = 128, spriteWidth = 128; + + /** + * @param xPos initial x position of Sprite + * @param yPos initial y position of Sprite + * @param xVel initial x velocity of Sprite + * @param yVel initial y velocity of Sprite + */ + public Sprite(int xPos, int yPos, int xVel, int yVel, int screenWidth, int screenHeight) + { + this.xPos = xPos; + this.yPos = yPos; + this.xVel = xVel; + this.yVel = yVel; + + this.screenWidth = screenWidth; + this.screenHeight = screenHeight; + } + + /** + * Updates the sprite to move according to a given velocity + */ + public void update() { + xPos += xVel; + yPos += yVel; + } +} diff --git a/app/src/main/java/com/example/a8_bitinvader/Writer.java b/app/src/main/java/com/example/a8_bitinvader/Writer.java new file mode 100644 index 0000000..9225e71 --- /dev/null +++ b/app/src/main/java/com/example/a8_bitinvader/Writer.java @@ -0,0 +1,7 @@ +package com.example.a8_bitinvader; + +/** Creates interface writer that can write and read files */ +public interface Writer { + void writeToFile(String str); + String[] readFromFile(); +} diff --git a/app/src/main/res/anim/blink_animation.xml b/app/src/main/res/anim/blink_animation.xml new file mode 100644 index 0000000..884eb96 --- /dev/null +++ b/app/src/main/res/anim/blink_animation.xml @@ -0,0 +1,9 @@ + + + + diff --git a/app/src/main/res/anim/fade_animation.xml b/app/src/main/res/anim/fade_animation.xml new file mode 100644 index 0000000..5231ee8 --- /dev/null +++ b/app/src/main/res/anim/fade_animation.xml @@ -0,0 +1,17 @@ + + + + + + + + + diff --git a/app/src/main/res/anim/move_animation.xml b/app/src/main/res/anim/move_animation.xml new file mode 100644 index 0000000..31bb2ed --- /dev/null +++ b/app/src/main/res/anim/move_animation.xml @@ -0,0 +1,11 @@ + + + + + diff --git a/app/src/main/res/anim/slide_animation.xml b/app/src/main/res/anim/slide_animation.xml new file mode 100644 index 0000000..8aa7d18 --- /dev/null +++ b/app/src/main/res/anim/slide_animation.xml @@ -0,0 +1,11 @@ + + + + diff --git a/app/src/main/res/anim/zoom_animation.xml b/app/src/main/res/anim/zoom_animation.xml new file mode 100644 index 0000000..1c46dda --- /dev/null +++ b/app/src/main/res/anim/zoom_animation.xml @@ -0,0 +1,12 @@ + + + + + diff --git a/app/src/main/res/drawable-v24/ic_launcher_foreground.xml b/app/src/main/res/drawable-v24/ic_launcher_foreground.xml new file mode 100644 index 0000000..fde1368 --- /dev/null +++ b/app/src/main/res/drawable-v24/ic_launcher_foreground.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable-v24/leaderboard.png b/app/src/main/res/drawable-v24/leaderboard.png new file mode 100644 index 0000000000000000000000000000000000000000..b1829f5b71228b8b96c70c3969c11a75921cf045 GIT binary patch literal 3557 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 Yp2Qwr!01dnumAu607*qoM6N<$g4af=RR910 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/background.jpeg b/app/src/main/res/drawable/background.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..62b70aa2b3d9f59132c499b61d33c69292e0c4df GIT binary patch literal 145061 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�)tS=SYxT=m{lGON>+=zd&n750 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 R0ER_P9RycDzX4vY|JiaFR>1%O literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/bullet.png b/app/src/main/res/drawable/bullet.png new file mode 100644 index 0000000000000000000000000000000000000000..ee172dc46e184a1a99b566a2dbd156a9b8872495 GIT binary patch literal 179 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJDo+>3kO=qWlm!BR>`(lYzsceD zdw$On3C~GMIc)t_4et~i@)Q^TP@AIW;m5p~PohR~!B-hm$(YG54=>yC_E#>KW9tRZpVyKn6!o8xrBr&akkKQL(b?Hgk)Pf{Ohs1_ptN6^aHP SO=Un=FnGH9xvXj1)puud%Pf~!KIZ4D%YaVL=6FN3T)z&*?WFw;ULqtW(xjH))1&%0h_r% zV6j`9omo!i=2v+@;YknFmH<~CANHp5a5Vm@L}?0CP5?~Nay;XU5@6hv2fPvB#8JPS z7;?As(U9f#<1WA=bVH{{Ggcn@n*xc3|kt?ukoRxqw84|Gj0mz4$QjEJK trGR$=in;BQ%IjR?o#%inpc=WVuqXYUJy1a^2MGWG002ovPDHLkV1nwYtMLE; literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/enemy3.png b/app/src/main/res/drawable/enemy3.png new file mode 100644 index 0000000000000000000000000000000000000000..a2c0ad367e6b37c51fca9146327290b8ef6bb8a2 GIT binary patch literal 520 zcmV+j0{8uiP)hTArt^1DI{0Gk)A&iPowW$*0*!n z>3h%icxL{$&pVWbe};w6zZd{BAc?@&>Dg}oCr&;;{$$nV?Y3(F`gl~er+6H$+JAgL zEdg}^G(n0RfPjFy0A@fyz!FG$U{NVZ8mG8Dz#dQ|pfXT4!Po&wCe{JF=S`LO%loSS ziSteU9pc0Fs`9Pu_|OEi9T)&Jz!IoEfJ_A9{d<4`$RS_`be{%u1Sn>J8PIzr*qa1s z`>D?7`2In9Q5wU3SIj1u<(1_1Wo>hhQYy-Oe~iJPl8i8N0y7gBrDynG-+y{qR1 z2EYvHTmmZPqlCtm!0hV)12D1&m;nI+N{hcr;jG3fZBAVY(s&F&wz4CHW84gwcrQQ; zgxlfPp77rch^A-&h$3b{xCTdnQM@||w9XP!10WYdw1Qbl7=Ve>pcw#HcQFmNmc-cG zVOnvY2?hkr0HQd>)vR!E5}-OEYBFAhC4l4m1lfy`%{{;Xz<-BkK*+<3mjG#=;@x`y zO_1USKzvJ$08JM{Y8IdYQGE6cpb5+^-kbq*n;?zH01!fl9{&M1mn{!@k7MEh0000< KMNUMnLSTXb;@YbK literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/enemy3_damage.png b/app/src/main/res/drawable/enemy3_damage.png new file mode 100644 index 0000000000000000000000000000000000000000..e57525e2c7043c5f44642ac436f7e3f6b4e6c5c6 GIT binary patch literal 515 zcmV+e0{s1nP)*iEWv8<8XIlCEiwUp-k_@~(e{T1G;_CMNpsKF#f2#Jck0(`o!sBq&{^R>;3#bF2 z2@-As0t4y-SOI|nTOb(&iz-3#IN^=~jsZ0TssiO87&{=##5!QRd#ZOHLfF~VZ~=VU zJ^R0x9Ulh4YzHR53a|x&$tj8)#>bBVx%n3pFnkuU0&)!40=B^Dm0->R{j&gVKh^nM z-keFVyuW-&?PFs)qr|;{34r~#x;$3E=oZLY;_2g563yMkx740IFCU0d@9KGh39teN zw}2}7XrZ|+u=qN_1k4-*tbo7(rNuv`aMt6LHhWisG#(R>t?Y>5h+6@j_X4y)xE*dC z6aHHPF({e)!A0dgTkE10!}3Fw>#tpK>Xi)pa6CFb4^(~A2{ zFfd>Rki-dBv%=9?fa-+k$#@l(2#((qWG_ZGj{znC{yVe+LLOed1<3P+4<7?)f`pp@ z@hdeVG+hX(S%3ya_~I2n6IdGFTmeg)AdSZa5JSg~{{s5eF&Cp8#w-8;002ovPDHLk FV1nB*+sXg{ literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/enemy4.png b/app/src/main/res/drawable/enemy4.png new file mode 100644 index 0000000000000000000000000000000000000000..b38b06cf3689b638c893b9b497f94f3d4bddf912 GIT binary patch literal 554 zcmV+_0@eMAP)726W-zbpd6Nkdu(oiD#ey^T^PN(KkEt^Rr-``s6$B?Ve6Q zL)!RRrnJ;t4u>>s8PcZCzJJUBm;s$hAW~M;SOW||&@3Su z(`yC<0Cz8en6bP0GfV38cp+)@)C_2ix2OTFAKY33t??QF%9te})&SD{L(1p*n1IKW z_X*S&>`np(0H!@Npf?G`#zocSv2)Cx<@K_<78q_ma{DPakDVw&;W$h8zK73 z;>is7iGU^G8sH-6S)jTt{@15Lbal1D!Bw+x=i{Vo{`PYrSWj;vWnE+}k4rdw*{RU{C6g+!yb)oTDaD2k#1FatW108D%8-?X;c>h1I*KKP%q z4=@1rdEX2W5$I0>;tx`*tbPvdSC%NR1t_AG10r{818x8iaWeS#42S@=uKx*e=L`>~$0MFXJ-`5fW~*n!3>aJj zNco%FpPOXvja+Vhi z#{dJsG;an>CV>R5t!ffe@#X2T=mF{SJ9+@@oiGz+l4Jd)tAGJ817hyZDD}tgF;dzR zum{)#i>Ja~1^)RmsGj-bA@cNjfB_H@Faw59g~g zFaz*c+O8!aPSD<~v(20A0ec^j*Z~7T{x+Kd>`YB$-0;;iNf-cjjz9dIY8^BK&=lFV zH4WeSY9|9g?(NMtr&^EA0EXB5>3O)@yMB8K$rHOqhwWKBEU%4+?eY8co}d9R11y2! z{eGs=kFyI^_M!gC>vMR={{qZontOn1QU<^bm`nm}*;55wn`*1K)3JYSJXs#V8W;c( z0W+X-v(;S!;smc+ONPa79gpq>dUvRIJOjWGXXULa**jh}1K7ID2Bem=++O{j0ZwP)pK0369Nz*zY&*86x)DNQw300000NkvXXu0mjf3Rw79 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/enemy5.png b/app/src/main/res/drawable/enemy5.png new file mode 100644 index 0000000000000000000000000000000000000000..7725d74fb7d3ee7a2b300d7fd4515287668910d3 GIT binary patch literal 494 zcmVT*{9j$eq5MwhS0=P_w0~Q_uHxgQl69Z_~sqR-OGav$(Oo#(yi_PL9K#{0A zpqlyeZviSSA^Uj?cHR>xmG k0@Vwsj*kFU1?N8g2PD@BU;cS|f&c&j07*qoM6N<$g8i7#00000 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/enemy5_damage.png b/app/src/main/res/drawable/enemy5_damage.png new file mode 100644 index 0000000000000000000000000000000000000000..52d541197f6ad5bc84e9458b88dc639de3ff3d51 GIT binary patch literal 490 zcmV=B%6hz?)&_YK}NR<;%<%CHWT6~41#XAgdcD_G0uyo9~g!Ht#62`1o@Ve{{f7h36 z&p&HwS03DdOuBGt@01+mF)Sl{d_y2GO=!6MSHFF4X0MH5$L29q{C_uJV z0{HY6&=ueOe$$*s^^7&byK@{qkE6PKy>_nWg!T*w065yZE9zb!1qgw53n+0~F$y_11Kj>dA@+BH z01yIE0Bm!vWTysNwt#y_hbEw&CqUKy=>7p_KmZ7VsSiF;01#N51zbx|2+>)c6i5A& z!t4wP05cP4g`xoX`F-&ga4q3}Ss?(l&$nkl0GOE&1;`^d)eu~q1;`Rr1ym=j<13#7 zC}i9fb^+1nQ#}BPP__Q{3Lt<4h}u`{?G~T`20-(ZsI&l401@i0#{#iH@6+g{;A8+1 z>aHgPk^#wp*1zPCg%g5AsJosJOb8|f6N1+{GxbeR%CPJLM5w#|_PangVCsK%3(x?& g>jBVBclZlV! zQ`6hYspO5|=mw(s)E)!?1(z>4dV-ztw$h)v++xEXb+)ej|Z?D zV&esX7;t_Pu*zUf4VhS~Y*UMQJOS;_F`l~S)M5glkHE!CVCV_AFAvT5=kvRbFJ)>M1B6y)6U)LU0)u15QE8)}-SALLuoAnCIM^^4;rW zv%!z2x6p=H9}}jP%9~%%9v}e3fD4zv>H{Cih{3Y`uE)fn;~LA{F`8i#i8V#CqH~$qQ}e5 zIZHi&U6TM9J+H+8{drvfAF#STvnIpDs|zq_CB>=>s0*AR;J6Bx%CxljhGZlGNk9_# zML-^apTng-Ra#so*hfHJKwUsxKwW@&SCtxdX>m^%a3E2-#?s;fz|jW(n*l$_wUg%W_;sm7g?j3(MqDYvv=AY(wZ_Tgn z0RaF!Aq?1>1bVwRnHn*G^4<2kQaAu~Ubbk4!T|690?=(o3Dg;KJFM$GF<^B60YEKO z!T=M2%}ZcyMwobFI_)j+NUYWcy-f*6UJ%Iio0GMZpVSrf(JzWAM z5%qk5wy$b`6mNR~br1mZY_LUuPM9KrydRJkBpS`Q%N&_>Rslk&cY92*l+IKNM*^^& zbr~8Da1m7V;{ox2_N%g(;MU#~R5h)}#{=R4@qp&j+P61B@{rw^!T|sf2m=OhhA!y~ V&@iTOr8EEl002ovPDHLkV1iaA%qjo? literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/explosion_frame_1.png b/app/src/main/res/drawable/explosion_frame_1.png new file mode 100644 index 0000000000000000000000000000000000000000..dcf2a44d4ea274d65232c988e2033606fd9ba44b GIT binary patch literal 984 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 BBgFs! literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/explosion_frame_5.png b/app/src/main/res/drawable/explosion_frame_5.png new file mode 100644 index 0000000000000000000000000000000000000000..28aabe3aaaf0bb52f05d92b036badee192c9e127 GIT binary patch literal 873 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/green.png b/app/src/main/res/drawable/green.png new file mode 100644 index 0000000000000000000000000000000000000000..414c0ac8bb3e3f9702d4454bc942d0fcf6c0d296 GIT binary patch literal 89 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqjKx9jP7LeL$-D$|ggspxLo|Yu kLvFqJJfD$2K}M2`VVSqUPw(~yVW2dFr>mdKI;Vst05IVdqW}N^ literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/green32.png b/app/src/main/res/drawable/green32.png new file mode 100644 index 0000000000000000000000000000000000000000..0479416ef11fff1fd705841e12cf6ca428e4bc60 GIT binary patch literal 530 zcmV+t0`2{YP)Px$%t=H+R9Hu~S6gz!APihhI{oM|a-JNvy<9&!N$C&+k;O`YJ@r?d2x;}$6_M-b zEulUF;PuwNKJ_8{%#Y(&{uRJPLN5TGan0aJ8AjCAI4GeM0_ zT!B#uqqca%XR6HsXjTLh+{GVEJi{9UuqO@#phXI2;K;Po)ExesB-Sd>6vdfTR-s4> zTpF%a!D7jSJ0U=A%%~1{0BnXjcx4O=9#n?3pr%kzctJEsmbIrR2B=)WZfUS-7)krBnbvmVW#6{tGkF~ADrjP}nYQ9yA3I>;#N73vaOvWyD1gR*sgBG%O35`H1L zL&}ydPS%9zz#or2SUtsg6KNJirSt-iE-X~k(gVO{lh7Fe7T8Kqf3Uv+eB_`105O-w U%)b)KeE&p)vL9gK=&|sy85}Sb4q9e06@(;p#T5? literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/heart.png b/app/src/main/res/drawable/heart.png new file mode 100644 index 0000000000000000000000000000000000000000..66c4fc7cdfe5533560672949457b47e1f95bd943 GIT binary patch literal 4507 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/drawable/invaderslogo.png b/app/src/main/res/drawable/invaderslogo.png new file mode 100644 index 0000000000000000000000000000000000000000..80dd2a5282248ee487d18986f2848388971ca357 GIT binary patch literal 30198 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 E0ho8CxBvhE literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/logobit.png b/app/src/main/res/drawable/logobit.png new file mode 100644 index 0000000000000000000000000000000000000000..5116028f641d62cf52ab06ae37eed0314f8897b6 GIT binary patch literal 22455 zcmV)kK%l>gP)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 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
!#cW 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/player.png b/app/src/main/res/drawable/player.png new file mode 100644 index 0000000000000000000000000000000000000000..ebdabc35d885fa1878aa873172a11c36af75faac GIT binary patch literal 3391 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/player2.png b/app/src/main/res/drawable/player2.png new file mode 100644 index 0000000000000000000000000000000000000000..2c0a12f991c7accdf92e0aa66daff0f318136283 GIT binary patch literal 512 zcmV+b0{{JqP)zIT4)ddf zh5a)-GvDkU)y;)phwa0mJ%#FSQjbplCKJIv7Fd z3<4xUk|0TtBsl0K*tJRR9w*6;kG{SWYurCgllQmlpHQW8^S7P54stIq000Ic0X(4X z8<-$fVBlr2X_`c{bzR%i*`~Obz5U;PR^=Rxe?z&z&EGD@b>LP508;m1z|bY2lvj#h zy9elcPCNhr#Pwl-AbLv$M& zmH+@q)`tOtK$PO{_q|I%HS3PQI^pNH*W@Rk^JP&_aE!Db0083JFu)-2?jY^{L z9N;t`J_`Uq&=X)l&r!H@2}CbIT-C^JkN#gk&jvOJ06_2tD0he5_hCTrFEdsGZU>_6 z?)dBuH_`EJ4(NIS?GFIV{Q(RR1fr(r7;PVqyAE8tQr=x~xc06A0RXpy(RLUhrspW` z+6ONI4I1wF>=x_}H@Q*0_Z$EK@?;4HmNkl>xb5|9VT1ak-| z1yYYej6Ih5RWl-b4-f#5`(gk=AbAPA&2|k0TkRL~T>w;^3bmV{7$6DA17w1E1e5}) z#bEn*Y_9jGYZt8inf1>1z4<;H9R^LVpu?6OnE((2R!jm&`H$|tQ3f_YW(b%H84-f#Lc`*PGNKOJQ<}jxb0G9h~oz3_51h)qW z0Fv|U46!rJ*4cb9z*&`Rm%#PiqdDm}mj{I;NR9ylKn(cf5@50Cb#46r$^6IsG~8(x zj`a2lmI~Aa1pvu?F@PX|6ii+MET<8G&@qVfqkDh=fGWydTMP(XgrZ9TDL?Js+Gl%b zSA{m|?E&8T?4Dui9v}cf^WHNg1~{v*7vSI$z=60!xSp*)8<}CXW(>gl{EN>$^S%LY zuR}Zs=ea#V0007F0L0$PO8_;`t`-N|4@T3cuSZmt`I+bmwR?a70M{1-2m=330^aBE vRWpFi$KFx82MB<`Z)%p6fEYj!U=sKRxj?XAbNKBM00000NkvXXu0mjf{7&s2 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/player4.png b/app/src/main/res/drawable/player4.png new file mode 100644 index 0000000000000000000000000000000000000000..63c6f0944137ef045080fa3851b4dc105e544eac GIT binary patch literal 622 zcmV-!0+IcRP)<-Mz-qgs(KaMpKBhYn&;KwX>pu5dboP5}*gr1V<2H6=-@H zOg}e;=26X$=kF^m)s+S>tosCj445tnd@LS`0k@xCg)%xhgH?%z&kg-lU=w64(4gL?oSC z@>+w>*In_`>TbVO#-TmI?EwTp)p_LlWPn1T_7cz(*E5LL=DO@@4G+5;VqMVcKL}Z( z_jNwje4z(e1L}m(00;mXP%{aHro5Jf*8@;It0&|kv?sa`MV^$MH@yGy$0Ae(h z0IKup?TqP=)4E^xwvV@eO3xDr0MZN@0FI#>Cjs|>R@Td9J9lT3_19K;`hq z0R+J7>SRFEB@lXsT?)=#c6x-}0|-E1ijx6O1VT$drvu9(l7w@7@O9%lK<^FUnIHi` z>jE+Wm?Gq`vq9AoKnDss{r34q`G~BH0RtQy9+(i+yIbf11OS{7k^u^V#z~-VCq}xC zd-H=H;OzjeBTN<+MFc>d@_HwT3@|b<(%<`AzvoZ)JEs2;;>*M|N!I*K!T-Rrc97d# z5dbpae@npX8K^z_%nrTpeQx#uZ-?Hp6}o={5E@Zyyh%&o7aMzZ*ITb)b^rhX07*qo IM6N<$f^0Srj{pDw literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/red.png b/app/src/main/res/drawable/red.png new file mode 100644 index 0000000000000000000000000000000000000000..9646866cb79a5e4e655fc83bd43e3653dfe834e3 GIT binary patch literal 89 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqjKx9jP7LeL$-D$|ggspxLo|Yu kYqS@Cn$O6eAS21e@bmdKI;Vst03`?&dH?_b literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/red32.png b/app/src/main/res/drawable/red32.png new file mode 100644 index 0000000000000000000000000000000000000000..adb1b83103294a098670f0e0da8fe1f0b0c2102b GIT binary patch literal 347 zcmV-h0i^zkP)Px$6-h)vR9HvtmO&DOAPhx+>U5@u=(6`eS2x{uTv*Z}2o|d~P>~HT)Nw#we)0qK zxZW5QFKPfa6|lLlmI8(=y#Qc85a_US905225Tb)1901*`0oY&}{QLswfR_PvIk}LS z+>cdCGNBg$k%Oow#wBNA7tM6nrqO^MK<=XRdD_UsJjSpqKx!aS4WvvC9{$rYqF7D} zlBHgWE(>6<#XVD&0x9Y8V^82kdmjQovN*aWdqx1hk)%dA&SQBJ1~ATAi|)1=d1r*& zDjiZN1#HzIO-C#Q;B?S9rYL}>mKs1)AW4Dw!GXXApp&N9*2bs-rY%?wKZXH0wpp*o tV4wZez5hCEs{wMO-0B6z0k*&!z#Bg!o=#0S8WR8j002ovPDHLkV1lHfhwK0V literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/red64.png b/app/src/main/res/drawable/red64.png new file mode 100644 index 0000000000000000000000000000000000000000..3d02a77800a875066e5eb5f710c14314bb403c3b GIT binary patch literal 203 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=jKx9jP7LeL$-D$|T0LDHLn`9l zUUw8^P~c&9eATS}Z|*|ImODy{&YLIi{JlrCPMN{}0OyN_0(L!B4@Rzl1||^>^#(_t zB!OlL9_0j{L?C@cfz43Dj{(YXJ0JxT=m4rQn8N^N^fZ`)1VD-tEEu5-3C3)J=2A9$ YlZ)Ms(pyVk03F2O>FVdQ&MBb@0L(2pkN^Mx literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/replay.png b/app/src/main/res/drawable/replay.png new file mode 100644 index 0000000000000000000000000000000000000000..05a0bbd5c47c2f200404ce1ecb3bc1c0bdf372b4 GIT binary patch literal 3459 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/unmute.png b/app/src/main/res/drawable/unmute.png new file mode 100644 index 0000000000000000000000000000000000000000..d7baac03d01696df64c60f1281358e01bf6bacf4 GIT binary patch literal 2948 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/font/rampage.xml b/app/src/main/res/font/rampage.xml new file mode 100644 index 0000000..7df067c --- /dev/null +++ b/app/src/main/res/font/rampage.xml @@ -0,0 +1,7 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml new file mode 100644 index 0000000..2e4af10 --- /dev/null +++ b/app/src/main/res/layout/activity_main.xml @@ -0,0 +1,158 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +