Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
E
esimerkit
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
tie
ohj1
2023s
esimerkit
Commits
b04499ca
Commit
b04499ca
authored
1 year ago
by
Vesa Lappalainen
Browse files
Options
Downloads
Patches
Plain Diff
Rajahdys ja vihun poisto
parent
c06913ba
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
luennot/live07/KolmionMetsastys/KolmionMetsastys.cs
+24
-4
24 additions, 4 deletions
luennot/live07/KolmionMetsastys/KolmionMetsastys.cs
with
24 additions
and
4 deletions
luennot/live07/KolmionMetsastys/KolmionMetsastys.cs
+
24
−
4
View file @
b04499ca
...
...
@@ -22,10 +22,10 @@ public class KolmionMetsastys : PhysicsGame
for
(
int
i
=
0
;
i
<
50
;
i
++)
{
LuoSattunnainenKolmio
(
this
,
alaosa
,
200
);
LuoSattunnainenKolmio
(
this
,
alaosa
,
200
,
"vihu"
);
}
PhysicsObject
pelaaja
=
LuoSattunnainenKolmio
(
this
,
ylaosa
,
50
);
PhysicsObject
pelaaja
=
LuoSattunnainenKolmio
(
this
,
ylaosa
,
50
,
"pelaaja"
);
pelaaja
.
Color
=
Color
.
Red
;
Keyboard
.
Listen
(
Key
.
F1
,
ButtonState
.
Pressed
,
ShowControlHelp
,
"Näytä avustus"
);
...
...
@@ -34,11 +34,29 @@ public class KolmionMetsastys : PhysicsGame
Keyboard
.
Listen
(
Key
.
Left
,
ButtonState
.
Pressed
,
LyoKolmiota
,
"Pelaaja vasemmalle"
,
pelaaja
,
new
Vector
(-
200
,
0
));
Keyboard
.
Listen
(
Key
.
Right
,
ButtonState
.
Pressed
,
LyoKolmiota
,
"Pelaaja oikealle"
,
pelaaja
,
new
Vector
(
200
,
0
));
AddCollisionHandler
(
pelaaja
,
"vihu"
,
PelaajaTormasi
);
PhoneBackButton
.
Listen
(
ConfirmExit
,
"Lopeta peli"
);
Keyboard
.
Listen
(
Key
.
Escape
,
ButtonState
.
Pressed
,
ConfirmExit
,
"Lopeta peli"
);
}
/// <summary>
/// Metodi johon tullaan kun pelaaja ja joku kolmio törmäävät.
/// Luodaan vihollisen kohdalla räjähdys ja poistetaan vihollinen pelistä.
/// </summary>
/// <param name="pelaaja">pelaaja joka törmäsi</param>
/// <param name="vihu">vihollinen johon pelaaja törmäsi</param>
private
void
PelaajaTormasi
(
PhysicsObject
pelaaja
,
PhysicsObject
vihu
)
{
Explosion
rajahdys
=
new
Explosion
(
vihu
.
Width
*
2
);
rajahdys
.
Position
=
vihu
.
Position
;
rajahdys
.
UseShockWave
=
false
;
// kannattaa kokeilla mitä taphatuu true -arvolla.
this
.
Add
(
rajahdys
);
Remove
(
vihu
);
}
/// <summary>
/// Lyödään kolmiota voimavektorilla
/// </summary>
...
...
@@ -49,14 +67,15 @@ public class KolmionMetsastys : PhysicsGame
kolmio
.
Hit
(
suunta
);
}
/// <summary>
/// Luodaan satunnainen kolmio suorakaiteen sisälle. Myös väri ja kulma arvotaan.
/// </summary>
/// <param name="peli">Mihin peliin kolmio luodaan</param>
/// <param name="rect">Minkä suorakaiteen sisälle luodaan</param>
/// <param name="vauhti">Kolmion vauhti alkutilanteessa</param>
public
static
PhysicsObject
LuoSattunnainenKolmio
(
PhysicsGame
peli
,
BoundingRectangle
rect
,
double
vauhti
=
0
)
/// <param name="tunniste">Kolmiolle annettava tunniste</param>
public
static
PhysicsObject
LuoSattunnainenKolmio
(
PhysicsGame
peli
,
BoundingRectangle
rect
,
double
vauhti
=
0
,
string
tunniste
=
""
)
{
double
leveys
=
RandomGen
.
NextDouble
(
10
,
100
);
double
korkeus
=
RandomGen
.
NextDouble
(
10
,
100
);
...
...
@@ -66,6 +85,7 @@ public class KolmionMetsastys : PhysicsGame
kolmio
.
Color
=
RandomGen
.
NextColor
();
Vector
suunta
=
RandomGen
.
NextVector
(
0
,
vauhti
);
kolmio
.
Hit
(
suunta
);
kolmio
.
Tag
=
tunniste
;
peli
.
Add
(
kolmio
);
return
kolmio
;
}
...
...
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