Overheat och enemies.

Den här veckan har jag suttit och pysslat med en hel del olika saker, bland annat med ett vapen heat system som håller koll på om vapnet kan skjutas eller om det behöver kylas ned. Det hela har en mängd små delar som var och en utgör en viktig del för att överhettningen ska fungera som den borde. Dels har vi variablerna som vårat player object håller koll på så som maximala mängden värme som vapnet kan klara av, mängden värme i vapnet för tillfället och om det har blivit överhettat (om värmen har gått upp till max). Sen har vi i våran game-loop kodbitar som börjar med att uppdatera det visuella, kollar först hur mycket värme som finns i vapnet för tillfället, sedan jämför detta med vapnets maximala värme och ritar ut en del av värme mätaren. Sedan går den vidare och undersöker om värmen är över noll och i sådant fall sänker den värmen lite. Sedan om något skulle gå fel och värmen skulle bli negativ så ändras den till 0. Jag har också lagt in lite kod i delen av koden som hanterar skottlossningen. Där lade jag in några rader som gör att värmen ökar så länge som spelaren skjuter. Anledningen till att vi lade in detta system var att utan det kunde man hålla nere vänster musknapp och fortsätta skjuta i all oändlighet, vilket inte var särskilt utmanande och utan utmaning – inget spännande spel. Vilket skulle i sin tur eliminera halva meningen med att göra spel, för vem vill spela ett spel som saknar utmaning? Troligtvis inte väldigt många. Dock finns det ju även sådana personer ute i världen och till dom har vi planerat lite intressanta grejer som har med uppgraderingarna att göra.

Jag har förutom att pyssla med värmesystemet också fixat lite med fienderna. Jag började med att fixa en extremt enkel pathfinding, dvs att fienderna kollar om spelaren är närmare än 400 pixlar så vänder sig fienderna mot spelaren och börjar vandra mot honom/henne. Skulle fienderna komma närmare än 50 pixlar börjar dom kasta lera på spelaren och vid 10 pixlar kvar stannar dom. Detta lade vi in för att kunna kontra en väldigt mysko bugg vi hade i början av projektet. Denna bugg hände när två fiender hamnade på exakt samma position och resulterade i att båda två försvinner mystiskt.

Men nu tror jag att jag har skrivigt tillräckligt, time to code once more.