Skapa din egen 2D spel! (4 / 5 steg)
Steg 4:4. Kodning
Kodning
Okej, nu är dags för något mer tråkiga delen. Innan vi ändrar inställningarna så vidare sidan baren radnumren visas. Detta hjälper dig att följa med.
Klicka på Verktyg > alternativ sedan längst ned väljer du "Visa alla alternativ". Klicka sedan på Text Editor > alla språk och välj radnummer under displayen. Klicka på OK.
Kan börja med några
lätt anpassningar i koden.
Linje 204 string timeString = "tid:" + nivå. TimeRemaining.Minutes.ToString("00") + ":" + nivå. TimeRemaining.Seconds.ToString("00");
Du kan ändra "tid:" till någon sak annat som visas före den återstående tiden.
Linje 210 timeColor = Color.Yellow;
Du kan ändra "Gul" till någon färg (detta ändrar tid teckenfärg)
Linje 214 timeColor = Color.Red;
Du kan ändra "Röd" till någon färg (detta ändrar tid teckenfärg när varning tid nås)
Linje 43 privat statiska skrivskyddade TimeSpan WarningTime = TimeSpan.FromSeconds(30);
Du kan ändra '30' till antalet sekunder kvar tills tid börjar blinka
Linje 220 DrawShadowedString (hudFont, "poäng:" + nivå. Score.ToString(), hudLocation + nya Vector2 (0.0f, timeHeight * 1.2f), Color.Yellow);
Du kan ändra "poäng:" till någon sak annat som visas före den återstående tiden.
Du kan ändra "Gula" till någon färg ändra poäng teckenfärg.
2. om du minns, i början nämnde jag något om att göra ditt spel Full skärm. Problemet är, eftersom jag vill hålla koden så enkel som möjligt så för att göra detta måste du ändra bakgrunden bildens storlek och storleken på din nivå.
Första koden:
Sätta detta efter Content.RootDirectory = "Innehåll"; på linje 59
this.graphics.PreferredBackBufferWidth = 48.
this.graphics.PreferredBackBufferHeight = 8;
this.graphics.IsFullScreen = sant;
För det andra för bakgrunden använde jag en upplösning på 1600x900px (du kan leka med storleken om du vill)
För det tredje nivå storlek för är min 23Lines av 33Collumns.
Du kan också ändra bakgrundsfärgen på skärmen inte omfattas av din bild.
Linje 184 grafik. GraphicsDevice.Clear(Color.CornflowerBlue); Ändra "CornflowerBlue" till någon annan färg. 3. om du gjorde din spelet full skärm du förmodligen ett sätt att lämna, rätt? Lägg bara till följande kod efter linje 133. om (keyboardState.IsKeyDown(Keys.Escape)) Exit();
Du kan nu avsluta spelet genom att klicka på Escape-tangenten.
4. nu kan ta en titt på Level.cs
Linje 98 timeRemaining = TimeSpan.FromMinutes(2.0); Du kan ändra antalet minuter ges genom att ändra "2.0" (.5 lika med 30 sekunder) linje 71 privata const int PointsPerSecond = 5; Du kan ändra "5" till antalet poäng du vill ha din spelare att ta emot per andra kvar när du kommer till avfarten. 7. nu kan lägga till ett nytt Monster! Lägg till följande kod efter linje 208 i level.cs:
fallet ":
återgå LoadEnemyTile (x, y, "Monster");
Du kan lägga till detta till din nivå med 'S "men först panelen lösning explorer rätt klick"Sprites"Välj Lägg till nytt och sedan mappen. Sedan i vårt fall kommer du namn den monster, och sedan importera nya animationer som vi gjorde tidigare. Obs: om du skulle lik mig till höger en handledning om hur du anpassar monster Vänligen säga så i recensioner. 8. nu kan lägga till några nya block. (Mycket liknar monster) Lägg till följande kod efter linje 226 i level.cs
framkomliga block
fallet "V":
återgå LoadVarietyTile ("BlockV", 1, TileCollision.Passable);
Du kan ändra 'V' andra brev eller symbol för närvarande inte används för att placera något i nivåer. Du kan också ändra "BlockV" att något inte används, men kom ihåg "BlockV" är namnet på Png-filen som ska placeras i mappen "Plattor". '1' är antalet ramar används för din block. Du kan också ändra 'Passable' till 'oframkomlig"att avgöra spelarens eller enemys kan resa genom blocket. Slutligen måste du importerar png-bilden tillbaka till mappen plattor på samma sätt som vi gjorde innan. Okej, innan vi går är två viktiga funktioner kvar ur spelet; men jag kunde inte hitta en idealisk lösning till incooperate dessa funktioner. Dessa funktioner att göra poäng återlösen mellan nivåer och att en spelare start när tiden löper ut (eller dör). Jag kommer att titta för att fixa detta, men om någon finner är idealiskt sätt före mig vänligen dela! (Jag kommer att ge dig kredit)