diff --git a/assets/images/sceens/dev-tools.png b/assets/images/sceens/dev-tools.png
new file mode 100644
index 0000000..4838de7
Binary files /dev/null and b/assets/images/sceens/dev-tools.png differ
diff --git a/assets/images/sceens/game.svg b/assets/images/sceens/game.svg
new file mode 100644
index 0000000..2fd679e
--- /dev/null
+++ b/assets/images/sceens/game.svg
@@ -0,0 +1,814 @@
+
+
diff --git a/assets/images/sceens/main.svg b/assets/images/sceens/main.svg
new file mode 100644
index 0000000..4fa36ea
--- /dev/null
+++ b/assets/images/sceens/main.svg
@@ -0,0 +1,37 @@
+
+
diff --git a/assets/krita/game-ui.kra b/assets/krita/game-ui.kra
new file mode 100644
index 0000000..b8a1ea1
Binary files /dev/null and b/assets/krita/game-ui.kra differ
diff --git a/assets/krita/game-ui.png b/assets/krita/game-ui.png
new file mode 100644
index 0000000..7200ffa
Binary files /dev/null and b/assets/krita/game-ui.png differ
diff --git a/diagrams.typ b/diagrams.typ
index 98f3c56..f7b06f6 100644
--- a/diagrams.typ
+++ b/diagrams.typ
@@ -28,13 +28,12 @@
}
// Common rounded rectangle node
-#let action-node(pos, text) = {
+#let action-node(..args) = {
node(
- pos,
- text,
corner-radius: 4pt,
stroke: default-node-stroke,
shape: rect,
+ ..args,
)
}
diff --git a/main.typ b/main.typ
index 84fb96a..4ce2fd6 100644
--- a/main.typ
+++ b/main.typ
@@ -1131,8 +1131,16 @@ piedāvājot divas galvenās funkcijas: sienu pārlēkšanu un izejas ceļa par
)
dpd-database((2, 0), [Operatīvā\ atmiņa])
- dpd-edge("u,l", align(center)[Papildspēju\ notikumu dati], label-pos: 0.6)
- dpd-edge("d,l", align(center)[Papildspēju\ notikumu dati], label-pos: 0.6)
+ dpd-edge(
+ "u,l",
+ align(center)[Papildspēju\ notikumu dati],
+ label-pos: 0.65,
+ )
+ dpd-edge(
+ "d,l",
+ align(center)[Papildspēju\ notikumu dati],
+ label-pos: 0.65,
+ )
},
),
)
@@ -1690,12 +1698,70 @@ projekta lietojuma gadījumam sekojošu iemeslu dēļ:
- optimālāku veiktspēja projekta lietošanas gadījumam;
- lielāku kontroli pār labirinta vizuālo attēlojumu.
-/* Apraksta svarīgākās, sarežģītākās funkcijas vai sistēmas darbības aspektus;
-* obligāti jālieto vismaz 4 dažādi diagrammu veidi, izņemot DPD un lietošanas
-* piemēru (use case) diagrammas */
== Saskarņu projektējums
-#todo("pievienot saskarnes (UI/UX)")
-/* 5-7 lietotāja saskarnes un to apraksts */
+Spēles saskarņu projektējums ietver divus galvenos skatus (sk. @fig:ui-flow) --
+galveno izvēlni, spēles saskarni -- un izstrādes rīkus.
+Katra saskarne ir veidota, ņemot vērā tās specifisko lietojuma gadījumu un
+lietotāju vajadzības.
+
+#figure(
+ caption: "Ekrānskatu plūsmu diagramma",
+ diagram(
+ spacing: 6em,
+ {
+ action-node((0, 0), [Galvenais ekrāns], inset: 2em)
+ edge(
+ stroke: 1pt,
+ "<|-|>",
+ )
+ action-node((1, 0), [Galvenais ekrāns], inset: 2em)
+ },
+ ),
+)
+
+=== Galvenā izvēlne
+
+Galvenā izvēlne ir pirmais skats, ar ko saskaras lietotājs, uzsākot spēli (sk.
+@fig:main-menu).
+Tā sastāv no spēles nosaukuma, "Play" -- sākt spēli pogas un "Quit" -- iziet
+pogas.
+Izvēlnes dizains ir minimālistisks un intuitīvs, izmantojot kontrastējošas
+krāsas un skaidru vizuālo hierarhiju.
+
+#figure(
+ caption: "Galvenās izvēlnes skats",
+ image("assets/images/sceens/main.svg"),
+)
+
+=== Spēles skats
+
+Spēles skats apvieno pašu spēles pasauli ar minimālistisku lietotāja saskarni
+(sk, @fig:game-ui).
+Centrālo daļu aizņem spēles pasaule ar sešstūra labirintu, kas veido spēles
+galveno interaktīvo elementu.
+Ekrāna kreisajā apakšējā stūrī ir izvietoti papildspēju statusa indikatori, kas
+sniedz spēlētājam vizuālu atgriezenisko saiti par pieejamajām spējām un to
+atjaunošanās laiku.
+
+
+#figure(
+ caption: "Galvenās izvēlnes skats",
+ image("assets/images/sceens/game.svg"),
+)
+
+=== Izstrādes rīki
+Izstrādes rīki, kas redzami @fig:dev-tools-ui[attēlā], ir implementēti
+izmantojot "egui" bibliotēku @bevy_egui.
+Pirmais "Bevy Inspector Egui" noklusētais skats @bevy-inspector-egui, kas
+nodrošina detalizētu piekļuvi spēles entitāšu hierarhijai, komponenšu
+inspektoram un resursu pārvaldniekam.
+Otrs ir izvietots labirinta konfigurācijas panelis, kas ļauj kontrolēt labirinta
+izmēru, izkārtojumu un pielāgot ģenerēšanas parametrus,
+
+#figure(
+ caption: "Izstrādes rīku saskarne ar labirinta konfigurācijas paneli",
+ image("assets/images/sceens/dev-tools.png"),
+)
= Testēšanas dokumentācija
Šajā nodaļā ir aprakstīta spēles "Maze Ascension" testēšanas process.