diff --git a/SneakySalamander.json b/SneakySalamander.json
index cdb1bd5bcf20fa8b3f98af506b037c90025d58ef..3bf18f5f3821787d8b980f5a7555737db7616e06 100644
--- a/SneakySalamander.json
+++ b/SneakySalamander.json
@@ -77150,103 +77150,84 @@
         {
           "angle": 0,
           "customSize": true,
-          "depth": 1,
-          "height": 512,
-          "layer": "",
-          "name": "Ladder",
-          "persistentUuid": "6eae3971-b2cb-42d6-809b-b57eea147086",
-          "width": 171,
-          "x": 1237,
-          "y": -256,
-          "zOrder": 92,
-          "numberProperties": [],
-          "stringProperties": [],
-          "initialVariables": []
-        },
-        {
-          "angle": 0,
-          "customSize": true,
-          "depth": 1,
-          "height": 512,
-          "layer": "",
-          "name": "Ladder",
-          "persistentUuid": "d54e7147-b6ae-442d-94a0-26133cb07b59",
-          "width": 171,
-          "x": 1237,
-          "y": 256,
-          "zOrder": 92,
-          "numberProperties": [],
-          "stringProperties": [],
-          "initialVariables": []
-        },
-        {
-          "angle": 0,
-          "customSize": true,
-          "depth": 4,
-          "height": 64,
+          "depth": 0,
+          "height": 192,
           "layer": "",
-          "name": "BoundaryJumpThrough",
-          "persistentUuid": "4b7ec248-3192-4172-9285-d163c81ebfd8",
+          "name": "LaserDemon_Base",
+          "persistentUuid": "c65b24a8-231e-4bc5-b84d-7a277b03b4a8",
           "width": 192,
-          "x": 1216,
-          "y": -256,
-          "zOrder": 93,
+          "x": 1120,
+          "y": 288,
+          "zOrder": 1017,
           "numberProperties": [],
           "stringProperties": [],
-          "initialVariables": []
+          "initialVariables": [
+            {
+              "folded": true,
+              "name": "OnOffTime",
+              "type": "number",
+              "value": 3
+            },
+            {
+              "folded": true,
+              "name": "FireOffsetTime",
+              "type": "number",
+              "value": 0
+            }
+          ]
         },
         {
           "angle": 0,
           "customSize": true,
-          "depth": 1,
-          "height": 448,
-          "layer": "",
-          "name": "StaticPlatform3",
-          "persistentUuid": "d54f81d2-3bd8-4102-9269-8da3da570711",
-          "width": 896,
-          "x": 832,
-          "y": 736,
-          "zOrder": 72,
-          "numberProperties": [],
-          "stringProperties": [],
-          "initialVariables": []
-        },
-        {
-          "angle": 180,
-          "customSize": true,
           "depth": 0,
           "height": 192,
           "layer": "",
-          "name": "MiteDemon_Base",
-          "persistentUuid": "c09e9be1-d387-4241-86e5-fd9a3cd97beb",
-          "width": 256,
-          "x": 2080,
+          "name": "LaserDemon_Base",
+          "persistentUuid": "ed4645b7-1bd0-453d-8a8c-dc9130656fff",
+          "width": 192,
+          "x": 1120,
           "y": 640,
-          "zOrder": 155,
+          "zOrder": 1017,
           "numberProperties": [],
           "stringProperties": [],
           "initialVariables": [
             {
               "folded": true,
-              "name": "FireOffsetTime",
+              "name": "OnOffTime",
               "type": "number",
-              "value": 0.75
+              "value": 3
             },
             {
               "folded": true,
-              "name": "ProjectileLifetime",
+              "name": "FireOffsetTime",
               "type": "number",
-              "value": 3
-            },
+              "value": 0
+            }
+          ]
+        },
+        {
+          "angle": 0,
+          "customSize": false,
+          "height": 0,
+          "layer": "",
+          "name": "LaserDemon_Beam",
+          "persistentUuid": "1bb36d2f-096f-4ae1-af6b-f46090caaac8",
+          "width": 0,
+          "x": 1152,
+          "y": 448,
+          "zOrder": 1018,
+          "numberProperties": [],
+          "stringProperties": [],
+          "initialVariables": [
             {
               "folded": true,
-              "name": "MiteMaxSpeed",
+              "name": "FireOffsetTime",
               "type": "number",
-              "value": 600
+              "value": 0
             },
             {
               "folded": true,
-              "name": "FireFrequencyTime",
+              "name": "OnOffTime",
               "type": "number",
               "value": 3
             }
@@ -77609,6 +77590,7 @@
                   "colorG": 176,
                   "colorR": 74,
                   "creationTime": 0,
+                  "folded": true,
                   "name": "Keyboard Player Controls",
                   "source": "",
                   "type": "BuiltinCommonInstructions::Group",
@@ -78659,6 +78641,64 @@
                                             "60"
                                           ]
                                         }
+                                      ],
+                                      "events": [
+                                        {
+                                          "type": "BuiltinCommonInstructions::Standard",
+                                          "conditions": [
+                                            {
+                                              "type": {
+                                                "value": "VarObjet"
+                                              },
+                                              "parameters": [
+                                                "LaserDemon_Base",
+                                                "FireOffsetTime",
+                                                "=",
+                                                "0"
+                                              ]
+                                            }
+                                          ],
+                                          "actions": [
+                                            {
+                                              "type": {
+                                                "value": "SetObjectVariableAsBoolean"
+                                              },
+                                              "parameters": [
+                                                "LaserDemon_Base",
+                                                "NeedsOffsetReset",
+                                                "False"
+                                              ]
+                                            }
+                                          ]
+                                        },
+                                        {
+                                          "type": "BuiltinCommonInstructions::Standard",
+                                          "conditions": [
+                                            {
+                                              "type": {
+                                                "value": "VarObjet"
+                                              },
+                                              "parameters": [
+                                                "LaserDemon_Base",
+                                                "FireOffsetTime",
+                                                "!=",
+                                                "0"
+                                              ]
+                                            }
+                                          ],
+                                          "actions": [
+                                            {
+                                              "type": {
+                                                "value": "SetObjectVariableAsBoolean"
+                                              },
+                                              "parameters": [
+                                                "LaserDemon_Base",
+                                                "NeedsOffsetReset",
+                                                "True"
+                                              ]
+                                            }
+                                          ]
+                                        }
                                       ]
                                     },
                                     {
@@ -79061,6 +79101,7 @@
                   "colorG": 176,
                   "colorR": 74,
                   "creationTime": 0,
+                  "folded": true,
                   "name": "Set Positions for Killable Enemies and Moving Platforms To Reset To",
                   "source": "",
                   "type": "BuiltinCommonInstructions::Group",
@@ -79216,18 +79257,6 @@
                   "source": "",
                   "type": "BuiltinCommonInstructions::Group",
                   "events": [
-                    {
-                      "type": "BuiltinCommonInstructions::Comment",
-                      "color": {
-                        "b": 109,
-                        "g": 230,
-                        "r": 255,
-                        "textB": 0,
-                        "textG": 0,
-                        "textR": 0
-                      },
-                      "comment": "Guys guys I think I got inheritance working"
-                    },
                     {
                       "type": "BuiltinCommonInstructions::Standard",
                       "conditions": [
@@ -80018,7 +80047,6 @@
                   "colorG": 16,
                   "colorR": 189,
                   "creationTime": 0,
-                  "folded": true,
                   "name": "Laser Demon",
                   "source": "",
                   "type": "BuiltinCommonInstructions::Group",
@@ -80080,6 +80108,36 @@
                             "LaserDemon_BeamSingle.Y()"
                           ]
                         }
+                      ],
+                      "events": [
+                        {
+                          "type": "BuiltinCommonInstructions::Standard",
+                          "conditions": [
+                            {
+                              "type": {
+                                "value": "VarObjet"
+                              },
+                              "parameters": [
+                                "LaserDemon_Base",
+                                "FireOffsetTime",
+                                "=",
+                                "0"
+                              ]
+                            }
+                          ],
+                          "actions": [
+                            {
+                              "type": {
+                                "value": "SetObjectVariableAsBoolean"
+                              },
+                              "parameters": [
+                                "LaserDemon_Base",
+                                "NeedsOffsetReset",
+                                "False"
+                              ]
+                            }
+                          ]
+                        }
                       ]
                     },
                     {
@@ -80138,18 +80196,6 @@
                             }
                           ]
                         },
-                        {
-                          "type": "BuiltinCommonInstructions::Comment",
-                          "color": {
-                            "b": 109,
-                            "g": 230,
-                            "r": 255,
-                            "textB": 0,
-                            "textG": 0,
-                            "textR": 0
-                          },
-                          "comment": "Make sure if beam is supposed to come on almost immediately, we still play a short charging up animation"
-                        },
                         {
                           "type": "BuiltinCommonInstructions::Standard",
                           "conditions": [
@@ -80163,137 +80209,186 @@
                                 "<",
                                 "1"
                               ]
-                            },
-                            {
-                              "type": {
-                                "value": "ObjectVariableAsBoolean"
-                              },
-                              "parameters": [
-                                "LaserDemon_Base",
-                                "CurrentlyChargingOrHasChargedUp",
-                                ""
-                              ]
                             }
                           ],
-                          "actions": [
-                            {
-                              "type": {
-                                "value": "Tween::TweenBehavior::AddObjectOpacityTween2"
-                              },
-                              "parameters": [
-                                "LaserDemon_Base",
-                                "Tween",
-                                "\"ChargeUp\"",
-                                "255",
-                                "\"linear\"",
-                                "max(LaserDemon_Base.FireOffsetTime, 0.15)",
-                                ""
-                              ]
-                            },
+                          "actions": [],
+                          "events": [
                             {
-                              "type": {
-                                "value": "SetObjectVariableAsBoolean"
+                              "type": "BuiltinCommonInstructions::Comment",
+                              "color": {
+                                "b": 109,
+                                "g": 230,
+                                "r": 255,
+                                "textB": 0,
+                                "textG": 0,
+                                "textR": 0
                               },
-                              "parameters": [
-                                "LaserDemon_Base",
-                                "CurrentlyChargingOrHasChargedUp",
-                                "True"
-                              ]
+                              "comment": "Make sure if beam is supposed to come on almost immediately, we still play a short charging up animation"
                             },
                             {
-                              "type": {
-                                "value": "SetObjectVariableAsBoolean"
-                              },
-                              "parameters": [
-                                "LaserDemon_Base",
-                                "NeedsOffsetReset",
-                                "False"
-                              ]
-                            }
-                          ]
-                        },
-                        {
-                          "type": "BuiltinCommonInstructions::Comment",
-                          "color": {
-                            "b": 109,
-                            "g": 230,
-                            "r": 255,
-                            "textB": 0,
-                            "textG": 0,
-                            "textR": 0
-                          },
-                          "comment": "Reset timer if offset reached"
-                        },
-                        {
-                          "type": "BuiltinCommonInstructions::Standard",
-                          "conditions": [
-                            {
-                              "type": {
-                                "value": "VarObjet"
-                              },
-                              "parameters": [
-                                "LaserDemon_Base",
-                                "FireOffsetTime",
-                                "!=",
-                                "0"
+                              "type": "BuiltinCommonInstructions::Standard",
+                              "conditions": [
+                                {
+                                  "type": {
+                                    "value": "ObjectVariableAsBoolean"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "CurrentlyChargingOrHasChargedUp",
+                                    ""
+                                  ]
+                                }
+                              ],
+                              "actions": [
+                                {
+                                  "type": {
+                                    "value": "Tween::TweenBehavior::AddObjectOpacityTween2"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "Tween",
+                                    "\"ChargeUp\"",
+                                    "255",
+                                    "\"linear\"",
+                                    "max(LaserDemon_Base.FireOffsetTime, 0.15)",
+                                    ""
+                                  ]
+                                },
+                                {
+                                  "type": {
+                                    "value": "SetObjectVariableAsBoolean"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "CurrentlyChargingOrHasChargedUp",
+                                    "True"
+                                  ]
+                                }
                               ]
                             },
                             {
-                              "type": {
-                                "value": "ObjectVariableAsBoolean"
+                              "type": "BuiltinCommonInstructions::Comment",
+                              "color": {
+                                "b": 109,
+                                "g": 230,
+                                "r": 255,
+                                "textB": 0,
+                                "textG": 0,
+                                "textR": 0
                               },
-                              "parameters": [
-                                "LaserDemon_Base",
-                                "NeedsOffsetReset",
-                                "True"
-                              ]
+                              "comment": "Reset timer if offset reached"
                             },
                             {
-                              "type": {
-                                "value": "CompareObjectTimer"
-                              },
-                              "parameters": [
-                                "LaserDemon_Base",
-                                "\"FireTimer\"",
-                                ">=",
-                                "LaserDemon_Base.FireOffsetTime"
-                              ]
-                            }
-                          ],
-                          "actions": [
-                            {
-                              "type": {
-                                "value": "SetObjectVariableAsBoolean"
-                              },
-                              "parameters": [
-                                "LaserDemon_Base",
-                                "NeedsOffsetReset",
-                                "False"
+                              "type": "BuiltinCommonInstructions::Standard",
+                              "conditions": [
+                                {
+                                  "type": {
+                                    "value": "ObjectVariableAsBoolean"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "NeedsOffsetReset",
+                                    "True"
+                                  ]
+                                },
+                                {
+                                  "type": {
+                                    "value": "CompareObjectTimer"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "\"FireTimer\"",
+                                    ">=",
+                                    "LaserDemon_Base.FireOffsetTime"
+                                  ]
+                                }
+                              ],
+                              "actions": [
+                                {
+                                  "type": {
+                                    "value": "SetObjectVariableAsBoolean"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "NeedsOffsetReset",
+                                    "False"
+                                  ]
+                                },
+                                {
+                                  "type": {
+                                    "value": "ResetObjectTimer"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "\"FireTimer\""
+                                  ]
+                                }
                               ]
                             },
                             {
-                              "type": {
-                                "value": "ResetObjectTimer"
-                              },
-                              "parameters": [
-                                "LaserDemon_Base",
-                                "\"FireTimer\""
+                              "type": "BuiltinCommonInstructions::Standard",
+                              "conditions": [
+                                {
+                                  "type": {
+                                    "value": "ObjectVariableAsBoolean"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "CurrentlyChargingOrHasChargedDown",
+                                    "True"
+                                  ]
+                                },
+                                {
+                                  "type": {
+                                    "value": "CompareObjectTimer"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "\"FireTimer\"",
+                                    ">=",
+                                    "2 * LaserDemon_Base.OnOffTime - LaserDemon_Base.FireOffsetTime - (1 - LaserDemon_Base.FireOffsetTime)"
+                                  ]
+                                }
+                              ],
+                              "actions": [
+                                {
+                                  "type": {
+                                    "value": "Tween::TweenBehavior::AddObjectOpacityTween2"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "Tween",
+                                    "\"ChargeUp\"",
+                                    "255",
+                                    "\"linear\"",
+                                    "1",
+                                    ""
+                                  ]
+                                },
+                                {
+                                  "type": {
+                                    "value": "SetObjectVariableAsBoolean"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "CurrentlyChargingOrHasChargedUp",
+                                    "True"
+                                  ]
+                                },
+                                {
+                                  "type": {
+                                    "value": "SetObjectVariableAsBoolean"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "CurrentlyChargingOrHasChargedDown",
+                                    "False"
+                                  ]
+                                }
                               ]
                             }
                           ]
                         },
-                        {
-                          "type": "BuiltinCommonInstructions::Comment",
-                          "color": {
-                            "b": 109,
-                            "g": 230,
-                            "r": 255,
-                            "textB": 0,
-                            "textG": 0,
-                            "textR": 0
-                          },
-                          "comment": "Charging up animation (glow) 1 sec before laser appears"
-                        },
                         {
                           "type": "BuiltinCommonInstructions::Standard",
                           "conditions": [
@@ -80307,52 +80402,141 @@
                                 ">=",
                                 "1"
                               ]
-                            },
+                            }
+                          ],
+                          "actions": [],
+                          "events": [
                             {
-                              "type": {
-                                "value": "ObjectVariableAsBoolean"
+                              "type": "BuiltinCommonInstructions::Comment",
+                              "color": {
+                                "b": 109,
+                                "g": 230,
+                                "r": 255,
+                                "textB": 0,
+                                "textG": 0,
+                                "textR": 0
                               },
-                              "parameters": [
-                                "LaserDemon_Base",
-                                "CurrentlyChargingOrHasChargedUp",
-                                ""
-                              ]
+                              "comment": "Reset timer if offset reached"
                             },
                             {
-                              "type": {
-                                "value": "CompareObjectTimer"
-                              },
-                              "parameters": [
-                                "LaserDemon_Base",
-                                "\"FireTimer\"",
-                                ">=",
-                                "LaserDemon_Base.FireOffsetTime - 1"
+                              "type": "BuiltinCommonInstructions::Standard",
+                              "conditions": [
+                                {
+                                  "type": {
+                                    "value": "ObjectVariableAsBoolean"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "NeedsOffsetReset",
+                                    "True"
+                                  ]
+                                },
+                                {
+                                  "type": {
+                                    "value": "CompareObjectTimer"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "\"FireTimer\"",
+                                    ">=",
+                                    "LaserDemon_Base.FireOffsetTime"
+                                  ]
+                                }
+                              ],
+                              "actions": [
+                                {
+                                  "type": {
+                                    "value": "SetObjectVariableAsBoolean"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "NeedsOffsetReset",
+                                    "False"
+                                  ]
+                                },
+                                {
+                                  "type": {
+                                    "value": "ResetObjectTimer"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "\"FireTimer\""
+                                  ]
+                                }
                               ]
-                            }
-                          ],
-                          "actions": [
+                            },
                             {
-                              "type": {
-                                "value": "Tween::TweenBehavior::AddObjectOpacityTween2"
+                              "type": "BuiltinCommonInstructions::Comment",
+                              "color": {
+                                "b": 109,
+                                "g": 230,
+                                "r": 255,
+                                "textB": 0,
+                                "textG": 0,
+                                "textR": 0
                               },
-                              "parameters": [
-                                "LaserDemon_Base",
-                                "Tween",
-                                "\"ChargeUp\"",
-                                "255",
-                                "\"linear\"",
-                                "1",
-                                ""
-                              ]
+                              "comment": "Charging up animation (glow) 1 sec before laser appears"
                             },
                             {
-                              "type": {
-                                "value": "SetObjectVariableAsBoolean"
-                              },
-                              "parameters": [
-                                "LaserDemon_Base",
-                                "CurrentlyChargingOrHasChargedUp",
-                                "True"
+                              "type": "BuiltinCommonInstructions::Standard",
+                              "conditions": [
+                                {
+                                  "type": {
+                                    "value": "ObjectVariableAsBoolean"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "CurrentlyChargingOrHasChargedUp",
+                                    ""
+                                  ]
+                                },
+                                {
+                                  "type": {
+                                    "value": "CompareObjectTimer"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "\"FireTimer\"",
+                                    ">=",
+                                    "LaserDemon_Base.FireOffsetTime - 1"
+                                  ]
+                                }
+                              ],
+                              "actions": [
+                                {
+                                  "type": {
+                                    "value": "Tween::TweenBehavior::AddObjectOpacityTween2"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "Tween",
+                                    "\"ChargeUp\"",
+                                    "255",
+                                    "\"linear\"",
+                                    "1",
+                                    ""
+                                  ]
+                                },
+                                {
+                                  "type": {
+                                    "value": "SetObjectVariableAsBoolean"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "CurrentlyChargingOrHasChargedUp",
+                                    "True"
+                                  ]
+                                },
+                                {
+                                  "type": {
+                                    "value": "SetObjectVariableAsBoolean"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "CurrentlyChargingOrHasChargedDown",
+                                    "False"
+                                  ]
+                                }
                               ]
                             }
                           ]
@@ -80428,6 +80612,16 @@
                                 "CurrentlyChargingOrHasChargedDown",
                                 "True"
                               ]
+                            },
+                            {
+                              "type": {
+                                "value": "SetObjectVariableAsBoolean"
+                              },
+                              "parameters": [
+                                "LaserDemon_Base",
+                                "CurrentlyChargingOrHasChargedUp",
+                                "False"
+                              ]
                             }
                           ]
                         },
@@ -80477,35 +80671,35 @@
                                 "LaserDemon_Base",
                                 "\"FireTimer\""
                               ]
-                            },
-                            {
-                              "type": {
-                                "value": "SetObjectVariableAsBoolean"
-                              },
-                              "parameters": [
-                                "LaserDemon_Base",
-                                "CurrentlyChargingOrHasChargedUp",
-                                "False"
-                              ]
-                            },
-                            {
-                              "type": {
-                                "value": "SetObjectVariableAsBoolean"
-                              },
-                              "parameters": [
-                                "LaserDemon_Base",
-                                "CurrentlyChargingOrHasChargedDown",
-                                "False"
-                              ]
-                            },
+                            }
+                          ],
+                          "events": [
                             {
-                              "type": {
-                                "value": "SetObjectVariableAsBoolean"
-                              },
-                              "parameters": [
-                                "LaserDemon_Base",
-                                "NeedsOffsetReset",
-                                "True"
+                              "type": "BuiltinCommonInstructions::Standard",
+                              "conditions": [
+                                {
+                                  "type": {
+                                    "value": "VarObjet"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "FireOffsetTime",
+                                    "!=",
+                                    "0"
+                                  ]
+                                }
+                              ],
+                              "actions": [
+                                {
+                                  "type": {
+                                    "value": "SetObjectVariableAsBoolean"
+                                  },
+                                  "parameters": [
+                                    "LaserDemon_Base",
+                                    "NeedsOffsetReset",
+                                    "True"
+                                  ]
+                                }
                               ]
                             }
                           ]
@@ -82287,6 +82481,7 @@
                   "colorG": 16,
                   "colorR": 189,
                   "creationTime": 0,
+                  "folded": true,
                   "name": "Shockwave Demon",
                   "source": "",
                   "type": "BuiltinCommonInstructions::Group",