Arbete har gått bra. Jag märker att saker och ting går lättare och lättare. Tidigare kändes det som om att man trampade vatten och inget hände men nu när grunden är lagd börjar saker bli mer och mer tydliga samtidigt som själv jag blir mer och mer bekväm med Unitys workflow.
Jag har gjort klart spelets inventory UI och det blev bra – det visas vid en knapptryckning och döljs med samma knapp, och vid visning kollar spelet vilka fiskar som finns i ryggsäckslistan i game controllern och hämtar relevant sprite förvarje objekt och visar det i relevant ruta.
Att lämna in fisk var inget större problem eftersom det bara var att ta bort alla fiskar ur ryggsäckslistan. Det enda som behövdes var att göra det bakifrån så att inte indexet i foreach-loopen ändrades under körning.
Uppgraderingen av spöt tänkte jag först att lösa genom att hålla koll på antalet guldfiskar som lämnats in men i slutänden valde jag att bara kolla vilken nivå på fiskespöt spelaren hade (finns fyra i spelet) och att spöet uppgraderades en gång per guldfisk som lämnades in upp till det mest kraftfulla spöet. Detta förutsätter att endast en guldfisk krävs per uppgradering och skulle jag ändra prissättningen skulle jag nog antagligen andända ett fält för att hålla koll på hur många som redan lämnats in och sedan referera till detta värde för att se om en uppgradering skulle kunna genomföras.
Det absolut svåraste, eller mest komplicerade, hittills är logiken för responsen från fiskhandlaren. Jag har velat animera texten som ska visas så att den successivt skrivs på skärmen och detta har jag löst via en coroutine, en async-process som vid fasta intervaller konkatinerar ett textfält med en ny bokstav parallelt med själva main loopen som kör spelet. Detta gör att jag måste tajma dialogflödet på andra sätt en tidigare eftersom programmet fortsätter att köra den Update-metod, som körs en gång per skärmuppdatering, under tiden texten körs och om logiken hinner kicka igång nästa coroutine som skriver nästa textstycke kommer bägge processerna att skicka bookstäver till dialogrutan samtidigt vilket i sin tur gör dialogen oläslig. Att komma på lösningen för detta kommer att ske under nästkommande vecka.
Värt att nämna är att jag inte implementerat kollen för att vinna ännu och att den delen av backlogen kommer med under sista sprinten, men jag planerar att köra en koll där inlämnad fisk ställs mot summan som krävs och om inlämnad fisk når eller överskjuter den summan vinner man varpå outro-scenen laddas.
Börjar känna mig lite stressad.