├── BasicTileBasedPlatformer ├── kirbyfall.gif ├── kirbyidle.gif ├── kirbyjump.gif ├── kirbywalk.gif ├── testmap2.txt └── tileset.gif ├── BlockBunny ├── Block Bunny Full.rar ├── Block Bunny Game.rar ├── android │ ├── BB.rar │ └── ic_launcher.png └── res.rar ├── BumpMap └── BumpMap.rar ├── DiamondHunter ├── Diamond Hunter.jar └── Diamond Hunter.rar ├── LICENSE ├── Pulse ├── Pulse.jar └── Pulse.rar ├── README.md ├── crankyrampage ├── Cranky Rampage.rar └── Cranky Rampage │ └── Cranky Rampage │ ├── .classpath │ ├── .project │ ├── bin │ ├── backgrounds │ │ ├── clouds.gif │ │ ├── mountains.gif │ │ ├── mountains.png │ │ ├── sky.gif │ │ ├── sunset.gif │ │ └── temple.gif │ ├── bullets │ │ ├── flamingmachinegun.png │ │ └── machinegun.png │ ├── com │ │ └── neet │ │ │ ├── entity │ │ │ ├── Collectable.class │ │ │ ├── Enemy.class │ │ │ ├── Explosion.class │ │ │ ├── Laser.class │ │ │ ├── MapObject.class │ │ │ ├── Platform.class │ │ │ ├── Player.class │ │ │ ├── PopupText.class │ │ │ ├── Projectile.class │ │ │ ├── Weapon.class │ │ │ ├── collectables │ │ │ │ └── WeaponC.class │ │ │ └── enemies │ │ │ │ ├── Blocker.class │ │ │ │ ├── Bullet.class │ │ │ │ ├── EnergyGate.class │ │ │ │ ├── EnergyGateSource.class │ │ │ │ ├── Rocket.class │ │ │ │ ├── Sensor.class │ │ │ │ └── Sentry.class │ │ │ ├── gamestates │ │ │ ├── DemoAct1.class │ │ │ ├── DemoAct3.class │ │ │ ├── GameState.class │ │ │ ├── IntroState.class │ │ │ ├── MenuState.class │ │ │ └── PauseState.class │ │ │ ├── main │ │ │ ├── Game.class │ │ │ └── GamePanel.class │ │ │ ├── managers │ │ │ ├── Animation.class │ │ │ ├── Content.class │ │ │ ├── GameObjectFactory.class │ │ │ ├── GameStateManager.class │ │ │ ├── GameUtils.class │ │ │ ├── JukeBox.class │ │ │ ├── Keys.class │ │ │ └── Mouse.class │ │ │ ├── tilemap │ │ │ ├── Background.class │ │ │ └── TileMap.class │ │ │ └── ui │ │ │ ├── Cursor.class │ │ │ └── HUD.class │ ├── enemies │ │ ├── blocker.png │ │ ├── bulletsprites.png │ │ ├── energygate.png │ │ ├── energygatesource.png │ │ ├── rocket.png │ │ ├── sensor.png │ │ └── sentry.png │ ├── fonts │ │ └── prstart.ttf │ ├── logo.gif │ ├── maps │ │ ├── ElectricTower.tme │ │ ├── FireTower.tme │ │ ├── demoact1.tme │ │ ├── demoact3.tme │ │ └── neighborhoodact1.tme │ ├── screenshot 51633945596297.gif │ ├── sprites │ │ ├── explosion.png │ │ ├── gunflash.png │ │ ├── playerlegsprites.png │ │ └── playersprites.png │ ├── tilesets │ │ ├── electrictileset.gif │ │ ├── firetileset.gif │ │ └── neighborhoodtileset.png │ └── ui │ │ ├── cursor.png │ │ ├── headhud.png │ │ ├── hearthud.png │ │ ├── infinitehud.png │ │ ├── rampagehud.png │ │ └── weaponshud.png │ ├── res │ ├── backgrounds │ │ ├── clouds.gif │ │ ├── mountains.gif │ │ ├── mountains.png │ │ ├── sky.gif │ │ ├── sunset.gif │ │ └── temple.gif │ ├── bullets │ │ ├── flamingmachinegun.png │ │ └── machinegun.png │ ├── enemies │ │ ├── blocker.png │ │ ├── bulletsprites.png │ │ ├── energygate.png │ │ ├── energygatesource.png │ │ ├── rocket.png │ │ ├── sensor.png │ │ └── sentry.png │ ├── fonts │ │ └── prstart.ttf │ ├── logo.gif │ ├── maps │ │ ├── ElectricTower.tme │ │ ├── FireTower.tme │ │ ├── demoact1.tme │ │ ├── demoact3.tme │ │ └── neighborhoodact1.tme │ ├── sprites │ │ ├── explosion.png │ │ ├── gunflash.png │ │ ├── playerlegsprites.png │ │ └── playersprites.png │ ├── tilesets │ │ ├── electrictileset.gif │ │ ├── firetileset.gif │ │ └── neighborhoodtileset.png │ └── ui │ │ ├── cursor.png │ │ ├── headhud.png │ │ ├── hearthud.png │ │ ├── infinitehud.png │ │ ├── rampagehud.png │ │ └── weaponshud.png │ └── src │ └── com │ └── neet │ ├── entity │ ├── Collectable.java │ ├── Enemy.java │ ├── Explosion.java │ ├── Laser.java │ ├── MapObject.java │ ├── Platform.java │ ├── Player.java │ ├── PopupText.java │ ├── Projectile.java │ ├── Weapon.java │ ├── collectables │ │ └── WeaponC.java │ └── enemies │ │ ├── Blocker.java │ │ ├── Bullet.java │ │ ├── EnergyGate.java │ │ ├── EnergyGateSource.java │ │ ├── Rocket.java │ │ ├── Sensor.java │ │ └── Sentry.java │ ├── gamestates │ ├── DemoAct1.java │ ├── DemoAct3.java │ ├── GameState.java │ ├── IntroState.java │ ├── MenuState.java │ └── PauseState.java │ ├── main │ ├── Game.java │ └── GamePanel.java │ ├── managers │ ├── Animation.java │ ├── Content.java │ ├── GameObjectFactory.java │ ├── GameStateManager.java │ ├── GameUtils.java │ ├── JukeBox.java │ ├── Keys.java │ └── Mouse.java │ ├── tilemap │ ├── Background.java │ └── TileMap.java │ └── ui │ ├── Cursor.java │ └── HUD.java ├── dragontale ├── Artifact.jar ├── Artifact.rar ├── Dragon Tale Tutorial P02.rar ├── Dragon Tale Tutorial P03.rar ├── Dragon Tale Tutorial P04.rar ├── Dragon Tale Tutorial P07.rar ├── Dragon Tale Tutorial P08.rar ├── Dragon Tale Tutorial p01.rar ├── Resources.rar ├── ResourcesP2.rar ├── TileMapEditor.rar ├── collision.png ├── collision2.png └── playersprites.gif ├── libgdxasteroids ├── AsteroidsP18.rar ├── Hyperspace Bold.ttf └── sounds.rar └── mousetutorial └── MouseTutorial.rar /BasicTileBasedPlatformer/kirbyfall.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/BasicTileBasedPlatformer/kirbyfall.gif -------------------------------------------------------------------------------- /BasicTileBasedPlatformer/kirbyidle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/BasicTileBasedPlatformer/kirbyidle.gif -------------------------------------------------------------------------------- /BasicTileBasedPlatformer/kirbyjump.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/BasicTileBasedPlatformer/kirbyjump.gif -------------------------------------------------------------------------------- /BasicTileBasedPlatformer/kirbywalk.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/BasicTileBasedPlatformer/kirbywalk.gif -------------------------------------------------------------------------------- /BasicTileBasedPlatformer/testmap2.txt: -------------------------------------------------------------------------------- 1 | 20 2 | 15 3 | 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 4 | 13 9 11 11 8 13 9 11 11 11 11 11 13 11 11 11 11 11 11 13 5 | 13 5 2 3 8 13 9 0 0 0 0 8 13 9 0 0 0 0 8 13 6 | 13 14 14 7 8 13 9 0 1 2 3 10 11 12 0 0 1 2 2 13 7 | 13 9 11 0 8 13 9 0 6 14 7 1 2 3 0 0 6 14 14 13 8 | 13 9 1 2 4 13 5 3 10 11 12 6 14 7 0 0 10 11 11 13 9 | 13 9 6 14 14 13 14 7 0 0 0 10 11 12 0 0 0 0 8 13 10 | 13 9 10 11 11 11 11 0 1 2 2 3 0 0 0 0 0 0 8 13 11 | 13 9 0 0 0 0 0 0 6 14 14 7 0 1 2 2 3 0 8 13 12 | 13 9 0 0 0 0 0 0 10 11 11 12 0 6 14 14 7 0 4 13 13 | 13 9 0 0 0 0 0 0 1 2 3 0 0 10 10 11 12 6 14 13 14 | 13 9 0 0 0 1 2 3 8 14 5 3 0 0 0 0 0 2 11 13 15 | 13 9 0 1 2 6 14 7 8 13 14 5 3 0 0 0 6 14 7 13 16 | 13 5 2 4 14 14 13 5 4 13 13 14 5 2 2 2 2 11 2 13 17 | 13 14 14 14 13 13 13 14 14 13 13 13 14 14 14 14 14 14 14 13 -------------------------------------------------------------------------------- /BasicTileBasedPlatformer/tileset.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/BasicTileBasedPlatformer/tileset.gif -------------------------------------------------------------------------------- /BlockBunny/Block Bunny Full.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/BlockBunny/Block Bunny Full.rar -------------------------------------------------------------------------------- /BlockBunny/Block Bunny Game.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/BlockBunny/Block Bunny Game.rar -------------------------------------------------------------------------------- /BlockBunny/android/BB.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/BlockBunny/android/BB.rar -------------------------------------------------------------------------------- /BlockBunny/android/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/BlockBunny/android/ic_launcher.png -------------------------------------------------------------------------------- /BlockBunny/res.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/BlockBunny/res.rar -------------------------------------------------------------------------------- /BumpMap/BumpMap.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/BumpMap/BumpMap.rar -------------------------------------------------------------------------------- /DiamondHunter/Diamond Hunter.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/DiamondHunter/Diamond Hunter.jar -------------------------------------------------------------------------------- /DiamondHunter/Diamond Hunter.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/DiamondHunter/Diamond Hunter.rar -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 Mike S 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Pulse/Pulse.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/Pulse/Pulse.jar -------------------------------------------------------------------------------- /Pulse/Pulse.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/Pulse/Pulse.rar -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | stuff from old youtube videos -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage.rar -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Cranky Rampage 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/backgrounds/clouds.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/backgrounds/clouds.gif -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/backgrounds/mountains.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/backgrounds/mountains.gif -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/backgrounds/mountains.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/backgrounds/mountains.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/backgrounds/sky.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/backgrounds/sky.gif -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/backgrounds/sunset.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/backgrounds/sunset.gif -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/backgrounds/temple.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/backgrounds/temple.gif -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/bullets/flamingmachinegun.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/bullets/flamingmachinegun.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/bullets/machinegun.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/bullets/machinegun.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/Collectable.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/Collectable.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/Enemy.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/Enemy.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/Explosion.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/Explosion.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/Laser.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/Laser.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/MapObject.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/MapObject.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/Platform.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/Platform.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/Player.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/Player.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/PopupText.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/PopupText.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/Projectile.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/Projectile.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/Weapon.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/Weapon.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/collectables/WeaponC.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/collectables/WeaponC.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/enemies/Blocker.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/enemies/Blocker.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/enemies/Bullet.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/enemies/Bullet.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/enemies/EnergyGate.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/enemies/EnergyGate.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/enemies/EnergyGateSource.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/enemies/EnergyGateSource.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/enemies/Rocket.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/enemies/Rocket.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/enemies/Sensor.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/enemies/Sensor.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/enemies/Sentry.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/entity/enemies/Sentry.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/gamestates/DemoAct1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/gamestates/DemoAct1.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/gamestates/DemoAct3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/gamestates/DemoAct3.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/gamestates/GameState.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/gamestates/GameState.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/gamestates/IntroState.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/gamestates/IntroState.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/gamestates/MenuState.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/gamestates/MenuState.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/gamestates/PauseState.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/gamestates/PauseState.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/main/Game.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/main/Game.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/main/GamePanel.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/main/GamePanel.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/managers/Animation.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/managers/Animation.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/managers/Content.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/managers/Content.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/managers/GameObjectFactory.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/managers/GameObjectFactory.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/managers/GameStateManager.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/managers/GameStateManager.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/managers/GameUtils.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/managers/GameUtils.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/managers/JukeBox.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/managers/JukeBox.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/managers/Keys.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/managers/Keys.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/managers/Mouse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/managers/Mouse.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/tilemap/Background.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/tilemap/Background.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/tilemap/TileMap.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/tilemap/TileMap.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/ui/Cursor.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/ui/Cursor.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/ui/HUD.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/com/neet/ui/HUD.class -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/enemies/blocker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/enemies/blocker.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/enemies/bulletsprites.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/enemies/bulletsprites.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/enemies/energygate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/enemies/energygate.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/enemies/energygatesource.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/enemies/energygatesource.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/enemies/rocket.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/enemies/rocket.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/enemies/sensor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/enemies/sensor.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/enemies/sentry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/enemies/sentry.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/fonts/prstart.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/fonts/prstart.ttf -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/logo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/logo.gif -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/maps/ElectricTower.tme: -------------------------------------------------------------------------------- 1 | C:\MapEditor\Tilesets\electrictileset.gif 2 | 16 3 | 30 4 | 40 5 | 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 6 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 7 | 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 8 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 9 | 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 10 | 44 0 0 0 0 0 0 0 0 0 31 32 33 32 33 32 33 32 33 34 0 0 0 0 0 0 0 0 0 51 11 | 54 0 0 0 0 0 0 0 0 0 51 50 50 50 50 50 50 50 50 44 0 0 0 0 0 0 0 0 0 41 12 | 44 0 0 0 0 0 0 0 0 0 41 50 50 50 50 50 50 50 50 54 0 0 0 0 0 0 0 0 0 51 13 | 54 0 0 0 0 0 0 0 0 0 51 50 50 50 50 50 50 50 50 44 0 0 0 0 0 0 0 0 0 41 14 | 44 0 0 0 0 0 0 0 0 0 41 50 50 50 50 50 50 50 50 54 0 0 0 0 0 0 0 0 0 51 15 | 54 0 0 0 0 31 32 33 32 33 53 50 50 50 50 50 50 50 50 52 32 33 32 33 34 0 0 0 0 41 16 | 44 0 0 0 0 51 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 44 0 0 0 0 51 17 | 54 0 0 0 0 61 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 64 0 0 0 0 41 18 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 19 | 52 35 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 35 53 20 | 50 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 50 21 | 50 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 50 22 | 50 50 52 32 33 32 33 32 33 32 33 32 33 32 33 32 33 34 16 16 16 16 16 16 31 32 33 53 50 50 23 | 42 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 64 0 0 0 0 0 0 61 62 63 62 63 43 24 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 25 | 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 26 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 27 | 52 32 33 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 32 33 32 33 32 33 32 33 32 33 53 28 | 42 62 63 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 50 50 50 50 50 50 50 50 50 50 29 | 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 50 50 50 50 50 50 50 50 50 50 30 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 50 50 50 50 50 50 50 50 50 50 31 | 54 0 0 0 0 0 0 31 32 33 32 33 34 0 0 0 0 0 61 62 63 62 63 62 63 62 63 62 63 43 32 | 44 0 0 0 0 0 0 61 62 63 62 63 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 33 | 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 34 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 35 | 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 36 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 37 | 52 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 34 0 0 0 0 31 32 33 32 53 38 | 42 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 64 0 0 0 0 61 62 63 62 43 39 | 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 40 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 41 | 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 42 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 43 | 52 32 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 53 44 | 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 45 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 46 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 47 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 48 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 49 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 50 | 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 51 | 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 52 | 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 53 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 54 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 55 | 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 56 | 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 57 | 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 58 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 59 | 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 60 | 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 61 | 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 62 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 1 1 1 1 1 1 63 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 64 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 65 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 66 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 67 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 68 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 69 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 70 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 71 | 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 72 | 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 73 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 74 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 75 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 76 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 77 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 78 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 79 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 80 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 81 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 82 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 83 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 84 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 85 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 86 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 87 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 88 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 89 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 90 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 91 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 92 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 93 | 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 94 | 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 95 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 96 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 97 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 98 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 99 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 100 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 101 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 102 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 103 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 104 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 105 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 106 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 107 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 108 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 109 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 110 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 111 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 112 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 113 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 114 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 115 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 116 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 117 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 118 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 119 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 120 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 121 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 122 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 123 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 124 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 125 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/maps/demoact3.tme: -------------------------------------------------------------------------------- 1 | C:\MapEditor\Tilesets\electrictileset.gif 2 | 16 3 | 100 4 | 15 5 | 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 6 | 50 50 50 42 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 43 42 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 43 50 50 50 50 50 50 42 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 43 50 7 | 50 50 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 50 50 50 50 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 8 | 50 50 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 50 50 50 50 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 9 | 50 50 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 50 50 50 50 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 10 | 50 50 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 61 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 50 50 50 50 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 11 | 50 50 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 35 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 61 63 62 63 62 63 62 64 0 0 0 0 0 0 0 0 0 0 0 31 32 33 32 33 32 33 32 33 53 50 12 | 50 50 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 44 0 0 0 0 0 31 32 33 35 32 33 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 61 63 62 63 62 63 62 63 62 43 50 13 | 50 50 50 52 32 33 32 33 32 33 35 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 54 0 0 0 0 0 61 63 62 63 62 63 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 14 | 50 50 50 42 62 63 62 63 62 63 62 64 0 0 0 0 0 0 0 0 0 31 32 33 32 33 32 33 35 34 0 0 0 0 0 51 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 32 33 32 33 32 33 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 34 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 15 | 50 50 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 61 63 62 63 62 63 62 63 64 0 0 0 0 0 41 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 61 63 62 63 62 63 62 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 44 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 16 | 50 50 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 54 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 17 | 50 50 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 32 33 32 33 32 33 34 0 0 0 0 0 51 44 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 18 | 50 50 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 50 50 50 50 50 44 0 0 0 0 0 41 54 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 19 | 50 50 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 50 50 50 50 50 54 0 0 0 0 0 51 44 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 20 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 21 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 22 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 23 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 24 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 25 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 26 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 27 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 28 | 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 29 | 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 30 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 31 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 32 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 33 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 34 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 35 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 36 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 37 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 38 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 39 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 40 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 42 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 43 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 44 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 45 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 46 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 47 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 48 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 49 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 50 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/maps/neighborhoodact1.tme: -------------------------------------------------------------------------------- 1 | C:\MapEditor\Tilesets\neighborhoodtileset.png 2 | 16 3 | 80 4 | 15 5 | 81 81 81 81 81 81 81 166 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 | 81 81 81 81 81 81 81 81 166 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 | 81 81 81 81 81 81 81 81 81 166 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 | 81 81 81 81 81 81 81 81 81 166 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 | 81 81 81 81 81 81 81 81 81 166 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10 | 166 166 166 166 166 166 166 166 166 166 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 11 | 165 165 165 165 165 165 165 165 165 166 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 12 | 165 165 165 165 165 203 204 165 165 166 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 13 | 165 169 170 165 165 203 204 165 127 128 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 14 | 165 209 210 165 165 165 165 165 167 168 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 15 | 165 165 165 205 206 165 165 165 207 208 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 45 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16 | 163 163 163 163 163 163 163 163 163 163 164 164 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 84 84 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 84 84 84 85 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 17 | 81 81 81 81 81 81 81 81 81 81 81 81 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 41 41 41 41 41 41 42 42 42 42 42 42 42 41 41 41 41 41 41 41 41 42 42 42 42 42 42 42 42 42 42 42 42 42 18 | 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 19 | 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 20 | 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 21 | 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 22 | 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 23 | 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 24 | 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 25 | 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 26 | 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 27 | 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 28 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 29 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 30 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 | 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 32 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 33 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 34 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 35 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 36 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 37 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 38 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 39 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 40 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 42 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 43 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 44 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 45 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 46 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 47 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 48 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 49 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 50 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/screenshot 51633945596297.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/screenshot 51633945596297.gif -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/sprites/explosion.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/sprites/explosion.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/sprites/gunflash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/sprites/gunflash.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/sprites/playerlegsprites.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/sprites/playerlegsprites.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/sprites/playersprites.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/sprites/playersprites.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/tilesets/electrictileset.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/tilesets/electrictileset.gif -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/tilesets/firetileset.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/tilesets/firetileset.gif -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/tilesets/neighborhoodtileset.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/tilesets/neighborhoodtileset.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/ui/cursor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/ui/cursor.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/ui/headhud.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/ui/headhud.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/ui/hearthud.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/ui/hearthud.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/ui/infinitehud.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/ui/infinitehud.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/ui/rampagehud.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/ui/rampagehud.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/bin/ui/weaponshud.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/bin/ui/weaponshud.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/backgrounds/clouds.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/backgrounds/clouds.gif -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/backgrounds/mountains.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/backgrounds/mountains.gif -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/backgrounds/mountains.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/backgrounds/mountains.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/backgrounds/sky.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/backgrounds/sky.gif -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/backgrounds/sunset.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/backgrounds/sunset.gif -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/backgrounds/temple.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/backgrounds/temple.gif -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/bullets/flamingmachinegun.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/bullets/flamingmachinegun.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/bullets/machinegun.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/bullets/machinegun.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/enemies/blocker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/enemies/blocker.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/enemies/bulletsprites.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/enemies/bulletsprites.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/enemies/energygate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/enemies/energygate.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/enemies/energygatesource.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/enemies/energygatesource.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/enemies/rocket.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/enemies/rocket.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/enemies/sensor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/enemies/sensor.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/enemies/sentry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/enemies/sentry.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/fonts/prstart.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/fonts/prstart.ttf -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/logo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/logo.gif -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/maps/ElectricTower.tme: -------------------------------------------------------------------------------- 1 | C:\MapEditor\Tilesets\electrictileset.gif 2 | 16 3 | 30 4 | 40 5 | 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 6 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 7 | 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 8 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 9 | 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 10 | 44 0 0 0 0 0 0 0 0 0 31 32 33 32 33 32 33 32 33 34 0 0 0 0 0 0 0 0 0 51 11 | 54 0 0 0 0 0 0 0 0 0 51 50 50 50 50 50 50 50 50 44 0 0 0 0 0 0 0 0 0 41 12 | 44 0 0 0 0 0 0 0 0 0 41 50 50 50 50 50 50 50 50 54 0 0 0 0 0 0 0 0 0 51 13 | 54 0 0 0 0 0 0 0 0 0 51 50 50 50 50 50 50 50 50 44 0 0 0 0 0 0 0 0 0 41 14 | 44 0 0 0 0 0 0 0 0 0 41 50 50 50 50 50 50 50 50 54 0 0 0 0 0 0 0 0 0 51 15 | 54 0 0 0 0 31 32 33 32 33 53 50 50 50 50 50 50 50 50 52 32 33 32 33 34 0 0 0 0 41 16 | 44 0 0 0 0 51 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 44 0 0 0 0 51 17 | 54 0 0 0 0 61 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 64 0 0 0 0 41 18 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 19 | 52 35 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 35 53 20 | 50 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 50 21 | 50 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 50 22 | 50 50 52 32 33 32 33 32 33 32 33 32 33 32 33 32 33 34 16 16 16 16 16 16 31 32 33 53 50 50 23 | 42 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 64 0 0 0 0 0 0 61 62 63 62 63 43 24 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 25 | 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 26 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 27 | 52 32 33 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 32 33 32 33 32 33 32 33 32 33 53 28 | 42 62 63 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 50 50 50 50 50 50 50 50 50 50 29 | 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 50 50 50 50 50 50 50 50 50 50 30 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 50 50 50 50 50 50 50 50 50 50 31 | 54 0 0 0 0 0 0 31 32 33 32 33 34 0 0 0 0 0 61 62 63 62 63 62 63 62 63 62 63 43 32 | 44 0 0 0 0 0 0 61 62 63 62 63 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 33 | 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 34 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 35 | 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 36 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 37 | 52 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 34 0 0 0 0 31 32 33 32 53 38 | 42 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 64 0 0 0 0 61 62 63 62 43 39 | 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 40 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 41 | 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 42 | 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 43 | 52 32 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 32 33 53 44 | 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 45 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 46 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 47 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 48 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 49 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 50 | 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 51 | 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 52 | 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 53 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 54 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 55 | 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 56 | 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 57 | 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 58 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 59 | 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 60 | 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 61 | 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 62 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 1 1 1 1 1 1 63 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 64 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 65 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 66 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 67 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 68 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 69 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 70 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 71 | 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 72 | 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 73 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 74 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 75 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 76 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 77 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 78 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 79 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 80 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 81 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 82 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 83 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 84 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 85 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 86 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 87 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 88 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 89 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 90 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 91 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 92 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 93 | 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 94 | 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 95 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 96 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 97 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 98 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 99 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 100 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 101 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 102 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 103 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 104 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 105 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 106 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 107 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 108 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 109 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 110 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 111 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 112 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 113 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 114 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 115 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 116 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 117 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 118 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 119 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 120 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 121 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 122 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 123 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 124 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 125 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/maps/demoact3.tme: -------------------------------------------------------------------------------- 1 | C:\MapEditor\Tilesets\electrictileset.gif 2 | 16 3 | 100 4 | 15 5 | 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 6 | 50 50 50 42 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 43 42 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 43 50 50 50 50 50 50 42 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 62 63 43 50 7 | 50 50 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 50 50 50 50 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 8 | 50 50 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 50 50 50 50 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 9 | 50 50 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 50 50 50 50 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 10 | 50 50 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 61 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 50 50 50 50 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 11 | 50 50 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 35 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 61 63 62 63 62 63 62 64 0 0 0 0 0 0 0 0 0 0 0 31 32 33 32 33 32 33 32 33 53 50 12 | 50 50 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 44 0 0 0 0 0 31 32 33 35 32 33 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 61 63 62 63 62 63 62 63 62 43 50 13 | 50 50 50 52 32 33 32 33 32 33 35 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 54 0 0 0 0 0 61 63 62 63 62 63 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 14 | 50 50 50 42 62 63 62 63 62 63 62 64 0 0 0 0 0 0 0 0 0 31 32 33 32 33 32 33 35 34 0 0 0 0 0 51 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 32 33 32 33 32 33 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 34 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 15 | 50 50 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 61 63 62 63 62 63 62 63 64 0 0 0 0 0 41 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 61 63 62 63 62 63 62 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 44 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 16 | 50 50 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 54 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 17 | 50 50 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 32 33 32 33 32 33 34 0 0 0 0 0 51 44 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 18 | 50 50 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 50 50 50 50 50 44 0 0 0 0 0 41 54 0 0 0 0 0 0 0 0 0 0 0 0 0 51 50 19 | 50 50 50 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 50 50 50 50 50 54 0 0 0 0 0 51 44 0 0 0 0 0 0 0 0 0 0 0 0 0 41 50 20 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 21 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 22 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 23 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 24 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 25 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 26 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 27 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 28 | 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 29 | 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 30 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 31 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 32 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 33 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 34 | 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 35 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 36 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 37 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 38 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 39 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 40 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 42 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 43 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 44 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 45 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 46 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 47 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 48 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 49 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 50 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/maps/neighborhoodact1.tme: -------------------------------------------------------------------------------- 1 | C:\MapEditor\Tilesets\neighborhoodtileset.png 2 | 16 3 | 80 4 | 15 5 | 81 81 81 81 81 81 81 166 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 | 81 81 81 81 81 81 81 81 166 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 | 81 81 81 81 81 81 81 81 81 166 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 | 81 81 81 81 81 81 81 81 81 166 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 | 81 81 81 81 81 81 81 81 81 166 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10 | 166 166 166 166 166 166 166 166 166 166 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 11 | 165 165 165 165 165 165 165 165 165 166 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 12 | 165 165 165 165 165 203 204 165 165 166 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 13 | 165 169 170 165 165 203 204 165 127 128 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 14 | 165 209 210 165 165 165 165 165 167 168 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 15 | 165 165 165 205 206 165 165 165 207 208 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 45 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 16 | 163 163 163 163 163 163 163 163 163 163 164 164 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 84 84 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 84 84 84 85 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 17 | 81 81 81 81 81 81 81 81 81 81 81 81 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 41 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 41 41 41 41 41 41 42 42 42 42 42 42 42 41 41 41 41 41 41 41 41 42 42 42 42 42 42 42 42 42 42 42 42 42 18 | 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 19 | 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 81 20 | 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 21 | 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 22 | 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 23 | 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 24 | 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 25 | 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 26 | 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 27 | 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 28 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 29 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 30 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 | 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 32 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 33 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 34 | 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 35 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 36 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 37 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 38 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 39 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 40 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 41 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 42 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 43 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 44 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 45 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 46 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 47 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 48 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 49 | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 50 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/sprites/explosion.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/sprites/explosion.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/sprites/gunflash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/sprites/gunflash.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/sprites/playerlegsprites.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/sprites/playerlegsprites.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/sprites/playersprites.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/sprites/playersprites.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/tilesets/electrictileset.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/tilesets/electrictileset.gif -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/tilesets/firetileset.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/tilesets/firetileset.gif -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/tilesets/neighborhoodtileset.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/tilesets/neighborhoodtileset.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/ui/cursor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/ui/cursor.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/ui/headhud.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/ui/headhud.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/ui/hearthud.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/ui/hearthud.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/ui/infinitehud.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/ui/infinitehud.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/ui/rampagehud.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/ui/rampagehud.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/res/ui/weaponshud.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/crankyrampage/Cranky Rampage/Cranky Rampage/res/ui/weaponshud.png -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/entity/Collectable.java: -------------------------------------------------------------------------------- 1 | package com.neet.entity; 2 | 3 | import java.awt.Graphics2D; 4 | import java.util.ArrayList; 5 | 6 | import com.neet.tilemap.TileMap; 7 | 8 | public class Collectable extends MapObject { 9 | 10 | protected boolean active; 11 | protected int timer; 12 | 13 | protected boolean remove; 14 | 15 | public Collectable(TileMap tm, ArrayList p) { 16 | super(tm, p); 17 | active = false; 18 | } 19 | 20 | public void setActive() { 21 | active = true; 22 | falling = true; 23 | timer = 0; 24 | } 25 | 26 | public void activate(Player p) { 27 | 28 | } 29 | 30 | protected void getNextPosition() { 31 | if(dx < 0) { 32 | dx += stopSpeed; 33 | if(dx > 0) dx = 0; 34 | } 35 | if(dx > 0) { 36 | dx -= stopSpeed; 37 | if(dx < 0) dx = 0; 38 | } 39 | if(!falling) { 40 | dx = 0; 41 | } 42 | if(ledgeFall || falling) { 43 | dy += fallSpeed; 44 | if(dy > maxFallSpeed) dy = maxFallSpeed; 45 | } 46 | } 47 | 48 | public boolean shouldRemove() { 49 | return remove; 50 | } 51 | 52 | public void update() { 53 | timer++; 54 | if(timer > 420) { 55 | remove = true; 56 | } 57 | } 58 | 59 | public void draw(Graphics2D g) { 60 | 61 | } 62 | 63 | } 64 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/entity/Enemy.java: -------------------------------------------------------------------------------- 1 | package com.neet.entity; 2 | 3 | import java.awt.Graphics2D; 4 | import java.util.ArrayList; 5 | 6 | import com.neet.tilemap.TileMap; 7 | 8 | public class Enemy extends MapObject { 9 | 10 | protected Player player; 11 | protected int rampage; 12 | 13 | protected int health; 14 | protected int maxHealth; 15 | protected boolean dead; 16 | protected int damage; 17 | protected boolean remove; 18 | 19 | protected boolean flinching; 20 | protected int flinchCount; 21 | protected int flinchDelay; 22 | 23 | protected int score; 24 | 25 | public Enemy(TileMap tm, ArrayList p, Player pl) { 26 | super(tm, p); 27 | player = pl; 28 | remove = false; 29 | } 30 | 31 | public int getRampage() { return rampage; } 32 | public int getDamage() { return damage; } 33 | public int getScore() { return score; } 34 | public boolean isDead() { return dead; } 35 | public boolean isFlinching() { return flinching; } 36 | public boolean shouldRemove() { return remove; } 37 | 38 | public void setDead() { 39 | health = 0; 40 | dead = true; 41 | if(dead) remove = true; 42 | } 43 | 44 | public void hit(int damage) { 45 | if(dead || flinching) return; 46 | health -= damage; 47 | if(health < 0) health = 0; 48 | if(health == 0) dead = true; 49 | if(dead) remove = true; 50 | flinching = true; 51 | flinchCount = 0; 52 | } 53 | 54 | public void update() { 55 | if(flinching) { 56 | flinchCount++; 57 | if(flinchCount > flinchDelay) { 58 | flinching = false; 59 | } 60 | } 61 | } 62 | 63 | public void draw(Graphics2D g) { 64 | super.draw(g); 65 | } 66 | 67 | } -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/entity/Explosion.java: -------------------------------------------------------------------------------- 1 | package com.neet.entity; 2 | 3 | import java.awt.Graphics2D; 4 | import java.awt.geom.Point2D; 5 | import java.util.ArrayList; 6 | 7 | import com.neet.managers.Content; 8 | import com.neet.tilemap.TileMap; 9 | 10 | public class Explosion extends MapObject { 11 | 12 | private boolean remove; 13 | 14 | private int type; 15 | public static final int GUN_FLASH = 0; 16 | public static final int GUN_HIT = 1; 17 | public static final int EXPLOSION = 2; 18 | 19 | private Point2D.Double[] points; 20 | private double speed; 21 | private double diagSpeed; 22 | 23 | public Explosion(TileMap tm, ArrayList p, double x, double y, int type, int delay) { 24 | 25 | super(tm, p); 26 | 27 | this.x = x; 28 | this.y = y; 29 | this.type = type; 30 | 31 | if(type == GUN_FLASH) { 32 | animation.setFrames(Content.GUN_FLASH, delay); 33 | width = height = 7; 34 | } 35 | if(type == GUN_HIT) { 36 | animation.setFrames(Content.GUN_FLASH, 24, 1); 37 | width = height = 7; 38 | speed = 1.7; 39 | diagSpeed = speed / 1.41; 40 | points = new Point2D.Double[8]; 41 | for(int i = 0; i < points.length; i++) { 42 | points[i] = new Point2D.Double((int) x, (int) y); 43 | } 44 | } 45 | if(type == EXPLOSION) { 46 | animation.setFrames(Content.EXPLOSION, delay); 47 | width = height = 32; 48 | speed = 2; 49 | diagSpeed = speed / 1.41; 50 | points = new Point2D.Double[8]; 51 | for(int i = 0; i < points.length; i++) { 52 | points[i] = new Point2D.Double((int) x, (int) y); 53 | } 54 | } 55 | 56 | } 57 | 58 | public boolean shouldRemove() { 59 | return remove; 60 | } 61 | 62 | public void update() { 63 | 64 | if(remove) return; 65 | 66 | animation.update(); 67 | 68 | if(animation.hasPlayedOnce()) { 69 | remove = true; 70 | } 71 | 72 | if(type == GUN_HIT || type == EXPLOSION) { 73 | points[0].x += speed; 74 | points[1].x += diagSpeed; 75 | points[1].y += diagSpeed; 76 | points[2].y += speed; 77 | points[3].x -= diagSpeed; 78 | points[3].y += diagSpeed; 79 | points[4].x -= speed; 80 | points[5].x -= diagSpeed; 81 | points[5].y -= diagSpeed; 82 | points[6].y -= speed; 83 | points[7].x += diagSpeed; 84 | points[7].y -= diagSpeed; 85 | } 86 | } 87 | 88 | public void draw(Graphics2D g) { 89 | 90 | if(remove) return; 91 | 92 | if(type == GUN_HIT || type == EXPLOSION) { 93 | setMapPosition(); 94 | for(int i = 0; i < points.length; i++) { 95 | g.drawImage( 96 | animation.getImage(), 97 | (int) (points[i].x + xmap - width / 2), 98 | (int) (points[i].y + ymap - height / 2), 99 | null 100 | ); 101 | } 102 | return; 103 | } 104 | super.draw(g); 105 | } 106 | 107 | } 108 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/entity/Laser.java: -------------------------------------------------------------------------------- 1 | package com.neet.entity; 2 | 3 | import java.awt.Color; 4 | import java.awt.Graphics2D; 5 | import java.util.ArrayList; 6 | 7 | import com.neet.tilemap.TileMap; 8 | 9 | public class Laser extends Enemy { 10 | 11 | private int timer; 12 | private Color color; 13 | 14 | private final int LOCK_ON = 300; 15 | private final int CHARGING = LOCK_ON + 60; 16 | private final int FIRING = CHARGING + 180; 17 | private final int COOLDOWN = FIRING + 60; 18 | 19 | public Laser(TileMap tm, ArrayList p, Player pl) { 20 | super(tm, p, pl); 21 | width = 60; 22 | height = 16; 23 | timer = 0; 24 | } 25 | 26 | public void update() { 27 | timer++; 28 | if(timer < LOCK_ON) { 29 | color = Color.GREEN; 30 | x += (player.getx() - x) * 0.07; 31 | } 32 | else if(timer < CHARGING) { 33 | color = Color.ORANGE; 34 | } 35 | else if(timer < FIRING) { 36 | color = Color.RED; 37 | } 38 | else if(timer < COOLDOWN) { 39 | color = Color.CYAN; 40 | } 41 | else { 42 | timer = 0; 43 | } 44 | } 45 | 46 | public void draw(Graphics2D g) { 47 | setMapPosition(); 48 | g.setColor(color); 49 | g.drawRect((int) (x + xmap - width / 2), (int) (y + ymap - height / 2), width, height); 50 | } 51 | 52 | } 53 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/entity/MapObject.java: -------------------------------------------------------------------------------- 1 | package com.neet.entity; 2 | 3 | import java.awt.Rectangle; 4 | import java.util.ArrayList; 5 | 6 | import com.neet.main.GamePanel; 7 | import com.neet.managers.Animation; 8 | import com.neet.tilemap.TileMap; 9 | 10 | 11 | public abstract class MapObject { 12 | 13 | // tile stuff 14 | protected TileMap tileMap; 15 | protected int tileSize; 16 | protected double xmap; 17 | protected double ymap; 18 | 19 | // platforms 20 | protected ArrayList platforms; 21 | 22 | // position and vector 23 | protected double x; 24 | protected double y; 25 | protected double dx; 26 | protected double dy; 27 | 28 | // dimensions 29 | protected int width; 30 | protected int height; 31 | 32 | // collision box 33 | protected int cwidth; 34 | protected int cheight; 35 | 36 | // collision 37 | protected int currRow; 38 | protected int currCol; 39 | protected double xdest; 40 | protected double ydest; 41 | protected double xtemp; 42 | protected double ytemp; 43 | protected int leftTile; 44 | protected int rightTile; 45 | protected int topTile; 46 | protected int bottomTile; 47 | protected boolean topCollision; 48 | protected boolean leftCollision; 49 | protected boolean rightCollision; 50 | protected boolean bottomCollision; 51 | protected boolean bottomLedge; 52 | protected Platform topLeftBlock; 53 | protected Platform topRightBlock; 54 | protected Platform bottomLeftBlock; 55 | protected Platform bottomRightBlock; 56 | protected Platform onPlatform; 57 | 58 | // animation 59 | protected Animation animation; 60 | protected int currentAction; 61 | protected int previousAction; 62 | protected boolean facingRight; 63 | 64 | // movement 65 | protected boolean left; 66 | protected boolean right; 67 | protected boolean up; 68 | protected boolean down; 69 | protected boolean jumping; 70 | protected boolean falling; 71 | protected boolean ledgeFall; 72 | 73 | // movement attributes 74 | protected double moveSpeed; 75 | protected double maxSpeed; 76 | protected double stopSpeed; 77 | protected double fallSpeed; 78 | protected double maxFallSpeed; 79 | protected double jumpStart; 80 | protected double stopJumpSpeed; 81 | 82 | // constructor 83 | public MapObject(TileMap tm, ArrayList p) { 84 | tileMap = tm; 85 | tileSize = tm.getTileSize(); 86 | animation = new Animation(); 87 | facingRight = true; 88 | platforms = p; 89 | } 90 | 91 | public boolean intersects(MapObject o) { 92 | Rectangle r1 = getRectangle(); 93 | Rectangle r2 = o.getRectangle(); 94 | return r1.intersects(r2); 95 | } 96 | 97 | public boolean intersects(Rectangle r) { 98 | return getRectangle().intersects(r); 99 | } 100 | 101 | public boolean contains(int x, int y) { 102 | return getRectangle().contains(x, y); 103 | } 104 | 105 | public boolean contains(MapObject o) { 106 | Rectangle r1 = getRectangle(); 107 | Rectangle r2 = o.getRectangle(); 108 | return r1.contains(r2); 109 | } 110 | 111 | public boolean contains(Rectangle r) { 112 | return getRectangle().contains(r); 113 | } 114 | 115 | public Rectangle getRectangle() { 116 | return new Rectangle( 117 | (int)(x - cwidth / 2), 118 | (int)(y - cheight / 2), 119 | cwidth, 120 | cheight 121 | ); 122 | } 123 | 124 | public void calculateCollision(double x, double y) { 125 | topCollision = leftCollision = rightCollision = bottomCollision = bottomLedge = false; 126 | int xl = (int)(x - cwidth / 2); 127 | int xr = (int)(x + cwidth / 2 - 1); 128 | int yt = (int)(y - cheight / 2); 129 | int yb = (int)(y + cheight / 2 - 1); 130 | leftTile = xl / tileSize; 131 | rightTile = xr / tileSize; 132 | topTile = yt / tileSize; 133 | bottomTile = yb / tileSize; 134 | if(topTile < 0 || bottomTile >= tileMap.getNumRows() || 135 | leftTile < 0 || rightTile >= tileMap.getNumCols()) { 136 | return; 137 | } 138 | for(int i = 0; i < rightTile - leftTile + 1; i++) { 139 | topCollision |= tileMap.getType(topTile, leftTile + i) == TileMap.BLOCKED; 140 | bottomCollision |= tileMap.getType(bottomTile, leftTile + i) == TileMap.BLOCKED; 141 | bottomLedge |= tileMap.getType(bottomTile, leftTile + i) == TileMap.LEDGE; 142 | } 143 | for(int i = 0; i < bottomTile - topTile + 1; i++) { 144 | leftCollision |= tileMap.getType(topTile + i, leftTile) == TileMap.BLOCKED; 145 | rightCollision |= tileMap.getType(topTile + i, rightTile) == TileMap.BLOCKED; 146 | } 147 | for(int i = 0; i < platforms.size(); i++) { 148 | Platform p = platforms.get(i); 149 | if(p.contains(xl, yt)) { 150 | topLeftBlock = p; 151 | } 152 | if(p.contains(xr, yt)) { 153 | topRightBlock = p; 154 | } 155 | if(p.contains(xl, yb)) { 156 | bottomLeftBlock = p; 157 | onPlatform = p; 158 | } 159 | if(p.contains(xr, yb)) { 160 | bottomRightBlock = p; 161 | onPlatform = p; 162 | } 163 | } 164 | } 165 | 166 | public boolean checkTileMapCollision() { 167 | 168 | currCol = (int)x / tileSize; 169 | currRow = (int)y / tileSize; 170 | 171 | xdest = x + dx; 172 | ydest = y + dy; 173 | 174 | xtemp = x; 175 | ytemp = y; 176 | 177 | boolean collision = false; 178 | 179 | calculateCollision(x, ydest); 180 | if(dy < 0) { 181 | if(topCollision) { 182 | dy = 0; 183 | ytemp = (topTile + 1) * tileSize + cheight / 2; 184 | collision = true; 185 | } 186 | else { 187 | ytemp += dy; 188 | } 189 | if(topLeftBlock != null) { 190 | dy = 0; 191 | ytemp = topLeftBlock.gety() + topLeftBlock.getCHeight() / 2 + cheight / 2; 192 | topLeftBlock = null; 193 | } 194 | if(topRightBlock != null) { 195 | dy = 0; 196 | ytemp = topRightBlock.gety() + topRightBlock.getCHeight() / 2 + cheight / 2; 197 | topRightBlock = null; 198 | } 199 | } 200 | if(dy > 0) { 201 | if(bottomCollision) { 202 | dy = 0; 203 | falling = false; 204 | ytemp = bottomTile * tileSize - cheight / 2; 205 | collision = true; 206 | ledgeFall = false; 207 | } 208 | else if(!ledgeFall && bottomLedge && (y + cheight / 2 - 1) - bottomTile * tileSize < dy) { 209 | dy = 0; 210 | falling = false; 211 | ytemp = bottomTile * tileSize - cheight / 2; 212 | collision = true; 213 | } 214 | else { 215 | ytemp += dy; 216 | } 217 | if(ledgeFall) { 218 | ledgeFall = tileMap.getType( 219 | (int)(y - cheight / 2 + 1)/ tileMap.getTileSize(), 220 | (int)x / tileSize) != TileMap.LEDGE; 221 | } 222 | if(bottomLeftBlock != null) { 223 | dy = 0; 224 | falling = false; 225 | ytemp = bottomLeftBlock.gety() - bottomLeftBlock.getCHeight() / 2 - cheight / 2; 226 | bottomLeftBlock = null; 227 | } 228 | if(bottomRightBlock != null) { 229 | dy = 0; 230 | falling = false; 231 | ytemp = bottomRightBlock.gety() - bottomRightBlock.getCHeight() / 2 - cheight / 2; 232 | bottomRightBlock = null; 233 | } 234 | } 235 | 236 | calculateCollision(xdest, y); 237 | if(dx < 0) { 238 | if(leftCollision) { 239 | dx = 0; 240 | xtemp = (leftTile + 1) * tileSize + cwidth / 2; 241 | collision = true; 242 | } 243 | else { 244 | xtemp += dx; 245 | } 246 | if(topLeftBlock != null) { 247 | dx = 0; 248 | xtemp = topLeftBlock.getx() + topLeftBlock.getCWidth() / 2 + cwidth / 2; 249 | topLeftBlock = null; 250 | } 251 | if(bottomLeftBlock != null) { 252 | dx = 0; 253 | xtemp = bottomLeftBlock.getx() + bottomLeftBlock.getCWidth() / 2 + cwidth / 2; 254 | bottomLeftBlock = null; 255 | } 256 | } 257 | if(dx > 0) { 258 | if(rightCollision) { 259 | dx = 0; 260 | xtemp = rightTile * tileSize - cwidth / 2; 261 | collision = true; 262 | } 263 | else { 264 | xtemp += dx; 265 | } 266 | if(topRightBlock != null) { 267 | dx = 0; 268 | xtemp = topRightBlock.getx() - topRightBlock.getCWidth() / 2 - cwidth / 2; 269 | topRightBlock = null; 270 | } 271 | if(bottomRightBlock != null) { 272 | dx = 0; 273 | xtemp = bottomRightBlock.getx() - bottomRightBlock.getCWidth() / 2 - cwidth / 2; 274 | bottomRightBlock = null; 275 | } 276 | } 277 | 278 | if(!falling) { 279 | calculateCollision(x, ydest + 1); 280 | if(!bottomCollision && !bottomLedge && bottomLeftBlock == null && bottomRightBlock == null) { 281 | falling = true; 282 | } 283 | if(onPlatform != null) { 284 | if(onPlatform.getdy() < 0) { 285 | ytemp = onPlatform.gety() - onPlatform.getCHeight() / 2 - cheight / 2; 286 | } 287 | xtemp += onPlatform.getdx(); 288 | ytemp += onPlatform.getdy(); 289 | } 290 | } 291 | 292 | topLeftBlock = topRightBlock = bottomLeftBlock = bottomRightBlock = onPlatform = null; 293 | return collision; 294 | 295 | } 296 | 297 | public int getx() { return (int)x; } 298 | public int gety() { return (int)y; } 299 | public double getdx() { return dx; } 300 | public double getdy() { return dy; } 301 | public int getWidth() { return width; } 302 | public int getHeight() { return height; } 303 | public int getCWidth() { return cwidth; } 304 | public int getCHeight() { return cheight; } 305 | public boolean isFacingRight() { return facingRight; } 306 | public int getRow() { return (int) (y / tileMap.getTileSize()); } 307 | public int getCol() { return (int) (x / tileMap.getTileSize()); } 308 | 309 | public void setPosition(double x, double y) { 310 | this.x = x; 311 | this.y = y; 312 | } 313 | public void setVector(double dx, double dy) { 314 | this.dx = dx; 315 | this.dy = dy; 316 | } 317 | public void setCollision(int w, int h) { 318 | cwidth = w; 319 | cheight = h; 320 | } 321 | 322 | public void setMapPosition() { 323 | xmap = tileMap.getx(); 324 | ymap = tileMap.gety(); 325 | } 326 | 327 | public void setLeft(boolean b) { left = b; } 328 | public void setRight(boolean b) { right = b; } 329 | public void setUp(boolean b) { up = b; } 330 | public void setDown(boolean b) { down = b; } 331 | public void setJumping(boolean b) { jumping = b; } 332 | 333 | public boolean notOnScreen() { 334 | return x + xmap + width < 0 || 335 | x + xmap - width > GamePanel.WIDTH || 336 | y + ymap + height < 0 || 337 | y + ymap - height > GamePanel.HEIGHT; 338 | } 339 | 340 | public void draw(java.awt.Graphics2D g) { 341 | setMapPosition(); 342 | if(facingRight) { 343 | g.drawImage( 344 | animation.getImage(), 345 | (int)(x + xmap - width / 2), 346 | (int)(y + ymap - height / 2), 347 | null 348 | ); 349 | } 350 | else { 351 | g.drawImage( 352 | animation.getImage(), 353 | (int)(x + xmap - width / 2 + width), 354 | (int)(y + ymap - height / 2), 355 | -width, 356 | height, 357 | null 358 | ); 359 | } 360 | 361 | // debug 362 | //g.setColor(java.awt.Color.BLUE); 363 | //Rectangle r = getRectangle(); 364 | //r.x += xmap; 365 | //r.y += ymap; 366 | //g.draw(r); 367 | } 368 | 369 | } -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/entity/Platform.java: -------------------------------------------------------------------------------- 1 | package com.neet.entity; 2 | 3 | import java.awt.Graphics2D; 4 | import java.util.ArrayList; 5 | 6 | import com.neet.managers.JukeBox; 7 | import com.neet.tilemap.TileMap; 8 | 9 | public class Platform extends MapObject { 10 | 11 | private int health; 12 | private boolean invulnerable; 13 | 14 | private boolean remove; 15 | 16 | private int type; 17 | public static final int STATIC = 0; 18 | public static final int HORIZONTAL = 1; 19 | public static final int VERTICAL = 2; 20 | 21 | private int xmin; 22 | private int xmax; 23 | private int ymin; 24 | private int ymax; 25 | 26 | public Platform(TileMap tm, ArrayList p) { 27 | 28 | super(tm, p); 29 | 30 | health = 5; 31 | invulnerable = false; 32 | 33 | width = 40; 34 | height = 20; 35 | cwidth = 40; 36 | cheight = 20; 37 | 38 | moveSpeed = 1; 39 | 40 | } 41 | 42 | public void setType(int i) { type = i; } 43 | public void setType(int i, int i1, int i2) { 44 | type = i; 45 | if(i == HORIZONTAL) { 46 | xmin = i1; 47 | xmax = i2; 48 | right = true; 49 | } 50 | if(i == VERTICAL) { 51 | ymin = i1; 52 | ymax = i2; 53 | up = true; 54 | } 55 | } 56 | public void setDimensions(int i1, int i2) { width = i1; height = i2; } 57 | public void setCDimensions(int i1, int i2) { cwidth = i1; cheight = i2; } 58 | public void setSpeed(double d) { moveSpeed = d; } 59 | 60 | public void update() { 61 | 62 | if(type == HORIZONTAL) { 63 | if(x > xmax) { 64 | right = false; 65 | left = true; 66 | } 67 | if(x < xmin) { 68 | right = true; 69 | left = false; 70 | } 71 | } 72 | if(type == VERTICAL) { 73 | if(y > ymax) { 74 | up = true; 75 | down = false; 76 | } 77 | if(y < ymin) { 78 | up = false; 79 | down = true; 80 | } 81 | } 82 | 83 | if(right) dx = moveSpeed; 84 | if(left) dx = -moveSpeed; 85 | if(up) dy = -moveSpeed; 86 | if(down) dy = moveSpeed; 87 | 88 | x += dx; 89 | y += dy; 90 | 91 | // update animation 92 | animation.update(); 93 | 94 | } 95 | 96 | public void hit(int i) { 97 | if(invulnerable) return; 98 | JukeBox.play("enemyhit"); 99 | health -= i; 100 | if(health <= 0) { 101 | health = 0; 102 | remove = true; 103 | } 104 | } 105 | 106 | public boolean shouldRemove() { return remove; } 107 | 108 | public void draw(Graphics2D g) { 109 | 110 | setMapPosition(); 111 | g.setColor(java.awt.Color.BLACK); 112 | g.fillRect((int)(x + xmap - cwidth / 2), (int)(y + ymap - cheight / 2), cwidth, cheight); 113 | 114 | } 115 | 116 | } 117 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/entity/Player.java: -------------------------------------------------------------------------------- 1 | package com.neet.entity; 2 | 3 | import java.awt.Color; 4 | import java.awt.Graphics2D; 5 | import java.util.ArrayList; 6 | 7 | import com.neet.managers.Animation; 8 | import com.neet.managers.Content; 9 | import com.neet.managers.GameObjectFactory; 10 | import com.neet.managers.Mouse; 11 | import com.neet.tilemap.TileMap; 12 | 13 | public class Player extends MapObject { 14 | 15 | private int health; 16 | private int maxHealth; 17 | private boolean flinching; 18 | private int flinchCount; 19 | private int flinchTime; 20 | private boolean knockback; 21 | private boolean dead; 22 | 23 | private int lives; 24 | private int score; 25 | private int rampage; 26 | private int maxRampage; 27 | private int rampageLevel; 28 | 29 | private boolean doubleJump; 30 | private boolean alreadyDoubleJump; 31 | 32 | private Weapon defaultWeapon; 33 | private Weapon currentWeapon; 34 | private boolean firing; 35 | public static int damageMultiplier; 36 | 37 | private int direction; 38 | public static final int UP = 0; 39 | public static final int UPRIGHT = 1; 40 | public static final int RIGHT = 2; 41 | public static final int DOWNRIGHT = 3; 42 | public static final int DOWN = 4; 43 | public static final int DOWNLEFT = 5; 44 | public static final int LEFT = 6; 45 | public static final int UPLEFT = 7; 46 | 47 | private ArrayList enemies; 48 | private ArrayList projectiles; 49 | private ArrayList collectables; 50 | 51 | private int currentAnimation; 52 | private Animation legAnimation; 53 | private int currentLegAnimation; 54 | private int numFramesLegs[] = {1, 8, 1}; 55 | private static final int IDLE = 0; 56 | private static final int WALKING = 1; 57 | private static final int JUMPING = 2; 58 | 59 | public Player( 60 | TileMap tm, 61 | ArrayList ap, 62 | ArrayList e, 63 | ArrayList p, 64 | ArrayList c) { 65 | 66 | super(tm, ap); 67 | enemies = e; 68 | projectiles = p; 69 | collectables = c; 70 | 71 | moveSpeed = maxSpeed = stopSpeed = 1.4; 72 | fallSpeed = 0.12; 73 | maxFallSpeed = 4.0; 74 | jumpStart = -3.8; 75 | stopJumpSpeed = 0.15; 76 | 77 | health = maxHealth = 10; 78 | 79 | flinchTime = 120; 80 | 81 | facingRight = true; 82 | 83 | defaultWeapon = new Weapon(Weapon.MACHINE_GUN); 84 | currentWeapon = defaultWeapon; 85 | damageMultiplier = 1; 86 | 87 | animation.setFrames(Content.PLAYER_SPRITES[RIGHT], -1); 88 | currentAnimation = RIGHT; 89 | legAnimation = new Animation(); 90 | legAnimation.setFrames(Content.PLAYER_LEG_SPRITES[0], -1); 91 | currentLegAnimation = IDLE; 92 | 93 | width = height = 32; 94 | cwidth = 10; 95 | cheight = 26; 96 | 97 | rampage = 0; 98 | maxRampage = 10; 99 | rampageLevel = 1; 100 | 101 | lives = 3; 102 | 103 | } 104 | 105 | public void setHealth(int i) { health = i; } 106 | public void setMaxHealth(int i) { maxHealth = i; } 107 | public void setLives(int i) { lives = i; } 108 | public void loseLife() { lives--; } 109 | public int getHealth() { return health; } 110 | public int getMaxHealth() { return maxHealth; } 111 | public int getScore() { return score; } 112 | public int getLives() { return lives; } 113 | public int getDirection() { return direction; } 114 | public boolean isDead() { return dead; } 115 | public int getRampage() { return rampage; } 116 | public int getMaxRampage() { return maxRampage; } 117 | public int getRampageLevel() { return rampageLevel; } 118 | public Weapon getWeapon() { return currentWeapon; } 119 | 120 | public void setJumping(boolean b) { 121 | if(knockback) return; 122 | if(!jumping && !falling && !alreadyDoubleJump && b && down && tileMap.getType( 123 | (int)(y + cheight / 2 + 1)/ tileMap.getTileSize(), 124 | (int)x / tileSize) == TileMap.LEDGE) { 125 | ledgeFall = true; 126 | return; 127 | } 128 | if(!ledgeFall) { 129 | if(b && !jumping && falling && !alreadyDoubleJump) { 130 | doubleJump = true; 131 | } 132 | jumping = b; 133 | } 134 | } 135 | 136 | public void setWeapon(Weapon w) { 137 | currentWeapon = w; 138 | } 139 | 140 | public void setFiring(boolean b) { 141 | if(!b && !currentWeapon.isAuto()) { 142 | currentWeapon.setRelease(); 143 | } 144 | if(knockback) return; 145 | firing = b; 146 | } 147 | 148 | private void fire() { 149 | GameObjectFactory.createProjectile(x, y, currentWeapon.getType(), direction); 150 | double x = this.x; 151 | double y = this.y; 152 | if(direction == UP) { 153 | if(facingRight) { 154 | x -= 5; 155 | } 156 | else { 157 | x -= 3; 158 | } 159 | y -= 15; 160 | } 161 | else if(direction == UPRIGHT) { 162 | x += 5; 163 | y -= 12; 164 | } 165 | else if(direction == RIGHT) { 166 | x += 12; 167 | y -= 1; 168 | } 169 | else if(direction == DOWNRIGHT) { 170 | x += 5; 171 | y += 8; 172 | } 173 | else if(direction == DOWN) { 174 | if(facingRight) { 175 | x -= 3; 176 | } 177 | else { 178 | x -= 5; 179 | } 180 | y += 11; 181 | } 182 | else if(direction == DOWNLEFT) { 183 | x -= 12; 184 | y += 8; 185 | } 186 | else if(direction == LEFT) { 187 | x -= 18; 188 | y -= 1; 189 | } 190 | else if(direction == UPLEFT) { 191 | x -= 12; 192 | y -= 12; 193 | } 194 | GameObjectFactory.createExplosion(x, y, Explosion.GUN_FLASH, 4); 195 | } 196 | 197 | public void hit(int damage) { 198 | health -= damage; 199 | flinching = true; 200 | flinchCount = 0; 201 | dy = -3; 202 | knockback = true; 203 | falling = true; 204 | jumping = false; 205 | firing = false; 206 | if(rampageLevel > 1) { 207 | rampageLevel--; 208 | rampage = 0; 209 | setStats(); 210 | } 211 | } 212 | 213 | public void restore(int amount) { 214 | health += amount; 215 | if(health > maxHealth) { 216 | health = maxHealth; 217 | } 218 | } 219 | 220 | private void setStats() { 221 | damageMultiplier = rampageLevel; 222 | } 223 | 224 | private void setAnimation(int i) { 225 | if(currentAnimation != i) { 226 | currentAnimation = i; 227 | animation.setFrames(Content.PLAYER_SPRITES[i], -1); 228 | } 229 | } 230 | 231 | private void setLegAnimation(int i) { 232 | if(currentLegAnimation != i) { 233 | currentLegAnimation = i; 234 | int d = numFramesLegs[i] == 1 ? -1 : 4; 235 | legAnimation.setFrames(Content.PLAYER_LEG_SPRITES[i], d, numFramesLegs[i]); 236 | } 237 | } 238 | 239 | private void getNextPosition() { 240 | 241 | if(knockback) { 242 | dy += fallSpeed * 2; 243 | if(facingRight) { 244 | dx = -1; 245 | } 246 | else { 247 | dx = 1; 248 | } 249 | if(dy > maxFallSpeed * 2) dy = maxFallSpeed * 2; 250 | if(!falling) knockback = false; 251 | return; 252 | } 253 | 254 | if(left) { 255 | if(dx > 0) { 256 | dx -= stopSpeed; 257 | } 258 | dx -= moveSpeed; 259 | if(dx < -maxSpeed) { 260 | dx = -maxSpeed; 261 | } 262 | } 263 | else if(right) { 264 | if(dx < 0) { 265 | dx += stopSpeed; 266 | } 267 | dx += moveSpeed; 268 | if(dx > maxSpeed) { 269 | dx = maxSpeed; 270 | } 271 | } 272 | else { 273 | if(dx > 0) { 274 | dx -= stopSpeed; 275 | if(dx < 0) { 276 | dx = 0; 277 | } 278 | } 279 | else if(dx < 0) { 280 | dx += stopSpeed; 281 | if(dx > 0) { 282 | dx = 0; 283 | } 284 | } 285 | } 286 | 287 | if(jumping && !falling) { 288 | dy = jumpStart; 289 | falling = true; 290 | } 291 | 292 | if(doubleJump) { 293 | dy = jumpStart; 294 | alreadyDoubleJump = true; 295 | doubleJump = false; 296 | } 297 | 298 | if(!falling) { 299 | alreadyDoubleJump = false; 300 | } 301 | 302 | if(ledgeFall || falling) { 303 | dy += fallSpeed; 304 | if(dy < 0 && !jumping) dy += stopJumpSpeed; 305 | if(dy > maxFallSpeed) dy = maxFallSpeed; 306 | } 307 | 308 | } 309 | 310 | public void update() { 311 | 312 | // set position 313 | getNextPosition(); 314 | checkTileMapCollision(); 315 | setPosition(xtemp, ytemp); 316 | 317 | if(dx == 0) x = (int)x; 318 | if(dy == 0) y = (int)y; 319 | 320 | // update/check projectile collision 321 | for(int i = 0; i < projectiles.size(); i++) { 322 | Projectile p = projectiles.get(i); 323 | p.update(); 324 | if(p.shouldRemove()) { 325 | projectiles.remove(i); 326 | i--; 327 | GameObjectFactory.createExplosion(p.getx(), p.gety(), Explosion.GUN_HIT, 10); 328 | } 329 | } 330 | 331 | // update/check enemy collision 332 | for(int i = 0; i < enemies.size(); i++) { 333 | Enemy enemy = enemies.get(i); 334 | enemy.update(); 335 | if(!flinching && intersects(enemy)) { 336 | hit(enemy.getDamage()); 337 | } 338 | for(int j = 0; j < projectiles.size(); j++) { 339 | Projectile p = projectiles.get(j); 340 | if(!enemy.isFlinching() && p.intersects(enemy)) { 341 | enemy.hit(p.getDamage()); 342 | projectiles.remove(j); 343 | j--; 344 | GameObjectFactory.createExplosion(p.getx(), p.gety(), Explosion.GUN_HIT, 10); 345 | } 346 | } 347 | if(enemy.shouldRemove()) { 348 | enemies.remove(i); 349 | i--; 350 | if(enemy.isDead()) { 351 | GameObjectFactory.createExplosion(enemy.getx(), enemy.gety(), Explosion.EXPLOSION, 3); 352 | } 353 | score += enemy.getScore(); 354 | rampage += enemy.getRampage(); 355 | if(rampage >= maxRampage && rampageLevel < 3) { 356 | rampage -= 10; 357 | rampageLevel++; 358 | setStats(); 359 | GameObjectFactory.createPopupText(rampageLevel + "x DAMAGE", x, y - tileSize, Color.BLACK, Color.YELLOW); 360 | } 361 | if(rampageLevel == 3) { 362 | rampage = 10; 363 | } 364 | } 365 | } 366 | 367 | // update/check collectables 368 | for(int i = 0; i < collectables.size(); i++) { 369 | Collectable c = collectables.get(i); 370 | c.update(); 371 | if(intersects(c)) { 372 | c.activate(this); 373 | collectables.remove(i); 374 | i--; 375 | continue; 376 | } 377 | if(c.shouldRemove()) { 378 | collectables.remove(i); 379 | i--; 380 | } 381 | } 382 | 383 | // check firing 384 | double angle = Math.atan2(Mouse.y - y - ymap, Mouse.x - x - xmap); 385 | if(angle > -0.39 && angle < 0.39) { 386 | direction = RIGHT; 387 | } 388 | else if(angle > 0.39 && angle < 1.18) { 389 | direction = DOWNRIGHT; 390 | } 391 | else if(angle > 1.18 && angle < 1.96) { 392 | direction = DOWN; 393 | } 394 | else if(angle > 1.96 && angle < 2.75) { 395 | direction = DOWNLEFT; 396 | } 397 | else if(angle > 2.75 || angle < -2.75) { 398 | direction = LEFT; 399 | } 400 | else if(angle > -2.75 && angle < -1.96) { 401 | direction = UPLEFT; 402 | } 403 | else if(angle > -1.96 && angle < -1.18) { 404 | direction = UP; 405 | } 406 | else if(angle > -1.18 && angle < -0.39) { 407 | direction = UPRIGHT; 408 | } 409 | currentWeapon.update(); 410 | if(firing) { 411 | if(currentWeapon.canFire()) { 412 | currentWeapon.fire(); 413 | fire(); 414 | } 415 | } 416 | if(currentWeapon.isEmpty()) { 417 | currentWeapon = defaultWeapon; 418 | } 419 | 420 | // check flinch 421 | if(flinching) { 422 | flinchCount++; 423 | if(flinchCount > flinchTime) { 424 | flinching = false; 425 | } 426 | } 427 | 428 | // update animation 429 | if(falling) { 430 | setLegAnimation(JUMPING); 431 | } 432 | else if(left || right) { 433 | setLegAnimation(WALKING); 434 | } 435 | else { 436 | setLegAnimation(IDLE); 437 | } 438 | legAnimation.update(); 439 | if(direction == UP) { 440 | setAnimation(UP); 441 | } 442 | else if(direction == UPRIGHT || 443 | direction == UPLEFT) { 444 | setAnimation(UPRIGHT); 445 | } 446 | else if(direction == RIGHT || 447 | direction == LEFT) { 448 | setAnimation(RIGHT); 449 | } 450 | else if(direction == DOWNRIGHT || 451 | direction == DOWNLEFT) { 452 | setAnimation(DOWNRIGHT); 453 | } 454 | else if(direction == DOWN) { 455 | setAnimation(DOWN); 456 | } 457 | animation.update(); 458 | 459 | // set direction 460 | if(!knockback) { 461 | if(direction == UPRIGHT || 462 | direction == RIGHT || 463 | direction == DOWNRIGHT) { 464 | facingRight = true; 465 | legAnimation.setReverse(left); 466 | } 467 | else if(direction == UPLEFT || 468 | direction == LEFT || 469 | direction == DOWNLEFT) { 470 | facingRight = false; 471 | legAnimation.setReverse(right); 472 | } 473 | } 474 | 475 | } 476 | 477 | public void draw(Graphics2D g) { 478 | 479 | if(flinching) { 480 | if(flinchCount % 8 < 4) { 481 | g.setXORMode(java.awt.Color.RED); 482 | } 483 | } 484 | 485 | // draw player 486 | super.draw(g); 487 | if(facingRight) { 488 | g.drawImage( 489 | legAnimation.getImage(), 490 | (int)(x + xmap - width / 2), 491 | (int)(y + ymap - height / 2), 492 | null 493 | ); 494 | } 495 | else { 496 | g.drawImage( 497 | legAnimation.getImage(), 498 | (int)(x + xmap - width / 2 + width), 499 | (int)(y + ymap - height / 2), 500 | -width, 501 | height, 502 | null 503 | ); 504 | } 505 | 506 | g.setPaintMode(); 507 | 508 | } 509 | 510 | } -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/entity/PopupText.java: -------------------------------------------------------------------------------- 1 | package com.neet.entity; 2 | 3 | import java.awt.AlphaComposite; 4 | import java.awt.Color; 5 | import java.awt.Composite; 6 | import java.awt.FontMetrics; 7 | import java.awt.Graphics2D; 8 | 9 | import com.neet.managers.Content; 10 | import com.neet.managers.GameUtils; 11 | import com.neet.tilemap.TileMap; 12 | 13 | public class PopupText extends MapObject { 14 | 15 | private String text; 16 | private Color outer; 17 | private Color inner; 18 | 19 | private int timer; 20 | private int time; 21 | private float alpha; 22 | 23 | private boolean remove; 24 | 25 | public PopupText(TileMap tm, String s, double x, double y, Color c1, Color c2) { 26 | super(tm, null); 27 | text = s; 28 | outer = c1; 29 | inner = c2; 30 | this.x = x + tileMap.getx(); 31 | this.y = y + tileMap.gety(); 32 | timer = 0; 33 | time = 90; 34 | alpha = 1; 35 | } 36 | 37 | public boolean shouldRemove() { return remove; } 38 | 39 | public void update() { 40 | y -= 0.7; 41 | timer++; 42 | if(timer >= time) { 43 | remove = true; 44 | } 45 | if(timer > time / 2) { 46 | alpha = (float) (1 - 1.0 * (timer - (time / 2)) / (time / 2)); 47 | } 48 | } 49 | 50 | public void draw(Graphics2D g) { 51 | Composite original = g.getComposite(); 52 | g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, alpha)); 53 | FontMetrics fm = g.getFontMetrics(); 54 | int adv = fm.stringWidth(text); 55 | g.setFont(Content.PS_FONT); 56 | GameUtils.drawOutlinedString(g, text, (int) x - adv / 2, (int) y, outer, inner); 57 | g.setComposite(original); 58 | } 59 | 60 | } 61 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/entity/Projectile.java: -------------------------------------------------------------------------------- 1 | package com.neet.entity; 2 | 3 | import java.awt.Graphics2D; 4 | import java.awt.geom.AffineTransform; 5 | import java.util.ArrayList; 6 | 7 | import com.neet.main.GamePanel; 8 | import com.neet.managers.Content; 9 | import com.neet.tilemap.TileMap; 10 | 11 | public class Projectile extends MapObject { 12 | 13 | private double speed; 14 | private double diagSpeed; 15 | private int damage; 16 | private int recoil; 17 | 18 | private double angle; 19 | private int direction; 20 | private AffineTransform tx; 21 | private int offset; 22 | 23 | private boolean remove; 24 | 25 | public Projectile( 26 | TileMap tm, 27 | ArrayList platforms, 28 | double x, 29 | double y, 30 | int direction, 31 | int type) { 32 | 33 | super(tm, platforms); 34 | 35 | this.x = x; 36 | this.y = y; 37 | this.direction = direction; 38 | angle = Math.toRadians(-90 + direction * 45); 39 | 40 | cwidth = cheight = 15; 41 | 42 | if(type == Weapon.MACHINE_GUN) { 43 | speed = 12; 44 | damage = 1 * Player.damageMultiplier; 45 | recoil = 10; 46 | animation.setFrames(Content.MG_BULLETS, 1); 47 | width = Content.MG_BULLETS[0].getWidth(); 48 | height = Content.MG_BULLETS[0].getHeight(); 49 | offset = 20; 50 | } 51 | else if(type == Weapon.SPREADER) { 52 | speed = 8; 53 | damage = 1 * Player.damageMultiplier; 54 | recoil = 0; 55 | animation.setFrames(Content.MG_BULLETS, 1); 56 | width = Content.MG_BULLETS[0].getWidth(); 57 | height = Content.MG_BULLETS[0].getHeight(); 58 | offset = 20; 59 | } 60 | else if(type == Weapon.HIGH_CALIBER) { 61 | speed = 12; 62 | damage = 5 * Player.damageMultiplier; 63 | recoil = 0; 64 | animation.setFrames(Content.MG_BULLETS, 1); 65 | width = Content.MG_BULLETS[0].getWidth(); 66 | height = Content.MG_BULLETS[0].getHeight(); 67 | offset = 10; 68 | } 69 | else if(type == Weapon.FLAMING_MACHINE_GUN) { 70 | speed = 14; 71 | damage = 2 * Player.damageMultiplier; 72 | recoil = 10; 73 | animation.setFrames(Content.FMG_BULLETS, 1); 74 | width = Content.FMG_BULLETS[0].getWidth(); 75 | height = Content.FMG_BULLETS[0].getHeight(); 76 | offset = 20; 77 | } 78 | diagSpeed = speed / 1.41; 79 | 80 | if(recoil == 0) { 81 | setDirection(); 82 | } 83 | else { 84 | setRecoil(); 85 | } 86 | 87 | setOffset(direction); 88 | tx = new AffineTransform(); 89 | 90 | } 91 | 92 | public double getSpeed() { return speed; } 93 | public int getDamage() { return damage; } 94 | public double getRecoil() { return recoil; } 95 | 96 | private void setDirection() { 97 | if(direction == Player.LEFT) { 98 | dx = -speed; 99 | } 100 | else if(direction == Player.RIGHT) { 101 | dx = speed; 102 | } 103 | else if(direction == Player.UP) { 104 | dy = -speed; 105 | } 106 | else if(direction == Player.DOWN) { 107 | dy = speed; 108 | } 109 | else if(direction == Player.UPLEFT) { 110 | dx = -diagSpeed; 111 | dy = -diagSpeed; 112 | } 113 | else if(direction == Player.UPRIGHT) { 114 | dx = diagSpeed; 115 | dy = -diagSpeed; 116 | } 117 | else if(direction == Player.DOWNRIGHT) { 118 | dx = diagSpeed; 119 | dy = diagSpeed; 120 | } 121 | else if(direction == Player.DOWNLEFT) { 122 | dx = -diagSpeed; 123 | dy = diagSpeed; 124 | } 125 | } 126 | 127 | private void setRecoil() { 128 | int rand = (int) (Math.random() * recoil) - recoil / 2; 129 | angle += Math.toRadians(rand); 130 | dx = Math.cos(angle); 131 | dy = Math.sin(angle); 132 | dx *= speed; 133 | dy *= speed; 134 | } 135 | 136 | private void setOffset(int i) { 137 | int doffset = (int) (1.0 * offset / 1.41); 138 | if(i == Player.LEFT) { 139 | x -= offset; 140 | } 141 | else if(i == Player. RIGHT) { 142 | x += offset; 143 | } 144 | else if(i == Player. UP) { 145 | y -= offset; 146 | } 147 | else if(i == Player. DOWN) { 148 | y += offset; 149 | } 150 | else if(i == Player. UPLEFT) { 151 | x -= doffset; 152 | y -= doffset; 153 | } 154 | else if(i == Player. UPRIGHT) { 155 | x += doffset; 156 | y -= doffset; 157 | } 158 | else if(i == Player. DOWNLEFT) { 159 | x -= doffset; 160 | y += doffset; 161 | } 162 | else if(i == Player. DOWNRIGHT) { 163 | x += doffset; 164 | y += doffset; 165 | } 166 | } 167 | 168 | public void setAngle(int angle) { 169 | this.angle = Math.toRadians(angle); 170 | dx = Math.cos(this.angle); 171 | dy = Math.sin(this.angle); 172 | dx *= speed; 173 | dy *= speed; 174 | } 175 | 176 | public void setVector(double dx, double dy) { 177 | this.dx = dx; 178 | this.dy = dy; 179 | } 180 | 181 | public void update() { 182 | x += dx; 183 | y += dy; 184 | //if(x < 0 || x > tileMap.getWidth() || y < 0 || y > tileMap.getHeight()) { 185 | if(x < -tileMap.getx() || x > -tileMap.getx() + GamePanel.WIDTH || 186 | y < -tileMap.gety() || y > -tileMap.gety() + GamePanel.HEIGHT) { 187 | hit(); 188 | } 189 | if(tileMap.getType( 190 | (int)y / tileMap.getTileSize(), 191 | (int)x / tileMap.getTileSize()) == TileMap.BLOCKED) { 192 | hit(); 193 | } 194 | if(tileMap.getType( 195 | (int)y / tileMap.getTileSize(), 196 | (int)x / tileMap.getTileSize()) == TileMap.LEDGE && dy > 0) { 197 | hit(); 198 | } 199 | } 200 | 201 | public void hit() { 202 | remove = true; 203 | } 204 | 205 | public boolean shouldRemove() { 206 | return remove; 207 | } 208 | 209 | public void draw(Graphics2D g) { 210 | 211 | tx = new AffineTransform(); 212 | tx.translate(tileMap.getx() + x, tileMap.gety() + y); 213 | tx.rotate(1.57 + angle); 214 | tx.translate(-width / 2, -height / 2); 215 | 216 | g.drawImage(animation.getImage(), tx, null); 217 | 218 | } 219 | 220 | } 221 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/entity/Weapon.java: -------------------------------------------------------------------------------- 1 | package com.neet.entity; 2 | 3 | 4 | public class Weapon { 5 | 6 | public static final int MACHINE_GUN = 0; 7 | public static final int SPREADER = 1; 8 | public static final int HIGH_CALIBER = 2; 9 | public static final int FLAMING_MACHINE_GUN = 3; 10 | 11 | private int type; 12 | private boolean auto; 13 | private int delay; 14 | private long timer; 15 | private boolean release; 16 | private boolean ready; 17 | private int ammo; 18 | 19 | public Weapon(int type) { 20 | 21 | this.type = type; 22 | 23 | initStats(); 24 | 25 | timer = delay; 26 | ready = true; 27 | release = true; 28 | 29 | } 30 | 31 | private void initStats() { 32 | if(type == MACHINE_GUN) { 33 | delay = 8; 34 | auto = true; 35 | ammo = -1; 36 | } 37 | else if(type == SPREADER) { 38 | delay = 10; 39 | auto = true; 40 | ammo = 75; 41 | } 42 | else if(type == HIGH_CALIBER) { 43 | delay = 20; 44 | auto = true; 45 | ammo = 50; 46 | } 47 | else if(type == FLAMING_MACHINE_GUN) { 48 | delay = 5; 49 | auto = true; 50 | ammo = 100; 51 | } 52 | } 53 | 54 | public int getType() { return type; } 55 | public boolean isAuto() { return auto; } 56 | public int getDelay() { return delay; } 57 | public int getAmmo() { return ammo; } 58 | public boolean isEmpty() { return ammo == 0; } 59 | 60 | public boolean canFire() { 61 | if(ammo == 0) return false; 62 | ready = timer >= delay; 63 | if(auto) return ready; 64 | return ready && release; 65 | } 66 | 67 | public void setRelease() { 68 | release = true; 69 | } 70 | 71 | public void fire() { 72 | timer = 0; 73 | ready = false; 74 | release = false; 75 | if(ammo > 0) { 76 | ammo--; 77 | } 78 | } 79 | 80 | public void update() { 81 | timer++; 82 | } 83 | 84 | } 85 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/entity/collectables/WeaponC.java: -------------------------------------------------------------------------------- 1 | package com.neet.entity.collectables; 2 | 3 | import java.awt.Graphics2D; 4 | import java.util.ArrayList; 5 | 6 | import com.neet.entity.Collectable; 7 | import com.neet.entity.Platform; 8 | import com.neet.entity.Player; 9 | import com.neet.entity.Weapon; 10 | import com.neet.tilemap.TileMap; 11 | 12 | public class WeaponC extends Collectable { 13 | 14 | private int type; 15 | 16 | public WeaponC(TileMap tm, ArrayList p, int type) { 17 | super(tm, p); 18 | this.type = type; 19 | cwidth = cheight = width = height = 10; 20 | } 21 | 22 | public void activate(Player player) { 23 | player.setWeapon(new Weapon(type)); 24 | } 25 | 26 | public void draw(Graphics2D g) { 27 | 28 | setMapPosition(); 29 | g.setColor(java.awt.Color.WHITE); 30 | g.fillOval( 31 | (int)(x + xmap - width / 2), 32 | (int)(y + ymap - height / 2), 33 | width, 34 | height 35 | ); 36 | 37 | } 38 | 39 | } 40 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/entity/enemies/Blocker.java: -------------------------------------------------------------------------------- 1 | package com.neet.entity.enemies; 2 | 3 | import java.awt.Color; 4 | import java.awt.Graphics2D; 5 | import java.util.ArrayList; 6 | 7 | import com.neet.entity.Enemy; 8 | import com.neet.entity.Platform; 9 | import com.neet.entity.Player; 10 | import com.neet.managers.Content; 11 | import com.neet.managers.GameObjectFactory; 12 | import com.neet.tilemap.TileMap; 13 | 14 | public class Blocker extends Enemy { 15 | 16 | private int state; 17 | private final int MOVING_TO_PLAYER = 0; 18 | private final int SHOOTING = 1; 19 | private final int COOLDOWN = 2; 20 | 21 | private int shootingRange; 22 | 23 | private int coolDownTimer; 24 | private int coolDownTime; 25 | 26 | private final int IDLE = 0; 27 | private final int MOVING = 1; 28 | 29 | public Blocker(TileMap tm, ArrayList p, Player pl) { 30 | 31 | super(tm, p, pl); 32 | 33 | health = maxHealth = 8; 34 | 35 | maxSpeed = 1.0; 36 | fallSpeed = 0.8; 37 | maxFallSpeed = 4; 38 | damage = 1; 39 | 40 | width = height = 40; 41 | cwidth = 30; 42 | cheight = 28; 43 | right = true; 44 | 45 | score = 10; 46 | 47 | state = MOVING_TO_PLAYER; 48 | shootingRange = 130; 49 | 50 | coolDownTime = 180; 51 | coolDownTimer = 0; 52 | 53 | currentAction = MOVING; 54 | animation.setFrames(Content.BLOCKER[MOVING], 2); 55 | 56 | rampage = 2; 57 | 58 | flinchDelay = 5; 59 | 60 | } 61 | 62 | public Blocker(TileMap tm, ArrayList p, Player pl, double x, double y) { 63 | this(tm, p, pl); 64 | this.x = x; 65 | this.y = y; 66 | } 67 | 68 | private void getNextPosition() { 69 | if(left) { 70 | dx = -maxSpeed; 71 | } 72 | else if(right) { 73 | dx = maxSpeed; 74 | } 75 | else { 76 | dx = 0; 77 | } 78 | if(falling) { 79 | dy += fallSpeed; 80 | if(dy > maxFallSpeed) dy = maxFallSpeed; 81 | dx = 0; 82 | } 83 | } 84 | 85 | public void update() { 86 | 87 | super.update(); 88 | 89 | if(state == MOVING_TO_PLAYER) { 90 | if(player.getx() < x) { 91 | left = true; 92 | right = facingRight = false; 93 | } 94 | if(player.getx() > x) { 95 | left = false; 96 | right = facingRight = true; 97 | } 98 | if(Math.abs(player.getx() - x) < shootingRange && 99 | Math.abs(player.gety() - y) < 10) { 100 | state = SHOOTING; 101 | } 102 | } 103 | else if(state == SHOOTING) { 104 | left = right = false; 105 | GameObjectFactory.createEnemyRocket(x, y); 106 | state = COOLDOWN; 107 | } 108 | else if(state == COOLDOWN) { 109 | coolDownTimer++; 110 | if(coolDownTimer > coolDownTime) { 111 | coolDownTimer = 0; 112 | state = MOVING_TO_PLAYER; 113 | } 114 | } 115 | 116 | getNextPosition(); 117 | checkTileMapCollision(); 118 | setPosition(xtemp, ytemp); 119 | 120 | if(state == MOVING_TO_PLAYER) { 121 | if(currentAction != MOVING) { 122 | currentAction = MOVING; 123 | animation.setFrames(Content.BLOCKER[MOVING], 2); 124 | } 125 | } 126 | else { 127 | if(currentAction != IDLE) { 128 | currentAction = IDLE; 129 | animation.setFrames(Content.BLOCKER[IDLE], 2); 130 | } 131 | } 132 | animation.update(); 133 | 134 | } 135 | 136 | public void draw(Graphics2D g) { 137 | 138 | setMapPosition(); 139 | 140 | if(flinching) { 141 | g.setXORMode(Color.RED); 142 | } 143 | super.draw(g); 144 | g.setPaintMode(); 145 | 146 | /*if(health < maxHealth) { 147 | g.setColor(java.awt.Color.RED); 148 | g.fillRect((int)(x + xmap - 10), (int)(y + ymap - height), 20, 2); 149 | g.setColor(java.awt.Color.GREEN); 150 | g.fillRect((int)(x + xmap - 10), (int)(y + ymap - height), (int) (20.0 * health / maxHealth), 2); 151 | }*/ 152 | 153 | } 154 | 155 | } -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/entity/enemies/Bullet.java: -------------------------------------------------------------------------------- 1 | package com.neet.entity.enemies; 2 | 3 | import java.awt.Graphics2D; 4 | import java.util.ArrayList; 5 | 6 | import com.neet.entity.Enemy; 7 | import com.neet.entity.Platform; 8 | import com.neet.main.GamePanel; 9 | import com.neet.managers.Content; 10 | import com.neet.tilemap.TileMap; 11 | 12 | public class Bullet extends Enemy { 13 | 14 | public Bullet(TileMap tm, ArrayList p) { 15 | super(tm, p, null); 16 | width = height = 5; 17 | cwidth = cheight = 5; 18 | damage = 1; 19 | animation.setFrames(Content.ENEMY_BULLET, 2); 20 | flinching = true; 21 | } 22 | 23 | public void update() { 24 | x += dx; 25 | y += dy; 26 | animation.update(); 27 | if(x < -tileMap.getx() - GamePanel.WIDTH / 2 || 28 | x > -tileMap.getx() + GamePanel.WIDTH + GamePanel.WIDTH / 2) { 29 | remove = true; 30 | } 31 | } 32 | 33 | public void draw(Graphics2D g) { 34 | super.draw(g); 35 | } 36 | 37 | } 38 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/entity/enemies/EnergyGate.java: -------------------------------------------------------------------------------- 1 | package com.neet.entity.enemies; 2 | 3 | import java.awt.Color; 4 | import java.awt.Graphics2D; 5 | 6 | import com.neet.entity.Enemy; 7 | import com.neet.managers.Animation; 8 | import com.neet.managers.Content; 9 | import com.neet.tilemap.TileMap; 10 | 11 | public class EnergyGate extends Enemy { 12 | 13 | private int gateHeight; 14 | 15 | private Animation topGate; 16 | private Animation energy; 17 | private Animation bottomGate; 18 | 19 | public EnergyGate(TileMap tm) { 20 | 21 | super(tm, null, null); 22 | 23 | health = maxHealth = Integer.MAX_VALUE; 24 | width = height = 32; 25 | flinchDelay = 5; 26 | 27 | topGate = new Animation(); 28 | topGate.setFrames(Content.ENERGY_GATE[0], 2); 29 | energy = new Animation(); 30 | energy.setFrames(Content.ENERGY_GATE[1], 2); 31 | bottomGate = new Animation(); 32 | bottomGate.setFrames(Content.ENERGY_GATE[2], 2); 33 | 34 | } 35 | 36 | public EnergyGate(TileMap tm, double x, double y, int gateHeight) { 37 | this(tm); 38 | this.x = x; 39 | this.y = y; 40 | this.gateHeight = gateHeight; 41 | cwidth = width; 42 | cheight = gateHeight; 43 | } 44 | 45 | public void hit() { 46 | if(dead || flinching) return; 47 | flinching = true; 48 | flinchCount = 0; 49 | } 50 | 51 | public void hit(int damage) { 52 | return; 53 | } 54 | 55 | public void update() { 56 | super.update(); 57 | topGate.update(); 58 | energy.update(); 59 | bottomGate.update(); 60 | } 61 | 62 | public void draw(Graphics2D g) { 63 | setMapPosition(); 64 | if(flinching) { 65 | g.setXORMode(Color.RED); 66 | } 67 | g.drawImage(topGate.getImage(), (int) (x + xmap - width / 2), (int) (y + ymap - gateHeight / 2 - 1), null); 68 | g.drawImage(bottomGate.getImage(), (int) (x + xmap - width / 2), (int) (y + ymap + gateHeight / 2 - height + 1), null); 69 | g.setPaintMode(); 70 | } 71 | 72 | } 73 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/entity/enemies/EnergyGateSource.java: -------------------------------------------------------------------------------- 1 | package com.neet.entity.enemies; 2 | 3 | import java.awt.Color; 4 | import java.awt.Graphics2D; 5 | import java.util.ArrayList; 6 | 7 | import com.neet.entity.Enemy; 8 | import com.neet.entity.Platform; 9 | import com.neet.entity.Player; 10 | import com.neet.managers.Content; 11 | import com.neet.tilemap.TileMap; 12 | 13 | public class EnergyGateSource extends Enemy { 14 | 15 | private EnergyGate energyGate; 16 | 17 | public EnergyGateSource(TileMap tm, ArrayList p, Player pl, EnergyGate eg) { 18 | 19 | super(tm, p, pl); 20 | 21 | energyGate = eg; 22 | 23 | width = height = cwidth = cheight = 32; 24 | flinchDelay = 5; 25 | 26 | health = maxHealth = 15; 27 | damage = 1; 28 | score = 50; 29 | rampage = 5; 30 | 31 | animation.setFrames(Content.ENERGY_GATE_SOURCE[0], 2); 32 | 33 | } 34 | 35 | public EnergyGateSource(TileMap tm, ArrayList p, Player pl, EnergyGate eg, double x, double y) { 36 | this(tm, p, pl, eg); 37 | this.x = x; 38 | this.y = y; 39 | } 40 | 41 | public void hit(int damage) { 42 | super.hit(damage); 43 | energyGate.hit(); 44 | if(dead) energyGate.setDead(); 45 | } 46 | 47 | public void update() { 48 | super.update(); 49 | animation.update(); 50 | } 51 | 52 | public void draw(Graphics2D g) { 53 | if(flinching) { 54 | g.setXORMode(Color.RED); 55 | } 56 | super.draw(g); 57 | g.setPaintMode(); 58 | } 59 | 60 | } 61 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/entity/enemies/Rocket.java: -------------------------------------------------------------------------------- 1 | package com.neet.entity.enemies; 2 | 3 | import java.awt.Graphics2D; 4 | import java.awt.geom.AffineTransform; 5 | import java.util.ArrayList; 6 | 7 | import com.neet.entity.Enemy; 8 | import com.neet.entity.Platform; 9 | import com.neet.entity.Player; 10 | import com.neet.managers.Content; 11 | import com.neet.tilemap.TileMap; 12 | 13 | public class Rocket extends Enemy { 14 | 15 | private double radians; 16 | private double destRadians; 17 | private int rotateFactor; 18 | 19 | private AffineTransform tx; 20 | 21 | private int timer; 22 | private int time; 23 | 24 | public Rocket(TileMap tm, ArrayList p, Player pl, double x, double y) { 25 | 26 | super(tm, p, pl); 27 | 28 | this.x = x; 29 | this.y = y; 30 | 31 | tx = new AffineTransform(); 32 | 33 | maxSpeed = 1.8; 34 | score = 5; 35 | 36 | width = 7; 37 | height = 15; 38 | cwidth = cheight = 15; 39 | 40 | animation.setFrames(Content.ENEMY_ROCKET, 2); 41 | 42 | radians = -3.1415 / 2; 43 | rotateFactor = 60; 44 | 45 | health = maxHealth = 1; 46 | 47 | timer = 0; 48 | time = 600; 49 | 50 | damage = 1; 51 | 52 | } 53 | 54 | public void update() { 55 | 56 | super.update(); 57 | 58 | timer++; 59 | if(timer > time) { 60 | dead = remove = true; 61 | } 62 | 63 | destRadians = Math.atan2(player.gety() - y, player.getx() - x); 64 | double deltaRadians = destRadians - radians; 65 | if(deltaRadians > 3.1415) { 66 | deltaRadians -= 3.1415 * 2; 67 | } 68 | else if(deltaRadians < -3.1415) { 69 | deltaRadians += 3.1415 * 2; 70 | } 71 | radians += deltaRadians / rotateFactor; 72 | if(radians > 3.1415 * 2) radians -= 3.1415 * 2; 73 | if(radians < -3.1415 * 2) radians += 3.1415 * 2; 74 | 75 | dx = Math.cos(radians) * maxSpeed; 76 | dy = Math.sin(radians) * maxSpeed; 77 | 78 | x += dx; 79 | y += dy; 80 | 81 | if(checkTileMapCollision()) { 82 | dead = remove = true; 83 | } 84 | 85 | if(intersects(player)) { 86 | dead = remove = true; 87 | } 88 | 89 | } 90 | 91 | public void draw(Graphics2D g) { 92 | 93 | setMapPosition(); 94 | 95 | tx.setToIdentity(); 96 | tx.translate(x + xmap, y + ymap); 97 | tx.rotate(3.14/2 + radians); 98 | tx.translate(-width / 2, -height / 2); 99 | 100 | g.drawImage(animation.getImage(), tx, null); 101 | 102 | } 103 | 104 | } 105 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/entity/enemies/Sensor.java: -------------------------------------------------------------------------------- 1 | package com.neet.entity.enemies; 2 | 3 | import java.awt.Color; 4 | import java.awt.Graphics2D; 5 | import java.util.ArrayList; 6 | 7 | import com.neet.entity.Enemy; 8 | import com.neet.entity.Platform; 9 | import com.neet.entity.Player; 10 | import com.neet.managers.Content; 11 | import com.neet.managers.GameObjectFactory; 12 | import com.neet.tilemap.TileMap; 13 | 14 | public class Sensor extends Enemy { 15 | 16 | private int range; 17 | private int timer; 18 | private int delay; 19 | 20 | public Sensor(TileMap tm, ArrayList p, Player pl) { 21 | 22 | super(tm, p, pl); 23 | 24 | cwidth = cheight = width = height = 25; 25 | animation.setFrames(Content.SENSOR[0], 2); 26 | 27 | flinchDelay = 5; 28 | 29 | health = maxHealth = 8; 30 | damage = 1; 31 | score = 5; 32 | rampage = 2; 33 | 34 | range = 200; 35 | delay = 150; 36 | timer = delay; 37 | 38 | } 39 | 40 | public Sensor(TileMap tm, ArrayList p, Player pl, double x, double y) { 41 | this(tm, p, pl); 42 | this.x = x; 43 | this.y = y; 44 | } 45 | 46 | public void update() { 47 | 48 | super.update(); 49 | animation.update(); 50 | 51 | if(player.getx() > x - range && player.getx() < x + range && player.gety() > y) { 52 | timer++; 53 | if(timer >= delay) { 54 | timer = 0; 55 | GameObjectFactory.createEnemyBullet(x, y, -1.41, 1.41); 56 | GameObjectFactory.createEnemyBullet(x, y, 0, 2); 57 | GameObjectFactory.createEnemyBullet(x, y, 1.41, 1.41); 58 | } 59 | } 60 | 61 | } 62 | 63 | public void draw(Graphics2D g) { 64 | 65 | if(flinching) { 66 | g.setXORMode(Color.RED); 67 | } 68 | super.draw(g); 69 | g.setPaintMode(); 70 | 71 | /*if(health < maxHealth) { 72 | g.setColor(java.awt.Color.RED); 73 | g.fillRect((int)(x + xmap - 10), (int)(y + ymap - height), 20, 2); 74 | g.setColor(java.awt.Color.GREEN); 75 | g.fillRect((int)(x + xmap - 10), (int)(y + ymap - height), (int) (20.0 * health / maxHealth), 2); 76 | }*/ 77 | 78 | } 79 | 80 | } -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/entity/enemies/Sentry.java: -------------------------------------------------------------------------------- 1 | package com.neet.entity.enemies; 2 | 3 | import java.awt.Color; 4 | import java.awt.Graphics2D; 5 | import java.util.ArrayList; 6 | 7 | import com.neet.entity.Enemy; 8 | import com.neet.entity.Platform; 9 | import com.neet.entity.Player; 10 | import com.neet.managers.Content; 11 | import com.neet.managers.GameObjectFactory; 12 | import com.neet.tilemap.TileMap; 13 | 14 | public class Sentry extends Enemy { 15 | 16 | private int state; 17 | private final int MOVING_TO_PLAYER = 0; 18 | private final int SHOOTING = 1; 19 | private final int COOLDOWN = 2; 20 | 21 | private int shootingRange; 22 | 23 | private int coolDownTimer; 24 | private int coolDownTime; 25 | 26 | private final int IDLE = 0; 27 | private final int MOVING = 1; 28 | 29 | public Sentry(TileMap tm, ArrayList p, Player pl) { 30 | 31 | super(tm, p, pl); 32 | 33 | width = height = 32; 34 | cwidth = 20; 35 | cheight = 28; 36 | right = true; 37 | 38 | maxSpeed = 0.8; 39 | fallSpeed = 0.8; 40 | maxFallSpeed = 4; 41 | flinchDelay = 5; 42 | 43 | health = maxHealth = 5; 44 | damage = 1; 45 | score = 5; 46 | rampage = 1; 47 | 48 | state = MOVING_TO_PLAYER; 49 | shootingRange = 150; 50 | 51 | coolDownTime = 150; 52 | coolDownTimer = 0; 53 | 54 | currentAction = MOVING; 55 | animation.setFrames(Content.SENTRY[MOVING], 2); 56 | 57 | } 58 | 59 | public Sentry(TileMap tm, ArrayList p, Player pl, double x, double y) { 60 | this(tm, p, pl); 61 | this.x = x; 62 | this.y = y; 63 | } 64 | 65 | private void getNextPosition() { 66 | if(left) { 67 | dx = -maxSpeed; 68 | } 69 | else if(right) { 70 | dx = maxSpeed; 71 | } 72 | else { 73 | dx = 0; 74 | } 75 | if(falling) { 76 | dy += fallSpeed; 77 | if(dy > maxFallSpeed) dy = maxFallSpeed; 78 | dx = 0; 79 | } 80 | } 81 | 82 | public void update() { 83 | 84 | super.update(); 85 | 86 | if(state == MOVING_TO_PLAYER) { 87 | if(player.getx() < x) { 88 | left = true; 89 | right = facingRight = false; 90 | } 91 | if(player.getx() > x) { 92 | left = false; 93 | right = facingRight = true; 94 | } 95 | if(Math.abs(player.getx() - x) < shootingRange && 96 | Math.abs(player.gety() - y) < 10) { 97 | state = SHOOTING; 98 | } 99 | } 100 | else if(state == SHOOTING) { 101 | left = right = false; 102 | if(player.getx() < x) { 103 | GameObjectFactory.createEnemyBullet(x - 13, y - 6, -2, 0); 104 | facingRight = false; 105 | } 106 | else { 107 | GameObjectFactory.createEnemyBullet(x, y - 6, 2, 0); 108 | facingRight = true; 109 | } 110 | state = COOLDOWN; 111 | } 112 | else if(state == COOLDOWN) { 113 | coolDownTimer++; 114 | if(coolDownTimer > coolDownTime) { 115 | coolDownTimer = 0; 116 | if(Math.abs(player.getx() - x) < shootingRange) { 117 | state = SHOOTING; 118 | } 119 | else { 120 | state = MOVING_TO_PLAYER; 121 | } 122 | } 123 | } 124 | 125 | getNextPosition(); 126 | checkTileMapCollision(); 127 | setPosition(xtemp, ytemp); 128 | 129 | if(state == MOVING_TO_PLAYER) { 130 | if(currentAction != MOVING) { 131 | currentAction = MOVING; 132 | animation.setFrames(Content.SENTRY[MOVING], 2); 133 | } 134 | } 135 | else { 136 | if(currentAction != IDLE) { 137 | currentAction = IDLE; 138 | animation.setFrames(Content.SENTRY[IDLE], 2); 139 | } 140 | } 141 | animation.update(); 142 | 143 | } 144 | 145 | public void draw(Graphics2D g) { 146 | 147 | if(flinching) { 148 | g.setXORMode(Color.RED); 149 | } 150 | super.draw(g); 151 | g.setPaintMode(); 152 | 153 | /*if(health < maxHealth) { 154 | g.setColor(java.awt.Color.RED); 155 | g.fillRect((int)(x + xmap - 10), (int)(y + ymap - height), 20, 2); 156 | g.setColor(java.awt.Color.GREEN); 157 | g.fillRect((int)(x + xmap - 10), (int)(y + ymap - height), (int) (20.0 * health / maxHealth), 2); 158 | }*/ 159 | 160 | } 161 | 162 | } -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/gamestates/DemoAct1.java: -------------------------------------------------------------------------------- 1 | package com.neet.gamestates; 2 | 3 | import java.awt.Graphics2D; 4 | import java.util.ArrayList; 5 | 6 | import com.neet.entity.Collectable; 7 | import com.neet.entity.Enemy; 8 | import com.neet.entity.Explosion; 9 | import com.neet.entity.Platform; 10 | import com.neet.entity.Player; 11 | import com.neet.entity.PopupText; 12 | import com.neet.entity.Projectile; 13 | import com.neet.entity.enemies.Blocker; 14 | import com.neet.entity.enemies.EnergyGate; 15 | import com.neet.entity.enemies.EnergyGateSource; 16 | import com.neet.entity.enemies.Sensor; 17 | import com.neet.entity.enemies.Sentry; 18 | import com.neet.main.Game; 19 | import com.neet.main.GamePanel; 20 | import com.neet.managers.Content; 21 | import com.neet.managers.GameObjectFactory; 22 | import com.neet.managers.GameStateManager; 23 | import com.neet.managers.Keys; 24 | import com.neet.managers.Mouse; 25 | import com.neet.tilemap.Background; 26 | import com.neet.tilemap.TileMap; 27 | import com.neet.ui.Cursor; 28 | import com.neet.ui.HUD; 29 | 30 | public class DemoAct1 extends GameState { 31 | 32 | private Player player; 33 | private TileMap tileMap; 34 | 35 | private ArrayList platforms; 36 | private ArrayList enemies; 37 | private ArrayList projectiles; 38 | private ArrayList collectables; 39 | private ArrayList explosions; 40 | private ArrayList popupTexts; 41 | 42 | private HUD hud; 43 | private Cursor cursor; 44 | 45 | private Background skyBG; 46 | private Background cloudBG; 47 | private Background mountainBG; 48 | 49 | private boolean set1; 50 | private boolean set2; 51 | private boolean set3; 52 | private boolean set4; 53 | private boolean set5; 54 | private boolean set6; 55 | private boolean set7; 56 | private boolean set8; 57 | private boolean set9; 58 | private boolean set10; 59 | 60 | public DemoAct1(GameStateManager gsm) { 61 | super(gsm); 62 | } 63 | 64 | public void init() { 65 | 66 | // init lists 67 | platforms = new ArrayList(); 68 | enemies = new ArrayList(); 69 | projectiles = new ArrayList(); 70 | collectables = new ArrayList(); 71 | explosions = new ArrayList(); 72 | popupTexts = new ArrayList(); 73 | 74 | // setup tilemap 75 | tileMap = new TileMap(16); 76 | tileMap.loadTileset(Content.ELECTRIC_TS); 77 | tileMap.loadMap("/maps/demoact1.tme"); 78 | tileMap.setPosition(0, 0); 79 | tileMap.setTween(0.07); 80 | 81 | // setup player 82 | player = new Player( 83 | tileMap, 84 | platforms, 85 | enemies, 86 | projectiles, 87 | collectables); 88 | player.setPosition(300, 531); 89 | //player.setPosition(1100, 347); 90 | tileMap.setPositionImmediately( 91 | GamePanel.WIDTH / 2 - player.getx(), 92 | GamePanel.HEIGHT / 2 - player.gety() 93 | ); 94 | tileMap.setBounds(tileMap.getWidth(), 639, -256, 0); 95 | Mouse.setPosition(317, 547); 96 | 97 | // set up factory 98 | GameObjectFactory.player = player; 99 | GameObjectFactory.tileMap = tileMap; 100 | GameObjectFactory.platforms = platforms; 101 | GameObjectFactory.projectiles = projectiles; 102 | GameObjectFactory.explosions = explosions; 103 | GameObjectFactory.enemies = enemies; 104 | GameObjectFactory.popupTexts = popupTexts; 105 | 106 | // set HUD 107 | hud = new HUD(player); 108 | 109 | // set cursor 110 | Game.setCursorVisible(false); 111 | cursor = new Cursor(Content.CURSOR, 1); 112 | 113 | skyBG = new Background(Content.SKY_BG, 0); 114 | cloudBG = new Background(Content.CLOUD_BG, 0.05); 115 | mountainBG = new Background(Content.MOUNTAIN_BG, 0.1); 116 | 117 | // test enemies 118 | enemies.add(new Sensor(tileMap, platforms, player, 1000, 345)); 119 | enemies.add(new Sensor(tileMap, platforms, player, 1100, 345)); 120 | enemies.add(new Sensor(tileMap, platforms, player, 1200, 345)); 121 | 122 | EnergyGate eg = new EnergyGate(tileMap, 1380, 425, 48); 123 | enemies.add(new EnergyGateSource(tileMap, platforms, player, eg, 1345, 360)); 124 | enemies.add(eg); 125 | 126 | } 127 | 128 | private void spawnEnemies() { 129 | 130 | if(!set1 && player.getx() > 450) { 131 | set1 = true; 132 | for(int i = 0; i < 3; i++) { 133 | Sentry s = new Sentry(tileMap, platforms, player); 134 | s.setPosition(650 + 40 * i, 546); 135 | enemies.add(s); 136 | } 137 | } 138 | 139 | if(!set2 && player.getx() > 1000) { 140 | set2 = true; 141 | Sentry s = new Sentry(tileMap, platforms, player); 142 | s.setPosition(1200, 466); 143 | enemies.add(s); 144 | } 145 | 146 | if(!set3 && player.getx() > 1600) { 147 | set3 = true; 148 | for(int i = 0; i < 3; i++) { 149 | Sentry s = new Sentry(tileMap, platforms, player); 150 | s.setPosition(1850 + 32 * i, 306); 151 | enemies.add(s); 152 | } 153 | } 154 | 155 | if(!set4 && player.getx() > 1968) { 156 | set4 = true; 157 | enemies.clear(); 158 | enemies.add(new Sentry(tileMap, platforms, player, 2000, -300)); 159 | enemies.add(new Sentry(tileMap, platforms, player, 2230, -300)); 160 | } 161 | 162 | if(!set5 && set4 && enemies.size() == 0) { 163 | set5 = true; 164 | enemies.add(new Sentry(tileMap, platforms, player, 2050, -32)); 165 | enemies.add(new Sentry(tileMap, platforms, player, 2180, -32)); 166 | } 167 | 168 | if(!set6 && set5 && enemies.size() == 0) { 169 | set6 = true; 170 | enemies.add(new Sentry(tileMap, platforms, player, 2100, -32)); 171 | enemies.add(new Sentry(tileMap, platforms, player, 2130, -32)); 172 | } 173 | 174 | if(!set7 && set6 && enemies.size() == 0) { 175 | set7 = true; 176 | enemies.add(new Blocker(tileMap, platforms, player, 2000, -32)); 177 | enemies.add(new Blocker(tileMap, platforms, player, 2230, -32)); 178 | } 179 | 180 | if(!set8 && set7 && enemies.size() == 0) { 181 | set8 = true; 182 | enemies.add(new Blocker(tileMap, platforms, player, 2050, -32)); 183 | enemies.add(new Blocker(tileMap, platforms, player, 2180, -32)); 184 | } 185 | 186 | if(!set9 && set8 && enemies.size() == 0) { 187 | set9 = true; 188 | enemies.add(new Blocker(tileMap, platforms, player, 2100, -32)); 189 | enemies.add(new Blocker(tileMap, platforms, player, 2130, -32)); 190 | } 191 | 192 | if(!set10 && set9 && enemies.size() == 0) { 193 | set10 = true; 194 | enemies.add(new Blocker(tileMap, platforms, player, 2000, -32)); 195 | enemies.add(new Blocker(tileMap, platforms, player, 2230, -32)); 196 | enemies.add(new Sentry(tileMap, platforms, player, 2050, -32)); 197 | enemies.add(new Sentry(tileMap, platforms, player, 2180, -32)); 198 | } 199 | 200 | } 201 | 202 | public void update() { 203 | 204 | // check user input 205 | handleInput(); 206 | 207 | // check enemy spawns 208 | spawnEnemies(); 209 | 210 | // update player/enemies/projectiles/collectables 211 | player.update(); 212 | 213 | // update tilemap 214 | if(player.getx() > 1968) { 215 | tileMap.setPosition(-1952, -96); 216 | } 217 | else { 218 | double dx = Mouse.x - player.getx() - tileMap.getx(); 219 | double dy = Mouse.y - player.gety() - tileMap.gety(); 220 | double dist = Math.sqrt(dx * dx + dy * dy); 221 | dx /= dist / 48; 222 | dy /= dist / 48; 223 | int xoff = (int) -dx; 224 | int yoff = (int) -dy; 225 | tileMap.setPosition( 226 | GamePanel.WIDTH / 2 - player.getx() + xoff, 227 | GamePanel.HEIGHT / 2 - player.gety() + yoff 228 | ); 229 | } 230 | tileMap.fixBounds(); 231 | tileMap.update(); 232 | 233 | if(tileMap.getDepth(player.getRow(), player.getCol()) == TileMap.FOREGROUND) { 234 | tileMap.setVisible(false); 235 | } 236 | else { 237 | tileMap.setVisible(true); 238 | } 239 | 240 | // update explosions 241 | for(int i = 0; i < explosions.size(); i++) { 242 | explosions.get(i).update(); 243 | if(explosions.get(i).shouldRemove()) { 244 | explosions.remove(i); 245 | i--; 246 | } 247 | } 248 | 249 | // update popup texts 250 | for(int i = 0; i < popupTexts.size(); i++) { 251 | popupTexts.get(i).update(); 252 | if(popupTexts.get(i).shouldRemove()) { 253 | popupTexts.remove(i); 254 | i--; 255 | } 256 | } 257 | 258 | // update bg 259 | skyBG.setPosition(tileMap.getx(), tileMap.gety()); 260 | cloudBG.setPosition(tileMap.getx(), tileMap.gety()); 261 | mountainBG.setPosition(tileMap.getx(), tileMap.gety()); 262 | 263 | // update cursor 264 | cursor.update(); 265 | 266 | } 267 | 268 | public void draw(Graphics2D g) { 269 | 270 | g.setColor(java.awt.Color.BLACK); 271 | g.fillRect(0, 0, 320, 240); 272 | 273 | skyBG.draw(g); 274 | cloudBG.draw(g); 275 | mountainBG.draw(g); 276 | 277 | // draw tilemap 278 | tileMap.draw(g, 0); 279 | 280 | // draw collectables 281 | for(int i = 0; i < collectables.size(); i++) { 282 | collectables.get(i).draw(g); 283 | } 284 | 285 | // draw enemies 286 | for(int i = 0; i < enemies.size(); i++) { 287 | Enemy e = enemies.get(i); 288 | e.draw(g); 289 | } 290 | 291 | // draw player 292 | player.draw(g); 293 | 294 | // draw projectiles 295 | for(int i = 0; i < projectiles.size(); i++) { 296 | projectiles.get(i).draw(g); 297 | } 298 | 299 | // draw tilemap foreground 300 | tileMap.draw(g, 1); 301 | 302 | // draw explosions 303 | for(int i = 0; i < explosions.size(); i++) { 304 | explosions.get(i).draw(g); 305 | } 306 | 307 | // draw popup texts 308 | for(int i = 0; i < popupTexts.size(); i++) { 309 | popupTexts.get(i).draw(g); 310 | } 311 | 312 | // draw hud 313 | hud.draw(g); 314 | 315 | // draw cursor 316 | cursor.draw(g); 317 | 318 | g.setColor(java.awt.Color.WHITE); 319 | g.drawString((int)player.getx() + ", " + (int)player.gety(), 150, 234); 320 | 321 | } 322 | 323 | public void handleInput() { 324 | player.setLeft(Keys.isDown(Keys.LEFT)); 325 | player.setRight(Keys.isDown(Keys.RIGHT)); 326 | player.setDown(Keys.isDown(Keys.DOWN)); 327 | player.setJumping(Keys.isDown(Keys.SPACE) || Keys.isDown(Keys.UP)); 328 | player.setFiring(Mouse.isDown()); 329 | } 330 | 331 | } -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/gamestates/DemoAct3.java: -------------------------------------------------------------------------------- 1 | package com.neet.gamestates; 2 | 3 | import java.awt.Graphics2D; 4 | import java.util.ArrayList; 5 | 6 | import com.neet.entity.Collectable; 7 | import com.neet.entity.Enemy; 8 | import com.neet.entity.Explosion; 9 | import com.neet.entity.Laser; 10 | import com.neet.entity.Platform; 11 | import com.neet.entity.Player; 12 | import com.neet.entity.Projectile; 13 | import com.neet.main.Game; 14 | import com.neet.main.GamePanel; 15 | import com.neet.managers.Content; 16 | import com.neet.managers.GameObjectFactory; 17 | import com.neet.managers.GameStateManager; 18 | import com.neet.managers.Keys; 19 | import com.neet.managers.Mouse; 20 | import com.neet.tilemap.Background; 21 | import com.neet.tilemap.TileMap; 22 | import com.neet.ui.Cursor; 23 | import com.neet.ui.HUD; 24 | 25 | 26 | public class DemoAct3 extends GameState { 27 | 28 | private Player player; 29 | private TileMap tileMap; 30 | 31 | private ArrayList projectiles; 32 | private ArrayList collectables; 33 | private ArrayList explosions; 34 | 35 | private ArrayList enemies; 36 | private ArrayList platforms; 37 | 38 | private HUD hud; 39 | private Cursor cursor; 40 | 41 | private Background skyBG; 42 | private Background cloudBG; 43 | private Background mountainBG; 44 | 45 | public DemoAct3(GameStateManager gsm) { 46 | super(gsm); 47 | } 48 | 49 | public void init() { 50 | 51 | // init lists 52 | platforms = new ArrayList(); 53 | enemies = new ArrayList(); 54 | projectiles = new ArrayList(); 55 | collectables = new ArrayList(); 56 | explosions = new ArrayList(); 57 | 58 | // setup tilemap 59 | tileMap = new TileMap(16); 60 | tileMap.loadTileset("/tilesets/electrictileset.gif"); 61 | tileMap.loadMap("/maps/demoact3.tme"); 62 | tileMap.setPosition(0, 0); 63 | tileMap.setTween(0.07); 64 | 65 | // set up factory 66 | GameObjectFactory.tileMap = tileMap; 67 | GameObjectFactory.platforms = platforms; 68 | GameObjectFactory.projectiles = projectiles; 69 | GameObjectFactory.explosions = explosions; 70 | 71 | // setup player 72 | player = new Player( 73 | tileMap, 74 | platforms, 75 | enemies, 76 | projectiles, 77 | collectables); 78 | player.setPosition(100, 100); 79 | 80 | Laser l = new Laser(tileMap, platforms, player); 81 | l.setPosition(300, 20); 82 | enemies.add(l); 83 | 84 | // set HUD 85 | hud = new HUD(player); 86 | 87 | // set cursor 88 | Game.setCursorVisible(false); 89 | cursor = new Cursor(Content.CURSOR, 1); 90 | 91 | skyBG = new Background(Content.SKY_BG, 0); 92 | cloudBG = new Background(Content.CLOUD_BG, 0.05); 93 | mountainBG = new Background(Content.MOUNTAIN_BG, 0.1); 94 | 95 | } 96 | 97 | public void update() { 98 | 99 | handleInput(); 100 | 101 | // update player/enemies/projectiles/collectables 102 | player.update(); 103 | 104 | // update tilemap 105 | tileMap.setPosition(tileMap.getx() - 10, tileMap.gety()); 106 | if(tileMap.getDepth(player.getRow(), player.getCol()) == TileMap.FOREGROUND) { 107 | tileMap.setVisible(false); 108 | } 109 | else { 110 | tileMap.setVisible(true); 111 | } 112 | tileMap.update(); 113 | if(player.getx() - player.getCWidth() / 2 < -tileMap.getx()) { 114 | player.setPosition( 115 | -tileMap.getx() + player.getCWidth() / 2, 116 | player.gety() 117 | ); 118 | } 119 | if(player.getx() + player.getCWidth() / 2 > -tileMap.getx() + GamePanel.WIDTH) { 120 | player.setPosition( 121 | -tileMap.getx() + GamePanel.WIDTH - player.getCWidth() / 2, 122 | player.gety() 123 | ); 124 | } 125 | 126 | // update explosions 127 | for(int i = 0; i < explosions.size(); i++) { 128 | explosions.get(i).update(); 129 | if(explosions.get(i).shouldRemove()) { 130 | explosions.remove(i); 131 | i--; 132 | } 133 | } 134 | 135 | skyBG.setPosition(tileMap.getx(), tileMap.gety()); 136 | cloudBG.setPosition(tileMap.getx(), tileMap.gety()); 137 | mountainBG.setPosition(tileMap.getx(), tileMap.gety()); 138 | 139 | cursor.update(); 140 | 141 | } 142 | 143 | public void draw(Graphics2D g) { 144 | 145 | //g.setColor(new java.awt.Color(180, 215, 238)); 146 | //g.fillRect(0, 0, GamePanel.WIDTH, GamePanel.HEIGHT); 147 | skyBG.draw(g); 148 | cloudBG.draw(g); 149 | mountainBG.draw(g); 150 | 151 | // draw tilemap 152 | tileMap.draw(g, 0); 153 | 154 | // draw collectables 155 | for(int i = 0; i < collectables.size(); i++) { 156 | collectables.get(i).draw(g); 157 | } 158 | 159 | // draw enemies 160 | for(int i = 0; i < enemies.size(); i++) { 161 | Enemy e = enemies.get(i); 162 | e.draw(g); 163 | } 164 | 165 | // draw player 166 | player.draw(g); 167 | 168 | // draw projectiles 169 | for(int i = 0; i < projectiles.size(); i++) { 170 | projectiles.get(i).draw(g); 171 | } 172 | 173 | // draw tilemap foreground 174 | tileMap.draw(g, 1); 175 | 176 | // draw explosions 177 | for(int i = 0; i < explosions.size(); i++) { 178 | explosions.get(i).draw(g); 179 | } 180 | 181 | // draw hud 182 | hud.draw(g); 183 | 184 | // draw cursor 185 | cursor.draw(g); 186 | 187 | g.setColor(java.awt.Color.WHITE); 188 | g.drawString((int)player.getx() + ", " + (int)player.gety(), 400, 20); 189 | 190 | } 191 | 192 | public void handleInput() { 193 | player.setLeft(Keys.isDown(Keys.LEFT)); 194 | player.setRight(Keys.isDown(Keys.RIGHT)); 195 | player.setDown(Keys.isDown(Keys.DOWN)); 196 | player.setJumping(Keys.isDown(Keys.SPACE) || Keys.isDown(Keys.UP)); 197 | player.setFiring(Mouse.isDown()); 198 | } 199 | 200 | } -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/gamestates/GameState.java: -------------------------------------------------------------------------------- 1 | package com.neet.gamestates; 2 | 3 | import java.awt.Graphics2D; 4 | 5 | import com.neet.managers.GameStateManager; 6 | 7 | 8 | public abstract class GameState { 9 | 10 | protected GameStateManager gsm; 11 | 12 | public GameState(GameStateManager gsm) { 13 | this.gsm = gsm; 14 | } 15 | 16 | public abstract void init(); 17 | public abstract void update(); 18 | public abstract void draw(Graphics2D g); 19 | public abstract void handleInput(); 20 | 21 | } 22 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/gamestates/IntroState.java: -------------------------------------------------------------------------------- 1 | // GameState that shows logo. 2 | 3 | package com.neet.gamestates; 4 | 5 | import java.awt.Color; 6 | import java.awt.Graphics2D; 7 | import java.awt.image.BufferedImage; 8 | 9 | import com.neet.main.GamePanel; 10 | import com.neet.managers.Content; 11 | import com.neet.managers.GameStateManager; 12 | import com.neet.managers.Keys; 13 | 14 | public class IntroState extends GameState { 15 | 16 | private BufferedImage logo; 17 | private int logow; 18 | private int logoh; 19 | private int logox; 20 | private int logoy; 21 | 22 | private int alpha; 23 | private int ticks; 24 | 25 | private final int FADE_IN = 90; 26 | private final int LENGTH = 90; 27 | private final int FADE_OUT = 90; 28 | 29 | public IntroState(GameStateManager gsm) { 30 | super(gsm); 31 | } 32 | 33 | public void init() { 34 | 35 | ticks = 0; 36 | 37 | logo = Content.LOGO[0][0]; 38 | logow = logo.getWidth() * 2; 39 | logoh = logo.getHeight() * 2; 40 | logox = (GamePanel.WIDTH - logow) / 2; 41 | logoy = (GamePanel.HEIGHT - logoh) / 2; 42 | 43 | } 44 | 45 | public void update() { 46 | handleInput(); 47 | ticks++; 48 | if(ticks < FADE_IN) { 49 | alpha = (int) (255 - 255 * (1.0 * ticks / FADE_IN)); 50 | if(alpha < 0) alpha = 0; 51 | } 52 | if(ticks > FADE_IN + LENGTH) { 53 | alpha = (int) (255 * (1.0 * ticks - FADE_IN - LENGTH) / FADE_OUT); 54 | if(alpha > 255) alpha = 255; 55 | } 56 | if(ticks > FADE_IN + LENGTH + FADE_OUT) { 57 | gsm.setState(GameStateManager.MENU); 58 | } 59 | } 60 | 61 | public void draw(Graphics2D g) { 62 | g.setColor(Color.WHITE); 63 | g.fillRect(0, 0, GamePanel.WIDTH, GamePanel.HEIGHT); 64 | g.drawImage(logo, logox, logoy, logow, logoh, null); 65 | g.setColor(new Color(0, 0, 0, alpha)); 66 | g.fillRect(0, 0, GamePanel.WIDTH, GamePanel.HEIGHT); 67 | } 68 | 69 | public void handleInput() { 70 | if(Keys.isPressed(Keys.ENTER)) { 71 | gsm.setState(GameStateManager.MENU); 72 | } 73 | } 74 | 75 | } -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/gamestates/MenuState.java: -------------------------------------------------------------------------------- 1 | package com.neet.gamestates; 2 | 3 | import java.awt.Color; 4 | import java.awt.Graphics2D; 5 | 6 | import com.neet.main.GamePanel; 7 | import com.neet.managers.GameStateManager; 8 | import com.neet.managers.Keys; 9 | 10 | public class MenuState extends GameState { 11 | 12 | private int currentChoice = 0; 13 | private String[] options = { 14 | "Start", 15 | "Quit" 16 | }; 17 | 18 | public MenuState(GameStateManager gsm) { 19 | super(gsm); 20 | } 21 | 22 | public void init() { 23 | 24 | } 25 | 26 | public void update() { 27 | 28 | handleInput(); 29 | 30 | } 31 | 32 | public void draw(Graphics2D g) { 33 | 34 | g.setColor(Color.BLACK); 35 | g.fillRect(0, 0, GamePanel.WIDTH, GamePanel.HEIGHT); 36 | 37 | for(int i = 0; i < options.length; i++) { 38 | if(i == currentChoice) g.setColor(java.awt.Color.RED); 39 | else g.setColor(java.awt.Color.WHITE); 40 | g.drawString(options[i], 100, 100 + i * 15); 41 | } 42 | 43 | } 44 | 45 | public void handleInput() { 46 | if(Keys.isPressed(Keys.DOWN)) { 47 | if(currentChoice < options.length - 1) { 48 | currentChoice++; 49 | } 50 | } 51 | if(Keys.isPressed(Keys.UP)) { 52 | if(currentChoice > 0) currentChoice--; 53 | } 54 | if(Keys.isPressed(Keys.ENTER)) { 55 | select(); 56 | } 57 | } 58 | 59 | private void select() { 60 | if(currentChoice == 0) { 61 | gsm.setState(GameStateManager.DEMOACT1); 62 | } 63 | else if(currentChoice == 1) { 64 | System.exit(0); 65 | } 66 | } 67 | 68 | } 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/gamestates/PauseState.java: -------------------------------------------------------------------------------- 1 | package com.neet.gamestates; 2 | 3 | import java.awt.Color; 4 | import java.awt.Font; 5 | import java.awt.Graphics2D; 6 | 7 | import com.neet.main.GamePanel; 8 | import com.neet.managers.GameStateManager; 9 | import com.neet.managers.Keys; 10 | 11 | 12 | public class PauseState extends GameState { 13 | 14 | private Font font; 15 | 16 | public PauseState(GameStateManager gsm) { 17 | super(gsm); 18 | font = new Font("Century Gothic", Font.PLAIN, 14); 19 | } 20 | 21 | public void init() {} 22 | 23 | public void update() { 24 | handleInput(); 25 | } 26 | 27 | public void draw(Graphics2D g) { 28 | g.setColor(Color.BLACK); 29 | g.fillRect(0, 0, GamePanel.WIDTH, GamePanel.HEIGHT); 30 | g.setColor(Color.WHITE); 31 | g.setFont(font); 32 | g.drawString("Game Paused", 90, 90); 33 | } 34 | 35 | public void handleInput() { 36 | if(Keys.isPressed(Keys.ESCAPE)) gsm.setPaused(false); 37 | if(Keys.isPressed(Keys.BUTTON1)) { 38 | gsm.setPaused(false); 39 | gsm.setState(GameStateManager.MENU); 40 | } 41 | } 42 | 43 | } 44 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/main/Game.java: -------------------------------------------------------------------------------- 1 | package com.neet.main; 2 | 3 | import java.awt.Cursor; 4 | import java.awt.Point; 5 | import java.awt.Toolkit; 6 | import java.awt.image.BufferedImage; 7 | 8 | import javax.swing.JFrame; 9 | 10 | public class Game { 11 | 12 | private static JFrame window; 13 | 14 | public static void main(String[] args) { 15 | window = new JFrame("Cranky Rampage"); 16 | window.add(new GamePanel()); 17 | window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 18 | window.setResizable(false); 19 | window.pack(); 20 | window.setLocationRelativeTo(null); 21 | window.setVisible(true); 22 | } 23 | 24 | public static void setCursorVisible(boolean b) { 25 | if(b) { 26 | window.setCursor(null); 27 | return; 28 | } 29 | BufferedImage bi = new BufferedImage(1, 1, BufferedImage.TYPE_INT_ARGB); 30 | Cursor c = Toolkit.getDefaultToolkit().createCustomCursor(bi, new Point(0, 0), "."); 31 | window.setCursor(c); 32 | } 33 | 34 | } 35 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/main/GamePanel.java: -------------------------------------------------------------------------------- 1 | package com.neet.main; 2 | 3 | import java.awt.Dimension; 4 | import java.awt.Graphics; 5 | import java.awt.Graphics2D; 6 | import java.awt.RenderingHints; 7 | import java.awt.event.KeyEvent; 8 | import java.awt.event.KeyListener; 9 | import java.awt.event.MouseEvent; 10 | import java.awt.event.MouseListener; 11 | import java.awt.event.MouseMotionListener; 12 | import java.awt.image.BufferedImage; 13 | 14 | import javax.swing.JFrame; 15 | import javax.swing.JPanel; 16 | 17 | import com.neet.managers.GameStateManager; 18 | import com.neet.managers.Keys; 19 | import com.neet.managers.Mouse; 20 | 21 | @SuppressWarnings("serial") 22 | public class GamePanel 23 | extends JPanel 24 | implements Runnable, KeyListener, MouseListener, MouseMotionListener { 25 | 26 | public static final int WIDTH = 320; 27 | public static final int HEIGHT = 240; 28 | public static int SCALE = 2; 29 | 30 | private Thread thread; 31 | private boolean running; 32 | private int FPS = 60; 33 | private long targetTime = 1000 / FPS; 34 | private int averageFPS; 35 | 36 | private BufferedImage image; 37 | private Graphics2D g; 38 | 39 | private GameStateManager gsm; 40 | 41 | private boolean screenshot; 42 | 43 | public GamePanel() { 44 | setPreferredSize(new Dimension((int)(WIDTH * SCALE), (int)(HEIGHT * SCALE))); 45 | setFocusable(true); 46 | requestFocus(); 47 | } 48 | 49 | public void addNotify() { 50 | super.addNotify(); 51 | addKeyListener(this); 52 | addMouseListener(this); 53 | addMouseMotionListener(this); 54 | if(thread == null) { 55 | thread = new Thread(this); 56 | thread.start(); 57 | } 58 | } 59 | 60 | private void init() { 61 | 62 | image = new BufferedImage(WIDTH, HEIGHT, BufferedImage.TYPE_INT_RGB); 63 | g = (Graphics2D) image.getGraphics(); 64 | g.setRenderingHint( 65 | RenderingHints.KEY_ANTIALIASING, 66 | RenderingHints.VALUE_ANTIALIAS_ON 67 | ); 68 | g.setRenderingHint( 69 | RenderingHints.KEY_TEXT_ANTIALIASING, 70 | RenderingHints.VALUE_TEXT_ANTIALIAS_ON 71 | ); 72 | 73 | running = true; 74 | 75 | gsm = new GameStateManager(); 76 | 77 | } 78 | 79 | public void run() { 80 | 81 | init(); 82 | 83 | // don't know why, but sometimes setResizable gets called after pack 84 | // have to recheck that the panel is correct size 85 | if(WIDTH * SCALE != getWidth() || HEIGHT * SCALE != getHeight()) { 86 | System.out.println("WAT"); 87 | JFrame frame = (JFrame) getTopLevelAncestor(); 88 | frame.pack(); 89 | frame.setLocationRelativeTo(null); 90 | } 91 | 92 | long start = System.nanoTime(); 93 | long elapsed; 94 | long wait; 95 | 96 | long total = 0; 97 | int frames = 0; 98 | 99 | while(running) { 100 | 101 | start = System.nanoTime(); 102 | 103 | update(); 104 | draw(); 105 | drawToScreen(); 106 | 107 | frames++; 108 | 109 | elapsed = System.nanoTime() - start; 110 | 111 | wait = targetTime - elapsed / 1000000; 112 | if(wait < 0) wait = 5; 113 | 114 | try { 115 | Thread.sleep(wait); 116 | } 117 | catch(Exception e) { 118 | e.printStackTrace(); 119 | } 120 | 121 | total += System.nanoTime() - start; 122 | if(total > 1000000000) { 123 | averageFPS = frames; 124 | total -= 1000000000; 125 | frames = 0; 126 | } 127 | 128 | } 129 | 130 | } 131 | 132 | private void update() { 133 | gsm.update(); 134 | handleInput(); 135 | Keys.update(); 136 | Mouse.update(); 137 | } 138 | 139 | private void draw() { 140 | gsm.draw(g); 141 | g.setColor(java.awt.Color.RED); 142 | g.drawString(Integer.toString(averageFPS), 300, 230); 143 | } 144 | 145 | private void drawToScreen() { 146 | Graphics g2 = getGraphics(); 147 | g2.drawImage(image, 0, 0, (int)(WIDTH * SCALE), (int)(HEIGHT * SCALE), null); 148 | g2.dispose(); 149 | if(screenshot) { 150 | screenshot = false; 151 | try { 152 | java.io.File out = new java.io.File("screenshot " + System.nanoTime() + ".gif"); 153 | javax.imageio.ImageIO.write(image, "gif", out); 154 | } 155 | catch(Exception e) {} 156 | } 157 | } 158 | 159 | private void handleInput() { 160 | if(Keys.isPressed(Keys.F4)) { 161 | if(SCALE == 1) SCALE = 2; 162 | else SCALE = 1; 163 | setPreferredSize(new Dimension((int)(WIDTH * SCALE), (int)(HEIGHT * SCALE))); 164 | image = new BufferedImage(WIDTH, HEIGHT, BufferedImage.TYPE_INT_RGB); 165 | g = (Graphics2D) image.getGraphics(); 166 | javax.swing.JFrame frame = (javax.swing.JFrame) getTopLevelAncestor(); 167 | frame.pack(); 168 | frame.setLocationRelativeTo(null); 169 | } 170 | } 171 | 172 | public void keyTyped(KeyEvent key) {} 173 | public void keyPressed(KeyEvent key) { 174 | if(key.isControlDown()) { 175 | if(key.getKeyCode() == KeyEvent.VK_S) { 176 | screenshot = true; 177 | return; 178 | } 179 | } 180 | Keys.keySet(key.getKeyCode(), true); 181 | } 182 | public void keyReleased(KeyEvent key) { 183 | Keys.keySet(key.getKeyCode(), false); 184 | } 185 | 186 | public void mousePressed(MouseEvent me) { 187 | Mouse.setAction(Mouse.PRESSED); 188 | } 189 | 190 | public void mouseReleased(MouseEvent me) { 191 | Mouse.setAction(Mouse.RELEASED); 192 | } 193 | 194 | public void mouseMoved(MouseEvent me) { 195 | me.translatePoint(-me.getX() + me.getX() / SCALE, -me.getY() + me.getY() / SCALE); 196 | Mouse.setPosition(me.getX(), me.getY()); 197 | } 198 | 199 | public void mouseDragged(MouseEvent me) { 200 | me.translatePoint(-me.getX() + me.getX() / SCALE, -me.getY() + me.getY() / SCALE); 201 | Mouse.setAction(Mouse.PRESSED); 202 | Mouse.setPosition(me.getX(), me.getY()); 203 | } 204 | public void mouseEntered(MouseEvent me) {} 205 | public void mouseExited(MouseEvent me) {} 206 | public void mouseClicked(MouseEvent me) {} 207 | 208 | } -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/managers/Animation.java: -------------------------------------------------------------------------------- 1 | package com.neet.managers; 2 | 3 | import java.awt.image.BufferedImage; 4 | 5 | public class Animation { 6 | 7 | private BufferedImage[] frames; 8 | private int currentFrame; 9 | private int numFrames; 10 | 11 | private int count; 12 | private int delay; 13 | 14 | private int timesPlayed; 15 | private boolean reverse; 16 | 17 | public Animation() { 18 | timesPlayed = 0; 19 | } 20 | 21 | public void setFrames(BufferedImage[] frames) { 22 | setFrames(frames, 6); 23 | } 24 | 25 | public void setFrames(BufferedImage[] frames, int d) { 26 | setFrames(frames, d, frames.length); 27 | } 28 | 29 | public void setFrames(BufferedImage[] frames, int d, int n) { 30 | this.frames = frames; 31 | delay = d; 32 | numFrames = n; 33 | currentFrame = 0; 34 | count = 0; 35 | timesPlayed = 0; 36 | reverse = false; 37 | } 38 | 39 | public void setDelay(int i) { delay = i; } 40 | public void setFrame(int i) { currentFrame = i; } 41 | public void setNumFrames(int i) { numFrames = i; } 42 | 43 | public void setReverse(boolean b) { 44 | if(reverse == b) return; 45 | reverse = b; 46 | currentFrame = numFrames - 1; 47 | } 48 | 49 | public void update() { 50 | 51 | if(delay == -1) return; 52 | 53 | count++; 54 | 55 | if(count == delay) { 56 | if(reverse) { 57 | currentFrame--; 58 | } 59 | else { 60 | currentFrame++; 61 | } 62 | count = 0; 63 | } 64 | if(!reverse && currentFrame == numFrames) { 65 | currentFrame = 0; 66 | timesPlayed++; 67 | } 68 | else if(reverse && currentFrame == 0) { 69 | currentFrame = numFrames - 1; 70 | timesPlayed++; 71 | } 72 | 73 | } 74 | 75 | public int getFrame() { return currentFrame; } 76 | public int getCount() { return count; } 77 | public BufferedImage getImage() { return frames[currentFrame]; } 78 | public boolean hasPlayedOnce() { return timesPlayed > 0; } 79 | public boolean hasPlayed(int i) { return timesPlayed == i; } 80 | 81 | } -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/managers/Content.java: -------------------------------------------------------------------------------- 1 | package com.neet.managers; 2 | 3 | import java.awt.Font; 4 | import java.awt.image.BufferedImage; 5 | 6 | import javax.imageio.ImageIO; 7 | 8 | public class Content { 9 | 10 | public static BufferedImage[][] LOGO = load("/logo.gif", 128, 144); 11 | public static BufferedImage[] CURSOR = load("/ui/cursor.png", 27, 27)[0]; 12 | 13 | public static BufferedImage SKY_BG = load("/backgrounds/sky.gif", 320, 240)[0][0]; 14 | public static BufferedImage CLOUD_BG = load("/backgrounds/clouds.gif", 320, 240)[0][0]; 15 | public static BufferedImage MOUNTAIN_BG = load("/backgrounds/mountains.png", 320, 240)[0][0]; 16 | 17 | public static BufferedImage[][] ELECTRIC_TS = load("/tilesets/electrictileset.gif", 16, 16); 18 | public static BufferedImage[][] NEIGHBORHOOD_TS = load("/tilesets/neighborhoodtileset.png", 16, 16); 19 | 20 | public static BufferedImage[][] PLAYER_SPRITES = load("/sprites/playersprites.png", 32, 32); 21 | public static BufferedImage[][] PLAYER_LEG_SPRITES = load("/sprites/playerlegsprites.png", 32, 32); 22 | public static BufferedImage[] GUN_FLASH = load("/sprites/gunflash.png", 7, 7)[0]; 23 | public static BufferedImage[] EXPLOSION = load("/sprites/explosion.png", 32, 32)[0]; 24 | 25 | public static BufferedImage[] MG_BULLETS = load("/bullets/machinegun.png", 6, 20)[0]; 26 | public static BufferedImage[] FMG_BULLETS = load("/bullets/flamingmachinegun.png", 10, 30)[0]; 27 | 28 | public static BufferedImage HEART_HUD = loadImage("/ui/hearthud.png"); 29 | public static BufferedImage RAMPAGE_HUD = loadImage("/ui/rampagehud.png"); 30 | public static BufferedImage HEAD_HUD = loadImage("/ui/headhud.png"); 31 | public static BufferedImage[][] WEAPONS_HUD = load("/ui/weaponshud.png", 13, 13); 32 | 33 | public static BufferedImage[] ENEMY_BULLET = load("/enemies/bulletsprites.png", 5, 5)[0]; 34 | public static BufferedImage[] ENEMY_ROCKET = load("/enemies/rocket.png", 7, 15)[0]; 35 | public static BufferedImage[][] SENTRY = load("/enemies/sentry.png", 32, 32); 36 | public static BufferedImage[][] BLOCKER = load("/enemies/blocker.png", 40, 40); 37 | public static BufferedImage[][] SENSOR = load("/enemies/sensor.png", 25, 25); 38 | public static BufferedImage[][] ENERGY_GATE_SOURCE = load("/enemies/energygatesource.png", 32, 32); 39 | public static BufferedImage[][] ENERGY_GATE = load("/enemies/energygate.png", 32, 32); 40 | 41 | public static Font PS_FONT = loadFont("/fonts/prstart.ttf", Font.TRUETYPE_FONT); 42 | 43 | public static BufferedImage loadImage(String s) { 44 | BufferedImage ret; 45 | try { 46 | ret = ImageIO.read(Content.class.getResourceAsStream(s)); 47 | return ret; 48 | } 49 | catch(Exception e) { 50 | e.printStackTrace(); 51 | System.out.println("Error loading graphics: " + s); 52 | System.exit(0); 53 | } 54 | return null; 55 | } 56 | 57 | public static BufferedImage[][] load(String s, int w, int h) { 58 | BufferedImage[][] ret; 59 | try { 60 | BufferedImage spritesheet = ImageIO.read(Content.class.getResourceAsStream(s)); 61 | int width = spritesheet.getWidth() / w; 62 | int height = spritesheet.getHeight() / h; 63 | ret = new BufferedImage[height][width]; 64 | for(int i = 0; i < height; i++) { 65 | for(int j = 0; j < width; j++) { 66 | ret[i][j] = spritesheet.getSubimage(j * w, i * h, w, h); 67 | } 68 | } 69 | return ret; 70 | } 71 | catch(Exception e) { 72 | e.printStackTrace(); 73 | System.out.println("Error loading graphics: " + s); 74 | System.exit(0); 75 | } 76 | return null; 77 | } 78 | 79 | public static Font loadFont(String s, int format) { 80 | Font f = null; 81 | try { 82 | f = Font.createFont(format, Content.class.getResourceAsStream(s)).deriveFont(8f); 83 | } 84 | catch(Exception e) { 85 | e.printStackTrace(); 86 | System.out.println("Error loading font: " + s); 87 | System.exit(0); 88 | } 89 | return f; 90 | } 91 | 92 | } 93 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/managers/GameObjectFactory.java: -------------------------------------------------------------------------------- 1 | package com.neet.managers; 2 | 3 | import java.awt.Color; 4 | import java.util.ArrayList; 5 | 6 | import com.neet.entity.Enemy; 7 | import com.neet.entity.Explosion; 8 | import com.neet.entity.Platform; 9 | import com.neet.entity.Player; 10 | import com.neet.entity.PopupText; 11 | import com.neet.entity.Projectile; 12 | import com.neet.entity.Weapon; 13 | import com.neet.entity.enemies.Bullet; 14 | import com.neet.entity.enemies.Rocket; 15 | import com.neet.tilemap.TileMap; 16 | 17 | public class GameObjectFactory { 18 | 19 | public static Player player; 20 | public static TileMap tileMap; 21 | public static ArrayList platforms; 22 | public static ArrayList projectiles; 23 | public static ArrayList explosions; 24 | public static ArrayList enemies; 25 | public static ArrayList popupTexts; 26 | 27 | public static void createProjectile(double x, double y, int weapon, int dir) { 28 | 29 | Projectile p = null; 30 | 31 | if(weapon == Weapon.MACHINE_GUN) { 32 | p = new Projectile(tileMap, platforms, x, y, dir, weapon); 33 | projectiles.add(p); 34 | } 35 | else if(weapon == Weapon.SPREADER) { 36 | p = new Projectile(tileMap, platforms, x, y, dir, weapon); 37 | int angle = -90 + dir * 45; 38 | p.setAngle(angle); 39 | projectiles.add(p); 40 | p = new Projectile(tileMap, platforms, x, y, dir, weapon); 41 | angle = -90 + dir * 45; 42 | p.setAngle(angle - 20); 43 | projectiles.add(p); 44 | p = new Projectile(tileMap, platforms, x, y, dir, weapon); 45 | angle = -90 + dir * 45; 46 | p.setAngle(angle + 20); 47 | projectiles.add(p); 48 | } 49 | else if(weapon == Weapon.HIGH_CALIBER) { 50 | p = new Projectile(tileMap, platforms, x, y, dir, weapon); 51 | projectiles.add(p); 52 | } 53 | else if(weapon == Weapon.FLAMING_MACHINE_GUN) { 54 | p = new Projectile(tileMap, platforms, x, y, dir, weapon); 55 | projectiles.add(p); 56 | } 57 | 58 | } 59 | 60 | public static void createExplosion(double x, double y, int type, int delay) { 61 | explosions.add(new Explosion(tileMap, platforms, x, y, type, delay)); 62 | } 63 | 64 | public static void createEnemy(Enemy e) { 65 | enemies.add(e); 66 | } 67 | 68 | public static void createEnemyBullet(double x, double y, double dx, double dy) { 69 | Bullet b = new Bullet(tileMap, platforms); 70 | b.setPosition(x, y); 71 | b.setVector(dx, dy); 72 | enemies.add(b); 73 | } 74 | 75 | public static void createEnemyRocket(double x, double y) { 76 | Rocket r = new Rocket(tileMap, platforms, player, x, y); 77 | enemies.add(r); 78 | } 79 | 80 | public static void createPopupText(String s, double x, double y, Color c1, Color c2) { 81 | popupTexts.add(new PopupText(tileMap, s, x, y, c1, c2)); 82 | } 83 | 84 | } 85 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/managers/GameStateManager.java: -------------------------------------------------------------------------------- 1 | package com.neet.managers; 2 | 3 | import com.neet.gamestates.DemoAct1; 4 | import com.neet.gamestates.DemoAct3; 5 | import com.neet.gamestates.GameState; 6 | import com.neet.gamestates.IntroState; 7 | import com.neet.gamestates.MenuState; 8 | import com.neet.gamestates.PauseState; 9 | import com.neet.main.GamePanel; 10 | 11 | 12 | public class GameStateManager { 13 | 14 | private GameState gameState; 15 | 16 | private PauseState pauseState; 17 | private boolean paused; 18 | 19 | public static final int LOGO = 0; 20 | public static final int MENU = 1; 21 | public static final int INTRO = 2; 22 | public static final int DEMOACT1 = 3; 23 | public static final int DEMOACT3 = 5; 24 | 25 | public GameStateManager() { 26 | 27 | JukeBox.init(); 28 | 29 | pauseState = new PauseState(this); 30 | paused = false; 31 | 32 | setState(LOGO); 33 | 34 | } 35 | 36 | public void setState(int state) { 37 | if(state == LOGO) { 38 | gameState = new IntroState(this); 39 | } 40 | else if(state == MENU) { 41 | gameState = new MenuState(this); 42 | } 43 | else if(state == DEMOACT1) { 44 | gameState = new DemoAct1(this); 45 | } 46 | else if(state == DEMOACT3) { 47 | gameState = new DemoAct3(this); 48 | } 49 | gameState.init(); 50 | } 51 | 52 | public void setPaused(boolean b) { paused = b; } 53 | 54 | public void update() { 55 | if(paused) { 56 | pauseState.update(); 57 | return; 58 | } 59 | if(gameState != null) gameState.update(); 60 | } 61 | 62 | public void draw(java.awt.Graphics2D g) { 63 | if(paused) { 64 | pauseState.draw(g); 65 | return; 66 | } 67 | if(gameState != null) gameState.draw(g); 68 | else { 69 | g.setColor(java.awt.Color.BLACK); 70 | g.fillRect(0, 0, GamePanel.WIDTH, GamePanel.HEIGHT); 71 | } 72 | } 73 | 74 | } -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/managers/GameUtils.java: -------------------------------------------------------------------------------- 1 | /** 2 | * Helper methods to make life easier. 3 | */ 4 | 5 | package com.neet.managers; 6 | 7 | import java.awt.Graphics2D; 8 | import java.awt.Paint; 9 | 10 | public class GameUtils { 11 | 12 | // draws a string with a 1px stroke 13 | public static void drawOutlinedString(Graphics2D g, String s, int x, int y, Paint outer, Paint inner) { 14 | g.setPaint(outer); 15 | g.drawString(s, x - 1, y - 1); 16 | g.drawString(s, x + 1, y - 1); 17 | g.drawString(s, x - 1, y + 1); 18 | g.drawString(s, x + 1, y + 1); 19 | g.drawString(s, x - 1, y); 20 | g.drawString(s, x + 1, y); 21 | g.drawString(s, x, y - 1); 22 | g.drawString(s, x, y + 1); 23 | g.setPaint(inner); 24 | g.drawString(s, x, y); 25 | } 26 | 27 | } 28 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/managers/JukeBox.java: -------------------------------------------------------------------------------- 1 | package com.neet.managers; 2 | 3 | import java.util.HashMap; 4 | 5 | import javax.sound.sampled.AudioFormat; 6 | import javax.sound.sampled.AudioInputStream; 7 | import javax.sound.sampled.AudioSystem; 8 | import javax.sound.sampled.Clip; 9 | 10 | public class JukeBox { 11 | 12 | private static HashMap clips; 13 | private static int gap; 14 | private static boolean mute = false; 15 | 16 | public static void init() { 17 | clips = new HashMap(); 18 | gap = 0; 19 | } 20 | 21 | public static void load(String s, String n) { 22 | if(clips.get(n) != null) return; 23 | Clip clip; 24 | try { 25 | AudioInputStream ais = 26 | AudioSystem.getAudioInputStream( 27 | JukeBox.class.getResourceAsStream(s) 28 | ); 29 | AudioFormat baseFormat = ais.getFormat(); 30 | AudioFormat decodeFormat = new AudioFormat( 31 | AudioFormat.Encoding.PCM_SIGNED, 32 | baseFormat.getSampleRate(), 33 | 16, 34 | baseFormat.getChannels(), 35 | baseFormat.getChannels() * 2, 36 | baseFormat.getSampleRate(), 37 | false 38 | ); 39 | AudioInputStream dais = AudioSystem.getAudioInputStream(decodeFormat, ais); 40 | clip = AudioSystem.getClip(); 41 | clip.open(dais); 42 | clips.put(n, clip); 43 | } 44 | catch(Exception e) { 45 | e.printStackTrace(); 46 | } 47 | } 48 | 49 | public static void play(String s) { 50 | play(s, gap); 51 | } 52 | 53 | public static void play(String s, int i) { 54 | if(mute) return; 55 | Clip c = clips.get(s); 56 | if(c == null) return; 57 | if(c.isRunning()) c.stop(); 58 | c.setFramePosition(i); 59 | while(!c.isRunning()) c.start(); 60 | } 61 | 62 | public static void stop(String s) { 63 | if(clips.get(s) == null) return; 64 | if(clips.get(s).isRunning()) clips.get(s).stop(); 65 | } 66 | 67 | public static void resume(String s) { 68 | if(mute) return; 69 | if(clips.get(s).isRunning()) return; 70 | clips.get(s).start(); 71 | } 72 | 73 | public static void loop(String s) { 74 | loop(s, gap, gap, clips.get(s).getFrameLength() - 1); 75 | } 76 | 77 | public static void loop(String s, int frame) { 78 | loop(s, frame, gap, clips.get(s).getFrameLength() - 1); 79 | } 80 | 81 | public static void loop(String s, int start, int end) { 82 | loop(s, gap, start, end); 83 | } 84 | 85 | public static void loop(String s, int frame, int start, int end) { 86 | stop(s); 87 | if(mute) return; 88 | clips.get(s).setLoopPoints(start, end); 89 | clips.get(s).setFramePosition(frame); 90 | clips.get(s).loop(Clip.LOOP_CONTINUOUSLY); 91 | } 92 | 93 | public static void setPosition(String s, int frame) { 94 | clips.get(s).setFramePosition(frame); 95 | } 96 | 97 | public static int getFrames(String s) { return clips.get(s).getFrameLength(); } 98 | public static int getPosition(String s) { return clips.get(s).getFramePosition(); } 99 | 100 | public static void close(String s) { 101 | stop(s); 102 | clips.get(s).close(); 103 | } 104 | 105 | } -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/managers/Keys.java: -------------------------------------------------------------------------------- 1 | package com.neet.managers; 2 | 3 | import java.awt.event.KeyEvent; 4 | 5 | public class Keys { 6 | 7 | public static final int NUM_KEYS = 16; 8 | 9 | public static boolean keyState[] = new boolean[NUM_KEYS]; 10 | public static boolean prevKeyState[] = new boolean[NUM_KEYS]; 11 | 12 | public static int UP = 0; 13 | public static int LEFT = 1; 14 | public static int DOWN = 2; 15 | public static int RIGHT = 3; 16 | public static int BUTTON1 = 4; 17 | public static int BUTTON2 = 5; 18 | public static int BUTTON3 = 6; 19 | public static int BUTTON4 = 7; 20 | public static int ENTER = 8; 21 | public static int ESCAPE = 9; 22 | public static int SPACE = 10; 23 | public static int F4 = 11; 24 | 25 | public static void keySet(int i, boolean b) { 26 | if(i == KeyEvent.VK_W || i == KeyEvent.VK_UP) keyState[UP] = b; 27 | else if(i == KeyEvent.VK_A || i == KeyEvent.VK_LEFT) keyState[LEFT] = b; 28 | else if(i == KeyEvent.VK_S || i == KeyEvent.VK_DOWN) keyState[DOWN] = b; 29 | else if(i == KeyEvent.VK_D || i == KeyEvent.VK_RIGHT) keyState[RIGHT] = b; 30 | else if(i == KeyEvent.VK_Z) keyState[BUTTON1] = b; 31 | else if(i == KeyEvent.VK_X) keyState[BUTTON2] = b; 32 | else if(i == KeyEvent.VK_C) keyState[BUTTON3] = b; 33 | else if(i == KeyEvent.VK_V) keyState[BUTTON4] = b; 34 | else if(i == KeyEvent.VK_ENTER) keyState[ENTER] = b; 35 | else if(i == KeyEvent.VK_ESCAPE) keyState[ESCAPE] = b; 36 | else if(i == KeyEvent.VK_SPACE) keyState[SPACE] = b; 37 | else if(i == KeyEvent.VK_F4) keyState[F4] = b; 38 | } 39 | 40 | public static void update() { 41 | for(int i = 0; i < NUM_KEYS; i++) { 42 | prevKeyState[i] = keyState[i]; 43 | } 44 | } 45 | 46 | public static boolean isPressed(int i) { 47 | return keyState[i] && !prevKeyState[i]; 48 | } 49 | 50 | public static boolean isDown(int i) { 51 | return keyState[i]; 52 | } 53 | 54 | public static boolean anyKeyPress() { 55 | for(int i = 0; i < NUM_KEYS; i++) { 56 | if(keyState[i]) return true; 57 | } 58 | return false; 59 | } 60 | 61 | } 62 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/managers/Mouse.java: -------------------------------------------------------------------------------- 1 | /** 2 | * Mouse input handler class. 3 | */ 4 | 5 | package com.neet.managers; 6 | 7 | public class Mouse { 8 | 9 | public static int x; 10 | public static int y; 11 | 12 | public static int action; 13 | public static int previousAction; 14 | 15 | public static final int RELEASED = 0; 16 | public static final int PRESSED = 1; 17 | 18 | public static void update() { 19 | previousAction = action; 20 | } 21 | 22 | public static void setPosition(int i1, int i2) { 23 | x = i1; 24 | y = i2; 25 | } 26 | 27 | public static void setAction(int i) { 28 | action = i; 29 | } 30 | 31 | public static boolean isPressed() { 32 | return action == PRESSED && previousAction == RELEASED; 33 | } 34 | 35 | public static boolean isDown() { 36 | return action == PRESSED; 37 | } 38 | 39 | } -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/tilemap/Background.java: -------------------------------------------------------------------------------- 1 | package com.neet.tilemap; 2 | 3 | import java.awt.Graphics2D; 4 | import java.awt.image.BufferedImage; 5 | 6 | import javax.imageio.ImageIO; 7 | 8 | import com.neet.main.GamePanel; 9 | 10 | public class Background { 11 | 12 | private BufferedImage image; 13 | 14 | private double x; 15 | private double y; 16 | private double dx; 17 | private double dy; 18 | 19 | private int width; 20 | private int height; 21 | 22 | private double xscale; 23 | private double yscale; 24 | 25 | public Background(BufferedImage bi, double d) { 26 | image = bi; 27 | width = image.getWidth(); 28 | height = image.getHeight(); 29 | xscale = d; 30 | yscale = 0; 31 | } 32 | 33 | public Background(String s) { 34 | this(s, 0.1); 35 | } 36 | 37 | public Background(String s, double d) { 38 | this(s, d, d); 39 | } 40 | 41 | public Background(String s, double d1, double d2) { 42 | try { 43 | image = ImageIO.read( 44 | getClass().getResourceAsStream(s) 45 | ); 46 | width = image.getWidth(); 47 | height = image.getHeight(); 48 | xscale = d1; 49 | yscale = d2; 50 | } 51 | catch(Exception e) { 52 | e.printStackTrace(); 53 | } 54 | } 55 | 56 | public Background(String s, double ms, int x, int y, int w, int h) { 57 | try { 58 | image = ImageIO.read( 59 | getClass().getResourceAsStream(s) 60 | ); 61 | image = image.getSubimage(x, y, w, h); 62 | width = image.getWidth(); 63 | height = image.getHeight(); 64 | xscale = ms; 65 | yscale = ms; 66 | } 67 | catch(Exception e) { 68 | e.printStackTrace(); 69 | } 70 | } 71 | 72 | public void setPosition(double x, double y) { 73 | this.x = (x * xscale) % width; 74 | this.y = (y * yscale) % height; 75 | } 76 | 77 | public void setVector(double dx, double dy) { 78 | this.dx = dx; 79 | this.dy = dy; 80 | } 81 | 82 | public void setScale(double xscale, double yscale) { 83 | this.xscale = xscale; 84 | this.yscale = yscale; 85 | } 86 | 87 | public void setDimensions(int i1, int i2) { 88 | width = i1; 89 | height = i2; 90 | } 91 | 92 | public double getx() { return x; } 93 | public double gety() { return y; } 94 | 95 | public void update() { 96 | x += dx; 97 | while(x <= -width) x += width; 98 | while(x >= width) x -= width; 99 | y += dy; 100 | while(y <= -height) y += height; 101 | while(y >= height) y -= height; 102 | } 103 | 104 | public void draw(Graphics2D g) { 105 | 106 | g.drawImage(image, (int)x, (int)y, null); 107 | 108 | if(x < 0) { 109 | g.drawImage(image, (int)x + GamePanel.WIDTH, (int)y, null); 110 | } 111 | if(x > 0) { 112 | g.drawImage(image, (int)x - GamePanel.WIDTH, (int)y, null); 113 | } 114 | if(y < 0) { 115 | g.drawImage(image, (int)x, (int)y + GamePanel.HEIGHT, null); 116 | } 117 | if(y > 0) { 118 | g.drawImage(image, (int)x, (int)y - GamePanel.HEIGHT, null); 119 | } 120 | } 121 | 122 | } 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/tilemap/TileMap.java: -------------------------------------------------------------------------------- 1 | package com.neet.tilemap; 2 | 3 | import java.awt.AlphaComposite; 4 | import java.awt.Composite; 5 | import java.awt.Graphics2D; 6 | import java.awt.image.BufferedImage; 7 | import java.io.BufferedReader; 8 | import java.io.InputStream; 9 | import java.io.InputStreamReader; 10 | 11 | import com.neet.main.GamePanel; 12 | import com.neet.managers.Content; 13 | 14 | public class TileMap { 15 | 16 | // position 17 | private double x; 18 | private double y; 19 | 20 | // bounds 21 | private int xmin; 22 | private int ymin; 23 | private int xmax; 24 | private int ymax; 25 | 26 | private double tween; 27 | 28 | // map 29 | private int[][] collision; 30 | private int[][] map; 31 | private int[][] depth; 32 | private int tileSize; 33 | private int numRows; 34 | private int numCols; 35 | private int width; 36 | private int height; 37 | 38 | // tileset 39 | private BufferedImage[][] tileset; 40 | private int numTilesAcross; 41 | 42 | // tile types 43 | public static final int NORMAL = 0; 44 | public static final int BLOCKED = 1; 45 | public static final int LEDGE = 2; 46 | 47 | // drawing 48 | private int rowOffset; 49 | private int colOffset; 50 | private int numRowsToDraw; 51 | private int numColsToDraw; 52 | private float alpha; 53 | private boolean visible; 54 | private double visibleSpeed; 55 | 56 | public static final int BACKGROUND = 0; 57 | public static final int FOREGROUND = 1; 58 | 59 | public TileMap(int tileSize) { 60 | this.tileSize = tileSize; 61 | numRowsToDraw = GamePanel.HEIGHT / tileSize + 2; 62 | numColsToDraw = GamePanel.WIDTH / tileSize + 2; 63 | tween = 1; 64 | visible = true; 65 | alpha = 1; 66 | visibleSpeed = 0.05; 67 | } 68 | 69 | public void setVisible(boolean b) { 70 | visible = b; 71 | } 72 | 73 | public void loadTileset(String s) { 74 | tileset = Content.load(s, tileSize, tileSize); 75 | numTilesAcross = tileset[0].length; 76 | } 77 | 78 | public void loadTileset(BufferedImage[][] bi) { 79 | tileset = bi; 80 | numTilesAcross = tileset[0].length; 81 | } 82 | 83 | public void loadMap(String s) { 84 | 85 | try { 86 | 87 | InputStream in = getClass().getResourceAsStream(s); 88 | BufferedReader br = new BufferedReader( 89 | new InputStreamReader(in) 90 | ); 91 | 92 | // save file structure: 93 | // 94 | // 95 | // 96 | // 97 | // 98 | // 99 | // 100 | 101 | br.readLine(); 102 | br.readLine(); 103 | numCols = Integer.parseInt(br.readLine()); 104 | numRows = Integer.parseInt(br.readLine()); 105 | map = new int[numRows][numCols]; 106 | collision = new int[numRows][numCols]; 107 | depth = new int[numRows][numCols]; 108 | width = numCols * tileSize; 109 | height = numRows * tileSize; 110 | 111 | xmin = GamePanel.WIDTH - width; 112 | xmax = 0; 113 | ymin = GamePanel.HEIGHT - height; 114 | ymax = 0; 115 | 116 | String delims = "\\s+"; 117 | for(int row = 0; row < numRows; row++) { 118 | String line = br.readLine(); 119 | String[] tokens = line.split(delims); 120 | for(int col = 0; col < numCols; col++) { 121 | map[row][col] = Integer.parseInt(tokens[col]); 122 | collision[row][col] = Integer.parseInt(tokens[col]); 123 | } 124 | } 125 | for(int row = 0; row < numRows; row++) { 126 | String line = br.readLine(); 127 | String[] tokens = line.split(delims); 128 | for(int col = 0; col < numCols; col++) { 129 | collision[row][col] = Integer.parseInt(tokens[col]); 130 | } 131 | } 132 | for(int row = 0; row < numRows; row++) { 133 | String line = br.readLine(); 134 | String[] tokens = line.split(delims); 135 | for(int col = 0; col < numCols; col++) { 136 | depth[row][col] = Integer.parseInt(tokens[col]); 137 | } 138 | } 139 | 140 | } 141 | catch(Exception e) { 142 | e.printStackTrace(); 143 | } 144 | 145 | } 146 | 147 | public int getTileSize() { return tileSize; } 148 | public double getx() { return x; } 149 | public double gety() { return y; } 150 | public int getWidth() { return width; } 151 | public int getHeight() { return height; } 152 | public int getNumRows() { return numRows; } 153 | public int getNumCols() { return numCols; } 154 | 155 | public int getType(int row, int col) { 156 | if(row < 0 || row >= numRows || col < 0 || col >= numCols) return 0; 157 | return collision[row][col]; 158 | } 159 | public int getDepth(int row, int col) { 160 | if(row < 0 || row >= numRows || col < 0 || col >= numCols) return 0; 161 | return depth[row][col]; 162 | } 163 | 164 | public void setTween(double d) { tween = d; } 165 | public void setBounds(int i1, int i2, int i3, int i4) { 166 | xmin = GamePanel.WIDTH - i1; 167 | ymin = GamePanel.WIDTH - i2; 168 | xmax = i3; 169 | ymax = i4; 170 | } 171 | 172 | public void setPosition(double x, double y) { 173 | this.x += (x - this.x) * tween; 174 | this.y += (y - this.y) * tween; 175 | fixBounds(); 176 | colOffset = (int)-this.x / tileSize; 177 | rowOffset = (int)-this.y / tileSize; 178 | } 179 | 180 | public void setPositionImmediately(double x, double y) { 181 | this.x = x; 182 | this.y = y; 183 | fixBounds(); 184 | colOffset = (int)-this.x / tileSize; 185 | rowOffset = (int)-this.y / tileSize; 186 | } 187 | 188 | public void fixBounds() { 189 | if(x < xmin) x = xmin; 190 | if(y < ymin) y = ymin; 191 | if(x > xmax) x = xmax; 192 | if(y > ymax) y = ymax; 193 | } 194 | 195 | public void update() { 196 | 197 | if(visible && alpha < 1) { 198 | alpha += visibleSpeed; 199 | } 200 | else if(!visible && alpha > 0.5) { 201 | alpha -= visibleSpeed; 202 | } 203 | if(alpha > 1) alpha = 1; 204 | if(alpha < 0.5) alpha = 0.5f; 205 | 206 | } 207 | 208 | public void draw(Graphics2D g, int d) { 209 | 210 | g.setColor(java.awt.Color.BLACK); 211 | 212 | Composite original = g.getComposite(); 213 | if(d == 1) { 214 | g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, alpha)); 215 | } 216 | 217 | for(int row = rowOffset; row < rowOffset + numRowsToDraw; row++) { 218 | 219 | if(row >= numRows) break; 220 | 221 | for(int col = colOffset; col < colOffset + numColsToDraw; col++) { 222 | 223 | if(col >= numCols) break; 224 | if(map[row][col] == 0) continue; 225 | if(depth[row][col] != d) continue; 226 | 227 | int rc = map[row][col]; 228 | int r = rc / numTilesAcross; 229 | int c = rc % numTilesAcross; 230 | 231 | g.drawImage( 232 | tileset[r][c], 233 | (int)x + col * tileSize, 234 | (int)y + row * tileSize, 235 | null 236 | ); 237 | 238 | } 239 | 240 | } 241 | 242 | if(d == 1) { 243 | g.setComposite(original); 244 | } 245 | 246 | } 247 | 248 | } 249 | 250 | 251 | 252 | 253 | 254 | 255 | 256 | 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | 265 | 266 | 267 | 268 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/ui/Cursor.java: -------------------------------------------------------------------------------- 1 | package com.neet.ui; 2 | 3 | import java.awt.Graphics2D; 4 | import java.awt.geom.AffineTransform; 5 | import java.awt.image.BufferedImage; 6 | 7 | import com.neet.managers.Animation; 8 | import com.neet.managers.Mouse; 9 | 10 | public class Cursor { 11 | 12 | private Animation animation; 13 | private int width; 14 | private int height; 15 | 16 | private double angle; 17 | private AffineTransform tx; 18 | 19 | public Cursor(BufferedImage[] sprites, int frames) { 20 | animation = new Animation(); 21 | animation.setFrames(sprites, frames); 22 | width = sprites[0].getWidth(); 23 | height = sprites[0].getHeight(); 24 | tx = new AffineTransform(); 25 | } 26 | 27 | public void update() { 28 | angle += 0.1; 29 | if(angle > 3.14) angle = 0; 30 | animation.update(); 31 | } 32 | 33 | public void draw(Graphics2D g) { 34 | tx = new AffineTransform(); 35 | tx.translate(Mouse.x, Mouse.y); 36 | tx.rotate(angle); 37 | tx.translate(-width / 2, -height / 2); 38 | g.drawImage(animation.getImage(), tx, null); 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /crankyrampage/Cranky Rampage/Cranky Rampage/src/com/neet/ui/HUD.java: -------------------------------------------------------------------------------- 1 | /** 2 | * The ui for the game. 3 | * Shows stuff like player health, player lives, 4 | * current weapon, etc. 5 | */ 6 | 7 | package com.neet.ui; 8 | 9 | import java.awt.Color; 10 | import java.awt.GradientPaint; 11 | import java.awt.Graphics2D; 12 | 13 | import com.neet.entity.Player; 14 | import com.neet.entity.Weapon; 15 | import com.neet.managers.Content; 16 | import com.neet.managers.GameUtils; 17 | 18 | public class HUD { 19 | 20 | private Player player; 21 | 22 | private Color textBorderColor; 23 | private Color heartColor; 24 | private Color heartBorderColor; 25 | 26 | private GradientPaint textColor; 27 | private GradientPaint bottomTextColor; 28 | 29 | public HUD(Player player) { 30 | 31 | this.player = player; 32 | 33 | textBorderColor = new Color(32, 32, 32); 34 | heartColor = new Color(204, 44, 44); 35 | heartBorderColor = new Color(112, 32, 32); 36 | textColor = new GradientPaint(0, 11, Color.WHITE, 0, 12, Color.LIGHT_GRAY); 37 | bottomTextColor = new GradientPaint(0, 229, Color.WHITE, 0, 230, Color.LIGHT_GRAY); 38 | 39 | } 40 | 41 | public void draw(Graphics2D g) { 42 | 43 | g.setFont(Content.PS_FONT); 44 | 45 | // draw health 46 | g.drawImage(Content.HEART_HUD, 8, 8, null); 47 | GameUtils.drawOutlinedString( 48 | g, 49 | player.getHealth() + "/" + player.getMaxHealth() + "\u221e", 50 | 27, 51 | 16, 52 | textBorderColor, 53 | textColor 54 | ); 55 | g.setColor(heartBorderColor); 56 | g.drawRect(24, 19, 46, 2); 57 | if(player.getHealth() > 0) { 58 | g.setColor(heartColor); 59 | g.drawLine(25, 20, (int) (25 + 44.0 * player.getHealth() / player.getMaxHealth()), 20); 60 | } 61 | 62 | // draw rampage meter 63 | g.drawImage(Content.RAMPAGE_HUD, 75, 8, null); 64 | GameUtils.drawOutlinedString( 65 | g, 66 | "RAMPAGE LV." + player.getRampageLevel(), 67 | 93, 68 | 16, 69 | textBorderColor, 70 | textColor 71 | ); 72 | g.setColor(heartBorderColor); 73 | g.drawRect(90, 19, 100, 2); 74 | if(player.getRampage() > 0) { 75 | g.setColor(heartColor); 76 | g.drawLine(91, 20, (int) (91 + 98.0 * player.getRampage() / player.getMaxRampage()), 20); 77 | } 78 | 79 | // draw score 80 | GameUtils.drawOutlinedString( 81 | g, 82 | "SCORE: ", 83 | 210, 84 | 16, 85 | textBorderColor, 86 | textColor 87 | ); 88 | String score = Integer.toString(player.getScore()); 89 | int padding = 7 - score.length(); 90 | for(int i = 0; i < padding; i++) { 91 | score = "0" + score; 92 | } 93 | GameUtils.drawOutlinedString( 94 | g, 95 | score, 96 | 260, 97 | 16, 98 | textBorderColor, 99 | textColor 100 | ); 101 | 102 | // draw lives 103 | g.drawImage(Content.HEAD_HUD, 8, 220, null); 104 | GameUtils.drawOutlinedString( 105 | g, 106 | "x" + player.getLives(), 107 | 31, 108 | 234, 109 | textBorderColor, 110 | bottomTextColor 111 | ); 112 | 113 | // draw weapon 114 | Weapon w = player.getWeapon(); 115 | g.drawImage(Content.WEAPONS_HUD[w.getType()][0], 60, 223, null); 116 | int ammo = w.getAmmo(); 117 | String sammo = ""; 118 | if(ammo == -1) { 119 | sammo = "-"; 120 | } 121 | else { 122 | sammo = "x" + ammo; 123 | } 124 | GameUtils.drawOutlinedString( 125 | g, 126 | sammo, 127 | 78, 128 | 234, 129 | textBorderColor, 130 | bottomTextColor 131 | ); 132 | 133 | } 134 | 135 | } 136 | -------------------------------------------------------------------------------- /dragontale/Artifact.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/dragontale/Artifact.jar -------------------------------------------------------------------------------- /dragontale/Artifact.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/dragontale/Artifact.rar -------------------------------------------------------------------------------- /dragontale/Dragon Tale Tutorial P02.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/dragontale/Dragon Tale Tutorial P02.rar -------------------------------------------------------------------------------- /dragontale/Dragon Tale Tutorial P03.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/dragontale/Dragon Tale Tutorial P03.rar -------------------------------------------------------------------------------- /dragontale/Dragon Tale Tutorial P04.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/dragontale/Dragon Tale Tutorial P04.rar -------------------------------------------------------------------------------- /dragontale/Dragon Tale Tutorial P07.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/dragontale/Dragon Tale Tutorial P07.rar -------------------------------------------------------------------------------- /dragontale/Dragon Tale Tutorial P08.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/dragontale/Dragon Tale Tutorial P08.rar -------------------------------------------------------------------------------- /dragontale/Dragon Tale Tutorial p01.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/dragontale/Dragon Tale Tutorial p01.rar -------------------------------------------------------------------------------- /dragontale/Resources.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/dragontale/Resources.rar -------------------------------------------------------------------------------- /dragontale/ResourcesP2.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/dragontale/ResourcesP2.rar -------------------------------------------------------------------------------- /dragontale/TileMapEditor.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/dragontale/TileMapEditor.rar -------------------------------------------------------------------------------- /dragontale/collision.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/dragontale/collision.png -------------------------------------------------------------------------------- /dragontale/collision2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/dragontale/collision2.png -------------------------------------------------------------------------------- /dragontale/playersprites.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/dragontale/playersprites.gif -------------------------------------------------------------------------------- /libgdxasteroids/AsteroidsP18.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/libgdxasteroids/AsteroidsP18.rar -------------------------------------------------------------------------------- /libgdxasteroids/Hyperspace Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/libgdxasteroids/Hyperspace Bold.ttf -------------------------------------------------------------------------------- /libgdxasteroids/sounds.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/libgdxasteroids/sounds.rar -------------------------------------------------------------------------------- /mousetutorial/MouseTutorial.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/foreignguymike/legacyYTtutorials/939ea2116ab54a7a99c93562976ab19172619555/mousetutorial/MouseTutorial.rar --------------------------------------------------------------------------------