Del tre – Veckan efter Alpha början till Beta
|
Hur ska man säga, efter att gruppen inte lyckades få med alla bitar, har vi jobbat sedan i lördags med allt ifrån att fixa en HUD till att skriva om hela strukturen av fienderna. Jag fixade så att fienden kunde skjuta, med hjälp av koden som redan på plats ifrån Avataren. Allt jag tog bort var mus-positionen men jag skapade en klass av det vi hade pratat om. Använde en bullet klass för allt, men under helgen ville vi bara få in så många funktioner som möjligt. Efter det ville de få fienderna att spawn “igen” men det kände jag att det kanske blir tråkigt, försökte få fram en annan lösning än den jag fick ta in i spelet under helgen. Men under måndagen letade jag reda på lite hjälp ifrån folk i andra grupper för att de kunde säga vad som var fel med min kod för den riktiga fiende Spawn logiken jag tänkte mig. Alltså efter ett bra tag fick jag den att spawn fiender på koordinater från en file “tileSystem” för att lättare kunna göra mönster av fienderna sen när spelet slutar i stället för att döda alla. Men när jag försökte fixa Spawn mekaniken fick jag på mig att skriva om all kod om hur fienderna hanterades ifrån Main loopen, då den som var på plats innan var mindre “justerbar” är ordvalet jag använder. Fick lägga ner tid på att skriva om allt om vad som kan kollidera med fienden, hur fienden skjuter, vad som kan döda fienden, hur den uppdateras och ritas ut på skärm. Nu är den en iterator av fienden. Med hjälp av level-filen kan jag placera ut hur många som helst och var som helst. Nja, jag återvände kod ifrån mitt föra project med den lösningen men nåt har blivit galet. mellan varje 1 som är fienden är det 20 st 0:or. 1 0 0 0 0 0 0 0 0 0 Den ska se ut något så här (Vet inte exakt om 1:orna är placerad rätt jämförelse med ovan här skriv ihop det nu.): 0 0 0 0 0 0 0 0 0 1 Jag har försökt att lösa problemet men har lagt det åt sidan, om ni ser problemet kan ni kommentera på det Har ändrat I och J fram och tillbaka mm, men det får vara så ett tag till. std::ifstream lvlfile(“../Level/lvl1.txt”); if (lvlfile.is_open()) { int x; int y; int index; lvlfile >> x; lvlfile >> y; for (int i = 0; i < y; i++) { for (int j = 0; j < x; j++) { lvlfile >> index; if (index == 1) { X_pos = j * 100; Y_pos = i * 117; Entitet* cep = new Entitet(sf::Vector2f(X_pos, Y_pos), enemy1Sprite); it_Entitet.push_back(cep); } } } } myfile.close(); Tisdagen blev också mycket till att försöka fixa spawn filen och implementeringen av rörande bakgrund med en parallax bild det skapar lite djup i det hela men själv tycker jag fortfarande att parallax bilden ska vara bakgrunden då den känns vara längre ifrån. Simpel lösning tack vare sfmls funktioner. Move och en if sats wraparound om den går helt utanför skärmen. Mot slutet av dagen tog vi tid att verkligen låta spelet bli helt men alla vår bitar vi jobbat med för att sedan visa upp spelet under onsdagen för läraren då vår Aplha deadline blev förlängd. Så här ser Play funktionen ut i snabba drag. Sedan i en annan del av koden när ljudet är färdig klar deltas den ifrån listan. Dessa två bilder är samma bild, men ena har beskrivningar på sig och den andra är lättare att se.
|


