Today I decided to work on the last major special effect (I know of) remaining to tackle in chapter 1: The alternate reality effect. That is, when certain conditions are met I want the world to suddenly shift to a different state. I thought a bit about what needs to change to make this happen: First, all of the environmental details need to change. This can be achieved fairly elegantly, I realized, by setting some sort of global variable that, when its value changes, all of the details are coded to lose/gain alpha until they all shift as necessary. So I added a global variable system to the particle system, and I can just set those variables externally and create particles that listen for changes. Good. Second, the backdrop image needs to change. This is a bit tricky, actually, just because backdrops are part of the level itself and aren’t really set up for crossfading. However, I realized I could easily fix this just by having an entity draw over the backdrop with a new one, and I need to create an entity anyway to handle this transition, so that’s fine. The behavior for handling this is now created, but is still basically empty except for commented notes about what I want it to do.
These changes handle the details and the backdrop, or will once they’re all implemented. Entities may need to change as well, but that can be handled on a per-entity basis most likely. That leaves only the tileset itself… which, frankly, I’d forgotten until this very moment. Hm. Well, three of four ain’t bad, I can figure out the tileset thing tomorrow.
Also got a chunk of writing done and a bit of commission work.