Book Image

Learning Design Patterns with Unity

By : Harrison Ferrone
Book Image

Learning Design Patterns with Unity

By: Harrison Ferrone

Overview of this book

Struggling to write maintainable and clean code for your Unity games? Look no further! Learning Design Patterns with Unity empowers you to harness the fullest potential of popular design patterns while building exciting Unity projects. Through hands-on game development, you'll master creational patterns like Prototype to efficiently spawn enemies and delve into behavioral patterns like Observer to create reactive game mechanics. As you progress, you'll also identify the negative impacts of bad architectural decisions and understand how to overcome them with simple but effective practices. By the end of this Unity 2023 book, the way you develop Unity games will change. You'll emerge not just as a more skilled Unity developer, but as a well-rounded software engineer equipped with industry-leading design patterns.
Table of Contents (23 chapters)
21
Other Books You May Enjoy
22
Index

Storing state history

Before we end the chapter, we should talk about how to keep track of your state machine’s history. This feature isn’t strictly part of the State pattern, but it’s a handy way of automatically assigning the correct next state rather than hardcoding them in each concrete state.

Like the Command pattern undo/redo system from Chapter 8, Binding Actions with the Command Pattern, the Stack type is going to save us a lot of trouble with this problem. Using Stack's last-in-first-out (LIFO) functionality, we can push new states onto the stack, which always makes the current state the one on top. This doesn’t do much for the first state, but when we move through state transitions, the stack will continue storing all the previous states underneath the current state. When we want to revert to the previous state or states, we pop the current state off the top and reference the new state that was next in line!

In automata theory...