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 (25)
Showing
with 606 additions and 0 deletions
# Default ignored files
/shelf/
/workspace.xml
# Rider ignored files
/projectSettingsUpdater.xml
/.idea.Matopeli.iml
/modules.xml
/contentModel.xml
# 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="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}") = "Matopeli", "Matopeli\Matopeli.csproj", "{C4026729-15AF-4700-A8DE-52D74250EC17}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{C4026729-15AF-4700-A8DE-52D74250EC17}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C4026729-15AF-4700-A8DE-52D74250EC17}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C4026729-15AF-4700-A8DE-52D74250EC17}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C4026729-15AF-4700-A8DE-52D74250EC17}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
EndGlobal
Matopeli/Matopeli/Content/kenttatausta.png

66.5 KiB

Matopeli/Matopeli/Content/matokeho.png

7.56 KiB

Matopeli/Matopeli/Content/matopaa.png

26.6 KiB

Matopeli/Matopeli/Content/omena.png

58.2 KiB

Matopeli/Matopeli/Content/pif.png

67.2 KiB

Matopeli/Matopeli/Content/seina.png

8.82 KiB

using System.Collections.Generic;
using Jypeli;
namespace matopeli;
/// @author Paulus Kopperoinen
/// @version 30.10.2023
/// <summary>
/// Perinteinen matopeli, jossa tavoitteena kasvattaa matoa mahdollisimman suureksi omenia syömällä.
/// </summary>
public class Matopeli : PhysicsGame
{
private Objektit mato;
private Objektit omena;
private Objektit matomuu;
private IntMeter pistelaskuri;
public IntMeter Ennatyslaskuri;
private readonly List<Vector> MatoSijainti = new List<Vector>();
private readonly List<PhysicsObject> MatoKeho = new List<PhysicsObject>();
private int Leveys;
private int KenttaKoko;
private double Nopeus;
private int KentanSijainti;
private static readonly Image Seinakuva = LoadImage("pif.png");
private static readonly Image Matopaakuva = LoadImage("matopaa.png");
private readonly Image matokehokuva = LoadImage("matokeho.png");
private readonly Image omenakuva = LoadImage("omena.png");
private bool suuntaYlos;
private bool suuntaAlas;
private bool suuntaOikea;
private bool suuntaVasen;
private bool matoLiikkunut;
private bool omenaKentalla;
/// <summary>
/// Kun peli käynnistetään ensimmäisen kerran
/// </summary>
public override void Begin()
{
AloitaUusiPeli();
}
/// <summary>
/// Poistaa vanhan pelin tiedot ja alustaa uuden pelin
/// </summary>
private void AloitaUusiPeli()
{
MatoKeho.Clear();
MatoSijainti.Clear();
ClearAll();
Asetukset();
LuoMato(Luoseinat(KenttaKoko, Leveys));
Asetaohjaimet();
LuoAikalaskuri();
LuoPistelaskuri();
LuoOmena();
Level.Background.Color = Color.LightGreen;
}
/// <summary>
/// Määrittää ohjaimet, joita pelaaja voi käyttää ja mitä niitä painamalla tapahtuu
/// </summary>
private void Asetaohjaimet()
{
Keyboard.Listen(Key.Up, ButtonState.Pressed, VaihdaSuuntaYlos, "Turn upwards");
Keyboard.Listen(Key.Down, ButtonState.Pressed, VaihdaSuuntaAlas, "Turn downwards");
Keyboard.Listen(Key.Left, ButtonState.Pressed, VaihdaSuuntaVasen , "Turn left");
Keyboard.Listen(Key.Right, ButtonState.Pressed, VaihdaSuuntaOikea, "Turn right");
Keyboard.Listen(Key.Enter, ButtonState.Pressed, LiikutaMatoa, "New Game");
}
/// <summary>
/// Laskee pisteet, joita kerätään omenoita syömällä
/// </summary>
private void LuoPistelaskuri()
{
pistelaskuri = new IntMeter(0);
Label pistenaytto = new Label();
pistenaytto.X = KentanSijainti+ KenttaKoko/2 * Leveys;
pistenaytto.Y = KentanSijainti + (KenttaKoko+2) * Leveys;
pistenaytto.TextColor = Color.Brown;
pistenaytto.Color = Color.LightGreen;
pistenaytto.Title = "Pisteet: ";
pistenaytto.BindTo(pistelaskuri);
Add(pistenaytto);
}
/// <summary>
/// Pelin asetukset
/// </summary>
private void Asetukset()
{
Leveys = 50;
KenttaKoko = 12;
KentanSijainti = -(KenttaKoko/2*Leveys);
suuntaYlos = false;
suuntaAlas = false;
suuntaOikea = true;
suuntaVasen = false;
Nopeus = 0.1;
matoLiikkunut = false;
omenaKentalla = true;
}
/// <summary>
/// Päättää pelin ja aloitaa uuden, kun mato kuolee
/// </summary>
private void MatoKuolee()
{
AloitaUusiPeli();
}
/// <summary>
/// Luo madon kentälle
/// </summary>
/// <returns></returns>
private void LuoMato(Vector paikka)
{
mato = new Objektit(Leveys-5, Leveys-5);
mato.Image = Matopaakuva;
Add(mato);
mato.Tag = "mato";
mato.Position = ArvoPaikka(paikka,0);
AddCollisionHandler(mato, "omena", delegate(IPhysicsObject omena, IPhysicsObject mato) {MatoSyoOmenan(); });
AddCollisionHandler(mato, "seina", delegate(IPhysicsObject seina, IPhysicsObject mato) {MatoKuolee(); });
AddCollisionHandler(mato, "matokeho", delegate(IPhysicsObject matomuu, IPhysicsObject mato) {MatoKuolee(); });
}
/// <summary>
/// Luodaan omena johonkin satunnaiseen kohtaan kartalla, joka ei ole samassa kohtaa madon kanssa.
/// </summary>
private void LuoOmena()
{
int i = 1;
Vector paikka = ArvoPaikka(new Vector(KentanSijainti,KentanSijainti),0);
while (i>0)
{
if (paikka != mato.Position)
{
break;
}
paikka = ArvoPaikka(new Vector(KentanSijainti,KentanSijainti),0);
}
omena = new Objektit(Leveys-10, Leveys-10);
omena.Shape = Shape.Circle;
omena.Position = paikka;
omena.Image = omenakuva;
omena.Tag = "omena";
Add(omena);
omenaKentalla = true;
}
/// <summary>
/// Arpoo sattumanvaraisen paikan kentältä ja palauttaa kyseisen vektorin
/// </summary>
/// <param name="alkupaikka">Mihin arvottavaa paikkaa halutaan suhteuttaa</param>
/// <param name="Keskitys">Kuinka paljon halutaan saada arvottavan paikan maksimaalinen arvo pois reunoilta</param>
/// <returns></returns>
private Vector ArvoPaikka(Vector alkupaikka, int Keskitys)
{
Vector Paikka;
double x;
double y;
Vector omenaxy0 = new Vector(alkupaikka.X + Leveys, alkupaikka.X);
y = RandomGen.NextInt(1 + Keskitys, KenttaKoko-1-Keskitys);
y = omenaxy0.Y + y * Leveys;
x = RandomGen.NextInt(1+Keskitys, KenttaKoko-1-Keskitys);
x = omenaxy0.X + x * Leveys;
Paikka = new Vector(x, y);
return Paikka;
}
/// <summary>
/// Luo kentän reunat
/// </summary>
/// <param name="maara">luotavan kentän yhtä reunaa varten luotavien palikoiden määrä</param>
/// <param name="koko">kuinka isoja palikoita tehdään</param>
private Vector Luoseinat(int maara, int koko)
{
double x = KentanSijainti;
double y = KentanSijainti;
for (int i = 0; i < maara; i++)
{
LuoSeina(koko,new Vector(x,y));
x += koko;
}
for (int i = 0; i < maara+1; i++)
{
LuoSeina(koko,new Vector(x,y));
y += koko;
}
for (int i = 0; i < maara+1; i++)
{
LuoSeina(koko,new Vector(x,y));
x -= koko;
}
for (int i = 0; i < maara+2; i++)
{
LuoSeina(koko,new Vector(x,y));
y -= koko;
}
return new Vector(x, y);
}
/// <summary>
/// Luo kentän palikat, joista kentän reunat muodostuvat
/// </summary>
private void LuoSeina(int leveys, Vector paikka)
{
PhysicsObject seina = new PhysicsObject(leveys,leveys);
seina.MakeStatic();
seina.Color = Color.Green;
seina.Tag = "seina";
seina.Position = paikka;
seina.Image = Seinakuva;
Add(seina);
}
/// <summary>
/// Tehdään aliohjelma, joka luo uusia osia madon perään.
/// </summary>
private void LuoMatoKeho()
{
matomuu = new Objektit(Leveys-6, Leveys-6);
matomuu.Tag = "matokeho";
matomuu.Image = matokehokuva;
Vector paikka;
if (MatoSijainti.Count>2)
{
paikka = MatoSijainti[MatoSijainti.Count -1 - MatoKeho.Count];
}
else
{
paikka = new Vector(-1000,-100000);
}
matomuu.Position = paikka;
Add(matomuu);
MatoKeho.Add(matomuu);
AddCollisionHandler(matomuu, "omena", delegate(IPhysicsObject mato, IPhysicsObject omena) {LuoUusiOmena(); });
}
/// <summary>
/// Jos omena luodaan madon kehon sisään, tämä aliohjelma luo uuden omenan vanhan tilalle
/// </summary>
private void LuoUusiOmena()
{
omena.Destroy();
omenaKentalla = false;
}
/// <summary>
/// Tekee tarvittavat toimet, kun mato onnistuu syömään omenan
/// </summary>
private void MatoSyoOmenan()
{
omena.Destroy();
pistelaskuri.Value += 1;
omenaKentalla = false;
}
/// <summary>
/// Antaa tiedon LiikutaMatoa aliohjelmalle, että madon pitäisi kääntyä ylös.
/// </summary>
private void VaihdaSuuntaYlos()
{
if (suuntaAlas)
{
suuntaOikea = false;
suuntaVasen = false;
suuntaYlos = false;
suuntaAlas = true;
}
else
{
suuntaOikea = false;
suuntaVasen = false;
suuntaYlos = true;
suuntaAlas = false;
}
}
/// <summary>
/// Antaa tiedon LiikutaMatoa aliohjelmalle, että madon pitäisi kääntyä alas.
/// </summary>
private void VaihdaSuuntaAlas()
{
if (suuntaYlos)
{
suuntaOikea = false;
suuntaVasen = false;
suuntaYlos = true;
suuntaAlas = false;
}
else
{
suuntaOikea = false;
suuntaVasen = false;
suuntaYlos = false;
suuntaAlas = true;
}
}
/// <summary>
/// Antaa tiedon LiikutaMatoa aliohjelmalle, että madon pitäisi kääntyä oikeaan.
/// </summary>
private void VaihdaSuuntaOikea()
{
if (suuntaVasen)
{
suuntaOikea = false;
suuntaVasen = true;
suuntaYlos = false;
suuntaAlas = false;
}
else
{
suuntaOikea = true;
suuntaVasen = false;
suuntaYlos = false;
suuntaAlas = false;
}
}
/// <summary>
/// Antaa tiedon LiikutaMatoa aliohjelmalle, että madon pitäisi kääntyä vasempaan.
/// </summary>
private void VaihdaSuuntaVasen()
{
if (suuntaOikea)
{
suuntaOikea = true;
suuntaVasen = false;
suuntaYlos = false;
suuntaAlas = false;
}
else
{
suuntaOikea = false;
suuntaVasen = true;
suuntaYlos = false;
suuntaAlas = false;
}
}
/// <summary>
/// Aikalaskuri toimii pelin moottorina ja antaa PaivitaKentälle tiedon, kun pitää tarkistaa mitä kentällä on tapahtunut.
/// </summary>
private void LuoAikalaskuri()
{
Timer aikalaskuri = new Timer();
aikalaskuri.Interval=Nopeus;
aikalaskuri.Start();
aikalaskuri.Timeout += PaivitaKentta;
}
/// <summary>
/// Kun ajastimesta loppuu aika, siirtyy peli tähän funktioon, jonka tarkoituksena on hahmottaa, mitä kaikkea pelissä on tapahtunut ja miten siihen tulee reagoida.
/// </summary>
private void PaivitaKentta()
{
if (matoLiikkunut == false)
{
return;
}
if (omenaKentalla == false)
{
LuoMatoKeho();
LuoOmena();
}
MatoSijainti.Add(new Vector(mato.X,mato.Y));
LiikutaMatoa();
LiikutaKehoa();
MatoSijainti.Add(new Vector(mato.X,mato.Y));
}
/// <summary>
/// LiikutaMatoa aliohjelman tehtävä on selvittää tieto siitä, mihin suuntaan on tarkoitus liikkua ja liikuttaa matoa siihen suuntaan.
/// </summary>
private void LiikutaMatoa()
{
matoLiikkunut = false;
if (suuntaYlos)
{
mato.Y = mato.Y + Leveys;
mato.Angle = Angle.FromDegrees(90);
}
if (suuntaAlas)
{
mato.Y= mato.Y - Leveys;
mato.Angle = Angle.FromDegrees(270);
}
if (suuntaOikea)
{
mato.X= mato.X + Leveys;
mato.Angle = Angle.FromDegrees(0);
}
if (suuntaVasen)
{
mato.X= mato.X - Leveys;
mato.Angle = Angle.FromDegrees(180);
}
matoLiikkunut = true;
}
/// <summary>
/// Liikutakehoa, aliohjelman tehtävänä on liikuttaa madon kehoa sen pään mukaisesti.
/// </summary>
private void LiikutaKehoa()
{
if (MatoKeho.Count==0)
{
return;
}
matoLiikkunut = false;
MatoKeho[0].X = MatoSijainti[MatoSijainti.Count - 1].X;
MatoKeho[0].Y = MatoSijainti[MatoSijainti.Count - 1].Y;
for (int i = 1; i < MatoKeho.Count; i++)
{
MatoKeho[i].X = MatoSijainti[MatoSijainti.Count - 2*i].X;
MatoKeho[i].Y = MatoSijainti[MatoSijainti.Count - 2*i].Y;
}
matoLiikkunut = true;
}
/// <summary>
/// Pelin fysiikkaobjektit luodaan tämän classin mukaisesti
/// </summary>
public class Objektit : PhysicsObject
{
public Objektit(double leveys, double korkeus)
: base(leveys, korkeus)
{
Mass = 1000;
IsUpdated = true;
IgnoresCollisionResponse = true;
}
}
}
\ No newline at end of file
<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>
<Folder Include="Content\" />
</ItemGroup>
<ItemGroup>
<None Update="kuvat\kenttatausta.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Update="kuvat\matopaa.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Update="kuvat\matokeho.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Update="kuvat\omena.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Update="kuvat\seina.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Update="Content\seina.png">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Update="Content\omena.png">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Update="Content\matopaa.png">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Update="Content\matokeho.png">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Update="Content\kenttatausta.png">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>
<ItemGroup>
<Compile Remove="nollaaja.cs" />
</ItemGroup>
</Project>
#region Using Statements
using System;
using System.Collections.Generic;
using System.Linq;
#endregion
namespace Matopeli
{
/// <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 matopeli.Matopeli())
{
game.Run();
}
}
}
}
\ No newline at end of file
suunnitelma/esimerkkikuva.png

9.92 KiB

suunnitelma/kuvat.png

2.9 KiB