PROGRESS UPDATE JANUARY 6:•Did some more UI work. Hoping to get a director mode mockup soon.
Relevant but insignificant: events will be represented by coloured dots on the timeline. The colour will probably represent the event type, and probably also if the event is valid.
Which gives a good opportunity to provide some information on the workings of event types.
NO LONGER RELEVANT; EVENT TYPE SYSTEM HAS BEEN REVISEDEvents must have a type to be valid, period. The type of an event determines how it works, and if the correct functions aren't present for this type, it can't function in any way. Types only really need one function in the format of CutsceneEvent::ActionType[TYPENAME](%this). This is what is called to make stuff happen. However, it's highly recommended and a very good idea to also provide another function in the format of CutsceneEvent::ActionCheck[TYPENAME](%this, %nospam). These functions are used as a quick way to confirm that an event is ready to execute. The %nospam parameter is used to turn off any debug messages (obviously all this depends on the coder to do it all properly, though if they use the base code as reference they should). In script, it's not necessary, but it could definitely help avoid breaking things.EDIT:I got the function to display the timeline working. I'll work on stuff to make the numbers easier to read in the future.

It should work with people playing on the lowest possible resolution as well.
PROGRESS UPDATE JANUARY 7:•Made a system to keep track of events on the client-side
•Made some more HUD graphics for events
•Worked on displaying events on the timeline
•Misc. dependency functions
•Finished up the timeline HUD's code
•Created scrubbing controls using the brick movement keys
EDIT:Events now correctly display on the timeline. Every thing on the timeline represents an event. Dots are confirmed good events. Question marks aren't confirmed good (should only appear before the server's sent information about the event). Dots with X through them are confirmed non-ready events by the ActionCheck method. Colours are representative of the event type.

Note that these were created using a function that would vomit out random events.
EDIT:playhead is working, looks a bit goofy atm but this was the first time it was ingame
