mirror of
https://github.com/kristoferssolo/Qualification-Thesis.git
synced 2025-10-21 20:10:37 +00:00
feat: add dev tools dpd2
This commit is contained in:
parent
96f6289552
commit
8277cf452a
@ -49,7 +49,13 @@
|
|||||||
|
|
||||||
// Standard arrow edge
|
// Standard arrow edge
|
||||||
#let std-edge(..args) = {
|
#let std-edge(..args) = {
|
||||||
edge(label-pos: 0.1, stroke: default-edge-stroke, ..args, "-|>")
|
edge(
|
||||||
|
label-pos: 0.1,
|
||||||
|
stroke: default-edge-stroke,
|
||||||
|
label-size: 10pt,
|
||||||
|
..args,
|
||||||
|
"-|>",
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Fork/parallel function
|
// Fork/parallel function
|
||||||
@ -149,6 +155,7 @@
|
|||||||
label-anchor: "center",
|
label-anchor: "center",
|
||||||
label-fill: white,
|
label-fill: white,
|
||||||
corner-radius: 4pt,
|
corner-radius: 4pt,
|
||||||
|
label-size: 10pt,
|
||||||
..args,
|
..args,
|
||||||
"-|>",
|
"-|>",
|
||||||
)
|
)
|
||||||
|
|||||||
82
main.typ
82
main.typ
@ -199,15 +199,15 @@ Ar lietotājiem saistītās datu plūsmas ir attēlotas sistēmas nultā līmeņ
|
|||||||
caption: [\0. līmeņa DPD],
|
caption: [\0. līmeņa DPD],
|
||||||
diagram(
|
diagram(
|
||||||
data-store((0, 0), [Spēlētājs]),
|
data-store((0, 0), [Spēlētājs]),
|
||||||
dpd-edge("rr,ddd,ll", [Ievades ierīces\ dati]),
|
dpd-edge("rr,ddd,ll", align(center)[Ievades ierīces\ dati]),
|
||||||
process((0, 3), [Spēle], inset: 20pt),
|
process((0, 3), [Spēle], inset: 20pt),
|
||||||
dpd-edge(
|
dpd-edge(
|
||||||
"lll,uuu,rrr",
|
"lll,uuu,rrr",
|
||||||
[Vizuālās\ izvades dati],
|
align(center)[Vizuālās\ izvades dati],
|
||||||
),
|
),
|
||||||
dpd-edge(
|
dpd-edge(
|
||||||
"l,uuu,r",
|
"l,uuu,r",
|
||||||
[Audio\ izvades dati],
|
align(center)[Audio\ izvades dati],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
) <dpd-0>
|
) <dpd-0>
|
||||||
@ -403,9 +403,6 @@ pienākumi, un tas ietver funkcijas, kas veicina kopējo spēles sistēmu.
|
|||||||
[*Funkcija*],
|
[*Funkcija*],
|
||||||
[*Identifikators*],
|
[*Identifikators*],
|
||||||
/* -------------- */
|
/* -------------- */
|
||||||
// rowspanx(1)[Audio modulis], // audio
|
|
||||||
// [Skaņas efektu atskaņošana],
|
|
||||||
// [],
|
|
||||||
|
|
||||||
rowspanx(1)[Izstrādes rīku modulis], // dev_tools
|
rowspanx(1)[Izstrādes rīku modulis], // dev_tools
|
||||||
[Labirinta pārvaldības saskarne],
|
[Labirinta pārvaldības saskarne],
|
||||||
@ -414,7 +411,7 @@ pienākumi, un tas ietver funkcijas, kas veicina kopējo spēles sistēmu.
|
|||||||
rowspanx(3)[Stāva pārvaldības modulis], // floor
|
rowspanx(3)[Stāva pārvaldības modulis], // floor
|
||||||
[Stāva ielāde],
|
[Stāva ielāde],
|
||||||
[],
|
[],
|
||||||
[Stāva #red("izlāde")],
|
[Stāva izlāde],
|
||||||
[],
|
[],
|
||||||
[Stāvu kustība],
|
[Stāvu kustība],
|
||||||
[],
|
[],
|
||||||
@ -440,7 +437,7 @@ pienākumi, un tas ietver funkcijas, kas veicina kopējo spēles sistēmu.
|
|||||||
[],
|
[],
|
||||||
[Spēlētāja #red("pacelšanās")],
|
[Spēlētāja #red("pacelšanās")],
|
||||||
[],
|
[],
|
||||||
[Spēlētāja #red("nolaušainās")],
|
[Spēlētāja #red("nolaišainās")],
|
||||||
[],
|
[],
|
||||||
|
|
||||||
rowspanx(3)[Spēles stāvokļa pārvaldības modulis], // screens
|
rowspanx(3)[Spēles stāvokļa pārvaldības modulis], // screens
|
||||||
@ -460,6 +457,22 @@ pienākumi, un tas ietver funkcijas, kas veicina kopējo spēles sistēmu.
|
|||||||
|
|
||||||
=== Izstrādes rīku modulis
|
=== Izstrādes rīku modulis
|
||||||
|
|
||||||
|
#figure(
|
||||||
|
caption: [Izstrādes rīku moduļa 2. līmeņa DPD],
|
||||||
|
diagram(
|
||||||
|
spacing: 10em,
|
||||||
|
{
|
||||||
|
data-store((0, 0), [Spēlētājs])
|
||||||
|
dpd-edge("r", align(center)[Labirinta\ konfigurācijas dati])
|
||||||
|
|
||||||
|
dpd-database((2, 0), [Operatīvā\ atmiņa])
|
||||||
|
|
||||||
|
process((1, 0), [Labirinta\ pārvaldības\ saskarne])
|
||||||
|
dpd-edge("r", align(center)[Labirinta\ izkārtojuma dati])
|
||||||
|
},
|
||||||
|
),
|
||||||
|
) <dpd-2-dev_tools>
|
||||||
|
|
||||||
Dotais modulis ir izstrādes rīks, kas paredzēts lietotāja saskarnes elementu
|
Dotais modulis ir izstrādes rīks, kas paredzēts lietotāja saskarnes elementu
|
||||||
attēlošanai un apstrādei, lai konfigurētu labirinta parametrus.
|
attēlošanai un apstrādei, lai konfigurētu labirinta parametrus.
|
||||||
Šis modulis, izmantojot "egui"@bevy-egui un "inspector-egui"@bevy-inspector-egui
|
Šis modulis, izmantojot "egui"@bevy-egui un "inspector-egui"@bevy-inspector-egui
|
||||||
@ -523,16 +536,15 @@ gala lietotāji nevar piekļūt šīm uzlabotajām konfigurācijas opcijām.
|
|||||||
#todo("uzrakstīt stāvu pārvaldības moduli")
|
#todo("uzrakstīt stāvu pārvaldības moduli")
|
||||||
|
|
||||||
=== Labirinta ģenerēšanas modulis
|
=== Labirinta ģenerēšanas modulis
|
||||||
#todo("uzrakstīt labirinta ģenerēšanas moduli")
|
|
||||||
|
|
||||||
Apakšnodaļa ietver labirinta moduļa funkcijas. Moduļa funkcionalitāte ir
|
Apakšnodaļa ietver labirinta moduļa funkcijas. Moduļa funkcionalitāte ir
|
||||||
izmantota sešstūraina labirinta ģenerēšanai.
|
izmantota sešstūraina labirinta ģenerēšanai.
|
||||||
Moduļa funkciju datu
|
Moduļa funkciju datu
|
||||||
plūsmas ir parādītas 2. līmeņa datu plūsmas diagrammā (sk. @fig:dpd-2-maze-gen)
|
plūsmas ir parādītas 2. līmeņa datu plūsmas diagrammā (sk. @fig:dpd-2-hexlab)
|
||||||
Labirinta būvēšanas funkcija ir aprakstītas atsevišķā tabulā (sk. @tbl:hexlab-F01)
|
Labirinta būvēšanas funkcija ir aprakstītas atsevišķā tabulā (sk. @tbl:hexlab-F01)
|
||||||
|
|
||||||
Modularitātes un atkārtotas lietojamības apsvērumu dēļ labirinta ģenerēšanas
|
Modularitātes un atkārtotas lietojamības apsvērumu dēļ, labirinta ģenerēšanas
|
||||||
funkcionalitāte tika pārnesta uz ārēju bibliotēku
|
funkcionalitāte ir izveidota kā ārēja bibliotēka
|
||||||
"hexlib".#footnote[https://crates.io/crates/hexlab]<hexlab> Šis lēmums
|
"hexlib".#footnote[https://crates.io/crates/hexlab]<hexlab> Šis lēmums
|
||||||
ļauj labirinta ģenerēšanas loģiku atkārtoti izmantot dažādos projektos un
|
ļauj labirinta ģenerēšanas loģiku atkārtoti izmantot dažādos projektos un
|
||||||
lietojumprogrammās, veicinot atkārtotu koda izmantošanu.
|
lietojumprogrammās, veicinot atkārtotu koda izmantošanu.
|
||||||
@ -543,8 +555,17 @@ programmu.
|
|||||||
|
|
||||||
#figure(
|
#figure(
|
||||||
caption: [Labirinta ģenerēšanas moduļa 2. līmeņa DPD],
|
caption: [Labirinta ģenerēšanas moduļa 2. līmeņa DPD],
|
||||||
image("assets/images/dpd/dpd2/maze-gen.svg"),
|
diagram(
|
||||||
) <dpd-2-maze-gen>
|
spacing: 8em,
|
||||||
|
{
|
||||||
|
dpd-database((0, 0), [Operatīvā\ atmiņa])
|
||||||
|
dpd-edge("l,u,r", align(center)[Labirinta\ konfigurācijas dati])
|
||||||
|
|
||||||
|
process((0, -1), [Labirinta\ būvētājs])
|
||||||
|
dpd-edge("r,d,l", align(center)[Labirinta\ izkārtojuma dati])
|
||||||
|
},
|
||||||
|
),
|
||||||
|
) <dpd-2-hexlab>
|
||||||
|
|
||||||
#function-table(
|
#function-table(
|
||||||
"Labirinta būvētājs",
|
"Labirinta būvētājs",
|
||||||
@ -614,8 +635,8 @@ programmu.
|
|||||||
Izvades datu sistēmai nav.
|
Izvades datu sistēmai nav.
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
+ "Stāvs _x_ jau eksistē."
|
+ "Stāvs $x$ jau eksistē."
|
||||||
+ "Neizdevās ģenerēt labirintu stāvam x."
|
+ "Neizdevās ģenerēt labirintu stāvam $x$."
|
||||||
],
|
],
|
||||||
) <maze-F01>
|
) <maze-F01>
|
||||||
|
|
||||||
@ -625,6 +646,23 @@ programmu.
|
|||||||
=== Spēles stāvokļa pārvaldības modulis
|
=== Spēles stāvokļa pārvaldības modulis
|
||||||
#todo("uzrakstīt spēles stāvokļa pārvaldības moduli")
|
#todo("uzrakstīt spēles stāvokļa pārvaldības moduli")
|
||||||
|
|
||||||
|
#figure(
|
||||||
|
caption: [\2. līmeņa DPD],
|
||||||
|
diagram({
|
||||||
|
dpd-database((0, 0), [Operatīvā\ atmiņa], snap: -1)
|
||||||
|
|
||||||
|
process((-2, 0), [SSPMF01:\ Spēles sākšana])
|
||||||
|
dpd-edge("r", [Ekrāna stāvoklis])
|
||||||
|
|
||||||
|
process((2, 0), [SSPMF02:\ Atgriešanās])
|
||||||
|
dpd-edge("l", [Tastatūras ievade])
|
||||||
|
|
||||||
|
process((0, 2), [SSPMF03:\ Sākumekrāns])
|
||||||
|
dpd-edge("u", [UI elementi])
|
||||||
|
dpd-edge("d", [Pogu stāvokļi])
|
||||||
|
}),
|
||||||
|
) <dpd-2-floor>
|
||||||
|
|
||||||
#function-table(
|
#function-table(
|
||||||
"Spēles sākšana",
|
"Spēles sākšana",
|
||||||
"SSPMF01",
|
"SSPMF01",
|
||||||
@ -794,9 +832,9 @@ pašreizējā un nākamā stāva stāvokli un vertikālās kustības mehāniku.
|
|||||||
`NextFloor`,
|
`NextFloor`,
|
||||||
"Atzīmē nākamo stāvu",
|
"Atzīmē nākamo stāvu",
|
||||||
"Identificē progresa mērķa līmeni, uz kuru jāpāriet. Var būt arī līmenis zemāk.",
|
"Identificē progresa mērķa līmeni, uz kuru jāpāriet. Var būt arī līmenis zemāk.",
|
||||||
`MovementState`,
|
`FloorYTarget`,
|
||||||
"Veic stāvu vertikālo kustību",
|
"Stāva nākamā Y pozīcija",
|
||||||
"Kontrolē stāvu pārejas animācijas.",
|
"Identificē stāva Y koordināti, uz kuru tas jāpārvieto.",
|
||||||
) <components-floor>
|
) <components-floor>
|
||||||
|
|
||||||
==== Labirinta komponentes
|
==== Labirinta komponentes
|
||||||
@ -821,11 +859,11 @@ labirinta izveidi un uzturēšanu.
|
|||||||
"Konfigurē labirinta ģenerēšanu ar rādiusu, pozīcijām un izkārtojumu.",
|
"Konfigurē labirinta ģenerēšanu ar rādiusu, pozīcijām un izkārtojumu.",
|
||||||
`Maze`,
|
`Maze`,
|
||||||
"Glabā sešstūra labirinta datu",
|
"Glabā sešstūra labirinta datu",
|
||||||
"Glabā pilnu labirinta struktūru, izmantojot jaucējtabulu (hashmap)",
|
"Glabā pilnu labirinta struktūru, izmantojot jaucējtabulu.",
|
||||||
`Walls`,
|
`Walls`,
|
||||||
"Apzīmē sienu konfigurāciju",
|
"Apzīmē sienu konfigurāciju",
|
||||||
[Pārvalda sienas stāvokļus, izmantojot bitu karodziņus
|
[Pārvalda sienas stāvokļus, izmantojot bitu karodziņus.
|
||||||
@begginer-patterns.],
|
@begginer-patterns],
|
||||||
) <components-maze>
|
) <components-maze>
|
||||||
|
|
||||||
==== Spēlētāja komponentes
|
==== Spēlētāja komponentes
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user