Nice game and good use of the canvas library, well done on implementing it and using it effectively.
The game works well, has some nice features and has therefore received a good mark across multiple areas such as output (it works!), code knowledge and implementation of logic, readability and responsiveness. There are also some points below to consider for improving the code written.
Global scope code that runs on file start. My understanding is that lines 11-16 run at the start of the application. I would much prefer to see this logic wrapped up inside a function. This gives you control over when it's used (even if its only once when the game starts), and also makes the code more readable, assuming the function is sensibly named.
Nested "if" statements. These are sometimes necessary when multiple this could happen if a condition is met. However in these scenarios (e.g. lines 103-112) there is not an "else" and so instead of making a nested statement you should be able to clean this up and keep it inside a single conditional.
Variable names. Utils.ts is a good example of shortening variable names for no reason. In this scenario I would want to keep these variables (located in a bus file) very readable and hence no abbreviations.
Hi Todd,
Nice game and good use of the canvas library, well done on implementing it and using it effectively. The game works well, has some nice features and has therefore received a good mark across multiple areas such as output (it works!), code knowledge and implementation of logic, readability and responsiveness. There are also some points below to consider for improving the code written.
Great game, great work :) Sam