Index: branches/mountain_lake/src/lib/graphics/effects/cloud_effect.cc
===================================================================
--- branches/mountain_lake/src/lib/graphics/effects/cloud_effect.cc	(revision 9028)
+++ branches/mountain_lake/src/lib/graphics/effects/cloud_effect.cc	(revision 9109)
@@ -51,4 +51,6 @@
                         addMethod("skyColor", ExecutorLua4<CloudEffect,float,float,float,float>(&CloudEffect::shellSkyColor))
                         ->addMethod("cloudColor", ExecutorLua4<CloudEffect,float,float,float,float>(&CloudEffect::shellCloudColor))
+                        ->addMethod("activate", ExecutorLua0<CloudEffect>(&CloudEffect::activate))
+                        ->addMethod("deactivate", ExecutorLua0<CloudEffect>(&CloudEffect::deactivate))
                        );
 
Index: branches/mountain_lake/src/lib/graphics/effects/fog_effect.cc
===================================================================
--- branches/mountain_lake/src/lib/graphics/effects/fog_effect.cc	(revision 9028)
+++ branches/mountain_lake/src/lib/graphics/effects/fog_effect.cc	(revision 9109)
@@ -19,4 +19,5 @@
 
 #include "shell_command.h"
+#include "script_class.h"
 
 // Define shell commands
@@ -27,4 +28,11 @@
 
 using namespace std;
+
+CREATE_SCRIPTABLE_CLASS(FogEffect, CL_FOG_EFFECT,
+                        addMethod("fadeIn", ExecutorLua0<FogEffect>(&FogEffect::fadeInFog))
+                            ->addMethod("fadeOut", ExecutorLua0<FogEffect>(&FogEffect::fadeOutFog))
+                            ->addMethod("activate", ExecutorLua0<FogEffect>(&FogEffect::activate))
+                            ->addMethod("deactivate", ExecutorLua0<FogEffect>(&FogEffect::deactivate))
+                       );
 
 CREATE_FACTORY(FogEffect, CL_FOG_EFFECT);
Index: branches/mountain_lake/src/lib/graphics/effects/lightning_effect.cc
===================================================================
--- branches/mountain_lake/src/lib/graphics/effects/lightning_effect.cc	(revision 9028)
+++ branches/mountain_lake/src/lib/graphics/effects/lightning_effect.cc	(revision 9109)
@@ -29,4 +29,5 @@
 #include "light.h"
 #include "cloud_effect.h"
+#include "script_class.h"
 
 SHELL_COMMAND(activate, LightningEffect, activateLightning);
@@ -34,4 +35,9 @@
 
 using namespace std;
+
+CREATE_SCRIPTABLE_CLASS(LightningEffect, CL_LIGHTNING_EFFECT,
+                        addMethod("activate", ExecutorLua0<LightningEffect>(&LightningEffect::activate))
+                            ->addMethod("deactivate", ExecutorLua0<LightningEffect>(&LightningEffect::deactivate))
+                       );
 
 CREATE_FACTORY(LightningEffect, CL_LIGHTNING_EFFECT);
Index: branches/mountain_lake/src/lib/graphics/effects/rain_effect.cc
===================================================================
--- branches/mountain_lake/src/lib/graphics/effects/rain_effect.cc	(revision 9028)
+++ branches/mountain_lake/src/lib/graphics/effects/rain_effect.cc	(revision 9109)
@@ -29,4 +29,5 @@
 #include "light.h"
 #include "cloud_effect.h"
+#include "script_class.h"
 
 #include "parser/tinyxml/tinyxml.h"
@@ -39,4 +40,11 @@
 
 using namespace std;
+
+CREATE_SCRIPTABLE_CLASS(RainEffect, CL_RAIN_EFFECT,
+                        addMethod("startRaining", ExecutorLua0<RainEffect>(&RainEffect::startRaining))
+                            ->addMethod("stopRaining", ExecutorLua0<RainEffect>(&RainEffect::stopRaining))
+                            ->addMethod("activate", ExecutorLua0<RainEffect>(&RainEffect::activate))
+                            ->addMethod("deactivate", ExecutorLua0<RainEffect>(&RainEffect::deactivate))
+                       );
 
 CREATE_FACTORY(RainEffect, CL_RAIN_EFFECT);
Index: branches/mountain_lake/src/lib/graphics/effects/snow_effect.cc
===================================================================
--- branches/mountain_lake/src/lib/graphics/effects/snow_effect.cc	(revision 9028)
+++ branches/mountain_lake/src/lib/graphics/effects/snow_effect.cc	(revision 9109)
@@ -27,4 +27,5 @@
 #include "plane_emitter.h"
 #include "shell_command.h"
+#include "script_class.h"
 
 #include "parser/tinyxml/tinyxml.h"
@@ -34,4 +35,9 @@
 
 using namespace std;
+
+CREATE_SCRIPTABLE_CLASS(SnowEffect, CL_SNOW_EFFECT,
+                            addMethod("activate", ExecutorLua0<SnowEffect>(&SnowEffect::activate))
+                            ->addMethod("deactivate", ExecutorLua0<SnowEffect>(&SnowEffect::deactivate))
+                       );
 
 CREATE_FACTORY(SnowEffect, CL_SNOW_EFFECT);
