Det här är mitt första blogginlägg för det aktuella grupparbetet. Vi har valt att göra ett spel på spelkonceptet ”Fancy Mansion” som grupp 15 skrev.
Den här veckan vill jag skriva om föremålet som jag implementerade i spelet, för tillfället är spelet i pre-alpha och det finns fortfarande buggar kvar att fixa innan alphan. Vasen är ett objekt i spelet som spelaren ska plocka upp och placera på en ”dropzon” för att erhålla poäng/pengar som är målet med spelet.
När jag kodade Vas klassen så återanvände jag mycket av andra objekts kod, vilket redan var färdigskriven, det gör jag bara för att få ut ett objekt i spelet som inte har några speciella värden förutom kollisions box och en sprite/bild. Efter att grunden var implementerad så började jag att koda på en funktion så att spelaren kan ta upp objektet och gå runt med det. Vasen tar spelar-spritens position för att följa efter spelaren när den hålls av spelaren. När det fungerade någorlunda bra så började jag skriva på olika ”states” som är olika tillstånd. I det här fallet bara ett sant eller falskt tillstånd är möjligt. Jag var även tvungen att men den mängd kunskap jag har, skapa en variabel i player/spelaren med som också är sant eller falsk för att se om spelaren håller i föremålet.
Nästa steg var att visa spelaren ifall han kan ta upp föremålet, då kodade jag en ”hover” effekt som byter bild på vasen när spelaren håller musen över objektet och är inom ett bestämt avstånd från vasen. Spelaren kan bara hålla i ett av de större objekten åt gången under spelets gång, därför behövde jag även lägga till en funktion som kollar om spelaren redan håller i ett av de större objekten och då förhindra spelaren från att ta upp fler föremål. Jag väljer att göra ”bool”(sant/falskt) variabler i spelaren och objekten för att det är lätt att kontrollera då det vi ska kolla på bara är sant eller falskt. Sen så är min kunskaper begränsade och därför kodar jag på det sättet.
När upplockning och släpp (pickup/drop) av föremålen var implementerade så kodade jag lite mer på när du släpper föremålet på en ”dropzon” så ska poängen öka i spelarens poäng variabel, för tillfället är det ett fel som uppstår när spelaren placerar vasen på två ”tiles”(plattor) samtidigt och då dubblas poängen som objektet ska ge till spelarens poäng, det ska inte hända. Men den bugfixen får vänta till nästa vecka.
//Andreas Lundmark
Hej Andreas! Det ser över lag bra ut och jag förstår vad du har gjort, även om det finns några otydligheter. Jag vet själv hur svårt det är att skriva om saker som man har programmerat och få det förståeligt. Det jag fann mest intressant var det med att objekten endast kan plockas upp om spelaren är tillräckligt nära, och skulle gärna vilja veta lite mer om hur det implementeras, t.ex. kollar du avståndet mellan spelaren och objektet eller löses det på ett annat sätt? Så det jag skulle vilja veta mer om är hur du gör vissa implementationer.
SvaraRaderaFanns det alternativ till dina lösningar som du funderat på och i så fall varför valde du det sätt som nu är implementerat? Jag skulle gärna vilja se lite mer om hur du gör vissa implementationer också, även om det kan vara svårt att skriva ner.
Men som sagt, jag förstår vad som har gjorts, men skulle vilja se mer om hur du gjort och varför du gjort som du gjort.
Bra jobbat!
//Sven, Team 1