Hejsan! I dagens blogginlägg tänkte jag att jag skulle skriva om mitt arbete i gruppen under vecka tre. Min uppgift var att skapa en meny för spelet. Vad vi behövde för menyn var en ”play-knapp”, ”option-knapp” och en ”quit-knapp”. Men problemet här var att vi inte hade några ”states” som spelet kunde vandra mellan.”states” kan man säga är ett typ av stadium i ett spel t.ex. ”menustate” där spelets meny håller till eller ”gamestate” där spelet ”spelas” ut i. Så min uppgift blev istället att göra olika ”states” för spelet och en ”state hanterare” som tar in och byter mellan de olika ”statesen”. Men det stora problemet här var att jag hade väldigt lite kunskap om ”state hanterare” och om hur olika ”states” ska fungerar med varandra. Det var inte bara jag som hade lite kunskap om det men också de andra två programmerarna i gruppen. Så vi fick tips på att försöka göra det enkelt för oss genom använda ”enums ” istället, vilket gjorde det lättare.
”Enum är en förkortning av ordet enumerering. Meningen med Enum är att skapa en eller flera variabler som innehåller fasta värden. Dessa grupperas och kan sedan anropas med ett namn istället för ett värde. ” (Johansson , Pelle.2002. ENUM- vad är det och vad används det till?http://www.pellesoft.se/article/323/enum—vad-ar-det-och-vad-anvands-det-till- (Hämtad 20016-02-25)).
Jag hade fortfarande lite problem med hur man skulle få allt att fungera med ”enum” så jag tog väldigt mycket hjälp från gruppens andra programmerare, Mathias. Så hur vi gjorde då var att skapa ”enum states” i huvudfilen, vi gjorde åtta olika ”states”. Första ”state” var en startbild som sedan ska gå över till en huvudmeny ”states” där man ska kunna välja mellan tre ytterligare ”states”. Spela ”state” som startar själva spelet sedan en kontroll ”state” som ska visa hur man styr i spelet, sista ”state” i huvudmenyn var en avsluts ”state” som ska avsluta spelet. Det finns också två ytterligare ”states” i spela ”state” som är en paus ”state” som pausar spelet och en förlorar ”state” som ska visa en ”gameover” bild när man förlorar.
enum Status { STARTSCREEN, MAINMENU, PLAY, OPTIONS, PAUSED, QUIT, CONTROLS, ENDSCREEN };
Efter det här var det mestadels bara att lägga in alla funktioner och allt annan kod under rätt ”state”. Varför vi valde att göra ”enum states” var p.g.a. att det var det enklaste sättet att göra de olika stadierna för spelet, inom vår grupps kunskapsnivå. Eftersom nu kunde vi bara köra allt i en huvudfil istället för att ha flera olika filer som ska styras med en ”state hanterare” som kan krångla till det. Det dåliga med ”enum states” är att det blir väldigt mycket kod i en fil och det gör att det blir väldigt grötigt och svårt att hitta den koden du är ute efter. Så ett tips till personer som ska använda ”enum states” gör kommentarer i koden, tydliga kommentarer det gör att det blir lättare att söka på koden du är ute efter och slipper slösa massa tid på att leta kod.