}//홀로그램 인식시 데이터 흡수

    void CNN_cam_place(GameObject target)
    {
        TransferableDataObject Data = target.GetComponent <TransferableDataObject>();

        if (machine_Obj_locating_target != null)
        {
            Circuit script_C = machine_Obj_locating_target.GetComponent <Circuit>();
            InteractiveObj_MultiTag script_I = machine_Obj_locating_target.GetComponent <InteractiveObj_MultiTag>();
            if ((script_C != null && script_C.signal_Type != 0) || (script_I != null && script_I.ObjType == InteractiveObj_MultiTag.AllType.Tower_Table))
            {
                //Instantiate(placing_Tower, aimed_circuit_position, machine_Obj_locating_target.transform.rotation);
                Connectec_Data_Obj.transform.position = aimed_circuit_position;
                Connectec_Data_Obj.transform.rotation = machine_Obj_locating_target.transform.rotation;
                target.SetActive(true);
                //Connectec_Data_Obj.GetComponent<function_CNN>().Classifier_Placed(machine_Obj_locating_target);
                Connectec_Data_Obj.gameObject.SetActive(true);
                Connectec_Data_Obj.GetComponent <MagneticMachine>().Classifier_Placed(machine_Obj_locating_target);
                Connectec_Data_Obj.GetComponent <Machine_Effect>().Get_Signal(true);
                Connectec_Data_Obj = null;
                aim_Mark_obj.transform.position = Vector3.zero;
                module_Buffer = 0;
                Gun_Module_script.GetSignal(module_Buffer);
            }
        }//회로 위에 배치
        else if (Data != null)
        {
            if (Data.ID % 100 == 0 && Data.IsTransferPossible)
            {
                Data.OnDataTransfer(module_Buffer);
                Data.OnMachineDataTransfer(Connectec_Data_Obj);
                module_Buffer = 0;
                Gun_Module_script.GetSignal(module_Buffer);

                previous_script_ML = null;
                Connectec_Data_Obj = null;
            }
        } //모듈에 배치
    }     //회로위에 장치 배치 신호
    }     //회로위에 장치 배치 신호

    public void Module_buffer_return()
    {
        if (module_Buffer == 0)
        {
            Debug.Log("From player_shot 반환할 값이 없습니다");
        }
        else if (module_Buffer <= 30)
        {
            previous_script_ML.OnDataTransfer(module_Buffer);
            module_Buffer = 0;
            Gun_Module_script.GetSignal(module_Buffer);
            previous_script_ML = null;
            Debug.Log("From player_shot 모듈 반환");
        }
        else if (module_Buffer <= 50)
        {
            if (previous_script_ML != null)
            {
                previous_script_ML.OnMachineDataTransfer(Connectec_Data_Obj.GetComponent <MagneticMachine>());
                previous_script_ML.OnDataTransfer(module_Buffer);
            }
            else
            {
                Connectec_Data_Obj.gameObject.SetActive(true);
            }

            Connectec_Data_Obj = null;

            module_Buffer = 0;
            Gun_Module_script.GetSignal(module_Buffer);
            previous_script_ML = null;
            Debug.Log("From player_shot 데이터 홀로그램 반환");
        }
        else if (module_Buffer < 90)
        {
            previous_script_ML.OnDataTransfer(module_Buffer);

            module_Buffer = 0;
            Gun_Module_script.GetSignal(module_Buffer);
            previous_script_ML = null;
            Debug.Log("From player_shot 조립 홀로그램 반환");
        }
        else if (module_Buffer <= 99)
        {
            if (previous_script_ML != null)
            {
                previous_script_ML.OnDataTransfer(module_Buffer);
                previous_script_ML.OnMachineDataTransfer(Connectec_Data_Obj.GetComponent <MagneticMachine>());
            }
            else
            {
                Connectec_Data_Obj.gameObject.SetActive(true);
                Connectec_Data_Obj.GetComponent <MagneticMachine>().Classifier_Placed(Connectec_Data_Obj.GetComponent <MagneticMachine>().circuit_Obj);
                Connectec_Data_Obj.GetComponent <Machine_Effect>().Get_Signal(true);
                aim_Mark_obj.transform.position = Vector3.zero;
            }

            Connectec_Data_Obj = null;

            module_Buffer = 0;
            Gun_Module_script.GetSignal(module_Buffer);
            previous_script_ML = null;
            Debug.Log("From player_shot 타워 반환");
        }
    }//데이터 복귀시키기
    }//조준점 근처 회로 인식

    public void module_InOut(GameObject target)
    {
        TransferableDataObject ML              = target.GetComponent <TransferableDataObject>();
        Puzzle_Part_Hologram   PPH             = target.GetComponent <Puzzle_Part_Hologram>();
        MagneticMachine        magneticMachine = target.GetComponent <MagneticMachine>();
        HologramObject         DT              = target.GetComponent <HologramObject>();
        Machine_Effect         ME              = target.GetComponent <Machine_Effect>();


        if (ML != null)//모듈 조준
        {
            if (module_Buffer == 0 && ML.ID % 100 != 0 && ML.IsTransferPossible)
            {
                module_Buffer = ML.ID % 100;
                ML.OnDataTransfer(0);
                Gun_Module_script.GetSignal(module_Buffer);

                Connectec_Data_Obj = ML.ConnectedMachine; // 머신 전용
                ML.DetachConnectedMachine();              // 머신 전용
                if (module_Buffer == 90)
                {
                    aim_Mark_obj = Hologram_Marker[0];
                }
                else if (module_Buffer == 91)
                {
                    aim_Mark_obj = Hologram_Marker[1];
                }
                previous_script_ML = ML;
            }
            else if (module_Buffer != 0 && ML.ID % 100 == 0 && ML.IsTransferPossible)
            {
                ML.OnMachineDataTransfer(Connectec_Data_Obj);
                ML.OnDataTransfer(module_Buffer);
                module_Buffer      = 0;
                Connectec_Data_Obj = null;
                Gun_Module_script.GetSignal(module_Buffer);
                previous_script_ML = null;
            }
        }//모듈 조준
        else if (PPH != null)
        {
            if (module_Buffer == 0 && PPH.hologram_Part_ID != 0 && PPH.module_Linked.GetComponent <TransferableDataObject>().IsTransferPossible)
            {
                //Debug.Log("From 'player_shot' DisAssemble");
                module_Buffer      = PPH.Get_Disassemble_Signal();
                previous_script_ML = PPH.module_Linked.GetComponent <TransferableDataObject>();

                Gun_Module_script.GetSignal(module_Buffer);
            } //홀로그램 분해
        }     //퍼즐 홀로그램 조준
        else if (magneticMachine != null && ME != null)
        {
            if (module_Buffer == 0)
            {
                //Debug.Log("From player_shot Get Cnn_machine");
                if (magneticMachine.TowerFunc == MagneticMachine.TowerStyle.CNN)
                {
                    module_Buffer = 90;
                    aim_Mark_obj  = Hologram_Marker[0];
                }
                else if (magneticMachine.TowerFunc == MagneticMachine.TowerStyle.Electric)
                {
                    module_Buffer = 91;
                    aim_Mark_obj  = Hologram_Marker[1];
                }
                Connectec_Data_Obj = magneticMachine;
                target.SendMessage("OnTransferToPlayer");
                target.GetComponent <Machine_Effect>().Get_Signal(false);

                Gun_Module_script.GetSignal(module_Buffer);
                previous_script_ML = null;
            }
        }//인식기 조준
        else if (DT != null && Test_DT_Identify)
        {
            if (module_Buffer == 0)
            {
                //Destroy(target);
                module_Buffer = DT.ID;

                Connectec_Data_Obj = magneticMachine;
                target.SendMessage("OnTransferToPlayer");

                Gun_Module_script.GetSignal(module_Buffer);
            }
        }
    }//데이터 전송 & 흡수