Hejsan! Sista blogginlägget idag, skönt att bli av med det här om jag ska vara helt ärlig. Så de artefakterna jag tänkte skriva om idag är hur jag gjorde skadeanimationen och ”Healthbar animationen”. Så vad exakt har jag gjort? När man tar skada så vill man gärna veta att man tar skada, man vill alltså ha feedback på det, så att man inte går helt ostört och helt plötsligt är man död och inte vet varför. Därför har skapade vi en ”damge animation” när spelaren tar skada, skulle inte riktigt kalla det en animation för det jag gör är egentligen bara ritar ut en enstaka bild lite snabbt. Samma anledning är varför vi skapade en ”healthbar” för spelaren, för spelaren ska ha koll på hur mycket liv spelaren ha kvar i spelet.
Innan i spelet hade vi ett värdet för spelaren som kallades ”marketvalue” som skulle representera spelaren liv. Detta bytte vi nu till att ha en mer visuell representation för spelarensliv för att göra det klara för spelaren. Just nu så visas ”healthbaren” som en jordglob som töms en 1/10 varje gång spelaren tar skada från fienderna, innan så var det bara en text och siffror som det stod ”marketvaule” på som började på 1000 och sedan gick ner med 100 varje gång spelaren tog skada. Detta fick vi väldigt mycket kritik på så vi bytte till att använda oss utav ett mer visuell representation för ”healthbaren” för spelaren.
Hur har jag gjort det? Eftersom min kunskap inom programmering är väldigt låg så gjorde jag det väldigt lätt för mig. Jag hade 10 olika bilder med en jordglob som var olika mycket fyllda. Så i koden använder jag mig utav ”if sats” som säger om”marketvalue” är lägre eller lika med 900 så ska”healthbar” bilden bytas ut med den bilden med jordgloben som är 9/10 fylld. Sen gör jag bara om denna ”if sats” flera gånger om men byter bilden och regeln i ”if satserna” , om ”marketvalue” ska är mindre eller lika med 800 så byts bilden till en jordglob som är 8/10 fylld osv.
en ”if sats” även kallad villkorssats handlar i huvudsakligen om ett ”om” t.ex. om 7-3 är lika med 4 så ska en viss bild ritas ut.
Med ”damages” bilden använde jag mig också utav ”if satser” men även också en inbyggd klockfunktion i sfml. Så om en fiende kraschar ner på planet så ska en ”damages” bild ritas ut under en viss tid på skärmen i detta fall en halv sekund så kommer bakgrundsbilden bli transparent rött på kanterna.
Varför jag gjorde som jag har gjort har jag ingen riktigt bra anledning, jag testa mig först på”if satser” sen så fungerade det ganska bra redan då så jag kände inte direkt någon anledning av att försöka mig på något annats sätt och jag visste inte heller något annats sätt att göra det på.
.