├── .gitattributes ├── .gitignore ├── AndroidManifest.xml ├── assets ├── gfx │ ├── 10.png │ ├── 100.png │ ├── 30.png │ ├── 4.png │ ├── 50.png │ ├── A1.png │ ├── A2.png │ ├── A3.png │ ├── A4.png │ ├── A5.png │ ├── B1.png │ ├── B2.png │ ├── B3.png │ ├── B4.png │ ├── B5.png │ ├── N0.png │ ├── N1.png │ ├── N2.png │ ├── N3.png │ ├── N4.png │ ├── N5.png │ ├── N6.png │ ├── N7.png │ ├── N8.png │ ├── N9.png │ ├── add.png │ ├── back.png │ ├── background_common.png │ ├── background_common1.png │ ├── background_easy.png │ ├── background_easy1.png │ ├── background_hard.png │ ├── background_hard1.png │ ├── bar.png │ ├── button_add.png │ ├── button_reduce.png │ ├── clownfish_1.png │ ├── clownfish_2.png │ ├── net.png │ ├── net1.png │ ├── net2.png │ ├── net3.png │ ├── net4.png │ ├── net5.png │ ├── nets.png │ ├── next.png │ ├── pao5.png │ ├── pause.png │ ├── pufferfish_1.png │ ├── pufferfish_2.png │ ├── retry.png │ ├── sardine_1.png │ ├── sardine_2.png │ ├── seaworld.png │ ├── shark_1.png │ ├── shark_2.png │ ├── sound.png │ ├── timebar.png │ ├── timebarbackground.png │ ├── tortoise_1.png │ └── tortoise_2.png └── mfx │ ├── BGSound0.ogg │ ├── BoatEnter.ogg │ ├── CoinFly.ogg │ ├── FishDying1.ogg │ ├── FishDying2.ogg │ ├── FishDying3.ogg │ ├── FishDying4.ogg │ ├── FishDying5.ogg │ ├── NetOpen.ogg │ ├── NoBullet.ogg │ ├── Silo1.ogg │ ├── Silo2.ogg │ ├── Silo3.ogg │ ├── Silo4.ogg │ ├── Silo5.ogg │ ├── SwitchSilo.ogg │ └── scg.ogg ├── default.properties ├── gen └── fishjoy │ └── control │ └── menu │ ├── BuildConfig.java │ └── R.java ├── libs ├── SDK1.3.2.jar ├── andengine.jar ├── andengineaugmentedrealityextension.jar ├── andenginelivewallpaperextension.jar ├── andenginemodplayerextension.jar ├── andenginemultiplayerextension.jar ├── andenginemultitouchextension.jar ├── andenginephysicsbox2dextension.jar ├── andenginesvgtextureregionextension.jar └── armeabi │ ├── libandenginephysicsbox2dextension.so │ └── libxmp.so ├── proguard.cfg ├── project.properties ├── res ├── drawable-hdpi │ └── icon.png ├── drawable-ldpi │ └── icon.png ├── drawable-mdpi │ └── icon.png ├── drawable │ ├── about.png │ ├── about_under.png │ ├── aboutus.png │ ├── back.png │ ├── bg.png │ ├── billboard.png │ ├── easy.png │ ├── exit.png │ ├── hard.png │ ├── help.png │ ├── help_1.png │ ├── help_2.png │ ├── help_3.png │ ├── help_4.png │ ├── help_back.png │ ├── icon.png │ ├── logo.png │ ├── menu_bg.png │ ├── music.png │ ├── normal.png │ ├── rank.png │ ├── retry.png │ ├── set.png │ ├── sound.png │ └── start.png ├── layout │ ├── about.xml │ ├── billboard.xml │ ├── help.xml │ ├── main.xml │ ├── menu.xml │ ├── newrecord.xml │ ├── points_view.xml │ ├── push_layout.xml │ ├── set.xml │ └── submenu.xml ├── menu │ └── options_menus.xml └── values │ └── strings.xml └── src └── fishjoy ├── control ├── GameEnum.java ├── GameSound.java ├── about │ └── About.java ├── billboard │ └── Billboard.java ├── game │ ├── FishJoy.java │ ├── GameConstants.java │ ├── IntegralSdk.java │ ├── factory │ │ ├── FishFactory.java │ │ └── UserFactory.java │ ├── operation │ │ ├── ModelInformationController.java │ │ ├── TextureRegionCreator.java │ │ ├── artilleryoperation │ │ │ ├── ArtilleryController.java │ │ │ ├── ArtilleryOperation.java │ │ │ ├── ArtillerySprite.java │ │ │ └── BulletSprite.java │ │ ├── fishoperation │ │ │ ├── CapturedProbability.java │ │ │ ├── FishController.java │ │ │ └── FishOperation.java │ │ └── sceneoperation │ │ │ ├── SceneConverter.java │ │ │ ├── SceneMonitor.java │ │ │ └── ScoringOperation.java │ └── timer │ │ └── Timer.java ├── help │ ├── Help.java │ └── ImageAdapter.java ├── menu │ ├── MainMenu.java │ └── SubMenuForGame.java ├── record │ ├── Matrix.java │ └── MyDataBaseAdapter.java └── systemsetting │ └── Systemsetting.java └── model ├── IEntityInformation.java ├── artilleryinformation ├── Artillery1Information.java ├── Artillery2Information.java ├── Artillery3Information.java ├── Artillery4Information.java ├── Artillery5Information.java └── IArtilleryInformation.java ├── bulletinformation ├── Bullet1Information.java ├── Bullet2Information.java ├── Bullet3Information.java ├── Bullet4Information.java ├── Bullet5Information.java └── IBulletInformation.java ├── capturedfishinformation ├── CapturedClownFishInformation.java ├── CapturedPufferFishInformation.java ├── CapturedSardineInformation.java ├── CapturedSharkInformation.java ├── CapturedTortoiseInformation.java └── ICapturedFishInformation.java ├── fishinformation ├── ClownFishInformation.java ├── IFishInformation.java ├── PufferFishInformation.java ├── SardineInformation.java ├── SharkInformation.java └── TortoiseInformation.java ├── gameinformation ├── Game1Information.java ├── Game2Information.java ├── Game3Information.java └── IGameInformation.java ├── netinformation ├── INetInformation.java ├── Net1Information.java ├── Net2Information.java ├── Net3Information.java ├── Net4Information.java └── Net5Information.java ├── numberinformation ├── INumberInformation.java ├── Number0Information.java ├── Number1Information.java ├── Number2Information.java ├── Number3Information.java ├── Number4Information.java ├── Number5Information.java ├── Number6Information.java ├── Number7Information.java ├── Number8Information.java └── Number9Information.java └── scoreInformation ├── IScoreInformation.java ├── Score1Information.java ├── Score2Information.java ├── Score3Information.java ├── Score4Information.java └── Score5Information.java /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | *.sln merge=union 7 | *.csproj merge=union 8 | *.vbproj merge=union 9 | *.fsproj merge=union 10 | *.dbproj merge=union 11 | 12 | # Standard to msysgit 13 | *.doc diff=astextplain 14 | *.DOC diff=astextplain 15 | *.docx diff=astextplain 16 | *.DOCX diff=astextplain 17 | *.dot diff=astextplain 18 | *.DOT diff=astextplain 19 | *.pdf diff=astextplain 20 | *.PDF diff=astextplain 21 | *.rtf diff=astextplain 22 | *.RTF diff=astextplain 23 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | ################# 2 | ## Eclipse 3 | ################# 4 | 5 | *.pydevproject 6 | .project 7 | .metadata 8 | bin/ 9 | tmp/ 10 | *.tmp 11 | *.bak 12 | *.swp 13 | *~.nib 14 | local.properties 15 | .classpath 16 | .settings/ 17 | .loadpath 18 | 19 | # External tool builders 20 | .externalToolBuilders/ 21 | 22 | # Locally stored "Eclipse launch configurations" 23 | *.launch 24 | 25 | # CDT-specific 26 | .cproject 27 | 28 | # PDT-specific 29 | .buildpath 30 | 31 | 32 | ################# 33 | ## Visual Studio 34 | ################# 35 | 36 | ## Ignore Visual Studio temporary files, build results, and 37 | ## files generated by popular Visual Studio add-ons. 38 | 39 | # User-specific files 40 | *.suo 41 | *.user 42 | *.sln.docstates 43 | 44 | # Build results 45 | 46 | [Dd]ebug/ 47 | [Rr]elease/ 48 | x64/ 49 | build/ 50 | [Bb]in/ 51 | [Oo]bj/ 52 | 53 | # MSTest test Results 54 | [Tt]est[Rr]esult*/ 55 | [Bb]uild[Ll]og.* 56 | 57 | *_i.c 58 | *_p.c 59 | *.ilk 60 | *.meta 61 | *.obj 62 | *.pch 63 | *.pdb 64 | *.pgc 65 | *.pgd 66 | *.rsp 67 | *.sbr 68 | *.tlb 69 | *.tli 70 | *.tlh 71 | *.tmp 72 | *.tmp_proj 73 | *.log 74 | *.vspscc 75 | *.vssscc 76 | .builds 77 | *.pidb 78 | *.log 79 | *.scc 80 | 81 | # Visual C++ cache files 82 | ipch/ 83 | *.aps 84 | *.ncb 85 | *.opensdf 86 | *.sdf 87 | *.cachefile 88 | 89 | # Visual Studio profiler 90 | *.psess 91 | *.vsp 92 | *.vspx 93 | 94 | # Guidance Automation Toolkit 95 | *.gpState 96 | 97 | # ReSharper is a .NET coding add-in 98 | _ReSharper*/ 99 | *.[Rr]e[Ss]harper 100 | 101 | # TeamCity is a build add-in 102 | _TeamCity* 103 | 104 | # DotCover is a Code Coverage Tool 105 | *.dotCover 106 | 107 | # NCrunch 108 | *.ncrunch* 109 | .*crunch*.local.xml 110 | 111 | # Installshield output folder 112 | [Ee]xpress/ 113 | 114 | # DocProject is a documentation generator add-in 115 | DocProject/buildhelp/ 116 | DocProject/Help/*.HxT 117 | DocProject/Help/*.HxC 118 | DocProject/Help/*.hhc 119 | DocProject/Help/*.hhk 120 | DocProject/Help/*.hhp 121 | DocProject/Help/Html2 122 | DocProject/Help/html 123 | 124 | # Click-Once directory 125 | publish/ 126 | 127 | # Publish Web Output 128 | *.Publish.xml 129 | *.pubxml 130 | 131 | # NuGet Packages Directory 132 | ## TODO: If you have NuGet Package Restore enabled, uncomment the next line 133 | #packages/ 134 | 135 | # Windows Azure Build Output 136 | csx 137 | *.build.csdef 138 | 139 | # Windows Store app package directory 140 | AppPackages/ 141 | 142 | # Others 143 | sql/ 144 | *.Cache 145 | ClientBin/ 146 | [Ss]tyle[Cc]op.* 147 | ~$* 148 | *~ 149 | *.dbmdl 150 | *.[Pp]ublish.xml 151 | *.pfx 152 | *.publishsettings 153 | 154 | # RIA/Silverlight projects 155 | Generated_Code/ 156 | 157 | # Backup & report files from converting an old project file to a newer 158 | # Visual Studio version. Backup files are not needed, because we have git ;-) 159 | _UpgradeReport_Files/ 160 | Backup*/ 161 | UpgradeLog*.XML 162 | UpgradeLog*.htm 163 | 164 | # SQL Server files 165 | App_Data/*.mdf 166 | App_Data/*.ldf 167 | 168 | ############# 169 | ## Windows detritus 170 | ############# 171 | 172 | # Windows image file caches 173 | Thumbs.db 174 | ehthumbs.db 175 | 176 | # Folder config file 177 | Desktop.ini 178 | 179 | # Recycle Bin used on file shares 180 | $RECYCLE.BIN/ 181 | 182 | # Mac crap 183 | .DS_Store 184 | 185 | 186 | ############# 187 | ## Python 188 | ############# 189 | 190 | *.py[co] 191 | 192 | # Packages 193 | *.egg 194 | *.egg-info 195 | dist/ 196 | build/ 197 | eggs/ 198 | parts/ 199 | var/ 200 | sdist/ 201 | develop-eggs/ 202 | .installed.cfg 203 | 204 | # Installer logs 205 | pip-log.txt 206 | 207 | # Unit test / coverage reports 208 | .coverage 209 | .tox 210 | 211 | #Translations 212 | *.mo 213 | 214 | #Mr Developer 215 | .mr.developer.cfg 216 | -------------------------------------------------------------------------------- /AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 11 | 13 | 14 | 16 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 28 | 30 | 32 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /assets/gfx/10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/10.png -------------------------------------------------------------------------------- /assets/gfx/100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/100.png -------------------------------------------------------------------------------- /assets/gfx/30.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/30.png -------------------------------------------------------------------------------- /assets/gfx/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/4.png -------------------------------------------------------------------------------- /assets/gfx/50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/50.png -------------------------------------------------------------------------------- /assets/gfx/A1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/A1.png -------------------------------------------------------------------------------- /assets/gfx/A2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/A2.png -------------------------------------------------------------------------------- /assets/gfx/A3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/A3.png -------------------------------------------------------------------------------- /assets/gfx/A4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/A4.png -------------------------------------------------------------------------------- /assets/gfx/A5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/A5.png -------------------------------------------------------------------------------- /assets/gfx/B1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/B1.png -------------------------------------------------------------------------------- /assets/gfx/B2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/B2.png -------------------------------------------------------------------------------- /assets/gfx/B3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/B3.png -------------------------------------------------------------------------------- /assets/gfx/B4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/B4.png -------------------------------------------------------------------------------- /assets/gfx/B5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/B5.png -------------------------------------------------------------------------------- /assets/gfx/N0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/N0.png -------------------------------------------------------------------------------- /assets/gfx/N1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/N1.png -------------------------------------------------------------------------------- /assets/gfx/N2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/N2.png -------------------------------------------------------------------------------- /assets/gfx/N3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/N3.png -------------------------------------------------------------------------------- /assets/gfx/N4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/N4.png -------------------------------------------------------------------------------- /assets/gfx/N5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/N5.png -------------------------------------------------------------------------------- /assets/gfx/N6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/N6.png -------------------------------------------------------------------------------- /assets/gfx/N7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/N7.png -------------------------------------------------------------------------------- /assets/gfx/N8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/N8.png -------------------------------------------------------------------------------- /assets/gfx/N9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/N9.png -------------------------------------------------------------------------------- /assets/gfx/add.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/add.png -------------------------------------------------------------------------------- /assets/gfx/back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/back.png -------------------------------------------------------------------------------- /assets/gfx/background_common.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/background_common.png -------------------------------------------------------------------------------- /assets/gfx/background_common1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/background_common1.png -------------------------------------------------------------------------------- /assets/gfx/background_easy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/background_easy.png -------------------------------------------------------------------------------- /assets/gfx/background_easy1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/background_easy1.png -------------------------------------------------------------------------------- /assets/gfx/background_hard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/background_hard.png -------------------------------------------------------------------------------- /assets/gfx/background_hard1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/background_hard1.png -------------------------------------------------------------------------------- /assets/gfx/bar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/bar.png -------------------------------------------------------------------------------- /assets/gfx/button_add.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/button_add.png -------------------------------------------------------------------------------- /assets/gfx/button_reduce.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/button_reduce.png -------------------------------------------------------------------------------- /assets/gfx/clownfish_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/clownfish_1.png -------------------------------------------------------------------------------- /assets/gfx/clownfish_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/clownfish_2.png -------------------------------------------------------------------------------- /assets/gfx/net.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/net.png -------------------------------------------------------------------------------- /assets/gfx/net1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/net1.png -------------------------------------------------------------------------------- /assets/gfx/net2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/net2.png -------------------------------------------------------------------------------- /assets/gfx/net3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/net3.png -------------------------------------------------------------------------------- /assets/gfx/net4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/net4.png -------------------------------------------------------------------------------- /assets/gfx/net5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/net5.png -------------------------------------------------------------------------------- /assets/gfx/nets.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/nets.png -------------------------------------------------------------------------------- /assets/gfx/next.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/next.png -------------------------------------------------------------------------------- /assets/gfx/pao5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/pao5.png -------------------------------------------------------------------------------- /assets/gfx/pause.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/pause.png -------------------------------------------------------------------------------- /assets/gfx/pufferfish_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/pufferfish_1.png -------------------------------------------------------------------------------- /assets/gfx/pufferfish_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/pufferfish_2.png -------------------------------------------------------------------------------- /assets/gfx/retry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/retry.png -------------------------------------------------------------------------------- /assets/gfx/sardine_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/sardine_1.png -------------------------------------------------------------------------------- /assets/gfx/sardine_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/sardine_2.png -------------------------------------------------------------------------------- /assets/gfx/seaworld.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/seaworld.png -------------------------------------------------------------------------------- /assets/gfx/shark_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/shark_1.png -------------------------------------------------------------------------------- /assets/gfx/shark_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/shark_2.png -------------------------------------------------------------------------------- /assets/gfx/sound.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/sound.png -------------------------------------------------------------------------------- /assets/gfx/timebar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/timebar.png -------------------------------------------------------------------------------- /assets/gfx/timebarbackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/timebarbackground.png -------------------------------------------------------------------------------- /assets/gfx/tortoise_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/tortoise_1.png -------------------------------------------------------------------------------- /assets/gfx/tortoise_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/gfx/tortoise_2.png -------------------------------------------------------------------------------- /assets/mfx/BGSound0.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/mfx/BGSound0.ogg -------------------------------------------------------------------------------- /assets/mfx/BoatEnter.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/mfx/BoatEnter.ogg -------------------------------------------------------------------------------- /assets/mfx/CoinFly.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/mfx/CoinFly.ogg -------------------------------------------------------------------------------- /assets/mfx/FishDying1.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/mfx/FishDying1.ogg -------------------------------------------------------------------------------- /assets/mfx/FishDying2.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/mfx/FishDying2.ogg -------------------------------------------------------------------------------- /assets/mfx/FishDying3.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/mfx/FishDying3.ogg -------------------------------------------------------------------------------- /assets/mfx/FishDying4.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/mfx/FishDying4.ogg -------------------------------------------------------------------------------- /assets/mfx/FishDying5.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/mfx/FishDying5.ogg -------------------------------------------------------------------------------- /assets/mfx/NetOpen.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/mfx/NetOpen.ogg -------------------------------------------------------------------------------- /assets/mfx/NoBullet.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/mfx/NoBullet.ogg -------------------------------------------------------------------------------- /assets/mfx/Silo1.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/mfx/Silo1.ogg -------------------------------------------------------------------------------- /assets/mfx/Silo2.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/mfx/Silo2.ogg -------------------------------------------------------------------------------- /assets/mfx/Silo3.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/mfx/Silo3.ogg -------------------------------------------------------------------------------- /assets/mfx/Silo4.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/mfx/Silo4.ogg -------------------------------------------------------------------------------- /assets/mfx/Silo5.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/mfx/Silo5.ogg -------------------------------------------------------------------------------- /assets/mfx/SwitchSilo.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/mfx/SwitchSilo.ogg -------------------------------------------------------------------------------- /assets/mfx/scg.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/assets/mfx/scg.ogg -------------------------------------------------------------------------------- /default.properties: -------------------------------------------------------------------------------- 1 | proguard.config=proguard.cfg 2 | # Project target. 3 | target=Google Inc.:Google APIs:8 4 | -------------------------------------------------------------------------------- /gen/fishjoy/control/menu/BuildConfig.java: -------------------------------------------------------------------------------- 1 | /** Automatically generated file. DO NOT MODIFY */ 2 | package fishjoy.control.menu; 3 | 4 | public final class BuildConfig { 5 | public final static boolean DEBUG = true; 6 | } -------------------------------------------------------------------------------- /gen/fishjoy/control/menu/R.java: -------------------------------------------------------------------------------- 1 | /* AUTO-GENERATED FILE. DO NOT MODIFY. 2 | * 3 | * This class was automatically generated by the 4 | * aapt tool from the resource data it found. It 5 | * should not be modified by hand. 6 | */ 7 | 8 | package fishjoy.control.menu; 9 | 10 | public final class R { 11 | public static final class attr { 12 | } 13 | public static final class drawable { 14 | public static final int about=0x7f020000; 15 | public static final int about_under=0x7f020001; 16 | public static final int aboutus=0x7f020002; 17 | public static final int back=0x7f020003; 18 | public static final int bg=0x7f020004; 19 | public static final int billboard=0x7f020005; 20 | public static final int easy=0x7f020006; 21 | public static final int exit=0x7f020007; 22 | public static final int hard=0x7f020008; 23 | public static final int help=0x7f020009; 24 | public static final int help_1=0x7f02000a; 25 | public static final int help_2=0x7f02000b; 26 | public static final int help_3=0x7f02000c; 27 | public static final int help_4=0x7f02000d; 28 | public static final int help_back=0x7f02000e; 29 | public static final int icon=0x7f02000f; 30 | public static final int logo=0x7f020010; 31 | public static final int menu_bg=0x7f020011; 32 | public static final int music=0x7f020012; 33 | public static final int normal=0x7f020013; 34 | public static final int rank=0x7f020014; 35 | public static final int retry=0x7f020015; 36 | public static final int set=0x7f020016; 37 | public static final int sound=0x7f020017; 38 | public static final int start=0x7f020018; 39 | } 40 | public static final class id { 41 | public static final int Gallery01=0x7f060012; 42 | public static final int about=0x7f060001; 43 | public static final int about_back=0x7f060000; 44 | public static final int about_under=0x7f060002; 45 | public static final int back=0x7f060029; 46 | public static final int billboard=0x7f060004; 47 | public static final int billboard_back=0x7f060003; 48 | public static final int billboard_easy=0x7f060005; 49 | public static final int billboard_easy_1=0x7f060008; 50 | public static final int billboard_easy_2=0x7f060009; 51 | public static final int billboard_easy_3=0x7f06000a; 52 | public static final int billboard_hard=0x7f060007; 53 | public static final int billboard_hard_1=0x7f06000e; 54 | public static final int billboard_hard_2=0x7f06000f; 55 | public static final int billboard_hard_3=0x7f060010; 56 | public static final int billboard_normal=0x7f060006; 57 | public static final int billboard_normal_1=0x7f06000b; 58 | public static final int billboard_normal_2=0x7f06000c; 59 | public static final int billboard_normal_3=0x7f06000d; 60 | public static final int easy=0x7f060026; 61 | public static final int edittext=0x7f06001a; 62 | public static final int exit=0x7f060015; 63 | public static final int hard=0x7f060028; 64 | public static final int help=0x7f060017; 65 | public static final int help_back=0x7f060011; 66 | public static final int hint=0x7f060019; 67 | public static final int listview_id=0x7f06001b; 68 | public static final int logo=0x7f060018; 69 | public static final int music=0x7f060022; 70 | public static final int music_image=0x7f060020; 71 | public static final int music_value=0x7f060024; 72 | public static final int normal=0x7f060027; 73 | public static final int notify_image=0x7f06001d; 74 | public static final int notify_layout=0x7f06001c; 75 | public static final int notify_text=0x7f06001e; 76 | public static final int rank=0x7f060016; 77 | public static final int set=0x7f060014; 78 | public static final int set_back=0x7f06001f; 79 | public static final int sound=0x7f060025; 80 | public static final int sound_image=0x7f060021; 81 | public static final int sound_value=0x7f060023; 82 | public static final int start=0x7f060013; 83 | } 84 | public static final class layout { 85 | public static final int about=0x7f030000; 86 | public static final int billboard=0x7f030001; 87 | public static final int help=0x7f030002; 88 | public static final int main=0x7f030003; 89 | public static final int menu=0x7f030004; 90 | public static final int newrecord=0x7f030005; 91 | public static final int points_view=0x7f030006; 92 | public static final int push_layout=0x7f030007; 93 | public static final int set=0x7f030008; 94 | public static final int submenu=0x7f030009; 95 | } 96 | public static final class menu { 97 | public static final int options_menus=0x7f050000; 98 | } 99 | public static final class string { 100 | public static final int app_name=0x7f040001; 101 | public static final int hello=0x7f040000; 102 | } 103 | } 104 | -------------------------------------------------------------------------------- /libs/SDK1.3.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/libs/SDK1.3.2.jar -------------------------------------------------------------------------------- /libs/andengine.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/libs/andengine.jar -------------------------------------------------------------------------------- /libs/andengineaugmentedrealityextension.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/libs/andengineaugmentedrealityextension.jar -------------------------------------------------------------------------------- /libs/andenginelivewallpaperextension.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/libs/andenginelivewallpaperextension.jar -------------------------------------------------------------------------------- /libs/andenginemodplayerextension.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/libs/andenginemodplayerextension.jar -------------------------------------------------------------------------------- /libs/andenginemultiplayerextension.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/libs/andenginemultiplayerextension.jar -------------------------------------------------------------------------------- /libs/andenginemultitouchextension.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/libs/andenginemultitouchextension.jar -------------------------------------------------------------------------------- /libs/andenginephysicsbox2dextension.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/libs/andenginephysicsbox2dextension.jar -------------------------------------------------------------------------------- /libs/andenginesvgtextureregionextension.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/libs/andenginesvgtextureregionextension.jar -------------------------------------------------------------------------------- /libs/armeabi/libandenginephysicsbox2dextension.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/libs/armeabi/libandenginephysicsbox2dextension.so -------------------------------------------------------------------------------- /libs/armeabi/libxmp.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/libs/armeabi/libxmp.so -------------------------------------------------------------------------------- /proguard.cfg: -------------------------------------------------------------------------------- 1 | -optimizationpasses 5 2 | -dontusemixedcaseclassnames 3 | -dontskipnonpubliclibraryclasses 4 | -dontpreverify 5 | -verbose 6 | -ignorewarning 7 | -optimizations !code/simplification/arithmetic,!field/*,!class/merging/* 8 | 9 | -keep public class * extends android.app.Activity 10 | -keep public class * extends android.app.Application 11 | -keep public class * extends android.app.Service 12 | -keep public class * extends android.content.BroadcastReceiver 13 | -keep public class * extends android.content.ContentProvider 14 | -keep public class com.android.vending.licensing.ILicensingService 15 | 16 | -keepclasseswithmembernames class * { 17 | native ; 18 | } 19 | 20 | -keepclasseswithmembernames class * { 21 | public (android.content.Context, android.util.AttributeSet); 22 | } 23 | 24 | -keepclasseswithmembernames class * { 25 | public (android.content.Context, android.util.AttributeSet, int); 26 | } 27 | 28 | -keepclassmembers enum * { 29 | public static **[] values(); 30 | public static ** valueOf(java.lang.String); 31 | } 32 | 33 | -keep class * implements android.os.Parcelable { 34 | public static final android.os.Parcelable$Creator *; 35 | } 36 | -------------------------------------------------------------------------------- /project.properties: -------------------------------------------------------------------------------- 1 | # This file is automatically generated by Android Tools. 2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! 3 | # 4 | # This file must be checked in Version Control Systems. 5 | # 6 | # To customize properties used by the Ant build system use, 7 | # "ant.properties", and override values to adapt the script to your 8 | # project structure. 9 | 10 | proguard.config=proguard.cfg 11 | # Project target. 12 | target=android-8 13 | -------------------------------------------------------------------------------- /res/drawable-hdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable-hdpi/icon.png -------------------------------------------------------------------------------- /res/drawable-ldpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable-ldpi/icon.png -------------------------------------------------------------------------------- /res/drawable-mdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable-mdpi/icon.png -------------------------------------------------------------------------------- /res/drawable/about.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/about.png -------------------------------------------------------------------------------- /res/drawable/about_under.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/about_under.png -------------------------------------------------------------------------------- /res/drawable/aboutus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/aboutus.png -------------------------------------------------------------------------------- /res/drawable/back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/back.png -------------------------------------------------------------------------------- /res/drawable/bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/bg.png -------------------------------------------------------------------------------- /res/drawable/billboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/billboard.png -------------------------------------------------------------------------------- /res/drawable/easy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/easy.png -------------------------------------------------------------------------------- /res/drawable/exit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/exit.png -------------------------------------------------------------------------------- /res/drawable/hard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/hard.png -------------------------------------------------------------------------------- /res/drawable/help.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/help.png -------------------------------------------------------------------------------- /res/drawable/help_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/help_1.png -------------------------------------------------------------------------------- /res/drawable/help_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/help_2.png -------------------------------------------------------------------------------- /res/drawable/help_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/help_3.png -------------------------------------------------------------------------------- /res/drawable/help_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/help_4.png -------------------------------------------------------------------------------- /res/drawable/help_back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/help_back.png -------------------------------------------------------------------------------- /res/drawable/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/icon.png -------------------------------------------------------------------------------- /res/drawable/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/logo.png -------------------------------------------------------------------------------- /res/drawable/menu_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/menu_bg.png -------------------------------------------------------------------------------- /res/drawable/music.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/music.png -------------------------------------------------------------------------------- /res/drawable/normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/normal.png -------------------------------------------------------------------------------- /res/drawable/rank.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/rank.png -------------------------------------------------------------------------------- /res/drawable/retry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/retry.png -------------------------------------------------------------------------------- /res/drawable/set.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/set.png -------------------------------------------------------------------------------- /res/drawable/sound.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/sound.png -------------------------------------------------------------------------------- /res/drawable/start.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/res/drawable/start.png -------------------------------------------------------------------------------- /res/layout/about.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 14 | 15 | 22 | " 28 | 29 | 30 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /res/layout/billboard.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 14 | 15 | 22 | 23 | 31 | 32 | 40 | 41 | 49 | 50 | 58 | 59 | 67 | 68 | 76 | 77 | 85 | 86 | 94 | 95 | 103 | 104 | 112 | 113 | 121 | 122 | 130 | 131 | 132 | -------------------------------------------------------------------------------- /res/layout/help.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 12 | 13 | 14 | 20 | 21 | -------------------------------------------------------------------------------- /res/layout/main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 12 | 13 | -------------------------------------------------------------------------------- /res/layout/menu.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 15 | 16 | 24 | 25 | 34 | 35 | 44 | 45 | 54 | 55 | 56 | 57 | -------------------------------------------------------------------------------- /res/layout/newrecord.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 16 | 17 | 26 | 27 | -------------------------------------------------------------------------------- /res/layout/points_view.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 14 | 15 | -------------------------------------------------------------------------------- /res/layout/push_layout.xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 18 | 19 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /res/layout/set.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 12 | 13 | 22 | 23 | 30 | 31 | 37 | 38 | 45 | 46 | 47 | 55 | 56 | 62 | 63 | 64 | -------------------------------------------------------------------------------- /res/layout/submenu.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 12 | 13 | 21 | 22 | 30 | 31 | 39 | 40 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /res/menu/options_menus.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Hello World, FishJoy! 4 | FishJoy 5 | 6 | -------------------------------------------------------------------------------- /src/fishjoy/control/GameEnum.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control; 2 | 3 | public interface GameEnum { 4 | public enum Fish_Move{ 5 | Direct,Curve, Circle,Random 6 | }; 7 | 8 | public enum Fish_State{ 9 | moving,captured,finished 10 | }; 11 | 12 | public enum Fish_Name{ 13 | SARDINE, CLOWNFISH, PUFFERFISH,TORTOISE,SHARK 14 | } 15 | 16 | public enum Artillery_Rank{ 17 | RANK1, RANK2, RANK3, RANK4, RANK5, 18 | } 19 | 20 | public enum Artillery_Operate{ 21 | STRENGTHEN, WEAKEN, 22 | } 23 | 24 | public enum Move_Direction{ 25 | RANDOM,LEFT,RIGHT 26 | } 27 | 28 | public enum Edge_Position{ 29 | RANDOM,UP,MIDDLE,DOWN 30 | } 31 | 32 | public enum Game_Rank{ 33 | EASY, COMMON, HARD 34 | } 35 | 36 | public enum Fish_Group_Way{ 37 | Curve_Group, Circle_Group, Random_Single 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /src/fishjoy/control/GameSound.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control; 2 | 3 | import java.io.IOException; 4 | import java.util.ArrayList; 5 | 6 | import org.anddev.andengine.audio.sound.Sound; 7 | import org.anddev.andengine.audio.sound.SoundFactory; 8 | import org.anddev.andengine.ui.activity.BaseGameActivity; 9 | import org.anddev.andengine.util.Debug; 10 | 11 | public class GameSound { 12 | private Sound CoinFly; 13 | private Sound NetOpen; 14 | private Sound SwitchSilo; 15 | private ArrayList FishDying = new ArrayList(); 16 | private ArrayList Silo = new ArrayList(); 17 | 18 | public void create(BaseGameActivity activity) 19 | { 20 | SoundFactory.setAssetBasePath("mfx/"); 21 | try { 22 | this.CoinFly = SoundFactory.createSoundFromAsset(activity.getSoundManager(), activity, "CoinFly.ogg"); 23 | this.NetOpen = SoundFactory.createSoundFromAsset(activity.getSoundManager(), activity, "NetOpen.ogg"); 24 | this.SwitchSilo = SoundFactory.createSoundFromAsset(activity.getSoundManager(), activity, "SwitchSilo.ogg"); 25 | this.FishDying.add(SoundFactory.createSoundFromAsset(activity.getSoundManager(), activity, "FishDying1.ogg")); 26 | this.FishDying.add(SoundFactory.createSoundFromAsset(activity.getSoundManager(), activity, "FishDying2.ogg")); 27 | this.FishDying.add(SoundFactory.createSoundFromAsset(activity.getSoundManager(), activity, "FishDying3.ogg")); 28 | this.FishDying.add(SoundFactory.createSoundFromAsset(activity.getSoundManager(), activity, "FishDying4.ogg")); 29 | this.FishDying.add(SoundFactory.createSoundFromAsset(activity.getSoundManager(), activity, "FishDying5.ogg")); 30 | 31 | this.Silo.add(SoundFactory.createSoundFromAsset(activity.getSoundManager(), activity, "Silo1.ogg")); 32 | this.Silo.add(SoundFactory.createSoundFromAsset(activity.getSoundManager(), activity, "Silo2.ogg")); 33 | this.Silo.add(SoundFactory.createSoundFromAsset(activity.getSoundManager(), activity, "Silo3.ogg")); 34 | this.Silo.add(SoundFactory.createSoundFromAsset(activity.getSoundManager(), activity, "Silo4.ogg")); 35 | this.Silo.add(SoundFactory.createSoundFromAsset(activity.getSoundManager(), activity, "Silo5.ogg")); 36 | } catch (final IOException e) { 37 | Debug.e(e); 38 | } 39 | } 40 | 41 | public void switchSilo() 42 | { 43 | this.SwitchSilo.play(); 44 | } 45 | 46 | public void coinFly() 47 | { 48 | this.CoinFly.play(); 49 | } 50 | 51 | public void netOpen() 52 | { 53 | this.NetOpen.play(); 54 | } 55 | 56 | public void fishDying(int index) 57 | { 58 | this.FishDying.get(index).play(); 59 | } 60 | 61 | public void lauch(int index) 62 | { 63 | this.Silo.get(index).play(); 64 | } 65 | 66 | public void setVolume(float volume) 67 | { 68 | this.CoinFly.setVolume(volume); 69 | this.NetOpen.setVolume(volume); 70 | this.SwitchSilo.setVolume(volume); 71 | for (int i=0; i<5; i++) 72 | { 73 | this.FishDying.get(i).setVolume(volume); 74 | this.Silo.get(i).setVolume(volume); 75 | } 76 | } 77 | 78 | } 79 | -------------------------------------------------------------------------------- /src/fishjoy/control/about/About.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control.about; 2 | 3 | import android.app.Activity; 4 | import android.content.Intent; 5 | import android.os.Bundle; 6 | import android.view.View; 7 | import android.widget.Button; 8 | import android.widget.ImageButton; 9 | import android.widget.TextView; 10 | import fishjoy.control.billboard.Billboard; 11 | import fishjoy.control.menu.MainMenu; 12 | import fishjoy.control.menu.R; 13 | 14 | public class About extends Activity{ 15 | private int musicVolume; 16 | private int soundVolume; 17 | 18 | 19 | /** Called when the activity is first created. */ 20 | @Override 21 | protected void onCreate(Bundle savedInstanceState) 22 | { 23 | super.onCreate(savedInstanceState); 24 | 25 | Intent intent=getIntent(); 26 | this.musicVolume=intent.getIntExtra("musicVolume", 0); 27 | this.soundVolume=intent.getIntExtra("soundVolume", 0); 28 | 29 | setContentView(R.layout.about); 30 | 31 | 32 | ImageButton returnbutton = (ImageButton) findViewById(R.id.about_back); 33 | returnbutton.setOnClickListener(new Button.OnClickListener() { 34 | public void onClick(View v) 35 | { 36 | Intent intent = new Intent(); 37 | intent.putExtra("musicVolume", About.this.musicVolume); 38 | intent.putExtra("soundVolume", About.this.soundVolume); 39 | intent.setClass(About.this, MainMenu.class); 40 | startActivity(intent); 41 | About.this.finish(); 42 | } 43 | }); 44 | } 45 | 46 | } 47 | 48 | -------------------------------------------------------------------------------- /src/fishjoy/control/billboard/Billboard.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/src/fishjoy/control/billboard/Billboard.java -------------------------------------------------------------------------------- /src/fishjoy/control/game/FishJoy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/src/fishjoy/control/game/FishJoy.java -------------------------------------------------------------------------------- /src/fishjoy/control/game/GameConstants.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control.game; 2 | 3 | import fishjoy.control.GameEnum; 4 | 5 | 6 | public interface GameConstants extends GameEnum { 7 | 8 | public static final int CAMERA_WIDTH = 480; 9 | public static final int CAMERA_HEIGHT = 320; 10 | 11 | public static final int LAYER_COUNT = 4; 12 | 13 | public static final int LAYER_BACKGROUND = 0; 14 | public static final int LAYER_FISH = LAYER_BACKGROUND + 1; 15 | public static final int LAYER_BULLET = LAYER_FISH; 16 | public static final int LAYER_NET = LAYER_BULLET; 17 | public static final int LAYER_ARTILLERY = LAYER_BULLET + 1; 18 | public static final int LAYER_BUTTON = LAYER_ARTILLERY - 1; 19 | public static final int LAYER_SCORE = LAYER_ARTILLERY + 1; 20 | 21 | public static final int ARTILLERY_MAX_RANK = 4; 22 | public static final int ARTILLERY_MIN_RANK = 0; 23 | 24 | public static final int FISHLIST_MAX = 25; 25 | 26 | public static Game_Rank GAME_RANK = Game_Rank.EASY; 27 | 28 | public static final int LAYER_STATE = LAYER_FISH + 1; 29 | public int TOTAL_TIME = 60; 30 | public static int MIN_SCORE = 480; 31 | 32 | } 33 | -------------------------------------------------------------------------------- /src/fishjoy/control/game/IntegralSdk.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control.game; 2 | 3 | import android.app.Activity; 4 | import android.content.Context; 5 | import android.os.Handler; 6 | import android.view.Gravity; 7 | import android.widget.FrameLayout; 8 | 9 | import com.xbwx.Actions; 10 | 11 | import fishjoy.control.menu.R; 12 | 13 | public class IntegralSdk { 14 | 15 | public static IntegralSdk gameScoreSdk = new IntegralSdk(); 16 | public Handler myHandler = new Handler(); 17 | 18 | private Actions actions; 19 | private Activity context; 20 | 21 | private static final String APP_ID = "appId"; 22 | 23 | 24 | public static IntegralSdk getInstance(){ 25 | return gameScoreSdk; 26 | 27 | } 28 | 29 | public void init(Activity context){ 30 | this.context = context; 31 | initIntegral(); 32 | } 33 | 34 | /** 35 | * 初始化积分列表 36 | */ 37 | public void initIntegral(){ 38 | actions = Actions.getInstance(context,APP_ID,myHandler); 39 | actions.downLoadBanner(); 40 | actions.initBannerLayout(8,1,true,12); 41 | try { 42 | FrameLayout.LayoutParams params3 = new FrameLayout.LayoutParams 43 | (FrameLayout.LayoutParams.FILL_PARENT, FrameLayout.LayoutParams.WRAP_CONTENT); 44 | params3.setMargins(0, 100, 0, 100); 45 | params3.gravity=Gravity.BOTTOM|Gravity.RIGHT; 46 | actions.setBannerLayout(params3, params3); 47 | actions.initNoticeLayout(R.layout.push_layout, R.id.notify_text, R.id.notify_image); 48 | actions.downLoadNotification(); 49 | actions.showNotice(true); 50 | } catch (Exception e) { 51 | e.printStackTrace(); 52 | } 53 | } 54 | 55 | 56 | /** 57 | * 58 | * @return 获取积分 59 | */ 60 | public int getSdkScore(){ 61 | if(actions != null){ 62 | return actions.getPoints(); 63 | } 64 | return 0; 65 | } 66 | 67 | 68 | /** 69 | * 花费积分 70 | * @param integral 71 | */ 72 | public void consumeIntegral(int integral){ 73 | if(actions != null){ 74 | actions.spendPoints(integral); 75 | } 76 | } 77 | 78 | 79 | /** 80 | * 展现积分列表 81 | */ 82 | public void showIntegralList(){ 83 | if(actions != null){ 84 | actions.showOfferList(); 85 | } 86 | 87 | } 88 | 89 | /** 90 | * 展现广告条 91 | */ 92 | public void controlIntegral(boolean show){ 93 | if(actions != null){ 94 | actions.showBanner(show); 95 | } 96 | 97 | } 98 | } 99 | -------------------------------------------------------------------------------- /src/fishjoy/control/game/factory/FishFactory.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control.game.factory; 2 | 3 | import java.util.ArrayList; 4 | import java.util.HashMap; 5 | import java.util.Random; 6 | 7 | import org.anddev.andengine.entity.scene.Scene; 8 | import org.anddev.andengine.opengl.texture.region.TiledTextureRegion; 9 | 10 | import fishjoy.control.game.GameConstants; 11 | import fishjoy.control.game.operation.ModelInformationController; 12 | import fishjoy.control.game.operation.fishoperation.FishController; 13 | import fishjoy.control.game.operation.fishoperation.FishOperation; 14 | import fishjoy.control.record.Matrix; 15 | 16 | public class FishFactory implements GameConstants { 17 | final Random random = new Random(); 18 | private Matrix matrix=new Matrix(); 19 | private static FishFactory uniqueInstance; 20 | private FishFactory() 21 | { 22 | } 23 | 24 | public static FishFactory getInstance(){ 25 | if(uniqueInstance == null){ 26 | uniqueInstance = new FishFactory(); 27 | } 28 | return uniqueInstance; 29 | } 30 | 31 | public FishController createSingleFish(TiledTextureRegion fishTextureRegion, Fish_Name name, Scene scene, Fish_Move fishMove){ 32 | FishController fish = new FishController(name, fishTextureRegion); 33 | FishOperation fishOperation=new FishOperation(); 34 | fishOperation.set_Controller(fish); 35 | fish.set_Fish_Operation(fishOperation); 36 | fishOperation.set_edge_position(Edge_Position.RANDOM); 37 | fishOperation.set_side(Move_Direction.RANDOM); 38 | fishOperation.set_Move(fishMove); 39 | fish.animate(100); 40 | fish.setSize(ModelInformationController.getInstance().getFishInformation(name).get_size_w(), 41 | ModelInformationController.getInstance().getFishInformation(name).get_size_h()); 42 | 43 | scene.getChild(LAYER_FISH).attachChild(fish); 44 | 45 | return fish; 46 | } 47 | 48 | public void createFish(ArrayList movingFishList, 49 | HashMap allFishTextureRegionMap, Scene scene){ 50 | int randomListSize = (int) (Math.random()*FISHLIST_MAX); 51 | if(movingFishList.size() < randomListSize){ 52 | for(int i = 0; i < randomListSize - movingFishList.size(); i++){ 53 | Fish_Name fishName = this.getFishName(); 54 | if(fishName == Fish_Name.SARDINE || fishName == Fish_Name.CLOWNFISH){ 55 | Fish_Group_Way groupWay = this.getFishGroupWay(); 56 | if(groupWay == Fish_Group_Way.Circle_Group) 57 | this.creat_Circle_Group(fishName, movingFishList, allFishTextureRegionMap.get(fishName), scene); 58 | else if(groupWay == Fish_Group_Way.Curve_Group) 59 | this.creat_Curve_Group(fishName, movingFishList, allFishTextureRegionMap.get(fishName), scene); 60 | else 61 | movingFishList.add(this.createSingleFish(allFishTextureRegionMap.get(fishName), fishName, scene, this.getFishMove())); 62 | }else if(fishName == Fish_Name.PUFFERFISH || fishName == Fish_Name.TORTOISE){ 63 | movingFishList.add(this.createSingleFish(allFishTextureRegionMap.get(fishName), fishName, scene, this.getFishMove())); 64 | }else 65 | movingFishList.add(this.createSingleFish(allFishTextureRegionMap.get(fishName), fishName, scene, Fish_Move.Direct)); 66 | } 67 | } 68 | } 69 | 70 | 71 | private Fish_Group_Way getFishGroupWay() { 72 | int i = (int) (Math.random()*10); 73 | if(i < 2) 74 | return Fish_Group_Way.Circle_Group; 75 | else if( i >=2 && i < 6) 76 | return Fish_Group_Way.Curve_Group; 77 | else 78 | return Fish_Group_Way.Random_Single; 79 | } 80 | 81 | private Fish_Name getFishName() { 82 | int i = (int) (Math.random()*100); 83 | if(i < 20) 84 | return Fish_Name.SARDINE; 85 | else if(i >=20 && i < 35) 86 | return Fish_Name.CLOWNFISH; 87 | else if(i >=35 && i < 65) 88 | return Fish_Name.PUFFERFISH; 89 | else if(i >=65 && i < 90) 90 | return Fish_Name.TORTOISE; 91 | else 92 | return Fish_Name.SHARK; 93 | } 94 | 95 | public void remove_fish(Scene scene,FishController fish) 96 | { 97 | scene.detachChild(fish); 98 | } 99 | 100 | private Fish_Move getFishMove() 101 | { 102 | int i=Math.abs(random.nextInt())%2; 103 | switch(i){ 104 | case 0:{ 105 | return Fish_Move.Direct; 106 | } 107 | case 1:{ 108 | return Fish_Move.Curve; 109 | } 110 | } 111 | return Fish_Move.Direct; 112 | } 113 | 114 | private Move_Direction getDirection() 115 | { 116 | int i=Math.abs(random.nextInt())%2; 117 | switch(i){ 118 | case 0:{ 119 | return Move_Direction.LEFT; 120 | } 121 | case 1:{ 122 | return Move_Direction.RIGHT; 123 | } 124 | } 125 | return Move_Direction.RIGHT; 126 | } 127 | 128 | public void creat_Circle_Group(Fish_Name fishName, ArrayList movingFishList, 129 | TiledTextureRegion fishTextureRegion, Scene scene) 130 | { 131 | Move_Direction direction=this.getDirection(); 132 | for(int i = 0; i < 3; i++){ 133 | FishController fish = new FishController(fishName,fishTextureRegion.clone()); 134 | FishOperation fishOperation=new FishOperation(); 135 | fishOperation.set_Controller(fish); 136 | fish.set_Fish_Operation(fishOperation); 137 | if(i==0) 138 | fishOperation.set_edge_position(Edge_Position.UP); 139 | else if(i==1) 140 | fishOperation.set_edge_position(Edge_Position.MIDDLE); 141 | else if(i==2) 142 | fishOperation.set_edge_position(Edge_Position.DOWN); 143 | fishOperation.set_side(direction); 144 | fishOperation.set_Circle_Move(); 145 | fish.animate(100); 146 | fish.setSize(ModelInformationController.getInstance().getFishInformation(fishName).get_size_w(), 147 | ModelInformationController.getInstance().getFishInformation(fishName).get_size_h()); 148 | 149 | movingFishList.add(fish); 150 | 151 | scene.getChild(LAYER_FISH).attachChild(fish); 152 | } 153 | } 154 | 155 | public void creat_Curve_Group(Fish_Name fishName, ArrayList movingFishList, 156 | TiledTextureRegion fishTextureRegion, Scene scene) 157 | { 158 | Move_Direction direction=this.getDirection(); 159 | int a=Math.abs(random.nextInt())%41-20; 160 | while(a==0) 161 | a=Math.abs(random.nextInt())%41-20; 162 | 163 | for(int i = 0; i < 3; i++){ 164 | FishController fish = new FishController(fishName,fishTextureRegion.clone()); 165 | FishOperation fishOperation=new FishOperation(); 166 | fishOperation.set_Controller(fish); 167 | fish.set_Fish_Operation(fishOperation); 168 | if(i==0) 169 | fishOperation.set_edge_position(Edge_Position.UP); 170 | else if(i==1) 171 | fishOperation.set_edge_position(Edge_Position.MIDDLE); 172 | else if(i==2) 173 | fishOperation.set_edge_position(Edge_Position.DOWN); 174 | fishOperation.set_side(direction); 175 | fishOperation.set_Curve_Move(a); 176 | fish.animate(100); 177 | fish.setSize(ModelInformationController.getInstance().getFishInformation(fishName).get_size_w(), 178 | ModelInformationController.getInstance().getFishInformation(fishName).get_size_h()); 179 | 180 | movingFishList.add(fish); 181 | 182 | scene.getChild(LAYER_FISH).attachChild(fish); 183 | } 184 | } 185 | 186 | public void creat_String_Move(ArrayList movingFishList, 187 | HashMap allFishTextureRegionMap, Scene scene,String str) 188 | { 189 | int distance; 190 | distance=creat_Char_Move(movingFishList,allFishTextureRegionMap,scene,str.charAt(0),0)*38+38; 191 | for(int i = 1; i < str.length(); i++){ 192 | if(str.charAt(i)==' ') 193 | distance+=65; 194 | else 195 | distance+=creat_Char_Move(movingFishList,allFishTextureRegionMap,scene,str.charAt(i),distance)*38+38; 196 | } 197 | } 198 | 199 | private int creat_Char_Move(ArrayList movingFishList, 200 | HashMap allFishTextureRegionMap, Scene scene,char ch,int i) 201 | { 202 | Move_Direction direction=Move_Direction.RIGHT; 203 | int[][] c=matrix.get_Matrix(String.valueOf(ch)); 204 | 205 | int column=c.length; 206 | int row=c[0].length; 207 | for(int t = 0; t < column; t++){ 208 | for(int j=0;j < row; j++) 209 | { 210 | if(c[t][j]!=0) 211 | { 212 | FishController fish = new FishController(Fish_Name.SARDINE,allFishTextureRegionMap.get(Fish_Name.SARDINE).clone()); 213 | FishOperation fishOperation=new FishOperation(); 214 | fishOperation.set_Controller(fish); 215 | fish.set_Fish_Operation(fishOperation); 216 | fishOperation.set_side(direction); 217 | fishOperation.set_fixed_Y(t*33+60); 218 | fishOperation.set_fixed_X(CAMERA_WIDTH+j*38+i); 219 | fishOperation.set_Direct_Move(0); 220 | fish.animate(100); 221 | 222 | fish.setSize(ModelInformationController.getInstance().getFishInformation(Fish_Name.SARDINE).get_size_w(), 223 | ModelInformationController.getInstance().getFishInformation(Fish_Name.SARDINE).get_size_h()); 224 | 225 | scene.getChild(LAYER_FISH).attachChild(fish); 226 | movingFishList.add(fish); 227 | } 228 | } 229 | } 230 | return row; 231 | } 232 | 233 | public void createStartFishSequence(ArrayList movingFishList, 234 | HashMap allFishTextureRegionMap, 235 | Scene scene, int mDifficulty) { 236 | if(mDifficulty == 1) 237 | this.creat_String_Move(movingFishList, allFishTextureRegionMap, scene, "EASY"); 238 | else if(mDifficulty == 2) 239 | this.creat_String_Move(movingFishList, allFishTextureRegionMap, scene, "COMMON"); 240 | else if(mDifficulty == 3) 241 | this.creat_String_Move(movingFishList, allFishTextureRegionMap, scene, "HARD"); 242 | 243 | } 244 | } 245 | -------------------------------------------------------------------------------- /src/fishjoy/control/game/factory/UserFactory.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control.game.factory; 2 | 3 | public class UserFactory { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /src/fishjoy/control/game/operation/ModelInformationController.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control.game.operation; 2 | 3 | import fishjoy.control.GameEnum.Artillery_Rank; 4 | import fishjoy.control.GameEnum.Fish_Name; 5 | import fishjoy.model.artilleryinformation.*; 6 | import fishjoy.model.fishinformation.*; 7 | import fishjoy.model.gameinformation.*; 8 | import fishjoy.model.numberinformation.*; 9 | 10 | public class ModelInformationController { 11 | private static ModelInformationController uniqueInstance; 12 | 13 | private ModelInformationController(){} 14 | 15 | public static ModelInformationController getInstance(){ 16 | if(uniqueInstance == null){ 17 | uniqueInstance = new ModelInformationController(); 18 | } 19 | return uniqueInstance; 20 | } 21 | 22 | public IFishInformation getFishInformation(Fish_Name name){ 23 | if(name.equals(Fish_Name.CLOWNFISH)) 24 | return new ClownFishInformation(); 25 | else if(name.equals(Fish_Name.PUFFERFISH)) 26 | return new PufferFishInformation() ; 27 | else if(name.equals(Fish_Name.SARDINE)) 28 | return new SardineInformation() ; 29 | else if(name.equals(Fish_Name.SHARK)) 30 | return new SharkInformation() ; 31 | else if(name.equals(Fish_Name.TORTOISE)) 32 | return new TortoiseInformation() ; 33 | 34 | return null; 35 | } 36 | 37 | public IArtilleryInformation getArtilleryInformation(Artillery_Rank rank) { 38 | if(rank.equals(Artillery_Rank.RANK1)) 39 | return new Artillery1Information(); 40 | else if(rank.equals(Artillery_Rank.RANK2)) 41 | return new Artillery2Information() ; 42 | else if(rank.equals(Artillery_Rank.RANK3)) 43 | return new Artillery3Information() ; 44 | else if(rank.equals(Artillery_Rank.RANK4)) 45 | return new Artillery4Information() ; 46 | else if(rank.equals(Artillery_Rank.RANK5)) 47 | return new Artillery5Information() ; 48 | 49 | return null; 50 | } 51 | 52 | public INumberInformation getNumberInformation(int i){ 53 | if(i == 0) 54 | return new Number0Information(); 55 | else if(i == 1) 56 | return new Number1Information(); 57 | else if(i == 2) 58 | return new Number2Information(); 59 | else if(i == 3) 60 | return new Number3Information(); 61 | else if(i == 4) 62 | return new Number4Information(); 63 | else if(i == 5) 64 | return new Number5Information(); 65 | else if(i == 6) 66 | return new Number6Information(); 67 | else if(i == 7) 68 | return new Number7Information(); 69 | else if(i == 8) 70 | return new Number8Information(); 71 | else if(i == 9) 72 | return new Number9Information(); 73 | 74 | return null; 75 | } 76 | 77 | public IGameInformation getGameInformation(int difficulty){ 78 | if(difficulty == 1) 79 | return new Game1Information(); 80 | else if(difficulty == 2) 81 | return new Game2Information(); 82 | else if(difficulty == 3) 83 | return new Game3Information(); 84 | else 85 | return new Game1Information(); 86 | } 87 | } 88 | -------------------------------------------------------------------------------- /src/fishjoy/control/game/operation/TextureRegionCreator.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control.game.operation; 2 | 3 | import java.util.HashMap; 4 | 5 | import org.anddev.andengine.opengl.font.Font; 6 | import org.anddev.andengine.opengl.font.StrokeFont; 7 | import org.anddev.andengine.opengl.texture.Texture; 8 | import org.anddev.andengine.opengl.texture.TextureOptions; 9 | import org.anddev.andengine.opengl.texture.region.TextureRegion; 10 | import org.anddev.andengine.opengl.texture.region.TextureRegionFactory; 11 | import org.anddev.andengine.opengl.texture.region.TiledTextureRegion; 12 | import org.anddev.andengine.ui.activity.BaseGameActivity; 13 | 14 | import android.graphics.Typeface; 15 | 16 | import fishjoy.control.GameEnum.Artillery_Rank; 17 | import fishjoy.control.GameEnum.Artillery_Operate; 18 | import fishjoy.control.GameEnum.Fish_Name; 19 | 20 | public class TextureRegionCreator { 21 | 22 | private static TextureRegionCreator uniqueInstance; 23 | 24 | private TextureRegionCreator(){} 25 | 26 | public static TextureRegionCreator getInstance(){ 27 | if(uniqueInstance == null){ 28 | uniqueInstance = new TextureRegionCreator(); 29 | } 30 | return uniqueInstance; 31 | } 32 | 33 | private TiledTextureRegion creatMovingFishTextureRegion(Fish_Name name, BaseGameActivity activity){ 34 | TiledTextureRegion fishTextureRegion = this.createTiledTextureRegion( 35 | ModelInformationController.getInstance().getFishInformation(name).get_TextureRegion_width(), 36 | ModelInformationController.getInstance().getFishInformation(name).get_TextureRegion_height(), 37 | ModelInformationController.getInstance().getFishInformation(name).get_Path(), 38 | ModelInformationController.getInstance().getFishInformation(name).get_line(), 39 | ModelInformationController.getInstance().getFishInformation(name).get_row(), 40 | activity); 41 | 42 | return fishTextureRegion; 43 | } 44 | 45 | public void creatAllMovingFishTextureRegion( 46 | HashMap allMovingFishTextureRegionMap, 47 | BaseGameActivity activity) { 48 | 49 | allMovingFishTextureRegionMap.put(Fish_Name.CLOWNFISH, this.creatMovingFishTextureRegion(Fish_Name.CLOWNFISH, activity)); 50 | allMovingFishTextureRegionMap.put(Fish_Name.PUFFERFISH, this.creatMovingFishTextureRegion(Fish_Name.PUFFERFISH, activity)); 51 | allMovingFishTextureRegionMap.put(Fish_Name.SARDINE, this.creatMovingFishTextureRegion(Fish_Name.SARDINE, activity)); 52 | allMovingFishTextureRegionMap.put(Fish_Name.SHARK, this.creatMovingFishTextureRegion(Fish_Name.SHARK, activity)); 53 | allMovingFishTextureRegionMap.put(Fish_Name.TORTOISE, this.creatMovingFishTextureRegion(Fish_Name.TORTOISE, activity)); 54 | 55 | } 56 | 57 | private TiledTextureRegion creatBulletTextureRegion(Artillery_Rank rank, BaseGameActivity activity) { 58 | TiledTextureRegion bulletTextureRegion = this.createTiledTextureRegion( 59 | ModelInformationController.getInstance().getArtilleryInformation(rank).getBulletInformation().get_TextureRegion_width(), 60 | ModelInformationController.getInstance().getArtilleryInformation(rank).getBulletInformation().get_TextureRegion_height(), 61 | ModelInformationController.getInstance().getArtilleryInformation(rank).getBulletInformation().get_Path(), 62 | 1, 1, activity); 63 | 64 | return bulletTextureRegion; 65 | } 66 | 67 | public void creatAllBulletTextureRegion( 68 | HashMap allBulletTextureRegionMap, 69 | BaseGameActivity activity) { 70 | allBulletTextureRegionMap.put(Artillery_Rank.RANK1,this.creatBulletTextureRegion(Artillery_Rank.RANK1, activity)); 71 | allBulletTextureRegionMap.put(Artillery_Rank.RANK2,this.creatBulletTextureRegion(Artillery_Rank.RANK2, activity)); 72 | allBulletTextureRegionMap.put(Artillery_Rank.RANK3,this.creatBulletTextureRegion(Artillery_Rank.RANK3, activity)); 73 | allBulletTextureRegionMap.put(Artillery_Rank.RANK4,this.creatBulletTextureRegion(Artillery_Rank.RANK4, activity)); 74 | allBulletTextureRegionMap.put(Artillery_Rank.RANK5,this.creatBulletTextureRegion(Artillery_Rank.RANK5, activity)); 75 | } 76 | 77 | public void createAllButtonTextureRegion( 78 | HashMap allButtonTextureRegionMap, 79 | BaseGameActivity activity) { 80 | Texture buttonTexture = new Texture(256, 64, TextureOptions.BILINEAR_PREMULTIPLYALPHA); 81 | allButtonTextureRegionMap.put(Artillery_Operate.WEAKEN, TextureRegionFactory.createTiledFromAsset(buttonTexture, activity, "button_reduce.png", 0, 0, 2, 1)); 82 | allButtonTextureRegionMap.put(Artillery_Operate.STRENGTHEN, TextureRegionFactory.createTiledFromAsset(buttonTexture, activity, "button_add.png", 100, 0, 2, 1)); 83 | activity.getEngine().getTextureManager().loadTexture(buttonTexture); 84 | 85 | } 86 | 87 | public TiledTextureRegion createArtilleryTextureRegion(BaseGameActivity activity){ 88 | TiledTextureRegion artilleryTextureRegion = this.createTiledTextureRegion( 89 | 512, 128, "pao5.png", 5, 1, activity); 90 | return artilleryTextureRegion; 91 | } 92 | 93 | public void createAllNetTextureRegion( 94 | HashMap allNetTextureRegionMap, 95 | BaseGameActivity activity) { 96 | allNetTextureRegionMap.put(Artillery_Rank.RANK1,this.creatNetTextureRegion(Artillery_Rank.RANK1, activity)); 97 | allNetTextureRegionMap.put(Artillery_Rank.RANK2,this.creatNetTextureRegion(Artillery_Rank.RANK2, activity)); 98 | allNetTextureRegionMap.put(Artillery_Rank.RANK3,this.creatNetTextureRegion(Artillery_Rank.RANK3, activity)); 99 | allNetTextureRegionMap.put(Artillery_Rank.RANK4,this.creatNetTextureRegion(Artillery_Rank.RANK4, activity)); 100 | allNetTextureRegionMap.put(Artillery_Rank.RANK5,this.creatNetTextureRegion(Artillery_Rank.RANK5, activity)); 101 | 102 | } 103 | 104 | private TiledTextureRegion creatNetTextureRegion(Artillery_Rank rank, BaseGameActivity activity) { 105 | TiledTextureRegion netTextureRegion = this.createTiledTextureRegion( 106 | ModelInformationController.getInstance().getArtilleryInformation(rank).getBulletInformation().getNetInformation().get_TextureRegion_width(), 107 | ModelInformationController.getInstance().getArtilleryInformation(rank).getBulletInformation().getNetInformation().get_TextureRegion_height(), 108 | ModelInformationController.getInstance().getArtilleryInformation(rank).getBulletInformation().getNetInformation().get_Path(), 109 | 110 | 1, 5, activity); 111 | 112 | return netTextureRegion; 113 | } 114 | 115 | public void creatAllCapturedFishTextureRegion( 116 | HashMap allCapturedFishTextureRegionMap, 117 | BaseGameActivity activity) { 118 | allCapturedFishTextureRegionMap.put(Fish_Name.CLOWNFISH, this.creatCapturedFishTextureRegion(Fish_Name.CLOWNFISH, activity)); 119 | allCapturedFishTextureRegionMap.put(Fish_Name.PUFFERFISH, this.creatCapturedFishTextureRegion(Fish_Name.PUFFERFISH, activity)); 120 | allCapturedFishTextureRegionMap.put(Fish_Name.SARDINE, this.creatCapturedFishTextureRegion(Fish_Name.SARDINE, activity)); 121 | allCapturedFishTextureRegionMap.put(Fish_Name.SHARK, this.creatCapturedFishTextureRegion(Fish_Name.SHARK, activity)); 122 | allCapturedFishTextureRegionMap.put(Fish_Name.TORTOISE, this.creatCapturedFishTextureRegion(Fish_Name.TORTOISE, activity)); 123 | 124 | 125 | } 126 | 127 | private TiledTextureRegion creatCapturedFishTextureRegion(Fish_Name name, BaseGameActivity activity) { 128 | TiledTextureRegion fishTextureRegion = 129 | this.createTiledTextureRegion( 130 | ModelInformationController.getInstance().getFishInformation(name).getCaptureFishInformation().get_TextureRegion_width(), 131 | ModelInformationController.getInstance().getFishInformation(name).getCaptureFishInformation().get_TextureRegion_height(), 132 | ModelInformationController.getInstance().getFishInformation(name).getCaptureFishInformation().get_Path(), 133 | ModelInformationController.getInstance().getFishInformation(name).getCaptureFishInformation().get_line(), 134 | ModelInformationController.getInstance().getFishInformation(name).getCaptureFishInformation().get_row(), 135 | 136 | activity); 137 | 138 | return fishTextureRegion; 139 | } 140 | 141 | public void creatAllScoreTextureRegion( 142 | HashMap allScoreTextureRegionMap, 143 | BaseGameActivity activity) { 144 | allScoreTextureRegionMap.put(Fish_Name.CLOWNFISH, this.creatScoreTextureRegion(Fish_Name.CLOWNFISH, activity)); 145 | allScoreTextureRegionMap.put(Fish_Name.PUFFERFISH, this.creatScoreTextureRegion(Fish_Name.PUFFERFISH, activity)); 146 | allScoreTextureRegionMap.put(Fish_Name.SARDINE, this.creatScoreTextureRegion(Fish_Name.SARDINE, activity)); 147 | allScoreTextureRegionMap.put(Fish_Name.SHARK, this.creatScoreTextureRegion(Fish_Name.SHARK, activity)); 148 | allScoreTextureRegionMap.put(Fish_Name.TORTOISE, this.creatScoreTextureRegion(Fish_Name.TORTOISE, activity)); 149 | 150 | } 151 | 152 | private TiledTextureRegion creatScoreTextureRegion(Fish_Name name,BaseGameActivity activity) { 153 | 154 | TiledTextureRegion scoreTextureRegion = 155 | this.createTiledTextureRegion( 156 | ModelInformationController.getInstance().getFishInformation(name).getScoreInformation().get_TextureRegion_width(), 157 | ModelInformationController.getInstance().getFishInformation(name).getScoreInformation().get_TextureRegion_height(), 158 | ModelInformationController.getInstance().getFishInformation(name).getScoreInformation().get_Path(), 159 | ModelInformationController.getInstance().getFishInformation(name).getScoreInformation().get_line(), 160 | ModelInformationController.getInstance().getFishInformation(name).getScoreInformation().get_row(), 161 | activity); 162 | 163 | return scoreTextureRegion; 164 | } 165 | 166 | public Font creatFont(BaseGameActivity activity, float pSize, int pColor){ 167 | Texture fontTexture = new Texture(256, 256, TextureOptions.BILINEAR_PREMULTIPLYALPHA); 168 | Font font = new Font(fontTexture, Typeface.create(Typeface.DEFAULT, Typeface.NORMAL), pSize, true, pColor); 169 | activity.getEngine().getTextureManager().loadTexture(fontTexture); 170 | activity.getEngine().getFontManager().loadFonts(font); 171 | return font; 172 | } 173 | 174 | public StrokeFont createStrokeFont(BaseGameActivity activity, float pSize, int pColor, float pStrokeWidth, int pStrokeColor){ 175 | Texture fontTexture = new Texture(256, 256, TextureOptions.BILINEAR_PREMULTIPLYALPHA); 176 | StrokeFont strokeFont = new StrokeFont(fontTexture, Typeface.create(Typeface.DEFAULT, Typeface.BOLD), pSize, true, pColor, pStrokeWidth, pStrokeColor); 177 | activity.getEngine().getTextureManager().loadTexture(fontTexture); 178 | activity.getEngine().getFontManager().loadFonts(strokeFont); 179 | return strokeFont; 180 | } 181 | 182 | public TextureRegion createTextureRegion(int pWidth, int pHeight, TextureOptions textureOptions, String path, BaseGameActivity activity ){ 183 | Texture texture = new Texture(pWidth, pHeight, textureOptions/*TextureOptions.BILINEAR_PREMULTIPLYALPHA*/); 184 | TextureRegion textureRegion = TextureRegionFactory.createFromAsset(texture, activity, path, 0, 0); 185 | activity.getEngine().getTextureManager().loadTexture(texture); 186 | return textureRegion; 187 | } 188 | 189 | public TiledTextureRegion createTiledTextureRegion(int pWidth, int pHeight, String path,int pTileColumns, int pTileRows, BaseGameActivity activity ){ 190 | Texture texture = new Texture(pWidth, pHeight, TextureOptions.BILINEAR_PREMULTIPLYALPHA); 191 | TiledTextureRegion tiledTextureRegion = TextureRegionFactory.createTiledFromAsset(texture, activity, path, 0, 0, pTileColumns,pTileRows); 192 | activity.getEngine().getTextureManager().loadTexture(texture); 193 | return tiledTextureRegion; 194 | } 195 | 196 | public void createAllNumberTextureRegion( 197 | HashMap allNumberTextureRegionMap,BaseGameActivity activity) { 198 | for(int i = 0; i < 10; i++ ) 199 | allNumberTextureRegionMap.put(i, 200 | this.createTextureRegion(ModelInformationController.getInstance().getNumberInformation(i).get_TextureRegion_width(), 201 | ModelInformationController.getInstance().getNumberInformation(i).get_TextureRegion_height(), 202 | TextureOptions.BILINEAR_PREMULTIPLYALPHA, 203 | ModelInformationController.getInstance().getNumberInformation(i).get_Path(), 204 | activity)); 205 | } 206 | 207 | public TextureRegion createBackgroundTextureRegion(BaseGameActivity activity, int mDifficulty) { 208 | String path; 209 | // switch(mDifficulty){ 210 | // case 1 : path = "background_easy.png"; break; 211 | // case 2 : path = "background_common.png"; break; 212 | // case 3 : path = "background_hard.png"; break; 213 | // default : path = "background_easy.png"; 214 | // } 215 | // 216 | // Texture texture = new Texture(1024, 512, TextureOptions.DEFAULT); 217 | // TextureRegion backgroundTextureRegion = TextureRegionFactory.createFromAsset(texture, activity, path, 0, 0); 218 | // activity.getEngine().getTextureManager().loadTexture(texture); 219 | 220 | TextureRegion backgroundTextureRegion = 221 | this.createTextureRegion( 222 | ModelInformationController.getInstance().getGameInformation(mDifficulty).get_TextureRegion_width(), 223 | ModelInformationController.getInstance().getGameInformation(mDifficulty).get_TextureRegion_height(), 224 | TextureOptions.DEFAULT, 225 | ModelInformationController.getInstance().getGameInformation(mDifficulty).get_Path(), 226 | activity); 227 | 228 | return backgroundTextureRegion; 229 | } 230 | } 231 | -------------------------------------------------------------------------------- /src/fishjoy/control/game/operation/artilleryoperation/ArtilleryController.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control.game.operation.artilleryoperation; 2 | 3 | import java.util.HashMap; 4 | 5 | import org.anddev.andengine.entity.scene.Scene; 6 | import org.anddev.andengine.entity.sprite.Sprite; 7 | import org.anddev.andengine.entity.sprite.TiledSprite; 8 | import org.anddev.andengine.input.touch.TouchEvent; 9 | import org.anddev.andengine.opengl.texture.region.TextureRegion; 10 | import org.anddev.andengine.opengl.texture.region.TiledTextureRegion; 11 | 12 | import fishjoy.control.game.GameConstants; 13 | 14 | public class ArtilleryController implements GameConstants { 15 | 16 | private static ArtilleryController uniqueInstance; 17 | 18 | private static ArtillerySprite artillery = null; 19 | private final ArtilleryOperation artilleryOperation = new ArtilleryOperation(); 20 | 21 | private static HashMap allNumberTextureRegionMap = new HashMap(); 22 | private static int mInitialCoin; 23 | 24 | private ArtilleryController(){} 25 | 26 | public static ArtilleryController getInstance(){ 27 | if(uniqueInstance == null){ 28 | uniqueInstance = new ArtilleryController(); 29 | } 30 | return uniqueInstance; 31 | } 32 | 33 | private TiledSprite createSingleButton(final Artillery_Operate operate, TiledTextureRegion pTiledTextureRegion, 34 | final TiledTextureRegion artilleryTextureRegion, final Scene scene ){ 35 | 36 | int pX; 37 | if(operate.equals(Artillery_Operate.WEAKEN)) 38 | pX = CAMERA_WIDTH /2 - artilleryTextureRegion.getWidth()/10 - pTiledTextureRegion.getWidth()/2 +5; 39 | else 40 | pX = CAMERA_WIDTH /2 - artilleryTextureRegion.getWidth()/10 - pTiledTextureRegion.getWidth()/2 +121-30; 41 | 42 | int pY = CAMERA_HEIGHT - pTiledTextureRegion.getHeight(); 43 | 44 | TiledSprite button = new TiledSprite(pX, pY, pTiledTextureRegion){ 45 | 46 | public boolean onAreaTouched(final TouchEvent pSceneTouchEvent, final float pTouchAreaLocalX, final float pTouchAreaLocalY){ 47 | if(pSceneTouchEvent.isActionDown()){ 48 | this.setCurrentTileIndex(1); 49 | 50 | if(operate.equals(Artillery_Operate.WEAKEN)) 51 | artilleryOperation.weak(artillery, artilleryTextureRegion); 52 | else 53 | artilleryOperation.strength(artillery, artilleryTextureRegion); 54 | 55 | }else if(pSceneTouchEvent.isActionUp()){ 56 | this.setCurrentTileIndex(0); 57 | } 58 | return true; 59 | } 60 | }; 61 | return button; 62 | } 63 | 64 | public void artilleryInitialization(TiledTextureRegion artilleryTextureRegion, 65 | HashMap allBulletTextureRegionMap, 66 | HashMap allButtonTextureRegionMap, 67 | HashMap allNumberTextureRegionMap, 68 | Scene scene , int mInitialCoin){ 69 | 70 | //about artillery 71 | int px = (CAMERA_WIDTH - artilleryTextureRegion.getWidth()/5)/2 + 1; 72 | int py = CAMERA_HEIGHT - artilleryTextureRegion.getHeight()/8*7 + 10; 73 | artillery = new ArtillerySprite(px, py, artilleryTextureRegion, allBulletTextureRegionMap); 74 | scene.getChild(LAYER_ARTILLERY).attachChild(artillery); 75 | 76 | this.allNumberTextureRegionMap.putAll(allNumberTextureRegionMap); 77 | this.mInitialCoin = mInitialCoin; 78 | 79 | this.showCoins(scene); 80 | 81 | //about button 82 | this.createButtons(allButtonTextureRegionMap, artilleryTextureRegion, scene); 83 | 84 | } 85 | 86 | private void createButtons(HashMap allButtoneTextureRegionMap, 87 | TiledTextureRegion artilleryTextureRegion, Scene scene){ 88 | 89 | TiledSprite leftButton = this.createSingleButton(Artillery_Operate.WEAKEN, allButtoneTextureRegionMap.get(Artillery_Operate.WEAKEN), artilleryTextureRegion, scene); 90 | TiledSprite rightButton = this.createSingleButton(Artillery_Operate.STRENGTHEN, allButtoneTextureRegionMap.get(Artillery_Operate.STRENGTHEN), artilleryTextureRegion, scene); 91 | 92 | 93 | scene.registerTouchArea(leftButton); 94 | scene.registerTouchArea(rightButton); 95 | 96 | scene.getChild(LAYER_ARTILLERY).attachChild(leftButton); 97 | scene.getChild(LAYER_ARTILLERY).attachChild(rightButton); 98 | 99 | } 100 | 101 | public BulletSprite lauchBullet(float angle, Scene scene) { 102 | 103 | if(mInitialCoin - artillery.getLevel()-1 >= 0){ 104 | mInitialCoin = mInitialCoin - artillery.getLevel()-1; 105 | this.showCoins(scene); 106 | 107 | artilleryOperation.changeArtilleryDirection(artillery, angle, scene); 108 | return artilleryOperation.lauchBullet(artillery, angle, scene); 109 | } 110 | 111 | return null; 112 | } 113 | 114 | 115 | public void addCoin(int value){ 116 | mInitialCoin+=value; 117 | } 118 | 119 | 120 | public void showCoins(Scene scene) { 121 | System.out.println("mInitialCoin " + mInitialCoin); 122 | int thousand = mInitialCoin/1000; 123 | int hundred = (mInitialCoin - thousand*1000)/100; 124 | int ten = (mInitialCoin - thousand*1000 - hundred*100)/10; 125 | int one = mInitialCoin - thousand*1000 - hundred*100 - ten*10; 126 | 127 | Sprite thousandSprite = new Sprite(75, 295, allNumberTextureRegionMap.get(thousand).clone()); 128 | Sprite hundredSprite = new Sprite(95, 295, allNumberTextureRegionMap.get(hundred).clone()); 129 | Sprite tenSprite = new Sprite(115, 295, allNumberTextureRegionMap.get(ten).clone()); 130 | Sprite oneSprite = new Sprite(135, 295, allNumberTextureRegionMap.get(one).clone()); 131 | 132 | thousandSprite.setSize(20, 25); 133 | hundredSprite.setSize(20, 25); 134 | tenSprite.setSize(20, 25); 135 | oneSprite.setSize(20, 25); 136 | 137 | scene.attachChild(thousandSprite); 138 | scene.attachChild(hundredSprite); 139 | scene.attachChild(tenSprite); 140 | scene.attachChild(oneSprite); 141 | 142 | } 143 | 144 | } 145 | -------------------------------------------------------------------------------- /src/fishjoy/control/game/operation/artilleryoperation/ArtilleryOperation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control.game.operation.artilleryoperation; 2 | 3 | import org.anddev.andengine.entity.scene.Scene; 4 | import org.anddev.andengine.opengl.texture.region.TiledTextureRegion; 5 | 6 | import fishjoy.control.game.GameConstants; 7 | 8 | public class ArtilleryOperation implements GameConstants { 9 | 10 | public void weak(ArtillerySprite artillery, 11 | TiledTextureRegion artilleryTextureRegion) { 12 | if(artillery.getLevel() != ARTILLERY_MIN_RANK ){ 13 | artillery.levelDown(); 14 | artilleryTextureRegion.setCurrentTileIndex(artillery.getLevel()); 15 | } 16 | } 17 | 18 | public void strength(ArtillerySprite artillery, 19 | TiledTextureRegion artilleryTextureRegion) { 20 | if(artillery.getLevel() != ARTILLERY_MAX_RANK ){ 21 | artillery.levelUp(); 22 | artilleryTextureRegion.setCurrentTileIndex(artillery.getLevel()); 23 | } 24 | } 25 | 26 | public void changeArtilleryDirection(ArtillerySprite artillery, float angle, Scene scene) { 27 | scene.detachChild(artillery); 28 | artillery.setRotation(angle); 29 | scene.getChild(LAYER_ARTILLERY).attachChild(artillery); 30 | } 31 | 32 | public BulletSprite lauchBullet(ArtillerySprite artillery, float angle, Scene scene) { 33 | artillery.createBullet(); 34 | artillery.setBulletParameter(angle); 35 | BulletSprite bullet = artillery.getBullet(); 36 | scene.getChild(LAYER_BULLET).attachChild(bullet); 37 | return bullet; 38 | } 39 | 40 | } 41 | -------------------------------------------------------------------------------- /src/fishjoy/control/game/operation/artilleryoperation/ArtillerySprite.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/src/fishjoy/control/game/operation/artilleryoperation/ArtillerySprite.java -------------------------------------------------------------------------------- /src/fishjoy/control/game/operation/artilleryoperation/BulletSprite.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control.game.operation.artilleryoperation; 2 | 3 | import java.util.HashMap; 4 | 5 | import org.anddev.andengine.engine.handler.physics.PhysicsHandler; 6 | import org.anddev.andengine.entity.sprite.AnimatedSprite; 7 | import org.anddev.andengine.opengl.texture.region.TiledTextureRegion; 8 | import org.anddev.andengine.ui.activity.BaseGameActivity; 9 | import org.anddev.andengine.util.MathUtils; 10 | 11 | import fishjoy.control.GameSound; 12 | import fishjoy.control.game.GameConstants; 13 | import fishjoy.control.game.operation.ModelInformationController; 14 | import fishjoy.control.game.operation.TextureRegionCreator; 15 | 16 | public class BulletSprite extends AnimatedSprite implements GameConstants{ 17 | 18 | private static final float BULLET_VELOCITY = 200; 19 | 20 | private PhysicsHandler bulletphysic; 21 | 22 | private float Velocity_X , Velocity_Y; 23 | 24 | private Artillery_Rank rank; 25 | 26 | AnimatedSprite net = null; 27 | 28 | public BulletSprite(float pX, float pY,TiledTextureRegion pTiledTextureRegion, Artillery_Rank rank) { 29 | super(pX, pY, pTiledTextureRegion); 30 | bulletphysic = new PhysicsHandler(this); 31 | this.registerUpdateHandler(bulletphysic); 32 | this.rank = rank; 33 | 34 | } 35 | 36 | public void bulletRotation(float deg){ 37 | this.setRotation(deg); 38 | } 39 | 40 | public void setVelocity(){ 41 | Velocity_X = (float) (BULLET_VELOCITY * Math.sin(MathUtils.degToRad(getRotation()))); 42 | Velocity_Y = (float) (BULLET_VELOCITY * Math.cos(MathUtils.degToRad(getRotation()))); 43 | bulletphysic.setVelocity(Velocity_X, -Velocity_Y); 44 | } 45 | 46 | public Artillery_Rank getRank(){ 47 | return this.rank; 48 | } 49 | 50 | public AnimatedSprite lauchNet(HashMap allNetTextureRegionMap, 51 | final BaseGameActivity activity, GameSound sound){ 52 | net = new AnimatedSprite(this.getX()-86, this.getY()-80, 53 | allNetTextureRegionMap.get(this.rank).clone()); 54 | 55 | net.setSize(ModelInformationController.getInstance().getArtilleryInformation( 56 | this.getRank()).getBulletInformation().getNetInformation().get_size_w(), 57 | ModelInformationController.getInstance().getArtilleryInformation( 58 | this.getRank()).getBulletInformation().getNetInformation().get_size_w()); 59 | net.animate(80, false, new IAnimationListener(){ 60 | @Override 61 | public void onAnimationEnd(AnimatedSprite pAnimatedSprite){ 62 | activity.runOnUpdateThread(new Runnable() { 63 | @Override 64 | public void run() { 65 | activity.getEngine().getScene().getChild(LAYER_NET).detachChild(net); 66 | } 67 | }); 68 | } 69 | }); 70 | activity.getEngine().getScene().getChild(LAYER_NET).attachChild(net); 71 | sound.netOpen(); 72 | return net; 73 | } 74 | 75 | public boolean isOutOfLength() { 76 | if(this.getY() < ModelInformationController.getInstance().getArtilleryInformation(rank).getBulletInformation().getMinWeight() 77 | || this.getY() > CAMERA_WIDTH 78 | || this.getX() < ModelInformationController.getInstance().getArtilleryInformation(rank).getBulletInformation().getMinHeight() 79 | || this.getX() > ModelInformationController.getInstance().getArtilleryInformation(rank).getBulletInformation().getMaxHeight()) 80 | return true; 81 | return false; 82 | } 83 | 84 | 85 | 86 | } 87 | -------------------------------------------------------------------------------- /src/fishjoy/control/game/operation/fishoperation/CapturedProbability.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control.game.operation.fishoperation; 2 | 3 | import fishjoy.control.GameEnum.Artillery_Rank; 4 | 5 | public class CapturedProbability { 6 | private static CapturedProbability uniqueInstance; 7 | 8 | private CapturedProbability(){} 9 | 10 | public static CapturedProbability getInstance(){ 11 | if(uniqueInstance == null) 12 | uniqueInstance = new CapturedProbability(); 13 | return uniqueInstance; 14 | } 15 | 16 | public boolean SardineCanBeCapturedByBullet(Artillery_Rank rank){ 17 | int i = (int) (Math.random()*100); 18 | 19 | if(rank == Artillery_Rank.RANK1){ 20 | if(i < 30) 21 | return true; 22 | }else if(rank == Artillery_Rank.RANK2){ 23 | if(i < 40) 24 | return true; 25 | }else if(rank == Artillery_Rank.RANK3){ 26 | if(i < 50) 27 | return true; 28 | }else if(rank == Artillery_Rank.RANK4){ 29 | if(i < 60) 30 | return true; 31 | }else{ 32 | if(i < 70) 33 | return true; 34 | } 35 | return false; 36 | } 37 | 38 | public boolean SardineCanBeCapturedByNet(Artillery_Rank rank){ 39 | int i = (int) (Math.random()*100); 40 | 41 | if(rank == Artillery_Rank.RANK1){ 42 | if(i < 10) 43 | return true; 44 | }else if(rank == Artillery_Rank.RANK2){ 45 | if(i < 20) 46 | return true; 47 | }else if(rank == Artillery_Rank.RANK3){ 48 | if(i < 30) 49 | return true; 50 | }else if(rank == Artillery_Rank.RANK4){ 51 | if(i < 40) 52 | return true; 53 | }else{ 54 | if(i < 50) 55 | return true; 56 | } 57 | return false; 58 | } 59 | 60 | public boolean ClownFishCanBeCapturedByBullet(Artillery_Rank rank){ 61 | int i = (int) (Math.random()*100); 62 | 63 | if(rank == Artillery_Rank.RANK1){ 64 | if(i < 10) 65 | return true; 66 | }else if(rank == Artillery_Rank.RANK2){ 67 | if(i < 30) 68 | return true; 69 | }else if(rank == Artillery_Rank.RANK3){ 70 | if(i < 40) 71 | return true; 72 | }else if(rank == Artillery_Rank.RANK4){ 73 | if(i < 50) 74 | return true; 75 | }else{ 76 | if(i < 60) 77 | return true; 78 | } 79 | return false; 80 | } 81 | 82 | public boolean ClownFishCanBeCapturedByNet(Artillery_Rank rank){ 83 | int i = (int) (Math.random()*100); 84 | 85 | if(rank == Artillery_Rank.RANK1){ 86 | if(i < 5) 87 | return true; 88 | }else if(rank == Artillery_Rank.RANK2){ 89 | if(i < 10) 90 | return true; 91 | }else if(rank == Artillery_Rank.RANK3){ 92 | if(i < 30) 93 | return true; 94 | }else if(rank == Artillery_Rank.RANK4){ 95 | if(i < 40) 96 | return true; 97 | }else{ 98 | if(i < 50) 99 | return true; 100 | } 101 | return false; 102 | } 103 | 104 | public boolean PufferFishCanBeCapturedByBullet(Artillery_Rank rank){ 105 | int i = (int) (Math.random()*100); 106 | 107 | if(rank == Artillery_Rank.RANK2){ 108 | if(i < 5) 109 | return true; 110 | }else if(rank == Artillery_Rank.RANK3){ 111 | if(i < 30) 112 | return true; 113 | }else if(rank == Artillery_Rank.RANK4){ 114 | if(i <40) 115 | return true; 116 | }else{ 117 | if(i < 50) 118 | return true; 119 | } 120 | return false; 121 | } 122 | 123 | public boolean PufferFishCanBeCapturedByNet(Artillery_Rank rank){ 124 | int i = (int) (Math.random()*100); 125 | 126 | if(rank == Artillery_Rank.RANK3){ 127 | if(i < 10) 128 | return true; 129 | }else if(rank == Artillery_Rank.RANK4){ 130 | if(i < 20) 131 | return true; 132 | }else if(rank == Artillery_Rank.RANK5){ 133 | if(i < 30) 134 | return true; 135 | } 136 | return false; 137 | } 138 | 139 | public boolean TortoiseCanBeCapturedByBullet(Artillery_Rank rank){ 140 | int i = (int) (Math.random()*100); 141 | 142 | if(rank == Artillery_Rank.RANK3){ 143 | if(i < 5) 144 | return true; 145 | }else if(rank == Artillery_Rank.RANK4){ 146 | if(i < 10) 147 | return true; 148 | }else if(rank == Artillery_Rank.RANK5){ 149 | if(i < 15) 150 | return true; 151 | } 152 | return false; 153 | } 154 | 155 | public boolean TortoiseCanBeCapturedByNet(Artillery_Rank rank){ 156 | int i = (int) (Math.random()*100); 157 | 158 | if(rank == Artillery_Rank.RANK4){ 159 | if(i < 5) 160 | return true; 161 | }else if(rank == Artillery_Rank.RANK5){ 162 | if(i < 10) 163 | return true; 164 | } 165 | 166 | return false; 167 | } 168 | 169 | public boolean SharkCanBeCapturedByBullet(Artillery_Rank rank){ 170 | int i = (int) (Math.random()*100); 171 | 172 | if(rank == Artillery_Rank.RANK4){ 173 | if(i < 2) 174 | return true; 175 | }else if(rank == Artillery_Rank.RANK5){ 176 | if(i < 5) 177 | return true; 178 | } 179 | return false; 180 | } 181 | 182 | 183 | public boolean SharkCanBeCapturedByNet(Artillery_Rank rank){ 184 | int i = (int) (Math.random()*100); 185 | 186 | if(rank == Artillery_Rank.RANK5){ 187 | if(i < 3) 188 | return true; 189 | } 190 | return false; 191 | } 192 | } 193 | -------------------------------------------------------------------------------- /src/fishjoy/control/game/operation/fishoperation/FishController.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control.game.operation.fishoperation; 2 | 3 | import org.anddev.andengine.engine.handler.physics.PhysicsHandler; 4 | import org.anddev.andengine.entity.sprite.AnimatedSprite; 5 | import org.anddev.andengine.opengl.texture.region.TiledTextureRegion; 6 | import org.anddev.andengine.ui.activity.BaseGameActivity; 7 | 8 | import android.util.Log; 9 | 10 | import fishjoy.control.game.GameConstants; 11 | import fishjoy.control.game.operation.ModelInformationController; 12 | import fishjoy.control.game.operation.TextureRegionCreator; 13 | import fishjoy.control.game.operation.artilleryoperation.BulletSprite; 14 | 15 | public class FishController extends AnimatedSprite implements GameConstants{ 16 | 17 | protected PhysicsHandler mPhysicsHandler; 18 | private FishOperation fishOperation; 19 | AnimatedSprite capturedFish = null; 20 | 21 | //������� 22 | int X,Y,A,way,up; 23 | 24 | //��ǰ״̬��Ϣ 25 | int count_of_circle; 26 | Fish_Name name; 27 | Fish_Move move; 28 | float current_X,current_Y; 29 | float current_rotation; 30 | Move_Direction direction; 31 | Edge_Position position; 32 | 33 | public FishController(Fish_Name _name,TiledTextureRegion pTiledTextureRegion) { 34 | super(0, 0, pTiledTextureRegion); 35 | mPhysicsHandler=new PhysicsHandler(this); 36 | this.registerUpdateHandler(mPhysicsHandler); 37 | name=_name; 38 | } 39 | 40 | public void set_Fish_Operation(FishOperation operation) 41 | { 42 | fishOperation=operation; 43 | } 44 | 45 | @Override 46 | protected void onManagedUpdate(final float pSecondsElapsed) { 47 | super.onManagedUpdate(pSecondsElapsed); 48 | fishOperation.fishOnManagedUpdate(); 49 | } 50 | 51 | 52 | public Fish_Name getFishName(){ 53 | return this.name; 54 | } 55 | 56 | public boolean isOutOfScene() { 57 | if(fishOperation.isOutOfBound()) 58 | return true; 59 | return false; 60 | } 61 | 62 | public void captured(TiledTextureRegion capturedFishTextureRegion,final BaseGameActivity activity){ 63 | // this.detachSelf(); 64 | capturedFish = 65 | new AnimatedSprite(this.getX(), this.getY(),capturedFishTextureRegion.clone()); 66 | // capturedFish.setSize(ResourcesOperation.getInstance().getFishInformation(name).getCaptureFishInformation().get_size_w(), 67 | // ResourcesOperation.getInstance().getFishInformation(name).getCaptureFishInformation().get_size_h()); 68 | capturedFish.setSize(ModelInformationController.getInstance().getFishInformation(name).getCaptureFishInformation().get_size_w(), 69 | ModelInformationController.getInstance().getFishInformation(name).getCaptureFishInformation().get_size_h()); 70 | capturedFish.animate(80, 2, new IAnimationListener(){ 71 | @Override 72 | public void onAnimationEnd(AnimatedSprite pAnimatedSprite){ 73 | activity.runOnUpdateThread(new Runnable() { 74 | @Override 75 | public void run() { 76 | Log.d("test","test"); 77 | activity.getEngine().getScene().getChild(LAYER_FISH).detachChild(capturedFish); 78 | } 79 | }); 80 | } 81 | }); 82 | capturedFish.setRotation(this.getRotation()); 83 | activity.getEngine().getScene().getChild(LAYER_FISH).attachChild(capturedFish); 84 | } 85 | 86 | public boolean canBeCaughtByBullet(BulletSprite bulletSprite) { 87 | 88 | if(name == Fish_Name.SARDINE) 89 | return CapturedProbability.getInstance().SardineCanBeCapturedByBullet(bulletSprite.getRank()); 90 | else if(name == Fish_Name.CLOWNFISH) 91 | return CapturedProbability.getInstance().ClownFishCanBeCapturedByBullet(bulletSprite.getRank()); 92 | else if(name == Fish_Name.PUFFERFISH) 93 | return CapturedProbability.getInstance().PufferFishCanBeCapturedByBullet(bulletSprite.getRank()); 94 | else if(name == Fish_Name.TORTOISE) 95 | return CapturedProbability.getInstance().TortoiseCanBeCapturedByBullet(bulletSprite.getRank()); 96 | else if(name == Fish_Name.SHARK) 97 | return CapturedProbability.getInstance().SharkCanBeCapturedByBullet(bulletSprite.getRank()); 98 | 99 | return false; 100 | } 101 | 102 | public boolean canBeCaughtByNet(AnimatedSprite net, BulletSprite bulletSprite) { 103 | 104 | if(name == Fish_Name.SARDINE) 105 | return CapturedProbability.getInstance().SardineCanBeCapturedByNet(bulletSprite.getRank()); 106 | else if(name == Fish_Name.CLOWNFISH) 107 | return CapturedProbability.getInstance().ClownFishCanBeCapturedByNet(bulletSprite.getRank()); 108 | else if(name == Fish_Name.PUFFERFISH) 109 | return CapturedProbability.getInstance().PufferFishCanBeCapturedByNet(bulletSprite.getRank()); 110 | else if(name == Fish_Name.TORTOISE) 111 | return CapturedProbability.getInstance().TortoiseCanBeCapturedByNet(bulletSprite.getRank()); 112 | else if(name == Fish_Name.SHARK) 113 | return CapturedProbability.getInstance().SharkCanBeCapturedByNet(bulletSprite.getRank()); 114 | 115 | return false; 116 | } 117 | 118 | 119 | } 120 | 121 | 122 | -------------------------------------------------------------------------------- /src/fishjoy/control/game/operation/fishoperation/FishOperation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control.game.operation.fishoperation; 2 | 3 | import java.util.Random; 4 | 5 | import org.anddev.andengine.engine.handler.physics.PhysicsHandler; 6 | import org.anddev.andengine.entity.scene.Scene; 7 | import org.anddev.andengine.entity.sprite.AnimatedSprite; 8 | 9 | import android.util.Log; 10 | 11 | import fishjoy.control.GameEnum.Edge_Position; 12 | import fishjoy.control.GameEnum.Fish_Move; 13 | import fishjoy.control.GameEnum.Fish_Name; 14 | import fishjoy.control.GameEnum.Move_Direction; 15 | import fishjoy.control.game.GameConstants; 16 | import fishjoy.control.game.operation.ModelInformationController; 17 | import fishjoy.control.game.operation.TextureRegionCreator; 18 | 19 | public class FishOperation implements GameConstants { 20 | final Random random = new Random(); 21 | FishController controller; 22 | 23 | 24 | public void set_Controller(FishController _controller) 25 | { 26 | controller=_controller; 27 | } 28 | public void set_side(Move_Direction _diretion) 29 | { 30 | controller.direction=_diretion; 31 | if(controller.direction.equals(Move_Direction.RANDOM)) 32 | { 33 | controller.way=Math.abs(random.nextInt())%2; 34 | if(controller.way==1) 35 | { 36 | // controller.X=-1*ResourcesOperation.getInstance().getFishInformation(controller.name).get_TextureRegion_width(); 37 | controller.X=-1*ModelInformationController.getInstance().getFishInformation(controller.name).get_TextureRegion_width(); 38 | } 39 | else 40 | { 41 | controller.X=CAMERA_WIDTH; 42 | } 43 | } 44 | else 45 | { 46 | switch(controller.direction) 47 | { 48 | case LEFT: 49 | { 50 | controller.way=1; 51 | // controller.X=-1*ResourcesOperation.getInstance().getFishInformation(controller.name).get_TextureRegion_width(); 52 | controller.X=-1*ModelInformationController.getInstance().getFishInformation(controller.name).get_TextureRegion_width(); 53 | break; 54 | } 55 | case RIGHT: 56 | { 57 | controller.way=0; 58 | controller.X=CAMERA_WIDTH; 59 | break; 60 | } 61 | } 62 | } 63 | } 64 | 65 | public void set_edge_position(Edge_Position _position) 66 | { 67 | controller.position=_position; 68 | if(controller.position.equals(Edge_Position.RANDOM)) 69 | { 70 | controller.Y=Math.abs(random.nextInt())%3*60+70; 71 | } 72 | else 73 | { 74 | switch(controller.position) 75 | { 76 | case UP: 77 | { 78 | controller.Y=70; 79 | break; 80 | } 81 | case MIDDLE: 82 | { 83 | controller.Y=130; 84 | break; 85 | } 86 | case DOWN: 87 | { 88 | controller.Y=190; 89 | break; 90 | } 91 | } 92 | } 93 | } 94 | 95 | public void set_fixed_Y(int _position) 96 | { 97 | controller.Y=_position; 98 | } 99 | 100 | public void set_fixed_X(int _position) 101 | { 102 | controller.X=_position; 103 | } 104 | 105 | private void Direct_initial(int currentRotation) 106 | { 107 | // float speed=ResourcesOperation.getInstance().getFishInformation(controller.name).get_speed(); 108 | float speed=ModelInformationController.getInstance().getFishInformation(controller.name).get_speed(); 109 | 110 | switch(controller.way) 111 | { 112 | case 0: 113 | { 114 | controller.setPosition(controller.X, controller.Y); 115 | controller.current_X=controller.X; 116 | controller.current_Y=controller.Y; 117 | controller.current_rotation=currentRotation; 118 | controller.setRotation(controller.current_rotation); 119 | controller.mPhysicsHandler.setVelocity(-1*speed*(float)Math.cos(controller.current_rotation*3.14/180), 120 | -1*speed*(float)Math.sin(controller.current_rotation*3.14/180)); 121 | break; 122 | } 123 | case 1: 124 | { 125 | controller.setPosition(controller.X, controller.Y); 126 | controller.current_X=controller.X; 127 | controller.current_Y=controller.Y; 128 | controller.current_rotation=currentRotation+160; 129 | controller.setRotation(controller.current_rotation); 130 | controller.mPhysicsHandler.setVelocity(-1*speed*(float)Math.cos(controller.current_rotation*3.14/180), 131 | -1*speed*(float)Math.sin(controller.current_rotation*3.14/180)); 132 | break; 133 | } 134 | }; 135 | } 136 | 137 | private void Curve_initial(int A) 138 | { 139 | switch(controller.way) 140 | { 141 | case 0: 142 | { 143 | controller.setPosition(controller.X, controller.Y); 144 | controller.current_X=controller.X; 145 | controller.current_Y=controller.Y; 146 | // controller.mPhysicsHandler.setVelocity(-1*ResourcesOperation.getInstance().getFishInformation(controller.name).get_speed(),0); 147 | controller.mPhysicsHandler.setVelocity(-1*ModelInformationController.getInstance().getFishInformation(controller.name).get_speed(),0); 148 | controller.mPhysicsHandler.setAcceleration(0, A); 149 | break; 150 | } 151 | case 1: 152 | { 153 | controller.setPosition(controller.X, controller.Y); 154 | controller.current_X=controller.X; 155 | controller.current_Y=controller.Y; 156 | // controller.mPhysicsHandler.setVelocity(ResourcesOperation.getInstance().getFishInformation(controller.name).get_speed(),0); 157 | controller.mPhysicsHandler.setVelocity(ModelInformationController.getInstance().getFishInformation(controller.name).get_speed(),0); 158 | controller.mPhysicsHandler.setAcceleration(0, A); 159 | break; 160 | } 161 | }; 162 | } 163 | 164 | private void Circle_initial() 165 | { 166 | switch(controller.way) 167 | { 168 | case 0: 169 | { 170 | controller.setPosition(controller.X, controller.Y); 171 | controller.current_X=controller.X; 172 | controller.current_Y=controller.Y; 173 | controller.mPhysicsHandler.setVelocity(-40,0); 174 | controller.mPhysicsHandler.setAngularVelocity(0); 175 | controller.setRotation(0); 176 | 177 | break; 178 | } 179 | case 1: 180 | { 181 | controller.setPosition(controller.X, controller.Y); 182 | controller.current_X=controller.X; 183 | controller.current_Y=controller.Y; 184 | controller.mPhysicsHandler.setVelocity(40, 0); 185 | controller.mPhysicsHandler.setAngularVelocity(0); 186 | controller.setRotation(180); 187 | 188 | break; 189 | } 190 | }; 191 | } 192 | 193 | public void set_Direct_Move(int rotation) 194 | { 195 | controller.move=Fish_Move.Direct; 196 | Direct_initial(rotation); 197 | } 198 | 199 | public void set_Curve_Move(int acceleration) 200 | { 201 | controller.move=Fish_Move.Curve; 202 | Curve_initial(acceleration); 203 | } 204 | 205 | public void set_Circle_Move() 206 | { 207 | controller.move=Fish_Move.Circle; 208 | Circle_initial(); 209 | } 210 | 211 | public void set_Move(Fish_Move move) 212 | { 213 | if(move.equals(Fish_Move.Random)) 214 | { 215 | int i=Math.abs(random.nextInt())%2; 216 | switch(i) 217 | { 218 | case 0: 219 | { 220 | move=Fish_Move.Direct; 221 | break; 222 | } 223 | case 1: 224 | { 225 | move=Fish_Move.Curve; 226 | break; 227 | } 228 | } 229 | } 230 | switch(move) 231 | { 232 | case Direct: 233 | { 234 | int rotation=Math.abs(random.nextInt())%30+1; 235 | set_Direct_Move(rotation); 236 | break; 237 | } 238 | case Curve: 239 | { 240 | int a=-1*(Math.abs(random.nextInt())%25+1); 241 | set_Curve_Move(a); 242 | break; 243 | } 244 | case Circle: 245 | { 246 | set_Circle_Move(); 247 | break; 248 | } 249 | } 250 | } 251 | 252 | public boolean isOutOfBound() 253 | { 254 | if(controller.getX()>=CAMERA_WIDTH || 255 | // controller.getX()<-1*ResourcesOperation.getInstance().getFishInformation(controller.name).get_TextureRegion_width() 256 | // || controller.getY()>=CAMERA_WIDTH|| 257 | // controller.getY()<-1*ResourcesOperation.getInstance().getFishInformation(controller.name).get_TextureRegion_width()) 258 | controller.getX()<-1*ModelInformationController.getInstance().getFishInformation(controller.name).get_TextureRegion_width() 259 | || controller.getY()>=CAMERA_WIDTH|| 260 | controller.getY()<-1*ModelInformationController.getInstance().getFishInformation(controller.name).get_TextureRegion_width()) 261 | 262 | { 263 | return true; 264 | } 265 | else 266 | return false; 267 | } 268 | 269 | public void fishOnManagedUpdate() { 270 | float x=controller.getX(); 271 | float y=controller.getY(); 272 | float rotation=controller.getRotation(); 273 | 274 | if(controller.move.equals(Fish_Move.Direct)) 275 | { 276 | if(isOutOfBound()) 277 | { 278 | 279 | } 280 | } 281 | else if(controller.move.equals(Fish_Move.Curve)) 282 | { 283 | if(!isOutOfBound()) 284 | { 285 | switch(controller.way) 286 | { 287 | case 0: 288 | { 289 | rotation=(float) ((Math.atan((y-controller.current_Y)/(x-controller.current_X)))*180/3.14); 290 | controller.setRotation(rotation); 291 | break; 292 | } 293 | case 1: 294 | { 295 | rotation=(float) (180+(Math.atan((y-controller.current_Y)/(x-controller.current_X)))*180/3.14); 296 | controller.setRotation(rotation); 297 | break; 298 | } 299 | }; 300 | } 301 | } 302 | else if(controller.move.equals(Fish_Move.Circle)) 303 | { 304 | switch(controller.way) 305 | { 306 | case 0: 307 | { 308 | if(rotation>=360) 309 | { 310 | controller.mPhysicsHandler.setAngularVelocity(0); 311 | controller.mPhysicsHandler.setVelocity(-40, 0); 312 | controller.setRotation(360); 313 | } 314 | else if(x<(CAMERA_WIDTH/2) || (x>(CAMERA_WIDTH/2) && y(CAMERA_WIDTH/2) || (x<(CAMERA_WIDTH/2) && y movingFishList, 27 | ArrayList bulletList, 28 | HashMap allNetTextureRegionMap, 29 | HashMap allCapturedFishTextureRegionMap, 30 | HashMap allScoreTextureRegionMap, 31 | BaseGameActivity activity,int mScore, GameSound mSound){ 32 | 33 | if(!bulletList.isEmpty()){ 34 | for(int i = 0; i < bulletList.size(); i++){ 35 | 36 | ArrayList fishCollided = new ArrayList(); 37 | for(int j = 0; j < movingFishList.size(); j++){ 38 | if(movingFishList.get(j).collidesWith(bulletList.get(i))) 39 | fishCollided.add(movingFishList.get(j)); 40 | } 41 | AnimatedSprite net = null; 42 | if(!fishCollided.isEmpty()){ 43 | net = bulletList.get(i).lauchNet(allNetTextureRegionMap, activity, mSound); 44 | // bulletList.get(i).detachSelf(); 45 | 46 | for(int j = 0; j < fishCollided.size(); j++){ 47 | if(fishCollided.get(j).canBeCaughtByBullet(bulletList.get(i))){ 48 | fishCollided.get(j).captured( 49 | allCapturedFishTextureRegionMap.get(fishCollided.get(j).getFishName()),activity); 50 | mScore = scoringOperation.addScore(fishCollided.get(j), 51 | allScoreTextureRegionMap.get(fishCollided.get(j).getFishName()), activity, mScore); 52 | movingFishList.remove(fishCollided.get(j)); 53 | } 54 | } 55 | fishCollided.clear(); 56 | 57 | for(int j = 0; j < movingFishList.size(); j++){ 58 | if(movingFishList.get(j).collidesWith(net)) 59 | fishCollided.add(movingFishList.get(j)); 60 | } 61 | if(!fishCollided.isEmpty()){ 62 | for(int j = 0; j < fishCollided.size(); j++){ 63 | if(fishCollided.get(j).canBeCaughtByNet(net, bulletList.get(i))){ 64 | fishCollided.get(j).captured( 65 | allCapturedFishTextureRegionMap.get(fishCollided.get(j).getFishName()),activity); 66 | mScore = scoringOperation.addScore(fishCollided.get(j), 67 | allScoreTextureRegionMap.get(fishCollided.get(j).getFishName()), activity, mScore); 68 | movingFishList.remove(fishCollided.get(j)); 69 | } 70 | } 71 | } 72 | bulletList.remove(bulletList.get(i)); 73 | break; 74 | } 75 | } 76 | } 77 | return mScore; 78 | } 79 | 80 | public void ifFishOutOfScene_Move(ArrayList movingFishList) { 81 | for(int i = 0; i < movingFishList.size(); i++ ){ 82 | if(movingFishList.get(i).isOutOfScene()){ 83 | // movingFishList.get(i).detachSelf(); 84 | movingFishList.remove(movingFishList.get(i)); 85 | } 86 | } 87 | } 88 | 89 | public void ifBulletOutOfLength_Move(ArrayList bulletList, 90 | HashMap allNetTextureRegionMap, 91 | BaseGameActivity activity, GameSound mSound) { 92 | for(int i = 0; i < bulletList.size(); i++){ 93 | if(bulletList.get(i).isOutOfLength()){ 94 | // bulletList.get(i).detachSelf(); 95 | AnimatedSprite net = bulletList.get(i).lauchNet(allNetTextureRegionMap, activity, mSound); 96 | bulletList.remove(bulletList.get(i)); 97 | } 98 | } 99 | } 100 | 101 | 102 | } 103 | -------------------------------------------------------------------------------- /src/fishjoy/control/game/operation/sceneoperation/ScoringOperation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control.game.operation.sceneoperation; 2 | 3 | import java.util.ArrayList; 4 | 5 | import org.anddev.andengine.entity.sprite.AnimatedSprite; 6 | import org.anddev.andengine.entity.sprite.AnimatedSprite.IAnimationListener; 7 | import org.anddev.andengine.opengl.texture.region.TiledTextureRegion; 8 | import org.anddev.andengine.ui.activity.BaseGameActivity; 9 | 10 | import fishjoy.control.game.GameConstants; 11 | import fishjoy.control.game.operation.ModelInformationController; 12 | import fishjoy.control.game.operation.artilleryoperation.BulletSprite; 13 | import fishjoy.control.game.operation.fishoperation.FishController; 14 | 15 | public class ScoringOperation implements GameConstants{ 16 | AnimatedSprite scoreSprite=null; 17 | public void ColDetBetweenBulletAndFish(ArrayList movingFishList, 18 | ArrayList bulletList, ArrayList netList){ 19 | 20 | } 21 | 22 | public int addScore(FishController fishController, TiledTextureRegion scoreTextureRegion, 23 | BaseGameActivity activity, int mScore) { 24 | 25 | this.createScoreSprite(fishController.getX(), fishController.getY(), 26 | ModelInformationController.getInstance().getFishInformation(fishController.getFishName()).getScoreInformation().get_size_w(), 27 | ModelInformationController.getInstance().getFishInformation(fishController.getFishName()).getScoreInformation().get_size_h(), 28 | scoreTextureRegion,activity); 29 | 30 | if(fishController.getFishName() == Fish_Name.SARDINE) 31 | mScore = mScore+4; 32 | else if(fishController.getFishName() == Fish_Name.CLOWNFISH) 33 | mScore = mScore+10; 34 | else if(fishController.getFishName() == Fish_Name.PUFFERFISH) 35 | mScore = mScore+30; 36 | else if(fishController.getFishName() == Fish_Name.TORTOISE) 37 | mScore = mScore+50; 38 | else 39 | mScore = mScore+100; 40 | 41 | return mScore; 42 | 43 | } 44 | 45 | private void createScoreSprite(float x, float y, float pWidth, float pHeight, TiledTextureRegion scoreTextureRegion,final BaseGameActivity activity) { 46 | scoreSprite = new AnimatedSprite(x, y, scoreTextureRegion.clone()); 47 | scoreSprite.setSize(pWidth, pHeight); 48 | scoreSprite.animate(10,3,new IAnimationListener(){ 49 | @Override 50 | public void onAnimationEnd(AnimatedSprite pAnimatedSprite){ 51 | activity.runOnUpdateThread(new Runnable() { 52 | @Override 53 | public void run() { 54 | activity.getEngine().getScene().getChild(LAYER_SCORE).detachChildren(); 55 | } 56 | }); 57 | } 58 | }); 59 | activity.getEngine().getScene().getChild(LAYER_SCORE).attachChild(scoreSprite); 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /src/fishjoy/control/game/timer/Timer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/src/fishjoy/control/game/timer/Timer.java -------------------------------------------------------------------------------- /src/fishjoy/control/help/Help.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/src/fishjoy/control/help/Help.java -------------------------------------------------------------------------------- /src/fishjoy/control/help/ImageAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/src/fishjoy/control/help/ImageAdapter.java -------------------------------------------------------------------------------- /src/fishjoy/control/menu/MainMenu.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control.menu; 2 | 3 | import android.app.Activity; 4 | import android.content.Context; 5 | import android.content.Intent; 6 | import android.media.AudioManager; 7 | import android.os.Bundle; 8 | import android.os.Handler; 9 | import android.view.Gravity; 10 | import android.view.View; 11 | import android.widget.Button; 12 | import android.widget.FrameLayout; 13 | import android.widget.ImageButton; 14 | import android.widget.ImageView; 15 | 16 | import com.xbwx.Actions; 17 | 18 | import fishjoy.control.about.About; 19 | import fishjoy.control.billboard.Billboard; 20 | import fishjoy.control.game.IntegralSdk; 21 | import fishjoy.control.help.Help; 22 | import fishjoy.control.systemsetting.Systemsetting; 23 | 24 | 25 | public class MainMenu extends Activity { 26 | private int musicVolume; 27 | private int soundVolume; 28 | 29 | private Actions actions; 30 | 31 | private Handler myHandler = new Handler(); 32 | protected void onCreate(Bundle savedInstanceState) { 33 | super.onCreate(savedInstanceState); 34 | setContentView(R.layout.menu); 35 | 36 | AudioManager audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE); 37 | IntegralSdk.getInstance().init(this); 38 | 39 | Intent intent=getIntent(); 40 | this.musicVolume=intent.getIntExtra("musicVolume", audioManager.getStreamVolume(AudioManager.STREAM_MUSIC)); 41 | this.soundVolume=intent.getIntExtra("soundVolume", audioManager.getStreamVolume(AudioManager.STREAM_MUSIC)); 42 | this.startGame(); 43 | this.set(); 44 | this.help(); 45 | this.billboard(); 46 | this.about(); 47 | this.exit(); 48 | 49 | 50 | 51 | } 52 | 53 | 54 | 55 | 56 | public void startGame(){ 57 | ImageButton startButton = (ImageButton) findViewById(R.id.start); 58 | startButton.setOnClickListener(new Button.OnClickListener() { 59 | public void onClick(View v) 60 | { 61 | // Bundle bundle = new Bundle(); 62 | // bundle.putSerializable("database", mDataBase); 63 | Intent intent = new Intent(); 64 | 65 | intent.putExtra("musicVolume", MainMenu.this.musicVolume); 66 | intent.putExtra("soundVolume", MainMenu.this.soundVolume); 67 | // intent.putExtras(bundle); 68 | intent.setClass(MainMenu.this, SubMenuForGame.class); 69 | 70 | startActivity(intent); 71 | MainMenu.this.finish(); 72 | } 73 | }); 74 | } 75 | 76 | public void set(){ 77 | ImageButton setButton = (ImageButton) findViewById(R.id.set); 78 | setButton.setOnClickListener(new Button.OnClickListener() { 79 | public void onClick(View v) 80 | { 81 | Intent intent = new Intent(); 82 | intent.putExtra("musicVolume", MainMenu.this.musicVolume); 83 | intent.putExtra("soundVolume", MainMenu.this.soundVolume); 84 | intent.setClass(MainMenu.this, Systemsetting.class); 85 | startActivity(intent); 86 | MainMenu.this.finish(); 87 | } 88 | }); 89 | } 90 | 91 | public void help(){ 92 | 93 | ImageButton helpButton = (ImageButton) findViewById(R.id.help); 94 | helpButton.setOnClickListener(new Button.OnClickListener() { 95 | public void onClick(View v) 96 | { 97 | Intent intent = new Intent(); 98 | intent.putExtra("musicVolume", MainMenu.this.musicVolume); 99 | intent.putExtra("soundVolume", MainMenu.this.soundVolume); 100 | intent.setClass(MainMenu.this, Help.class); 101 | startActivity(intent); 102 | MainMenu.this.finish(); 103 | } 104 | }); 105 | } 106 | 107 | 108 | public void billboard() { 109 | ImageButton billboardButton = (ImageButton) findViewById(R.id.rank); 110 | billboardButton.setOnClickListener(new Button.OnClickListener() { 111 | public void onClick(View v) 112 | { 113 | Intent intent = new Intent(); 114 | intent.putExtra("musicVolume", MainMenu.this.musicVolume); 115 | intent.putExtra("soundVolume", MainMenu.this.soundVolume); 116 | intent.setClass(MainMenu.this, Billboard.class); 117 | startActivity(intent); 118 | MainMenu.this.finish(); 119 | } 120 | }); 121 | 122 | } 123 | 124 | public void exit(){ 125 | ImageButton exitButton = (ImageButton) findViewById(R.id.exit); 126 | exitButton.setOnClickListener(new Button.OnClickListener() { 127 | public void onClick(View v) 128 | { 129 | android.os.Process.killProcess(android.os.Process.myPid()); 130 | 131 | System.exit(0); 132 | } 133 | }); 134 | } 135 | 136 | public void about() { 137 | ImageView aboutButton = (ImageView) findViewById(R.id.logo); 138 | aboutButton.setClickable(true); 139 | aboutButton.setOnClickListener(new Button.OnClickListener() { 140 | public void onClick(View v) 141 | { 142 | Intent intent = new Intent(); 143 | intent.putExtra("musicVolume", MainMenu.this.musicVolume); 144 | intent.putExtra("soundVolume", MainMenu.this.soundVolume); 145 | intent.setClass(MainMenu.this, About.class); 146 | startActivity(intent); 147 | MainMenu.this.finish(); 148 | } 149 | }); 150 | 151 | } 152 | } 153 | -------------------------------------------------------------------------------- /src/fishjoy/control/menu/SubMenuForGame.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control.menu; 2 | 3 | 4 | import android.app.Activity; 5 | import android.content.Intent; 6 | import android.os.Bundle; 7 | import android.view.View; 8 | import android.widget.Button; 9 | import android.widget.Gallery; 10 | import android.widget.ImageButton; 11 | import fishjoy.control.game.FishJoy; 12 | import fishjoy.control.help.Help; 13 | import fishjoy.control.help.ImageAdapter; 14 | import fishjoy.control.systemsetting.Systemsetting; 15 | 16 | 17 | public class SubMenuForGame extends Activity { 18 | 19 | private int musicVolume; 20 | private int soundVolume; 21 | 22 | /** Called when the activity is first created. */ 23 | @Override 24 | public void onCreate(Bundle savedInstanceState) 25 | { 26 | super.onCreate(savedInstanceState); 27 | setContentView(R.layout.submenu); 28 | 29 | Intent intent=getIntent(); 30 | this.musicVolume=intent.getIntExtra("musicVolume", 0); 31 | this.soundVolume=intent.getIntExtra("soundVolume", 0); 32 | 33 | ImageButton returnbutton = (ImageButton) findViewById(R.id.back); 34 | returnbutton.setOnClickListener(new Button.OnClickListener() { 35 | public void onClick(View v) 36 | { 37 | Intent intent = new Intent(); 38 | intent.putExtra("musicVolume", SubMenuForGame.this.musicVolume); 39 | intent.putExtra("soundVolume", SubMenuForGame.this.soundVolume); 40 | intent.setClass(SubMenuForGame.this, MainMenu.class); 41 | startActivity(intent); 42 | SubMenuForGame.this.finish(); 43 | } 44 | }); 45 | 46 | ImageButton easyButton = (ImageButton) findViewById(R.id.easy); 47 | easyButton.setOnClickListener(new Button.OnClickListener() { 48 | public void onClick(View v) 49 | { 50 | Intent intent = new Intent(); 51 | intent.putExtra("musicVolume", SubMenuForGame.this.musicVolume); 52 | intent.putExtra("soundVolume", SubMenuForGame.this.soundVolume); 53 | intent.putExtra("difficulty", 1); 54 | intent.setClass(SubMenuForGame.this, FishJoy.class); 55 | startActivity(intent); 56 | SubMenuForGame.this.finish(); 57 | } 58 | }); 59 | 60 | ImageButton normalButton = (ImageButton) findViewById(R.id.normal); 61 | normalButton.setOnClickListener(new Button.OnClickListener() { 62 | public void onClick(View v) 63 | { 64 | Intent intent = new Intent(); 65 | intent.putExtra("musicVolume", SubMenuForGame.this.musicVolume); 66 | intent.putExtra("soundVolume", SubMenuForGame.this.soundVolume); 67 | intent.putExtra("difficulty", 2); 68 | intent.setClass(SubMenuForGame.this, FishJoy.class); 69 | startActivity(intent); 70 | SubMenuForGame.this.finish(); 71 | } 72 | }); 73 | 74 | ImageButton hardButton = (ImageButton) findViewById(R.id.hard); 75 | hardButton.setOnClickListener(new Button.OnClickListener() { 76 | public void onClick(View v) 77 | { 78 | Intent intent = new Intent(); 79 | intent.putExtra("musicVolume", SubMenuForGame.this.musicVolume); 80 | intent.putExtra("soundVolume", SubMenuForGame.this.soundVolume); 81 | intent.putExtra("difficulty", 3); 82 | intent.setClass(SubMenuForGame.this, FishJoy.class); 83 | startActivity(intent); 84 | SubMenuForGame.this.finish(); 85 | } 86 | }); 87 | 88 | } 89 | } 90 | -------------------------------------------------------------------------------- /src/fishjoy/control/record/Matrix.java: -------------------------------------------------------------------------------- 1 | package fishjoy.control.record; 2 | 3 | import java.util.HashMap; 4 | 5 | public class Matrix 6 | { 7 | int[][] a={{0,0,1,0,0},{0,0,0,0,0},{0,1,1,1,0},{0,0,0,0,0},{1,0,0,0,1}}; 8 | int[][] b={{1,1,1,0},{1,0,0,1},{1,1,1,0},{1,0,0,1},{1,1,1,0}}; 9 | int[][] c={{0,1,1},{1,0,0},{1,0,0},{1,0,0},{0,1,1}}; 10 | int[][] d={{1,1,0},{1,0,1},{1,0,1},{1,0,1},{1,1,0}}; 11 | int[][] e={{1,1,1},{1,0,0},{1,1,1},{1,0,0},{1,1,1}}; 12 | int[][] f={{1,1,1},{1,0,0},{1,1,0},{1,0,0},{1,0,0}}; 13 | int[][] g={{0,1,1,1},{1,0,0,0},{1,0,1,1},{1,0,0,1},{0,1,1,1}}; 14 | int[][] h={{1,0,0,1},{1,0,0,1},{1,1,1,1},{1,0,0,1},{1,0,0,1}}; 15 | int[][] i={{1,1,1},{0,1,0},{0,1,0},{0,1,0},{1,1,1}}; 16 | int[][] j={{0,1,1},{0,0,1},{0,0,1},{1,0,1},{0,1,1}}; 17 | int[][] k={{1,0,0,1,0},{1,0,1,0,0},{1,1,0,0,0},{1,0,1,0,0},{1,0,0,1,0}}; 18 | int[][] l={{1,0,0},{1,0,0},{1,0,0},{1,0,0},{1,1,1}}; 19 | int[][] m={{1,0,0,0,1},{1,1,0,1,1},{1,0,1,0,1},{1,0,0,0,1},{1,0,0,0,1}}; 20 | int[][] n={{1,0,0,1},{1,1,0,1},{1,0,0,1},{1,0,1,1},{1,0,0,1}}; 21 | int[][] o={{0,1,1,1,0},{1,0,0,0,1},{1,0,0,0,1},{1,0,0,0,1},{0,1,1,1,0}}; 22 | int[][] p={{1,1,0},{1,0,1},{1,1,0},{1,0,0},{1,0,0}}; 23 | int[][] q={{0,1,1,1,0},{1,0,0,0,1},{1,0,1,0,1},{1,0,0,1,0},{0,1,1,0,1}}; 24 | int[][] r={{1,1,0},{1,0,1},{1,1,0},{1,1,0},{1,0,1}}; 25 | int[][] s={{0,1,1,1},{1,0,0,0},{0,1,1,0},{0,0,0,1},{1,1,1,0}}; 26 | int[][] t={{1,1,1,1,1},{0,0,1,0,0},{0,0,1,0,0},{0,0,1,0,0},{0,0,1,0,0}}; 27 | int[][] u={{1,0,0,1},{1,0,0,1},{1,0,0,1},{1,0,0,1},{0,1,1,0}}; 28 | int[][] v={{1,0,0,0,1},{0,0,0,0,0},{0,1,0,1,0},{0,0,0,0,0},{0,0,1,0,0}}; 29 | int[][] w={{1,0,1,0,1},{1,0,1,0,1},{1,0,1,0,1},{1,0,1,0,1},{0,1,0,1,0}}; 30 | int[][] x={{1,0,0,0,1},{0,1,0,1,0},{0,0,1,0,0},{0,1,0,1,0},{1,0,0,0,1}}; 31 | int[][] y={{1,0,0,0,1},{0,1,0,1,0},{0,0,1,0,0},{0,0,1,0,0},{0,0,1,0,0}}; 32 | int[][] z={{1,1,1,1,1},{0,0,0,1,0},{0,0,1,0,0},{0,1,0,0,0},{1,1,1,1,1}}; 33 | private HashMap Matrix=new HashMap(); 34 | 35 | public Matrix() 36 | { 37 | Matrix.put("A",a); 38 | Matrix.put("B",b); 39 | Matrix.put("C",c); 40 | Matrix.put("D",d); 41 | Matrix.put("E",e); 42 | Matrix.put("F",f); 43 | Matrix.put("G",g); 44 | Matrix.put("H",h); 45 | Matrix.put("I",i); 46 | Matrix.put("J",j); 47 | Matrix.put("K",k); 48 | Matrix.put("L",l); 49 | Matrix.put("M",m); 50 | Matrix.put("N",n); 51 | Matrix.put("O",o); 52 | Matrix.put("P",p); 53 | Matrix.put("Q",q); 54 | Matrix.put("R",r); 55 | Matrix.put("S",s); 56 | Matrix.put("T",t); 57 | Matrix.put("U",u); 58 | Matrix.put("V",v); 59 | Matrix.put("W",w); 60 | Matrix.put("X",x); 61 | Matrix.put("Y",y); 62 | Matrix.put("Z",z); 63 | } 64 | 65 | public int[][] get_Matrix(String ch) 66 | { 67 | return Matrix.get(ch); 68 | } 69 | } -------------------------------------------------------------------------------- /src/fishjoy/control/record/MyDataBaseAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/src/fishjoy/control/record/MyDataBaseAdapter.java -------------------------------------------------------------------------------- /src/fishjoy/control/systemsetting/Systemsetting.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tingtingyuli84/FishJoy/c21d72b1c5123b396a340aeb592e8d651c0a78cb/src/fishjoy/control/systemsetting/Systemsetting.java -------------------------------------------------------------------------------- /src/fishjoy/model/IEntityInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model; 2 | 3 | public abstract class IEntityInformation { 4 | private int size_w,size_h,TextureRegion_width,TextureRegion_height; 5 | private String path; 6 | public IEntityInformation(String _path,int _size_w,int _size_h,int _TextureRegion_width,int _TextureRegion_height) 7 | { 8 | path=_path; 9 | size_w=_size_w; 10 | size_h=_size_h; 11 | TextureRegion_width=_TextureRegion_width; 12 | TextureRegion_height=_TextureRegion_height; 13 | } 14 | 15 | public String get_Path() 16 | { 17 | return path; 18 | } 19 | 20 | public int get_size_w() 21 | { 22 | return size_w; 23 | } 24 | 25 | public int get_size_h() 26 | { 27 | return size_h; 28 | } 29 | 30 | public int get_TextureRegion_height() 31 | { 32 | return TextureRegion_height; 33 | } 34 | 35 | public int get_TextureRegion_width() 36 | { 37 | return TextureRegion_width; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /src/fishjoy/model/artilleryinformation/Artillery1Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.artilleryinformation; 2 | 3 | import fishjoy.model.bulletinformation.Bullet1Information; 4 | 5 | public class Artillery1Information extends IArtilleryInformation { 6 | 7 | public Artillery1Information() { 8 | super("A1.png", 48, 72, 64, 128, new Bullet1Information()); 9 | } 10 | 11 | } 12 | -------------------------------------------------------------------------------- /src/fishjoy/model/artilleryinformation/Artillery2Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.artilleryinformation; 2 | 3 | import fishjoy.model.bulletinformation.Bullet2Information; 4 | 5 | public class Artillery2Information extends IArtilleryInformation { 6 | 7 | public Artillery2Information() { 8 | super("A2.png", 48, 72, 64, 128, new Bullet2Information()); 9 | } 10 | 11 | } 12 | -------------------------------------------------------------------------------- /src/fishjoy/model/artilleryinformation/Artillery3Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.artilleryinformation; 2 | 3 | import fishjoy.model.bulletinformation.Bullet3Information; 4 | 5 | public class Artillery3Information extends IArtilleryInformation { 6 | 7 | public Artillery3Information() { 8 | super("A3.png", 48, 72, 64, 128, new Bullet3Information()); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/artilleryinformation/Artillery4Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.artilleryinformation; 2 | 3 | import fishjoy.model.bulletinformation.Bullet4Information; 4 | 5 | public class Artillery4Information extends IArtilleryInformation { 6 | 7 | public Artillery4Information() { 8 | super("A4.png", 48, 72, 64, 128, new Bullet4Information()); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/artilleryinformation/Artillery5Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.artilleryinformation; 2 | 3 | import fishjoy.model.bulletinformation.Bullet5Information; 4 | 5 | public class Artillery5Information extends IArtilleryInformation { 6 | 7 | public Artillery5Information() { 8 | super("A5.png", 48, 72, 64, 128, new Bullet5Information()); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/artilleryinformation/IArtilleryInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.artilleryinformation; 2 | 3 | import fishjoy.model.IEntityInformation; 4 | import fishjoy.model.bulletinformation.IBulletInformation; 5 | 6 | public abstract class IArtilleryInformation extends IEntityInformation { 7 | 8 | private IBulletInformation bulletInfor; 9 | 10 | public IArtilleryInformation(String path, int sizeW, int sizeH, 11 | int textureRegionWidth, int textureRegionHeight, IBulletInformation bulletInfor) { 12 | super(path, sizeW, sizeH, textureRegionWidth, textureRegionHeight); 13 | this.bulletInfor = bulletInfor; 14 | } 15 | 16 | public IBulletInformation getBulletInformation(){ 17 | return this.bulletInfor; 18 | } 19 | 20 | } 21 | -------------------------------------------------------------------------------- /src/fishjoy/model/bulletinformation/Bullet1Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.bulletinformation; 2 | 3 | import fishjoy.model.netinformation.Net1Information; 4 | 5 | public class Bullet1Information extends IBulletInformation { 6 | 7 | public Bullet1Information() { 8 | super("B1.png",15,21,16,32, new Net1Information(), 110, 370, 150); 9 | // TODO Auto-generated constructor stub 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /src/fishjoy/model/bulletinformation/Bullet2Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.bulletinformation; 2 | 3 | import fishjoy.model.netinformation.Net2Information; 4 | //Download by http://www.codefans.net 5 | public class Bullet2Information extends IBulletInformation { 6 | 7 | public Bullet2Information() { 8 | super("B2.png",18,27,32,32, new Net2Information(), 80, 400, 100); 9 | // TODO Auto-generated constructor stub 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /src/fishjoy/model/bulletinformation/Bullet3Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.bulletinformation; 2 | //Download by http://www.codefans.net 3 | import fishjoy.model.netinformation.Net3Information; 4 | 5 | public class Bullet3Information extends IBulletInformation { 6 | 7 | public Bullet3Information() { 8 | super("B3.png",19,34,32,64, new Net3Information(), 50, 430, 50); 9 | // TODO Auto-generated constructor stub 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /src/fishjoy/model/bulletinformation/Bullet4Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.bulletinformation; 2 | 3 | import fishjoy.model.netinformation.Net4Information; 4 | 5 | public class Bullet4Information extends IBulletInformation { 6 | 7 | public Bullet4Information() { 8 | super("B4.png",20,34,32,64, new Net4Information(), 20, 460, 20); 9 | // TODO Auto-generated constructor stub 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/fishjoy/model/bulletinformation/Bullet5Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.bulletinformation; 2 | 3 | import fishjoy.model.netinformation.Net5Information; 4 | //Download by http://www.codefans.net 5 | public class Bullet5Information extends IBulletInformation { 6 | 7 | public Bullet5Information() { 8 | super("B5.png",18,39,32,64, new Net5Information(), 0, 480, 0); 9 | // TODO Auto-generated constructor stub 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/fishjoy/model/bulletinformation/IBulletInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.bulletinformation; 2 | 3 | import fishjoy.model.IEntityInformation; 4 | import fishjoy.model.netinformation.INetInformation; 5 | 6 | public abstract class IBulletInformation extends IEntityInformation { 7 | 8 | private INetInformation iNetInfor; 9 | private int minHeight, maxHeight, minWeight; 10 | 11 | public IBulletInformation(String _path,int _size_w,int _size_h,int _TextureRegion_width,int _TextureRegion_height, 12 | INetInformation iNetInfor,int minHeight,int maxHeight, int minWeight ) { 13 | super(_path,_size_w,_size_h,_TextureRegion_width,_TextureRegion_height); 14 | this.iNetInfor = iNetInfor; 15 | this.maxHeight = maxHeight; 16 | this.minHeight = minHeight; 17 | this.minWeight = minWeight; 18 | // TODO Auto-generated constructor stub 19 | } 20 | 21 | public INetInformation getNetInformation(){ 22 | return this.iNetInfor; 23 | } 24 | 25 | public int getMinHeight(){ 26 | return this.minHeight; 27 | } 28 | 29 | public int getMaxHeight(){ 30 | return this.maxHeight; 31 | } 32 | 33 | public int getMinWeight(){ 34 | return this.minWeight; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /src/fishjoy/model/capturedfishinformation/CapturedClownFishInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.capturedfishinformation; 2 | 3 | public class CapturedClownFishInformation extends ICapturedFishInformation { 4 | 5 | public CapturedClownFishInformation() { 6 | super("clownfish_2.png", 50, 29, 64, 256, 1, 5,0); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/capturedfishinformation/CapturedPufferFishInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.capturedfishinformation; 2 | 3 | public class CapturedPufferFishInformation extends ICapturedFishInformation { 4 | 5 | public CapturedPufferFishInformation() { 6 | super("pufferfish_2.png", 52,31, 128, 256, 1, 5,0); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/capturedfishinformation/CapturedSardineInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.capturedfishinformation; 2 | 3 | public class CapturedSardineInformation extends ICapturedFishInformation { 4 | 5 | public CapturedSardineInformation() { 6 | super("sardine_2.png", 33, 22, 64, 256, 1, 5,0); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/capturedfishinformation/CapturedSharkInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.capturedfishinformation; 2 | 3 | public class CapturedSharkInformation extends ICapturedFishInformation { 4 | 5 | public CapturedSharkInformation() { 6 | super("shark_2.png", 148,81, 128, 256, 1, 4,0); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/capturedfishinformation/CapturedTortoiseInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.capturedfishinformation; 2 | 3 | public class CapturedTortoiseInformation extends ICapturedFishInformation{ 4 | 5 | public CapturedTortoiseInformation() { 6 | super("tortoise_2.png",93, 41, 128, 256, 1, 5,0); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/capturedfishinformation/ICapturedFishInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.capturedfishinformation; 2 | 3 | import fishjoy.model.IEntityInformation; 4 | 5 | public class ICapturedFishInformation extends IEntityInformation { 6 | 7 | int line,row,speed; 8 | public ICapturedFishInformation(String path, int sizeW, int sizeH, 9 | int textureRegionWidth, int textureRegionHeight, int line, int row, int speed) { 10 | super(path, sizeW, sizeH, textureRegionWidth, textureRegionHeight); 11 | this.line = line; 12 | this.row = row; 13 | this.speed = speed; 14 | // TODO Auto-generated constructor stub 15 | } 16 | 17 | public int get_line(){ 18 | return this.line; 19 | } 20 | 21 | public int get_row(){ 22 | return this.row; 23 | } 24 | public int getSpeed(){ 25 | return this.speed; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/fishjoy/model/fishinformation/ClownFishInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.fishinformation; 2 | 3 | import fishjoy.model.capturedfishinformation.CapturedClownFishInformation; 4 | import fishjoy.model.scoreInformation.Score2Information; 5 | 6 | public final class ClownFishInformation extends IFishInformation{ 7 | 8 | public ClownFishInformation() { 9 | super(45,"clownfish_1.png",1,5,53,38,128,256, 10 | new CapturedClownFishInformation(), new Score2Information()); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/fishjoy/model/fishinformation/IFishInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.fishinformation; 2 | 3 | import fishjoy.model.capturedfishinformation.ICapturedFishInformation; 4 | import fishjoy.model.IEntityInformation; 5 | import fishjoy.model.scoreInformation.IScoreInformation; 6 | 7 | public abstract class IFishInformation extends IEntityInformation{ 8 | 9 | int line,row,speed; 10 | private ICapturedFishInformation captureFishInformation; 11 | private IScoreInformation scoreInformation; 12 | public IFishInformation(int _speed,String _path,int _line,int _row, 13 | int _size_w,int _size_h,int _TextureRegion_width,int _TextureRegion_height, 14 | ICapturedFishInformation captureFishInformation, 15 | IScoreInformation scoreInformation) { 16 | 17 | super(_path,_size_w,_size_h,_TextureRegion_width,_TextureRegion_height); 18 | line=_line; 19 | row=_row; 20 | speed=_speed; 21 | this.captureFishInformation = captureFishInformation; 22 | this.scoreInformation = scoreInformation; 23 | // TODO Auto-generated constructor stub 24 | } 25 | 26 | public int get_speed() 27 | { 28 | return speed; 29 | } 30 | 31 | public int get_line() 32 | { 33 | return line; 34 | } 35 | 36 | public int get_row() 37 | { 38 | return row; 39 | } 40 | 41 | public IScoreInformation getScoreInformation(){ 42 | return this.scoreInformation; 43 | } 44 | 45 | public ICapturedFishInformation getCaptureFishInformation(){ 46 | return this.captureFishInformation; 47 | } 48 | 49 | } 50 | -------------------------------------------------------------------------------- /src/fishjoy/model/fishinformation/PufferFishInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.fishinformation; 2 | 3 | import fishjoy.model.capturedfishinformation.CapturedPufferFishInformation; 4 | import fishjoy.model.scoreInformation.Score3Information; 5 | 6 | public final class PufferFishInformation extends IFishInformation { 7 | 8 | public PufferFishInformation( ) { 9 | super(50,"pufferfish_1.png",1,5,58,40,128,256, new CapturedPufferFishInformation(), new Score3Information()); 10 | // TODO Auto-generated constructor stub 11 | } 12 | 13 | 14 | } 15 | -------------------------------------------------------------------------------- /src/fishjoy/model/fishinformation/SardineInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.fishinformation; 2 | 3 | import fishjoy.model.capturedfishinformation.CapturedSardineInformation; 4 | import fishjoy.model.scoreInformation.Score1Information; 5 | 6 | public final class SardineInformation extends IFishInformation { 7 | 8 | public SardineInformation() { 9 | super(60,"sardine_1.png",1,5, 36, 18,64,256, 10 | new CapturedSardineInformation(), new Score1Information()); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /src/fishjoy/model/fishinformation/SharkInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.fishinformation; 2 | 3 | import fishjoy.model.capturedfishinformation.CapturedSharkInformation; 4 | import fishjoy.model.scoreInformation.Score5Information; 5 | 6 | public final class SharkInformation extends IFishInformation { 7 | 8 | public SharkInformation() { 9 | super(50,"shark_1.png",1,4,176,69,256,256, 10 | new CapturedSharkInformation(), new Score5Information()); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/fishjoy/model/fishinformation/TortoiseInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.fishinformation; 2 | 3 | import fishjoy.model.capturedfishinformation.CapturedTortoiseInformation; 4 | import fishjoy.model.scoreInformation.Score4Information; 5 | 6 | public final class TortoiseInformation extends IFishInformation { 7 | 8 | public TortoiseInformation() { 9 | super(50,"tortoise_1.png",1,5, 90,33,128,256, 10 | new CapturedTortoiseInformation(), 11 | new Score4Information()); 12 | // TODO Auto-generated constructor stub 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /src/fishjoy/model/gameinformation/Game1Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.gameinformation; 2 | 3 | public class Game1Information extends IGameInformation { 4 | 5 | public Game1Information() { 6 | super("background_easy.png", 320, 480, 1024, 512, 60, 7 | 800, 200); 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/gameinformation/Game2Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.gameinformation; 2 | 3 | public class Game2Information extends IGameInformation { 4 | 5 | public Game2Information() { 6 | super("background_common.png", 320, 480, 1024, 512, 90, 7 | 2000, 600); 8 | // TODO Auto-generated constructor stub 9 | } 10 | 11 | } 12 | -------------------------------------------------------------------------------- /src/fishjoy/model/gameinformation/Game3Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.gameinformation; 2 | 3 | public class Game3Information extends IGameInformation { 4 | 5 | public Game3Information() { 6 | super("background_hard.png", 320, 480, 1024, 512,120, 7 | 3500, 600); 8 | // TODO Auto-generated constructor stub 9 | } 10 | 11 | } 12 | -------------------------------------------------------------------------------- /src/fishjoy/model/gameinformation/IGameInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.gameinformation; 2 | 3 | import fishjoy.model.IEntityInformation; 4 | 5 | public class IGameInformation extends IEntityInformation{ 6 | 7 | private int mTotalTime, mMinScore, mInitialCoin; 8 | 9 | public IGameInformation(String path, int sizeW, int sizeH, 10 | int textureRegionWidth, int textureRegionHeight, int totalTime, int minScore, int initialCoin) { 11 | super(path, sizeW, sizeH, textureRegionWidth, textureRegionHeight); 12 | this.mTotalTime = totalTime; 13 | this.mMinScore = minScore; 14 | this.mInitialCoin = initialCoin; 15 | } 16 | 17 | public int getTotalTime(){ 18 | return this.mTotalTime; 19 | } 20 | 21 | public int getMinScore(){ 22 | return this.mMinScore; 23 | } 24 | 25 | public int getInitialCoin(){ 26 | return this.mInitialCoin; 27 | } 28 | public void setInitialCoin(int num){ 29 | this.mInitialCoin += num; 30 | } 31 | 32 | 33 | } 34 | -------------------------------------------------------------------------------- /src/fishjoy/model/netinformation/INetInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.netinformation; 2 | 3 | import fishjoy.model.IEntityInformation; 4 | 5 | public class INetInformation extends IEntityInformation { 6 | 7 | public INetInformation(String path, int sizeW, int sizeH, 8 | int textureRegionWidth, int textureRegionHeight) { 9 | super(path, sizeW, sizeH, textureRegionWidth, textureRegionHeight); 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /src/fishjoy/model/netinformation/Net1Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.netinformation; 2 | 3 | public class Net1Information extends INetInformation { 4 | 5 | public Net1Information() { 6 | super("net1.png", 172, 800, 256, 1024); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/netinformation/Net2Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.netinformation; 2 | 3 | public class Net2Information extends INetInformation { 4 | 5 | public Net2Information() { 6 | super("net2.png", 172, 800, 256, 1024); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/netinformation/Net3Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.netinformation; 2 | 3 | public class Net3Information extends INetInformation { 4 | 5 | public Net3Information() { 6 | super("net3.png", 172, 800,256, 1024); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/netinformation/Net4Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.netinformation; 2 | 3 | public class Net4Information extends INetInformation { 4 | 5 | public Net4Information() { 6 | super("net4.png", 172, 800, 256, 1024); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/netinformation/Net5Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.netinformation; 2 | 3 | public class Net5Information extends INetInformation { 4 | 5 | public Net5Information() { 6 | super("net5.png", 172, 800, 256, 1024); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /src/fishjoy/model/numberinformation/INumberInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.numberinformation; 2 | 3 | import fishjoy.model.IEntityInformation; 4 | 5 | public class INumberInformation extends IEntityInformation { 6 | 7 | public INumberInformation(String path ) { 8 | super(path, 20, 25, 32, 64); 9 | // TODO Auto-generated constructor stub 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /src/fishjoy/model/numberinformation/Number0Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.numberinformation; 2 | 3 | public class Number0Information extends INumberInformation { 4 | 5 | public Number0Information() { 6 | super("N0.png"); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/numberinformation/Number1Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.numberinformation; 2 | 3 | public class Number1Information extends INumberInformation { 4 | 5 | public Number1Information() { 6 | super("N1.png"); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /src/fishjoy/model/numberinformation/Number2Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.numberinformation; 2 | 3 | public class Number2Information extends INumberInformation { 4 | 5 | public Number2Information() { 6 | super("N2.png"); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/numberinformation/Number3Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.numberinformation; 2 | 3 | public class Number3Information extends INumberInformation { 4 | 5 | public Number3Information() { 6 | super("N3.png"); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/numberinformation/Number4Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.numberinformation; 2 | 3 | public class Number4Information extends INumberInformation { 4 | 5 | public Number4Information() { 6 | super("N4.png"); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/numberinformation/Number5Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.numberinformation; 2 | 3 | public class Number5Information extends INumberInformation { 4 | 5 | public Number5Information() { 6 | super("N5.png"); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/numberinformation/Number6Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.numberinformation; 2 | 3 | public class Number6Information extends INumberInformation { 4 | 5 | public Number6Information() { 6 | super("N6.png"); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/numberinformation/Number7Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.numberinformation; 2 | 3 | public class Number7Information extends INumberInformation { 4 | 5 | public Number7Information() { 6 | super("N7.png"); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/numberinformation/Number8Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.numberinformation; 2 | 3 | public class Number8Information extends INumberInformation { 4 | 5 | public Number8Information() { 6 | super("N8.png"); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/numberinformation/Number9Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.numberinformation; 2 | 3 | public class Number9Information extends INumberInformation { 4 | 5 | public Number9Information() { 6 | super("N9.png"); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/scoreInformation/IScoreInformation.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.scoreInformation; 2 | 3 | import fishjoy.model.IEntityInformation; 4 | 5 | public class IScoreInformation extends IEntityInformation { 6 | 7 | private int line, row; 8 | 9 | public IScoreInformation(String path, int sizeW, int sizeH, 10 | int textureRegionWidth, int textureRegionHeight, int _line,int _row) { 11 | super(path, sizeW, sizeH, textureRegionWidth, textureRegionHeight); 12 | this.line = _line; 13 | this.row = _row; 14 | // TODO Auto-generated constructor stub 15 | } 16 | 17 | public int get_line() 18 | { 19 | return line; 20 | } 21 | 22 | public int get_row() 23 | { 24 | return row; 25 | } 26 | 27 | 28 | } 29 | -------------------------------------------------------------------------------- /src/fishjoy/model/scoreInformation/Score1Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.scoreInformation; 2 | 3 | public class Score1Information extends IScoreInformation { 4 | 5 | public Score1Information() { 6 | super("4.png", 49, 30, 64, 256, 1, 6); 7 | // TODO Auto-generated constructor stub 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /src/fishjoy/model/scoreInformation/Score2Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.scoreInformation; 2 | 3 | public class Score2Information extends IScoreInformation { 4 | 5 | public Score2Information() { 6 | super("10.png",62,30,64, 256, 1, 6); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/scoreInformation/Score3Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.scoreInformation; 2 | 3 | public class Score3Information extends IScoreInformation { 4 | 5 | public Score3Information() { 6 | super("30.png", 71, 30,128, 256, 1, 6); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/fishjoy/model/scoreInformation/Score4Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.scoreInformation; 2 | 3 | public class Score4Information extends IScoreInformation { 4 | 5 | public Score4Information() { 6 | super("50.png", 59, 29, 64, 256, 1, 6); 7 | // TODO Auto-generated constructor stub 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /src/fishjoy/model/scoreInformation/Score5Information.java: -------------------------------------------------------------------------------- 1 | package fishjoy.model.scoreInformation; 2 | 3 | public class Score5Information extends IScoreInformation { 4 | 5 | public Score5Information() { 6 | super("100.png", 80,30,64, 256, 1, 6); 7 | // TODO Auto-generated constructor stub 8 | } 9 | 10 | } 11 | --------------------------------------------------------------------------------