Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • tie/ohj1/2023s/ohj1ht
  • ojkoykka/ohj1ht
  • lemaline/ohj-1-ht-leo
  • altuoles/ohj1ht
  • ajviitan/ohj1ht
  • esahakki/ohj1ht
  • olieemka/ohj1ht
  • keinkont/ohj1ht
  • jejojuha/ohj1ht
  • parmisee/sidotut-sielut
  • wkoskine/kolikkopeli
  • aimaasko/ohj1ht
  • rapalare/ohj1ht
  • arsepiip/ohj1ht
  • tuliat/ohj1ht
  • khlaine/ohj1ht
  • thesanos/map-harkka
  • taanlaak/ohj1ht
  • avkesti/ohj1ht
  • siniseyt/ohj1ht
  • vesal/ohj1hta
  • anhahyvo/ohj1ht
  • jcvehman/leppakerttu
  • kmjaaske/ohj1ht
  • aapiippu/ohj1ht
  • reelmann/ohj1ht
  • ijkurki/ohj1ht
  • ttkelaw/ohj1ht
  • koallaht/ohj1ht
  • vesal/ohj1ht3
  • pasaikon/ohj-1-ht
  • piipaisa/ohj1ht
  • hkoktany/ohj1ht
  • pamahete/ohj1ht
  • hvriikon/ohj1ht
  • uekolehm/ohj1ht
  • njsaari/ohj1ht
  • lampiemw/rallipeli
  • tkmeskan/ohj1ht
  • aurmirle/ohj1ht
  • grohju/ohj1ht
  • awsorri/ohj1ht
  • jamamokk/ohj1ht
  • sakksama/ohj1ht
  • levalaaa/ohj1ht
  • jpjturtu/ohj1ht
  • vvvkorhv/ohj1ht
  • torkalju/s2023ohj1ht
  • koskelju/ohj1ht
  • eimaki/ohj1ht
  • matuhakk/kauppakassi
  • ollvilhi/ohj1ht
  • nktuorin/ohj1ht
  • elpeviva/ohj1ht
  • kumpuvex/ohj-1-ht
  • mvpalola/ohj1ht
  • pasonnpe/ohj1ht
  • tornhale/ohj1ht
  • iljitesa/ohj1ht
  • ruusii/ohj1ht
  • javirjo/ohj1ht
  • katahe/ohj1ht
  • niktapli/ohj1ht
  • vaalanti/ohj1ht
  • eijuhokk/ohj1ht
  • ricroos/ohj1ht
  • jjmalizy/ohj1ht
  • kirskaxt/ohj1ht
  • haemhaat/ohj1ht
  • korhanjo/ohj1ht
  • runnjuta/ohj1ht
  • jueeasik/ddr-tetris
  • kojalewa/ohj1ht
  • vejokeso/ohj1ht
  • koskeltu/ohj1ht
  • eorhala/ohj1ht
  • kiukklju/ohj1ht
  • oneemasa/ohj1ht
  • kylmsama/ohj1ht
  • mikrkonk/ohj1ht
  • viikarma/ohj1ht
  • jesvilju/ohj1ht
  • viekataj/ohj1ht
  • eerikano/ohj1ht
  • vevejuha/ohj1ht
  • ekpakkal/ohj1ht
  • otjuahos/ohj1ht
  • rajanije/ohj1ht
  • rintahe/ohj1ht
  • mpaavola/ohj1ht
  • lalaajal/ohj1ht
  • tevesiku/ohj1ht
  • malmente/ohj1ht
  • lahdelai/ohj1ht
  • lehtlrvt/syksy-2023-project
  • tuilkark/ohj1ht
  • shurmeri/ohj1ht
  • npura/ohj1ht
  • ljkarna/ohj1ht
  • pejokarj/ohj1ht
  • hytosama/ohj1ht
  • arpevile/ohj1ht
  • tspuhari/ohj1ht
  • meematma/ohj1ht
  • msvekkel/ohj1ht
  • lskumpus/temppelirosvo
  • lskumpus/ohj1ht
  • parikkp/ohj1ht
  • oopummww/sahkonhintalaskuri
  • emjowebe/ohj1ht
  • esolin/ohj1ht
  • anjakinn/ohj1ht
  • eronenve/ohj1ht
  • kautuoee/sijottajat
  • ammarttu/seikkailupeli
  • jhkortww/ohj1ht
  • tiainela/ohj1ht
  • lajoraiv/avaruushyokkaajat
  • vjkoski/ohj1ht
  • limmakyn/ohj1ht
  • kreenk/ohj1ht
  • tynnijtt/ohj1ht
  • jovesaar/ohj1ht
  • jmsutizy/ohj-1-harjoitustyo
  • veijantt/asteroidpossu
  • krseppen/ohj1ht
  • sjlihava/ohj1ht
  • kmpaanan/ohj1ht
  • emelmann/ohj1ht
  • sasavoli/jaatelokesa
  • alarojal/take-them-all
  • huhtjyil/pysakointisimulaattori
  • ttaho/ohj1ht
  • koivulmi/omenat
  • tosajaas/ohj1ht
  • sievanee/ohj1ht
  • vavavima/ohj1ht
  • adjotuhk/ohj1ht
  • heijoshe/ohj1ht
  • sammakko/kohti-aaretonta
  • anneveka/kohti-aaretonta
  • piippoje/lentokonepeli
  • emalmale/frog-jump
  • niemlexy/ohj1ht
  • jasajuyl/ohj1ht
  • peoswasa/pirtin-puolustus
  • mzitting/ohj1ht
  • heikkiaa/ohj1ht
  • mattarma/ohj-1-ht
  • kiiskiev/ohj1ht
  • noelleht/ohj1ht
  • vtsarkka/ohj1ht
  • majuvaaj/ohj-1-ht
  • eiekuiri/ohj1ht2
  • moilanii/ohj1ht
  • jpmoilan/ohj1ht
  • lipavaxy/lipavaxy
  • varauhal/ohj1ht
  • seastrom/ohj1ht3
  • jlinnik/metsakissa
  • mipeolli/ohj1ht
  • majugroh/ohj1ht
  • aijaeeus/ohj1ht
  • anjopitk/ohj1ht
  • ulentika/ohj1ht
  • paajooni/ohj1ht
  • avfresta/ohj-1-harjoitustyo-peli
  • jueesark/ohj1ht
  • sulasaal/ohj1ht
  • tervomhj/ohj1ht
  • pelkkezz/ohj1ht
  • otjalouk/hoylaajanpaluu
  • jupeupol/ohj1ht
  • jojuhemu/ilmailusaatiedotus
  • karnlazy/ohj1ht
  • tornbeev/eetu-t-ht
  • makelkjt/ohj1ht
  • masakoiv/ohj1ht
  • jerantat/ohj1ht
  • reevirta/ohj1ht
  • junijuku/ohj1ht
  • oaaltola/ohj1ht
  • renmikta/ohj1ht
  • kuntekys/ohj1ht
  • emhaauha/ohj1ht
  • lijovest/ohj1ht
  • sjuskivs/ohj1ht
  • joohirvo/ohj1ht
  • rekallio/ohj1ht
  • tuzuneru/ohj1ht
  • jacheryy/vapaa-maailma-ht
  • salompxs/ohj1ht
  • vamavatu/peliprojekti
  • mikalese/project-color
  • vimimalu/ohj1ht
  • vehartzz/ohj1ht
  • anlutuho/vilsun-seikkailu
  • saadmikk/ohj-1-ht-2
  • topevoud/ohj1ht
  • mvhonkzz/kana-kana
  • kopperp/ohj1ht
  • jutalapp/ohj1ht
  • jejajoko/ohj1ht
  • suholaju/Webbi
  • askuisyy/ohj1ht
  • samjaajo/ohj1ht
  • penttu/ohj1ht
  • ekkoykka/ohj1ht
  • tamakark/ohj1ht
  • ckbboman/ohj1ht
  • jomuhaat/ohj-1-ht
  • tslahtin/ohj1ht
  • salmatel/ohj1ht
  • linnahee/pelastapeikoilta
  • pirhonmx/ohj1ht
  • perkem/ohj1ht
  • ssniinim/ohj-1-ht
  • nikaleko/ajope
  • heijohra/ohj1ht
  • kaikkoju/ohj1ht
  • rekanyys/ohj1ht
  • nijomagg/ohj1ht
  • solismpa/ohj1ht
  • enhekorp/ohj1ht
  • myahsumy/h-tohj-1
  • nynalynn/ohj1ht
  • iitojopi/ohj1ht
  • harmjosa/ohj1ht
  • joalsaun/ohj-1-ht
  • jimsebna/ohj1ht
  • jcmbergg/ohj1ht
  • vemaveij/ohj-1-ht
232 results
Show changes
Commits on Source (9)
Showing
with 265 additions and 0 deletions
# Default ignored files
/shelf/
/workspace.xml
# Rider ignored files
/projectSettingsUpdater.xml
/modules.xml
/contentModel.xml
/.idea.Harjoitustyo.iml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding" addBOMForNewFiles="with BOM under Windows, with no BOM otherwise" />
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="UserContentModel">
<attachedFolders />
<explicitIncludes />
<explicitExcludes />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
</component>
</project>
\ No newline at end of file

Microsoft Visual Studio Solution File, Format Version 12.00
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HyttysPeli", "HyttysPeli\HyttysPeli.csproj", "{EE8974F7-0971-448C-8A48-234F4E003BDF}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{EE8974F7-0971-448C-8A48-234F4E003BDF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{EE8974F7-0971-448C-8A48-234F4E003BDF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EE8974F7-0971-448C-8A48-234F4E003BDF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EE8974F7-0971-448C-8A48-234F4E003BDF}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
EndGlobal
Harjoitustyo/HyttysPeli/Content/ampiainen.png

373 KiB

Harjoitustyo/HyttysPeli/Content/hyttynen (2).png

505 KiB

Harjoitustyo/HyttysPeli/Content/hyttyskarkoite.png

386 KiB

using System;
using System.Collections.Generic;
using Jypeli;
using Jypeli.Assets;
using Jypeli.Controls;
using Jypeli.Widgets;
namespace HyttysPeli;
/// @author salmatel
/// @version 12.11.2023
/// <summary>
///
/// </summary>
public class HyttysPeli : PhysicsGame
{
public override void Begin()
{
MasterVolume = 0.05;
Level.Background.Color = Color.Green;
BoundingRectangle alaosa = new BoundingRectangle(new Vector(Level.Left, 0), Level.BoundingRect.BottomRight);
BoundingRectangle ylaosa = new BoundingRectangle(Level.BoundingRect.TopLeft, new Vector(Level.Right, 0));
Level.CreateBorders();
PhysicsObject pelaaja = new PhysicsObject(100, 100, Shape.Rectangle);
pelaaja.Position = RandomGen.NextVector(alaosa);
pelaaja.Image = LoadImage("hyttyskarkoite");
Add(pelaaja);
Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä avustus");
Keyboard.Listen(Key.Up, ButtonState.Down, LyoHyttysta, "Pelaaja ylös", pelaaja, new Vector(0, 20));
Keyboard.Listen(Key.Down, ButtonState.Down, LyoHyttysta, "Pelaaja alas", pelaaja, new Vector(0, -20));
Keyboard.Listen(Key.Left, ButtonState.Down, LyoHyttysta, "Pelaaja vasemmalle", pelaaja, new Vector(-20, 0));
Keyboard.Listen(Key.Right, ButtonState.Down, LyoHyttysta, "Pelaaja oikealle", pelaaja, new Vector(20, 0));
for(int i = 0; i < 20; i++)
LuoSattunnainenHyttynen(this, ylaosa, 60, "hyttynen");
for (int j = 0; j < 5; j++)
LuoSattunnainenAmpiainen(this, ylaosa, 60, "ampiainen");
AddCollisionHandler(pelaaja, "hyttynen", PelaajaTormasiHyttyseen);
AddCollisionHandler(pelaaja, "ampiainen", PelaajaTormasiAmpiaiseen);
PhoneBackButton.Listen(ConfirmExit, "Lopeta peli");
Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli");
}
/// <summary>
/// Metodi johon tullaan kun pelaaja ja joku hyttynen törmäävät.
/// Luodaan hyttysen kohdalla räjähdys ja poistetaan hyttynen pelistä
/// </summary>
/// <param name="pelaaja">pelaaja joka törmäsi</param>
/// <param name="hyttynen">hyttynen johon pelaaja törmäsi</param>
private void PelaajaTormasiHyttyseen(PhysicsObject pelaaja, PhysicsObject hyttynen)
{
Explosion rajahdys = new Explosion(hyttynen.Width * 2);
rajahdys.Position = hyttynen.Position;
rajahdys.UseShockWave = false;
this.Add(rajahdys);
Remove(hyttynen);
}
/// <summary>
/// Metodi johon tullaan kun pelaaja ja joku ampiainen törmäävät.
/// Jos pelaaja osuu ampiaiseen, peli alkaa alusta.
/// </summary>
/// <param name="pelaaja">pelaaja joka törmäsi</param>
/// <param name="ampiainen">ampiainen johon pelaaja törmäsi</param>
private void PelaajaTormasiAmpiaiseen(PhysicsObject pelaaja, PhysicsObject ampiainen)
{
AloitaAlusta();
}
/// <summary>
/// Aloittaa pelin alusta
/// </summary>
void AloitaAlusta()
{
ClearAll();
Begin();
}
/// <summary>
/// Lyödään hyttystä voimavektorilla
/// </summary>
/// <param name="hyttynen">lyötävä hyttynen</param>
/// <param name="suunta">voimavektori</param>
public static void LyoHyttysta(PhysicsObject hyttynen, Vector suunta)
{
hyttynen.Hit(hyttynen.Mass * suunta);
}
/// <summary>
/// Luodaan satunnainen hyttynen.
/// </summary>
/// <param name="peli">Mihin peliin hyttynen luodaan</param>
/// <param name="rect">Minkä suorakaiteen sisälle luodaan</param>
/// <param name="vauhti">Hyttysen vauhti alkutilanteessa</param>
/// <param name="tunniste">Hyttyselle annettava tunniste</param>
/// <returns>Viite luotuun hyttyseen</returns>
public static PhysicsObject LuoSattunnainenHyttynen(PhysicsGame peli, BoundingRectangle rect, double vauhti, string tunniste)
{
double leveys = 50;
double korkeus = 50;
PhysicsObject hyttynen = new PhysicsObject(leveys, korkeus, Shape.Circle);
hyttynen.Position = RandomGen.NextVector(rect);
Vector suunta = RandomGen.NextVector(0, vauhti);
hyttynen.Hit(suunta);
hyttynen.Tag = tunniste;
hyttynen.Image = LoadImage("hyttynen (2)");
peli.Add(hyttynen);
return hyttynen;
}
/// <summary>
/// Luodaan satunnainen ampiainen.
/// </summary>
/// <param name="peli">Mihin peliin ampiainen luodaan</param>
/// <param name="rect">Minkä suorakaiteen sisälle luodaan</param>
/// <param name="vauhti">Ampiaisen vauhti alkutilanteessa</param>
/// <param name="tunniste">Ampiaiselle annettava tunniste</param>
/// <returns>Viite luotuun Ampiaiseen</returns>
public static PhysicsObject LuoSattunnainenAmpiainen(PhysicsGame peli, BoundingRectangle rect, double vauhti, string tunniste)
{
double leveys = 50;
double korkeus = 50;
PhysicsObject ampiainen = new PhysicsObject(leveys, korkeus, Shape.Circle);
ampiainen.Position = RandomGen.NextVector(rect);
Vector suunta = RandomGen.NextVector(0, vauhti);
ampiainen.Hit(suunta);
ampiainen.Tag = tunniste;
ampiainen.Image = LoadImage("ampiainen");
peli.Add(ampiainen);
return ampiainen;
}
/// <summary>
/// Laskee hyttysen alan
/// </summary>
/// <param name="kanta">hyttysen kanta</param>
/// <param name="korkeus">hyttysen korkeus</param>
/// <returns>hyttysen ala</returns>
/// <example>
/// <pre name="test">
/// HyttysenAla(0,0) ~~~ 0;
/// HyttysenAla(1,0) ~~~ 0;
/// HyttysenAla(1,1) ~~~ 0.5;
/// HyttysenAla(3,5) ~~~ 7.5;
/// </pre>
/// </example>
public static double HyttysenAla(double kanta, double korkeus)
{
return kanta * korkeus * 1 / 2;
}
}
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net7.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Jypeli.NET" Version="11.*"/>
<PackageReference Include="Jypeli.FarseerPhysics.NET" Version="2.*"/>
</ItemGroup>
<ItemGroup>
<None Update="Content\hyttyskarkoite.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Update="Content\hyttynen (2).png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Update="Content\ampiainen.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>
</Project>
#region Using Statements
using System;
using System.Collections.Generic;
using System.Linq;
#endregion
namespace HyttysPeli
{
/// <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 HyttysPeli();
game.Run();
}
}
}
\ No newline at end of file
suunnitelma/Hyttyspeli.png

17.6 KiB

suunnitelma/esimerkkikuva.png

9.92 KiB