endlessrunner's People
endlessrunner's Issues
Pleonasme
Je hebt feedback gekregen van SilvanDomino
op:
PlayerJumpScript
URL: https://github.com/HoliestHoly/endlessrunner/blob/master/Assets/scripts/player scripts/PlayerJumpScript.cs
Feedback: Een scrip met 'script' in de naam is een beetje dubbelop. Het is voor iedereen duidelijk dat een script een script is. Het is vergelijkbaar als 'nat water'.
Jump
Je hebt feedback gekregen van SilvanDomino
op:
//Kijkt of je kan springen
if (Input.GetKeyDown(KeyCode.Space) && CanJump())
{
rigidbody.velocity = new Vector2(rigidbody.velocity.x, jumpPower);
doubleJump = 1;
}
URL: https://github.com/HoliestHoly/endlessrunner/blob/master/Assets/scripts/player scripts/PlayerJumpScript.cs
Feedback: Niet de jump functie die ik had willen zien. Erg weinig controlle over de speler op deze manier.
Gebruik van statische objecten
Je hebt feedback gekregen van SilvanDomino
op:
public static class GlobalVariables{ //Variables dat we in meerdere scripts gebruiken
public static int obstaclesLive;
public static bool spawnNow = false;
public static float speed = 4f;
public static bool playerLost = false;
}
URL: https://github.com/HoliestHoly/endlessrunner/blob/master/Assets/scripts/UI and Utility/GlobalVariables.cs
Feedback: Statische objecten kun je beter vermijden in Unity, omdat deze meer process vermogen verbruiken bij het oproepen en aanpassen.
Om dit te kunnen verhelpen kun je de volgende keer gebruik maken van de Design Pattern genaamd Singleton. Door een Singleton in je game te zetten kan je gebruik maken van globale variabelen.
Erg veel code
Je hebt feedback gekregen van SilvanDomino
op:
if (playerState == PlayerStateEnum.PlayerStates.PlayerBall)
{
//verandert de box collider het rondje
boxCollider.size = new Vector2(1.149944f, 1.149944f);
boxCollider.offset = new Vector2(0.03f, 0.07f);
//verandert de Mesh grootte en vorm van het rondje
transform.localScale = new Vector2(1.149944f, 1.149944f);
meshrenderer.mesh = _playerBall;
}
if (playerState == PlayerStateEnum.PlayerStates.PlayerSquare)
{
//verandert de box collider van het vierkant
boxCollider.size = new Vector2(0.7001128f, 1f);
boxCollider.offset = new Vector2(0.12f, 0.04f);
//verandert de Mesh vorm naar het vierkant
meshrenderer.mesh = _playerSquare;
if (Input.GetKey(KeyCode.LeftShift))
{
//verandert de Mesh grootte van het vierkant
transform.localScale = new Vector2(0.7001128f, 0.5f);
}
else
{
//verandert de Mesh grootte voor crouch het "vierkant"
transform.localScale = new Vector2(0.7001128f, 1.149944f);
}
}
if (playerState == PlayerStateEnum.PlayerStates.PlayerTriangle)
{
//verandert de box collider van de driehoek
boxCollider.size = new Vector2(1f, 3.7f);
boxCollider.offset = new Vector2(1f, 2f);
//verandert de Mesh grootte en vorm van en naar de driehoek
meshrenderer.mesh = _playerTriangle;
transform.localScale = new Vector2(0.3f, 0.3f);
}
URL: https://github.com/HoliestHoly/endlessrunner/blob/master/Assets/scripts/player scripts/PlayerObjectChanges.cs
Feedback: Dit is erg veel code voor iets wat veel makkelijker zou moeten kunnen. Een oplossing waarbij jullie van child game objects wisselen, en dat de children de collision detection doen had bijvoorbeeld veel mooier geweest. Ook hadden jullie de Mesh en collider ergens proberen op te kunnen slaan.
Ook het gebruik van magic numbers (getallen die nergens vandaan lijken te komen) moet je vermijden, want de herbruikbaarheid van deze code is abysmal.
GitIgnore
Je hebt feedback gekregen van SilvanDomino
URL: https://github.com/HoliestHoly/endlessrunner/blob/master/.gitignore
Feedback: Zorg ervoor dat je gelijk de juiste gitignore gebruikt. Hierdoor worden folders als Library en Obj niet meegenomen naar github, en juist deze folders zorgen voor erg veel merge errors.
De gitignore zorgt ervoor dat onnodige bestanden niet geupload worden naar github en iedereen die aan het project werkt. Onnodige bestanden zijn bijvoorbeeld de Library en de Temp folder. Deze kunnen wel voor errors zorgen bij het committen, daarom is het belangrijk dat deze niet gepushed worden.
Dit klinkt misschien als iets heel kleins, maar het is wel essentieel voor het werken in projecten met meerdere mensen, en het is ook een gewoonte die jullie jezelf moeten aanleren.
Goede indeling van scripts in folders.
Je hebt feedback gekregen van SilvanDomino
URL: https://github.com/HoliestHoly/endlessrunner/blob/master/Assets/scripts
Feedback: Dit is een goede indeling en ziet er netjes uit. Ik raad alleen wel om het woord "script" niet te gebruiken. Want alles wat je hier in zit is al een script. Het woord script in de folder namen is dus een beetje overbodig.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.