diff --git a/Eskape graffat/Box3-20211008-174519.piskel b/Eskape graffat/Box3-20211008-174519.piskel new file mode 100644 index 0000000000000000000000000000000000000000..ce761d89a4b2cbbfbc5040425faffc5ec056b9dd --- /dev/null +++ b/Eskape graffat/Box3-20211008-174519.piskel @@ -0,0 +1 @@ +{"modelVersion":2,"piskel":{"name":"Box3","description":"Box(object)","fps":12,"height":32,"width":32,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAR0lEQVRYhWNgGAWjYBRgAbe29PynFSbaASdmpFMdjzpg1AHDywH9lUlY6VEHjDpg5DiAHDzqgFEHjDqAJAcMaJtwFIwCegIANeJQkBo2K2gAAAAASUVORK5CYII=\"}]}"],"hiddenFrames":[""]}} \ No newline at end of file diff --git a/Eskape graffat/Box3.png b/Eskape graffat/Box3.png new file mode 100644 index 0000000000000000000000000000000000000000..a6019d072bad274ad545b6312ec0da287e0dc53c Binary files /dev/null and b/Eskape graffat/Box3.png differ diff --git a/Eskape graffat/Enemy1-20211008-174013.piskel b/Eskape graffat/Enemy1-20211008-174013.piskel new file mode 100644 index 0000000000000000000000000000000000000000..67db5379dc17a2726395596d1f8d2f36ee6fcde1 --- /dev/null +++ b/Eskape graffat/Enemy1-20211008-174013.piskel @@ -0,0 +1 @@ +{"modelVersion":2,"piskel":{"name":"Enemy1","description":"","fps":12,"height":32,"width":32,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAA0ElEQVRYhe2SMQrDIBSG3yIGhEDMkDVjTpADZMuJCl5AyJwhq3cLCIWc4e/QGFKxUKixQ/3gx+fi+9RHlMlkItExhp5zuLXnHMmbn9Mxlk5gB17Scp9nnJNcYDMGmzG/EyAiqoYJ1TClbe6avkuMHv5wvaQeF9TjcqkAET2HjIiwKoVVqUPAah0UcGLRBHb8A0EU/garNazWcQWKooC/t1ofrxJKVAHyXsDdMqVAkEuH7xNKIVAKAb/OAlngfwQaKdFICb9Owq1tEUoygUzmWx6Ejuis/PR3SgAAAABJRU5ErkJggg==\"}]}"],"hiddenFrames":[""]}} \ No newline at end of file diff --git a/Eskape graffat/Enemy1.png b/Eskape graffat/Enemy1.png new file mode 100644 index 0000000000000000000000000000000000000000..b3ff4aeb5a4d5c4112a6246a36e5823cb35f2ac0 Binary files /dev/null and b/Eskape graffat/Enemy1.png differ diff --git a/Eskape graffat/PlayerHero-20211008-170536.piskel b/Eskape graffat/PlayerHero-20211008-170536.piskel new file mode 100644 index 0000000000000000000000000000000000000000..9e2d234c03162ddc2cd649d9a5a242df2e491783 --- /dev/null +++ b/Eskape graffat/PlayerHero-20211008-170536.piskel @@ -0,0 +1 @@ +{"modelVersion":2,"piskel":{"name":"PlayerHero","description":"The main person","fps":19,"height":32,"width":32,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":17,\"chunks\":[{\"layout\":[[0],[1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAiAAAAAgCAYAAAArFsM1AAACkUlEQVR4nO3cwWnbUBzHcZ2EDp7CG2SDTtJBvIAW0EzdIBMkweAee3Chh9dLbGwj2Yktvf9L3ucLgggKn5+ithZKadNIkiRJkiRJkiRJkiRJkiRJS/X37SmdHdsfqQabz+fz+fxa/SI27N+e0v5lfcT//f6ZbUCkzefz+Xx+rX74hj9tmy6PGmw+n8/n82v1S9nQ7IYh7YYhrVartBuGrAMibT6fz+fza/WL2HAYcDhqsfl8Pp/Pr9UvYoMHED6fz+fz6/JL2dA8t216jvj5T7DN5/P5fH6tftiGX22brh2RdrS/pD2Hv39ZP7TR9X/t6+fz+d/XL2HD0v7kgJOnoVvH7Ha0n8Oew9+/rNMjH8JzXf+9O+a8/ns2zHH9l+5ndiz1/f/ohjl//9+zYe4/f2Mbcvofve4l/c9sWPLvv4j7P7Yh0r9V9OfftQ25/ONrl7EB274/Qq+bTXrdbFLTNLP9jGjKjvZz2HP4j74BcP1f+/r5fP7380vYkMtvtn2ftn0/+k14/yWX2Gz4NTvaX9rm8/l8Pj/q8+/Whhx+c3iyGTu2fZ+6rjsDL8+XsqP9pW0+n8/n80vdkMO/OeD9NcxpWR9ALv2cDyBL2nw+n8/nl7ph6c//s668glm8G6+gQvxcNp/P5/P5pW3I6TfN+b9qPf06tx3t57b5fD6fz586z70hwvcAEmTz+Xw+nz91nnuDB5BAv8abz+fz+fx4v4QNHkAC/RpvPp/P5/Pj/RI2eAAJ9Gu8+Xw+n8+P90vY4AEk0K/x5vP5fD4/3i9hQ36/67rjfzpy+nVuO9rPbfP5fD6fP3Wee0OE36SJcttj5zn93Dafz+fz+QczekOEL0mSJEmSJEmSJEmSJEmSJB37D2wBuS+/NPl1AAAAAElFTkSuQmCC\"}]}"],"hiddenFrames":[""]}} \ No newline at end of file diff --git a/Eskape graffat/PlayerHero.png b/Eskape graffat/PlayerHero.png new file mode 100644 index 0000000000000000000000000000000000000000..f12436f4c21db46d83b98fe27ea9cb9323a30a5e Binary files /dev/null and b/Eskape graffat/PlayerHero.png differ diff --git a/Eskape graffat/PlayerHero1.png b/Eskape graffat/PlayerHero1.png new file mode 100644 index 0000000000000000000000000000000000000000..db1ae6137a692bcee5aae7e07a6e54cfd8fe2e55 Binary files /dev/null and b/Eskape graffat/PlayerHero1.png differ diff --git a/Eskape graffat/background1.piskel b/Eskape graffat/background1.piskel new file mode 100644 index 0000000000000000000000000000000000000000..01fe99dbc3a914e109fb5e1aa3d7bce35c7cde11 --- /dev/null +++ b/Eskape graffat/background1.piskel @@ -0,0 +1 @@ +{"modelVersion":2,"piskel":{"name":"background1","description":"background","fps":12,"height":32,"width":32,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADy0lEQVRYR4XXIU9dQRAFYJ5DIpFI0hrSGtIa0hrSutaQ9o8ikUgkEolE4l5zJvluT7cv7U1e7r17d2dnzpw5s2/39s2b/dE/ruPj4/ma++vr63Y3dnp6OuNPT0//MjPrcp2cnBw9Pz/PPdfu/bt3e8bbgrEYX8fzLQZeXl7md+i7MRvHTuZaF8fzvPsfAry2MIY41aj0huZkTc8/OzvbkLq4uPiNwAoxw22AA4ciawSkqcesjV2IBYG8Twrizf39/UASL5Mj0GVB51705rXz5+fns9acbBJu5B1X8px5Gc999/XLl71cIkYbiMEVXhxAvASQeaJrTnnmTJN6HPj86dM4ECOPj4+btyIXfXOgHQ0SuTI/xqGXdzlfA8v8LQU/f/zYN2zZcN2McVDm/fr6ehzOBSVrM5bnJl2cw4Fsbt0g0KWGtZmU38PDw1a/jMbw3d3dGOw8gzvQstO2sy7vHB8SxgHQNdy8FVXnUoQZQzJkzJjIIScdbEJsHPj+7dsggEB5vrq6Gi8TXe6Ik/csPkQozpjD8fXeHBkhCgKkMQP5xZiNaUEcZFy5qQ4cSuTQbN0Q+aolcW50IIaU0uXl5eQ3kwMvpzI5G8mjZ/mMU8q5N2wOHBKz3ccPH/aiXktJhJzIu9TgQSPTouS5FVEv6LHpBcoCWbJJEEkFJLI4YOMWm+aNMmvVXGVb/luo/ipDokJgwJZ7HCLXcYiktnYgbKPXJG89GA4oQ/Ak78hEsTJGdm9ubo5ub28bxe2ZUHWkAlqrwX4bCYkKRoeMSNjkinNpXLkQj6ppOGuuW9xwxtiQsL3DYFqQDalhNsxzi9OqFcinv+iyBCrvOLeVIWHRYuWfPjSkhOhQx+u8d0WFN3E+vDFOLScFuhXvSWX3cCLUkgzOpAr5EE56ukFJr7LO+jkP2DAfOkKbrV1OpESmu2X3e4HFZiPwRwp0w84ltZP/NiotSNTHtp5HqFrKfZfqOZBQQmIjDZmUnFHJQxtiO8PNFWhqzetRjR5MCrKpkusoQO+41WpHI5RgCwPonXr6XIg3eshGwv6z0KQEZd9b5/GABCMuBznvf0AjkeftUErFSG8fSGwCgRjnJKjNQWL2uj1rZhG56MkcSJyKlZn67JxrOn1k17g6Ig4iHqQE5aBLZ5Ka7VScQURcvY4zyOSg0nqAP9LgLJFIlTg5bw2Ig4OABWDv+ifJBCbfOkKVAHKkTDvPt1ZTFWVshKh7QX+w0drZusev31QNTekeI8XNn+kF/py2oCQd8tUSq2NqzRBrrej/AlKi9LoT4tAveIjHdeD+vVoAAAAASUVORK5CYII=\"}]}"]}} \ No newline at end of file diff --git a/Eskape graffat/background1.png b/Eskape graffat/background1.png new file mode 100644 index 0000000000000000000000000000000000000000..e468d7cc4df351624d6ba727c77915746bc169ef Binary files /dev/null and b/Eskape graffat/background1.png differ diff --git a/Eskape graffat/floor.piskel b/Eskape graffat/floor.piskel new file mode 100644 index 0000000000000000000000000000000000000000..fbf4b4e3b361369cb13c4b7b18538bb129cd6d27 --- /dev/null +++ b/Eskape graffat/floor.piskel @@ -0,0 +1 @@ +{"modelVersion":2,"piskel":{"name":"floor","description":"background art","fps":12,"height":32,"width":32,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAABGElEQVRYR+2XQWrDMBBFLQIGg8CQVei6dF26LjlAz9pj5AA9QA9QyCpgCASCyxM8MzHZezMDRrY08+frSRuXbuMoG/fv0kASSAJJIAkkgSSQBJJAEkgC2xP4qHV+r7X7u926utu13wTG3+u1jTzT/d4ewzm+mT/0/ZJnDnrMx4h1apev/X5+HYZmgLAxxYhrav1uY004kk+tesyjj64arpNT3oahGbAxBVGAtbj79c7i2nq3kZDN0fuZpsVM4QhEFR1yLN/n8wNCixW2uSYlSe3pclkoeETmSYf58tL3s7umEFESNAOZz3F8uCPi926YH93SLAY6z6Icx3H20kWcUQCn7CgGc5KjHhPPmqBDnmu+22shsNVf8j+U7sBWs/66NgAAAABJRU5ErkJggg==\"}]}"]}} \ No newline at end of file diff --git a/Eskape graffat/floor.png b/Eskape graffat/floor.png new file mode 100644 index 0000000000000000000000000000000000000000..83a2cfee48a38286ed65e539ab040727970280f1 Binary files /dev/null and b/Eskape graffat/floor.png differ diff --git a/Eskape graffat/skull_logo.piskel b/Eskape graffat/skull_logo.piskel new file mode 100644 index 0000000000000000000000000000000000000000..8b92b1bbaa8fc3d54b1b388ea09d33212137d8f1 --- /dev/null +++ b/Eskape graffat/skull_logo.piskel @@ -0,0 +1 @@ +{"modelVersion":2,"piskel":{"name":"floor","description":"background art","fps":12,"height":32,"width":32,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAtElEQVRYR+2Vuw2AMAxEyRKUbMS0bETJEqAUlk5W4k9ShOKoANnn84uTlG3xUxbX32ggReDYzzeyZPdzhXVDgVjYE8/E1mZMA1kxpBPNdQ1gxyIq/7zvaqjGWNT+b6B2gR1bRHTHmlBrgF0CPQMojpj1O+ZPG9BD1iMjcdMEBKkIavze0njdu9uwta1aRbPYUTd0ECHSiAHvsKKBKQJLLqNI0dGY1BCOFrHyaIAESIAESIAEPsM6zCFtsXCxAAAAAElFTkSuQmCC\"}]}"]}} \ No newline at end of file diff --git a/Eskape graffat/skull_logo.png b/Eskape graffat/skull_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..774a5ad450900c5efb087e16f5fbe878854699ff Binary files /dev/null and b/Eskape graffat/skull_logo.png differ diff --git a/Eskape/Eskape.sln b/Eskape/Eskape.sln new file mode 100644 index 0000000000000000000000000000000000000000..73504281c626c3421a907f63aea17be83df0d45a --- /dev/null +++ b/Eskape/Eskape.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.31624.102 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Eskape", "Eskape\Eskape.csproj", "{B7EF3412-4F45-4B03-A087-96D61F6A2600}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {B7EF3412-4F45-4B03-A087-96D61F6A2600}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {B7EF3412-4F45-4B03-A087-96D61F6A2600}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B7EF3412-4F45-4B03-A087-96D61F6A2600}.Release|Any CPU.ActiveCfg = Release|Any CPU + {B7EF3412-4F45-4B03-A087-96D61F6A2600}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {225DE9E5-DC87-4140-9C55-15EDD7A38A00} + EndGlobalSection +EndGlobal diff --git a/Eskape/Eskape/Content/Box3.png b/Eskape/Eskape/Content/Box3.png new file mode 100644 index 0000000000000000000000000000000000000000..a6019d072bad274ad545b6312ec0da287e0dc53c Binary files /dev/null and b/Eskape/Eskape/Content/Box3.png differ diff --git a/Eskape/Eskape/Content/Enemy1.png b/Eskape/Eskape/Content/Enemy1.png new file mode 100644 index 0000000000000000000000000000000000000000..b3ff4aeb5a4d5c4112a6246a36e5823cb35f2ac0 Binary files /dev/null and b/Eskape/Eskape/Content/Enemy1.png differ diff --git a/Eskape/Eskape/Content/PlayerHero.png b/Eskape/Eskape/Content/PlayerHero.png new file mode 100644 index 0000000000000000000000000000000000000000..f12436f4c21db46d83b98fe27ea9cb9323a30a5e Binary files /dev/null and b/Eskape/Eskape/Content/PlayerHero.png differ diff --git a/Eskape/Eskape/Content/PlayerHero1.png b/Eskape/Eskape/Content/PlayerHero1.png new file mode 100644 index 0000000000000000000000000000000000000000..1e35f2f1e0d0e48f63c5085882756eac30862abb Binary files /dev/null and b/Eskape/Eskape/Content/PlayerHero1.png differ diff --git a/Eskape/Eskape/Content/background1.png b/Eskape/Eskape/Content/background1.png new file mode 100644 index 0000000000000000000000000000000000000000..e468d7cc4df351624d6ba727c77915746bc169ef Binary files /dev/null and b/Eskape/Eskape/Content/background1.png differ diff --git a/Eskape/Eskape/Content/floor.png b/Eskape/Eskape/Content/floor.png new file mode 100644 index 0000000000000000000000000000000000000000..83a2cfee48a38286ed65e539ab040727970280f1 Binary files /dev/null and b/Eskape/Eskape/Content/floor.png differ diff --git a/Eskape/Eskape/Content/kentta1.txt b/Eskape/Eskape/Content/kentta1.txt new file mode 100644 index 0000000000000000000000000000000000000000..383a616a8f818980cbc73bf9654a45206de09ae2 --- /dev/null +++ b/Eskape/Eskape/Content/kentta1.txt @@ -0,0 +1,17 @@ + * + ## + + * B* + ## ## + + * B B * + ## ## ## + + * B* *B * + ## ## ## ## + + * * B* * + ## ## ## ## ## + + N E +###################### diff --git a/Eskape/Eskape/Content/maali.wav b/Eskape/Eskape/Content/maali.wav new file mode 100644 index 0000000000000000000000000000000000000000..d59487214e456fc654096d0f3284661051590b3d Binary files /dev/null and b/Eskape/Eskape/Content/maali.wav differ diff --git a/Eskape/Eskape/Content/norsu.png b/Eskape/Eskape/Content/norsu.png new file mode 100644 index 0000000000000000000000000000000000000000..cd22e5b3ad58e4a2a3825b313054cbec58e3c788 Binary files /dev/null and b/Eskape/Eskape/Content/norsu.png differ diff --git a/Eskape/Eskape/Content/skull_logo.png b/Eskape/Eskape/Content/skull_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..774a5ad450900c5efb087e16f5fbe878854699ff Binary files /dev/null and b/Eskape/Eskape/Content/skull_logo.png differ diff --git a/Eskape/Eskape/Content/tahti.png b/Eskape/Eskape/Content/tahti.png new file mode 100644 index 0000000000000000000000000000000000000000..12f4398771471bc9a704358049b6d6dd07f9b974 Binary files /dev/null and b/Eskape/Eskape/Content/tahti.png differ diff --git a/Eskape/Eskape/Eskape.cs b/Eskape/Eskape/Eskape.cs new file mode 100644 index 0000000000000000000000000000000000000000..0f8737015a318744c7e4edf40773c16f736ecf93 --- /dev/null +++ b/Eskape/Eskape/Eskape.cs @@ -0,0 +1,150 @@ +using Jypeli; +using Jypeli.Assets; +using Jypeli.Controls; +using Jypeli.Widgets; +using System; +using System.Collections.Generic; + +public class Eskape : PhysicsGame +{ + private const double NOPEUS = 150; + private const double HYPPYNOPEUS = 900; + private const int RUUDUN_KOKO = 20; + + private PlatformCharacter pelaaja1; + + private Image pelaajanKuva = LoadImage("PlayerHero1.png"); + private Image enemyPic = LoadImage("Enemy1.png"); + private Image tahtiKuva = LoadImage("tahti.png"); + private Image boxPic = LoadImage("Box3.png"); + private Image floorPic = LoadImage("floor.png"); + private Image taustakuva = LoadImage("background1.png"); + + + private SoundEffect maaliAani = LoadSoundEffect("maali.wav"); + + public override void Begin() + { + Gravity = new Vector(0, -1500); + + LuoKentta(); + LisaaNappaimet(); + + Camera.Follow(pelaaja1); + Camera.ZoomFactor = 1.8; + Camera.StayInLevel = true; + + MasterVolume = 0.5; + } + + private void LuoKentta() + { + TileMap kentta = TileMap.FromLevelAsset("kentta1.txt"); + kentta.SetTileMethod('#', LisaaTaso); + kentta.SetTileMethod('*', LisaaTahti); + kentta.SetTileMethod('N', LisaaPelaaja); + kentta.SetTileMethod('E', LisaaVihollinen); + kentta.SetTileMethod('B', LisaaLaatikko); + kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); + Level.CreateBorders(); + Level.Background.Image = taustakuva; + Level.Background.TileToLevel(); + } + + private void LisaaTaso(Vector paikka, double leveys, double korkeus) + { + PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); + taso.Position = paikka; + taso.Image = floorPic; + taso.Tag = "floor"; + Add(taso); + } + + private void LisaaTahti(Vector paikka, double leveys, double korkeus) + { + PhysicsObject tahti = PhysicsObject.CreateStaticObject(leveys, korkeus); + tahti.IgnoresCollisionResponse = true; + tahti.Position = paikka; + tahti.Image = tahtiKuva; + tahti.Tag = "tahti"; + Add(tahti); + } + + private void LisaaPelaaja(Vector paikka, double leveys, double korkeus) + { + pelaaja1 = new PlatformCharacter(leveys, korkeus); + pelaaja1.Position = paikka; + pelaaja1.Mass = 4.0; + pelaaja1.Image = pelaajanKuva; + pelaaja1.Weapon = new AssaultRifle(0, 0); + pelaaja1.Weapon.Ammo.Value = 999; + pelaaja1.Weapon.ProjectileCollision = AmmusOsui; + AddCollisionHandler(pelaaja1, "tahti", TormaaTahteen); + Add(pelaaja1); + } + + private void LisaaVihollinen(Vector paikka, double leveys, double korkeus) + { + // tähän tulee vihollinen + PhysicsObject enemy1 = new PhysicsObject(leveys, korkeus); + enemy1.Position = paikka; + enemy1.Image = enemyPic; + Add(enemy1); + } + + private void LisaaLaatikko(Vector paikka, double leveys, double korkeus) + { + // tähän tulee vihollinen + PhysicsObject box = new PhysicsObject(leveys, korkeus); + box.Position = paikka; + box.Image = boxPic; + Add(box); + } + + private void LisaaNappaimet() + { + Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); + Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); + + Keyboard.Listen(Key.Left, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, -NOPEUS); + Keyboard.Listen(Key.Right, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, NOPEUS); + Keyboard.Listen(Key.Up, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, HYPPYNOPEUS); + Keyboard.Listen(Key.RightControl, ButtonState.Down, AmmuAseella, "Ammu", pelaaja1); + + PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); + } + + void AmmuAseella(PlatformCharacter pelaaja) + { + PhysicsObject ammus = pelaaja.Weapon.Shoot(); + + if (ammus != null) + { + ammus.Size *= 3; + // ammus.Image = ... + ammus.MaximumLifetime = TimeSpan.FromSeconds(2.0); + } + } + + void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) + { + ammus.Destroy(); + } + private void Liikuta(PlatformCharacter hahmo, double nopeus) + { + hahmo.Walk(nopeus); + } + + private void Hyppaa(PlatformCharacter hahmo, double nopeus) + { + hahmo.Jump(nopeus); + } + + private void TormaaTahteen(PhysicsObject hahmo, PhysicsObject tahti) + { + maaliAani.Play(); + MessageDisplay.Add("Keräsit tähden!"); + tahti.Destroy(); + } +} + diff --git a/Eskape/Eskape/Eskape.csproj b/Eskape/Eskape/Eskape.csproj new file mode 100644 index 0000000000000000000000000000000000000000..b22fce8875b4048a9a14a83f278ee329a3bf78e2 --- /dev/null +++ b/Eskape/Eskape/Eskape.csproj @@ -0,0 +1,31 @@ +<Project Sdk="Microsoft.NET.Sdk"> + + <PropertyGroup> + <OutputType>WinExe</OutputType> + <TargetFramework>net5.0</TargetFramework> + <PublishReadyToRun>false</PublishReadyToRun> + <TieredCompilation>false</TieredCompilation> + </PropertyGroup> + + <ItemGroup> + <PackageReference Include="Jypeli.NET" Version="10.*" /> + <PackageReference Include="Jypeli.FarseerPhysics.NET" Version="1.0.*" /> + </ItemGroup> + + <ItemGroup> + <None Update="Content\kentta1.txt"> + <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> + </None> + <None Update="Content\maali.wav"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </None> + <None Update="Content\norsu.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </None> + <None Update="Content\tahti.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </None> + </ItemGroup> + +</Project> + diff --git a/Eskape/Eskape/Ohjelma.cs b/Eskape/Eskape/Ohjelma.cs new file mode 100644 index 0000000000000000000000000000000000000000..3cf9c46c194bea0f7352780b9da69200e61f5ad7 --- /dev/null +++ b/Eskape/Eskape/Ohjelma.cs @@ -0,0 +1,25 @@ +#region Using Statements +using System; +using System.Collections.Generic; +using System.Linq; + +#endregion + +namespace Program +{ + /// <summary> + /// The main class. + /// </summary> + public static class Program + { + /// <summary> + /// The main entry point for the application. + /// </summary> + [STAThread] + static void Main() + { + using (var game = new Eskape()) + game.Run(); + } + } +}