Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
O
ohj1ht
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
nijomagg
ohj1ht
Commits
95455c59
Commit
95455c59
authored
9 months ago
by
Nilla Magga
Browse files
Options
Downloads
Patches
Plain Diff
Lisätty taulukko peliin
parent
db374041
No related branches found
Branches containing commit
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
Surffipeli/Surffipeli.cs
+42
-11
42 additions, 11 deletions
Surffipeli/Surffipeli.cs
with
42 additions
and
11 deletions
Surffipeli/Surffipeli.cs
+
42
−
11
View file @
95455c59
using
Jypeli
;
using
Jypeli.Assets
;
using
Jypeli.Controls
;
using
Jypeli.Effects
;
using
Jypeli.Widgets
;
using
System
;
using
System.Collections.Generic
;
using
System.Diagnostics.Metrics
;
using
System.Text
;
namespace
Surffipeli
{
/// @author Nilla Magga
/// @version 31.05.2024
/// <summary>
/// Surffipeli jossa tarkotuksena kerätä mahdollisimmaan paljon aaltoja
/// ja varoa seiniä sekä kiviä
/// </summary>
///
public
class
Surffipeli
:
PhysicsGame
{
private
const
double
NOPEUS
=
10000
;
...
...
@@ -22,11 +29,14 @@ namespace Surffipeli
private
PlatformCharacter
pelaaja1
;
private
Image
pelaajanKuva
=
LoadImage
(
"surffilauta.png"
);
private
Image
aaltoKuva
=
LoadImage
(
"aalto.png"
);
private
Image
kiviKuva
=
LoadImage
(
"kivi.png"
);
private
Image
pelaajanKuolemakuva
=
LoadImage
(
"surffilautaKatki.png"
);
private
char
[]
merkitys
=
{
'#'
,
'k'
,
'*'
,
'N'
};
private
SoundEffect
maaliAani
=
LoadSoundEffect
(
"maali.wav"
);
private
SoundEffect
tormaysAani
=
LoadSoundEffect
(
"maali.wav"
);
...
...
@@ -37,12 +47,14 @@ namespace Surffipeli
public
IntMeter
pisteLaskuri
;
public
Timer
aikalaskuri
;
public
override
void
Begin
()
{
ClearAll
();
SetWindowSize
(
1280
,
720
);
Gravity
=
new
Vector
(
0
,
-
100
);
LuoKentta
();
LisaaNappaimet
();
...
...
@@ -68,11 +80,15 @@ namespace Surffipeli
{
pelaaja1
.
Push
(
new
Vector
(
NOPEUS
,
0.0
));
}
/// <summary>
/// Luodaan pistelaskuri aalloista saatuja pisteitä varten
/// Asetataan se oikeaan yläkulmaan ja tehdään sille palkki joka muuttuu pisteiden mukaisesti punaiseksi
/// Asetetaan pelille maksimipistemäärä
/// </summary>
///
private
void
LuoPistelaskuri
()
{
pisteLaskuri
=
new
IntMeter
(
0
);
...
...
@@ -100,6 +116,7 @@ namespace Surffipeli
pistePalkki
.
BorderColor
=
Color
.
Red
;
Add
(
pistePalkki
);
/// <summary>
/// Lisää tekstin "VOITTO" ja pysäyttää pelin kun pelaaja saavuttaa maksimipistemäärän
/// </summary>
...
...
@@ -141,9 +158,8 @@ namespace Surffipeli
aika
.
X
=
Screen
.
Left
+
200
;
aika
.
TextColor
=
Color
.
White
;
Add
(
aika
);
}
/// <summary>
/// Aikalaskuri, jolla peli saadaan käynnistymään 5s päästä uudestaan voiton jälkeen
/// </summary>
...
...
@@ -168,6 +184,7 @@ namespace Surffipeli
Add
(
voittoAika
);
}
/// <summary>
/// Aikalaskuri, jolla peli saadaan käynnistymään 5s päästä uudestaan häviön jälkeen
/// </summary>
...
...
@@ -198,16 +215,18 @@ namespace Surffipeli
ResetLayers
();
Begin
();
}
/// <summary>
/// Kentän luonti peliä varten
/// </summary>
private
void
LuoKentta
()
{
TileMap
kentta
=
TileMap
.
FromLevelAsset
(
"kentta1.txt"
);
kentta
.
SetTileMethod
(
'#'
,
LisaaSeina
);
kentta
.
SetTileMethod
(
'k'
,
LisaaKivi
);
kentta
.
SetTileMethod
(
'*'
,
LisaaAalto
);
kentta
.
SetTileMethod
(
'N'
,
LisaaPelaaja
);
kentta
.
SetTileMethod
(
merkitys
[
0
],
LisaaSeina
);
kentta
.
SetTileMethod
(
merkitys
[
1
],
LisaaKivi
);
kentta
.
SetTileMethod
(
merkitys
[
2
],
LisaaAalto
);
kentta
.
SetTileMethod
(
merkitys
[
3
],
LisaaPelaaja
);
kentta
.
Execute
(
RUUDUN_KOKO
,
RUUDUN_KOKO
);
Level
.
Background
.
CreateGradient
(
Color
.
White
,
Color
.
SkyBlue
);
...
...
@@ -217,6 +236,7 @@ namespace Surffipeli
PhysicsObject
oikeaReuna
=
Level
.
CreateRightBorder
();
oikeaReuna
.
Tag
=
"maali"
;
}
/// <summary>
/// Luodaan pelille seinät
/// </summary>
...
...
@@ -231,6 +251,7 @@ namespace Surffipeli
seina
.
Tag
=
"seina"
;
Add
(
seina
);
}
/// <summary>
/// Luodaan kenttään kiviä, joita pelaajan pitää väistää
/// </summary>
...
...
@@ -243,8 +264,10 @@ namespace Surffipeli
kivi
.
Position
=
paikka
;
kivi
.
Image
=
kiviKuva
;
kivi
.
Tag
=
"kivi"
;
Add
(
kivi
);
Add
(
kivi
);
}
/// <summary>
/// Luodaan kenttään aaltoja, joita pelaajan tarkoitus kerätä
/// </summary>
...
...
@@ -260,6 +283,7 @@ namespace Surffipeli
aalto
.
Tag
=
"aalto"
;
Add
(
aalto
);
}
/// <summary>
/// Luodaan pelaaja ja määritetään sen törmäyskäsittelijät
/// </summary>
...
...
@@ -278,6 +302,7 @@ namespace Surffipeli
AddCollisionHandler
(
pelaaja1
,
"maali"
,
Maali
);
Add
(
pelaaja1
);
}
/// <summary>
/// Luodaan päätyseinästä objekti, jonka saavuttamalla kenttä päästään läpi
/// </summary>
...
...
@@ -294,6 +319,7 @@ namespace Surffipeli
liikutusajastin
.
Stop
();
}
/// <summary>
/// Lisätään näppäimet millä peliä hallitaan
/// </summary>
...
...
@@ -315,6 +341,7 @@ namespace Surffipeli
{
hahmo
.
ForceJump
(
nopeus
);
}
/// <summary>
/// Lisätään teksti "keräsit aallon" ja annetaan pistelaskuriin yksi lisäpiste
/// </summary>
...
...
@@ -327,6 +354,7 @@ namespace Surffipeli
aalto
.
Destroy
();
pisteLaskuri
.
Value
+=
1
;
}
/// <summary>
/// Peli loppuu kun kiveen osutaan. Määritetään pelaajalle uusi kuva
/// </summary>
...
...
@@ -350,6 +378,7 @@ namespace Surffipeli
Gravity
=
Vector
.
Zero
;
}
}
/// <summary>
/// Lisätään teksti "Varo seiniä" kun pelaaja osuu ylä- tai alaseinään.
/// </summary>
...
...
@@ -361,10 +390,12 @@ namespace Surffipeli
{
MessageDisplay
.
Add
(
"Varo seiniä!"
);
pisteLaskuri
.
Value
-=
1
;
}
}
}
}
}
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment