+
+void FadeOverlay::Fade::validate() const
+{
+ if(!overlay)
+ throw logic_error("null overlay");
+}
+
+
+FadeOverlay::Fade::Loader::Loader(Fade &f, Demo &d):
+ DataFile::DerivedObjectLoader<Fade, Action::Loader>(f, d)
+{
+ add("overlay", &Loader::overlay);
+ add("color", &Loader::color);
+}
+
+void FadeOverlay::Fade::Loader::overlay(const string &n)
+{
+ obj.overlay = &demo.get_thing<FadeOverlay>(n);
+}
+
+void FadeOverlay::Fade::Loader::color(float r, float g, float b, float a)
+{
+ obj.end_color = GL::Color(r, g, b, a);
+}