SinAlert : FlxGroup
- id : int
- Frame : FlxButton (to do the event handling)
*LoveButton, SmiteButton : FlxButton (but just state change, no effect)
- Text : FlxText
- [ TitleBar : FlxSprite (potentially for dragging) ]
The Frame, if clicked puts a copy of itself in an array (or just a variable?) in the state - then on update the state checks the variable (which will be the most recently clicked - the highest) and checks for whether the click was on a button - if so it goes ahead with the appropriate action, if not it doesn’t)
(Alternatively, the Frame AND the buttons could put themselves in the variable/array and then you just check the type of the most recent one and go ahead and execute…)
LET THERE BE SMITE!
= FLIXEL STRUCTURE =
√ * Sin
- For passing around information about an individual sin
√ * SinGenerator
= CODE =
(Idea might be to have a “Sinfo” class that contains all the information about a particular Sin… also a name generator? and a sin type generator? A TextGenerator, basically… that could spit out sins, people, and places…)
-
POP UPS (SinAlert)
- Compose the SinAlert out of the basic frame, x-box, love, and smite buttons
- Insert the generated text about the people, sin, and place into it.
- Place the SinAlert randomly over the CameraView portion of the screen (it shouldn’t be able to cover the Panic button? Or maybe it should… and you have to move it away)
- On click of either option, call appropriate ZoomView popup
-
Change statistics appropriately (reduce sinners by 1)
[LATER] Ability to move alerts around, ability to change focus (bring to top if clicked on)
-
POP UPS (ZoomView)
- Compose the basic frame and x-box
- Insert appropriate text (name, location, sin - sin as title?!)
-
“Insert” appropriate animation of electrocution or blessing
[LATER] procedurally make the person being viewed
-
PANIC BUTTON PRESSED
- LET THERE BE SMITE text across entire screen
- Bring flood water up from the bottom of the screen (just moving a PNG up)
- Reset the game to the starting screen again
[LATER maybe have it sweeping the dialogues away with it, upward, as it hits them]
= GRAPHICS =
== User Interface ==
- Introduction screens (perhaps with a faux loading bar for GodOS) that explain the basics of the game
- “Hi God, welcome to the new GodOS Smiting Application”
- “It’s a simple process really: you can monitor the world you have created on the surveillance cameras.”
- “Whenever a sin is committed, you’ll get a notification and can choose whether to use your infinite Love or to Smite the sinner.”
- “If all else fails, you can hit the panic button to floor the world and start all over again.”
- Smiting Dialogue Box
- Overall frame (with space for text, some kind of title “Sin Alert!”)
- Close box (maybe this should serve to “ignore” the sin?
- Love Button
- Smite Button
- Smiting/Love Display Box
- Overall frame (space for text and display)
- Close box
- Overall screen frame
- Including locations for text
- Panic Button
== World Graphics ==
- Landscapes
- Procedural generation of actual terrain? (Maybe a bit processor expensive? But probably not since it’s just now and then)
- Hut designs (procedural?)
- Textures for ground? Or just variance of colour? (Browns to greens to greys)
- People
- Minipeople (who move around on screen)
- Figures for display boxes (procedural?)
- head/face
- hair
- tunic
- feet (sandals, shoes, bare)
- Effects
- Love effect (ray, halo, maybe lifting the person off the ground a bit?)
- Smite effect (lightning, maybe electrocution silhouette)