private void SetupPowerSystem()
        {
            powerSystem.name = "powerSystem";
            UnityEngine.Object.DestroyImmediate(powerSystem.GetComponent <BatteryCharger>());
            UnityEngine.Object.DestroyImmediate(powerSystem.GetComponent <PrefabIdentifier>());
            UnityEngine.Object.DestroyImmediate(powerSystem.GetComponent <TechTag>());
            UnityEngine.Object.DestroyImmediate(powerSystem.GetComponent <Constructable>());
            UnityEngine.Object.DestroyImmediate(powerSystem.GetComponent <FMOD_StudioEventEmitter>());
            UnityEngine.Object.DestroyImmediate(powerSystem.GetComponent <ConstructableBounds>());
            UnityEngine.Object.DestroyImmediate(powerSystem.GetComponent <PowerConsumer>());
            UnityEngine.Object.DestroyImmediate(powerSystem.transform.Find("Collider").gameObject);

            GameObject EquipmentRoot = powerSystem.transform.Find("EquipmentRoot").gameObject;

            EquipmentRoot.transform.SetParent(GameObjectClone.transform, false);

            Transform model = powerSystem.transform.Find("model");

            UnityEngine.Object.DestroyImmediate(model.GetComponent <Animator>());
            UnityEngine.Object.DestroyImmediate(model.GetComponent <BaseModuleLighting>());

            GameObject cover = model.Find("battery_charging_station_base/battery_charging_station_cover").gameObject;

            cover.transform.SetParent(model, false);

            UnityEngine.Object.DestroyImmediate(model.Find("battery_charging_station_base").gameObject);

            SkyApplier skyApplier = model.gameObject.GetComponent <SkyApplier>();

            LightingController controller = GameObjectClone.GetComponent <LightingController>();

            controller.RegisterSkyApplier(skyApplier);

            GameObject UI = powerSystem.transform.Find("UI").gameObject;

            UI.transform.localPosition = new Vector3(0f, 0f, 0.28f);
            UI.transform.localRotation = Quaternion.Euler(0, 0, 180);

            GameObject backgroundLeft = UI.transform.transform.Find("Background").gameObject;

            backgroundLeft.name = "backgroundLeft";

            RectTransform leftRt = backgroundLeft.transform as RectTransform;

            leftRt.anchoredPosition = new Vector2(-495f, 0f);
            leftRt.localScale       = new Vector3(0.70f, 0.70f, 0.1f);

            GameObject backgroundRight = UWE.Utils.Instantiate(backgroundLeft, UI.transform, Vector3.zero, Quaternion.identity);

            backgroundRight.name = "backgroundRight";

            RectTransform rightRt = backgroundRight.transform as RectTransform;

            rightRt.anchoredPosition = new Vector2(500f, 0f);
            rightRt.localScale       = new Vector3(0.70f, 0.70f, 0.1f);
            rightRt.SetSiblingIndex(0);

            RawImage imageLeft  = backgroundLeft.GetComponent <RawImage>();
            RawImage imageRight = backgroundRight.GetComponent <RawImage>();

            imageLeft.texture  = powerUI_background;
            imageRight.texture = powerUI_background;

            Transform Powered = UI.transform.Find("Powered");

            RectTransform battery1 = Powered.Find("Battery1") as RectTransform;

            battery1.anchoredPosition = new Vector2(-545f, 15f);

            RectTransform battery1_text = battery1.Find("Text") as RectTransform;

            battery1_text.anchoredPosition = new Vector2(0f, 95f);
            battery1_text.localScale       = new Vector3(1.50f, 1.50f, 0.1f);

            RectTransform battery2 = Powered.Find("Battery2") as RectTransform;

            battery2.anchoredPosition = new Vector2(-435f, 15f);

            RectTransform battery2_text = battery2.Find("Text") as RectTransform;

            battery2_text.anchoredPosition = new Vector2(0f, 95f);
            battery2_text.localScale       = new Vector3(1.50f, 1.50f, 0.1f);

            RectTransform battery3 = Powered.Find("Battery3") as RectTransform;

            battery3.anchoredPosition = new Vector2(450f, 15f);

            RectTransform battery3_text = battery3.Find("Text") as RectTransform;

            battery3_text.anchoredPosition = new Vector2(0f, 95f);
            battery3_text.localScale       = new Vector3(1.50f, 1.50f, 0.1f);

            RectTransform battery4 = Powered.Find("Battery4") as RectTransform;

            battery4.anchoredPosition = new Vector2(560f, 15f);

            RectTransform battery4_text = battery4.Find("Text") as RectTransform;

            battery4_text.anchoredPosition = new Vector2(0f, 95f);
            battery4_text.localScale       = new Vector3(1.50f, 1.50f, 0.1f);

            Powered.gameObject.SetActive(true);

            BoxCollider Trigger = powerSystem.transform.Find("Trigger").GetComponent <BoxCollider>();

            Trigger.center = new Vector3(0f, 0f, 0.32f);
            Trigger.size   = new Vector3(0.35f, 0.35f, 0.35f);

            UI.SetActive(true);

            powerSystem.AddComponent <SeaTruckScannerPowerSystem>();

            powerSystem.SetActive(true);
        }