Hi, I have been learning game development using LibGdx and Java.
I am making a game similar to Lemonade Tycoon and Papa Hot Doggeria.
The idea of the game is to make recipe for a queue of clients. They ask for something, you have to click and drag things around to prepare the food and sell it to them. The best you do, the more money you get.
I have been able to make the core game mechanic so it is possible to prepare the food. Now I am hurting my head finding a clean and flexible way to incorporate contextual modifier element (as I call them)
One precise contextual element is the location element. When getting more and more money, the player can relocated, in exchange of some gold, in a busier street and be able to sell more hot dog. The location element have many state representing different location with different attributes. Say I would like my game to spawn Client at a speed depending on the location state and have a score/payment modifier because in USA people pay more (...).
At first it look easy, keep track of location in a class or some variable and use is everywhere in different conditional statement when needed. The problem raise when more and more contextual element exist, list of ingredients, list of clients preference, location, employees effects.
Would it be a good Idea to create a Modifier class which knows about all contextual modifier and provide modifier for everything. For exemple, I have calculate a score, then I want to apply the location modifier about score, in USA People pay more for food for example, I would call the modifier class scoreModifier(score) function that would return a modified score? Or should my score calculating element know directly the location element?
hope it make some sense to someone, thank you very much,