Button working in runtime but not in built game

Hi everyone! I’ve got a problem with my game. I just tried to build it for the first time, but i’ve got only one thing (one of the main things) that isn’t working, it’s a simple UI builtin button from Unity, simply calling a function when it’s pushed, but it doesn’t seem to be calling it at all (because when it does, it perfectly works in runtime in Unity, but not in built version). My other buttons are working perfectly both in runtime built or not, but not this one.
Here’s the function that the button is calling (even if i doubt it’ll be usefull in the diagnosis)

    public void Move(){
        CanPlay = true; //A enlever* IMPERATIVEMENT PLUS TARD ###############################################################################################################
        if (CanPlay) {
            if(!aVisionGoing && !gVisionGoing){
                if(CubzTarg.cubzSelected != -1 && CubzSettings[CubzTarg.cubzSelected].cubzIsNotMine == false){
                    if(CaseTarg.caseSelected != -1){
                        if(!CaseTarg.CaseSettings[CaseTarg.caseSelected].hasCube){
                            if(!CubzSettings[CubzTarg.cubzSelected].blocked){
                                switch (CubzSettings[CubzTarg.cubzSelected].KubzType)
                                {
                                case 0://bomb
                                    if((CubzSettings[CubzTarg.cubzSelected].OnCase - 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase - 1 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 1 == CaseTarg.caseSelected)){
                                        var pos = Cubz[CubzTarg.cubzSelected].transform.position;
                                        pos.x = CaseTarg.caseX;
                                        pos.z = CaseTarg.caseZ;
                                        Cubz[CubzTarg.cubzSelected].transform.position = pos;
                                    }
                                    break;
                                case 1://purifRay
                                    if((CubzSettings[CubzTarg.cubzSelected].OnCase - 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase - 1 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 1 == CaseTarg.caseSelected)){
                                        var pos = Cubz[CubzTarg.cubzSelected].transform.position;
                                        pos.x = CaseTarg.caseX;
                                        pos.z = CaseTarg.caseZ;
                                        Cubz[CubzTarg.cubzSelected].transform.position = pos;
                                    }
                                    break;
                                case 2://Bourrasque
                                    if((CubzSettings[CubzTarg.cubzSelected].OnCase - 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase - 1 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 1 == CaseTarg.caseSelected)){
                                        var pos = Cubz[CubzTarg.cubzSelected].transform.position;
                                        pos.x = CaseTarg.caseX;
                                        pos.z = CaseTarg.caseZ;
                                        Cubz[CubzTarg.cubzSelected].transform.position = pos;
                                    }
                                    break;
                                case 3://MONKI
                                    if((CubzSettings[CubzTarg.cubzSelected].OnCase - 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase - 1 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 1 == CaseTarg.caseSelected)){
                                        var pos = Cubz[CubzTarg.cubzSelected].transform.position;
                                        pos.x = CaseTarg.caseX;
                                        pos.y = 0.7f;
                                        pos.z = CaseTarg.caseZ;
                                        Cubz[CubzTarg.cubzSelected].transform.position = pos;
                                        if(CubzSettings[CubzTarg.cubzSelected].blocking){
                                            CubzSettings[CubzTarg.cubzSelected].blocking = false;
                                            CubzSettings[CubzTarg.cubzSelected].blockingCurrently.blocked = false;
                                            CubzSettings[CubzTarg.cubzSelected].blockingCurrently = null;
                                        }
                                        UpdateKubz();
                                    }
                                    break;
                                case 4://brume
                                    if((CubzSettings[CubzTarg.cubzSelected].OnCase - 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase - 1 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 1 == CaseTarg.caseSelected)){
                                        if(!CubzSettings[CubzTarg.cubzSelected].blocking){
                                            var pos = Cubz[CubzTarg.cubzSelected].transform.position;
                                            pos.x = CaseTarg.caseX;
                                            pos.z = CaseTarg.caseZ;
                                            Cubz[CubzTarg.cubzSelected].transform.position = pos;
                                        }
                                    }
                                    break;
                                case 5://Medium
                                    if((CubzSettings[CubzTarg.cubzSelected].OnCase - 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase - 1 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 1 == CaseTarg.caseSelected)){
                                        var pos = Cubz[CubzTarg.cubzSelected].transform.position;
                                        pos.x = CaseTarg.caseX;
                                        pos.z = CaseTarg.caseZ;
                                        Cubz[CubzTarg.cubzSelected].transform.position = pos;
                                    }
                                    break;
                                case 6://FF
                                    if((CubzSettings[CubzTarg.cubzSelected].OnCase - 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase - 1 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 1 == CaseTarg.caseSelected)){
                                        var pos = Cubz[CubzTarg.cubzSelected].transform.position;
                                        pos.x = CaseTarg.caseX;
                                        pos.z = CaseTarg.caseZ;
                                        Cubz[CubzTarg.cubzSelected].transform.position = pos;
                                    }
                                    break;
                                case 7: //Blinker
                                    if(CubzSettings[CubzTarg.cubzSelected].revealed == true){
                                        if((CubzSettings[CubzTarg.cubzSelected].OnCase - 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase - 1 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 1 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase - 14 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 14 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase - 2 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 2 == CaseTarg.caseSelected)){
                                        var pos = Cubz[CubzTarg.cubzSelected].transform.position;
                                        pos.x = CaseTarg.caseX;
                                        pos.z = CaseTarg.caseZ;
                                        Cubz[CubzTarg.cubzSelected].transform.position = pos;
                                    }
                                }else{
                                    if ((CubzSettings[CubzTarg.cubzSelected].OnCase - 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase - 1 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 1 == CaseTarg.caseSelected)){
                                        var pos = Cubz[CubzTarg.cubzSelected].transform.position;
                                        pos.x = CaseTarg.caseX;
                                        pos.z = CaseTarg.caseZ;
                                        Cubz[CubzTarg.cubzSelected].transform.position = pos;
                                        }
                                    }
                                    break;
                                case 8: //FOu
                                    if(CubzSettings[CubzTarg.cubzSelected].revealed == true){
                                        if ((CubzSettings[CubzTarg.cubzSelected].OnCase - 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase - 1 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 1 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase - 6 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 6 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase - 8 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 8 == CaseTarg.caseSelected)){
                                            var pos = Cubz[CubzTarg.cubzSelected].transform.position;
                                            pos.x = CaseTarg.caseX;
                                            pos.z = CaseTarg.caseZ;
                                            Cubz[CubzTarg.cubzSelected].transform.position = pos;
                                        }
                                    }else{
                                        if ((CubzSettings[CubzTarg.cubzSelected].OnCase - 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase - 1 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 1 == CaseTarg.caseSelected)){
                                            var pos = Cubz[CubzTarg.cubzSelected].transform.position;
                                            pos.x = CaseTarg.caseX;
                                            pos.z = CaseTarg.caseZ;
                                            Cubz[CubzTarg.cubzSelected].transform.position = pos;
                                        }
                                    }
                                    break;
                                case 9://Jumeaux
                                    if((CubzSettings[CubzTarg.cubzSelected].OnCase - 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 7 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase - 1 == CaseTarg.caseSelected) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 1 == CaseTarg.caseSelected)){
                                        var pos = Cubz[CubzTarg.cubzSelected].transform.position;
                                        pos.x = CaseTarg.caseX;
                                        pos.z = CaseTarg.caseZ;
                                        Cubz[CubzTarg.cubzSelected].transform.position = pos;
                                    }
                                    break;
                                }
                            }else{
                            //Animer un texte pour dire "le cubz est bloqué"
                            }
                        }
                    }else{
                        if(CaseTarg.porteSelected != -1){
                            if(!CubzSettings[CubzTarg.cubzSelected].blocked){
                                switch (CubzSettings[CubzTarg.cubzSelected].KubzType)
                                {
                                case 7: //Blinker
                                    if(CubzSettings[CubzTarg.cubzSelected].revealed == true){
                                        if((CubzSettings[CubzTarg.cubzSelected].OnCase == CaseTarg.PorteSettings[CaseTarg.porteSelected].FacingCase)||(CubzSettings[CubzTarg.cubzSelected].OnCase+7 == CaseTarg.PorteSettings[CaseTarg.porteSelected].FacingCase)){
                                            var pos = Cubz[CubzTarg.cubzSelected].transform.position;
                                            Debug.Log(pos);
                                            pos.x = CaseTarg.porteX;
                                            pos.y = 3f;
                                            pos.z = CaseTarg.porteZ;
                                            Cubz[CubzTarg.cubzSelected].AddComponent<Rigidbody>();
                                            Cubz[CubzTarg.cubzSelected].transform.position = pos;
                                        }
                                    }else{
                                        if(CubzSettings[CubzTarg.cubzSelected].OnCase == CaseTarg.PorteSettings[CaseTarg.porteSelected].FacingCase){
                                            var pos = Cubz[CubzTarg.cubzSelected].transform.position;
                                            Debug.Log(pos);
                                            pos.x = CaseTarg.porteX;
                                            pos.y = 3f;
                                            pos.z = CaseTarg.porteZ;
                                            Cubz[CubzTarg.cubzSelected].AddComponent<Rigidbody>();
                                            Cubz[CubzTarg.cubzSelected].transform.position = pos;
                                        }
                                    }
                                    break;
                                case 8: //FOu
                                    if(CubzSettings[CubzTarg.cubzSelected].revealed == true){
                                        if((CubzSettings[CubzTarg.cubzSelected].OnCase == CaseTarg.PorteSettings[CaseTarg.porteSelected].FacingCase)||(CubzSettings[CubzTarg.cubzSelected].OnCase+1 == CaseTarg.PorteSettings[CaseTarg.porteSelected].FacingCase)||(CubzSettings[CubzTarg.cubzSelected].OnCase-1 == CaseTarg.PorteSettings[CaseTarg.porteSelected].FacingCase)){
                                            var pos = Cubz[CubzTarg.cubzSelected].transform.position;
                                            Debug.Log(pos);
                                            pos.x = CaseTarg.porteX;
                                            pos.y = 3f;
                                            pos.z = CaseTarg.porteZ;
                                            Cubz[CubzTarg.cubzSelected].AddComponent<Rigidbody>();
                                            Cubz[CubzTarg.cubzSelected].transform.position = pos;
                                        }
                                    }else{
                                        if(CubzSettings[CubzTarg.cubzSelected].OnCase == CaseTarg.PorteSettings[CaseTarg.porteSelected].FacingCase){
                                            var pos = Cubz[CubzTarg.cubzSelected].transform.position;
                                            Debug.Log(pos);
                                            pos.x = CaseTarg.porteX;
                                            pos.y = 3f;
                                            pos.z = CaseTarg.porteZ;
                                            Cubz[CubzTarg.cubzSelected].AddComponent<Rigidbody>();
                                            Cubz[CubzTarg.cubzSelected].transform.position = pos;
                                        }
                                    }
                                        break;
                                default://Le reste du monde
                                    if(CubzSettings[CubzTarg.cubzSelected].OnCase == CaseTarg.PorteSettings[CaseTarg.porteSelected].FacingCase){
                                        var pos = Cubz[CubzTarg.cubzSelected].transform.position;
                                        Debug.Log(pos);
                                        pos.x = CaseTarg.porteX;
                                        pos.y = 3f;
                                        pos.z = CaseTarg.porteZ;
                                        Cubz[CubzTarg.cubzSelected].AddComponent<Rigidbody>();
                                        Cubz[CubzTarg.cubzSelected].transform.position = pos;
                                        }
                                        break;
                                    }
                                }
                              
                            }
              
                    }  
                }
            }else{
                if(aVisionGoing){
                    if((CubzSettings[CubzTarg.cubzSelected].OnCase - 7 == MediumsOnCase[0]) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 7 == MediumsOnCase[0]) || (CubzSettings[CubzTarg.cubzSelected].OnCase - 1 == MediumsOnCase[0]) || (CubzSettings[CubzTarg.cubzSelected].OnCase + 1 == MediumsOnCase[0])){
                        CubzSettings[CubzTarg.cubzSelected].revealed = true;
                        ChoiceMedium[4].SetActive(false);
                        aVisionGoing = false;
                    }
                }else{
                    CubzSettings[CubzTarg.cubzSelected].revealed = true;
                    HasDoneGV = true;
                    ChoiceMedium[3].SetActive(false);
                    gVisionGoing = false;
                }
                CaseTarg.CaseSettings[MediumsOnCase[0]].cubzOn.GetComponent<Kubzz>().revealed = true;
            }
        }
    }

i can’t send the whole script this function is in, it’s 900+ lines long, very poorly commented (and the only things i commented are in french), so it’s almost useless to send it whole, isn’t it?
And here’s a screenshot where you can see everything you need, including the button component of the button that’s not working. I tried rebuilding, in both 64x and 32x: still not working.

I’m really lost on that one, but maybe something all tied to this, and it’s on my other post, where i didn’t get any answer, here: https://forum.unity.com/threads/raycast-acting-throught-ui.955746/

How do you know the function isn’t being called? It seems more likely to me that one of the 15 or so if conditions you have is not true. Really hard to reason about that code though… maybe try logging all of those conditions to the console and see what’s false?

Also your button is hooked up to a function called “Power” and the one you shared is called “Move”

Oh, my bad, it wasn’t the good screenshot, going to modify that
But why would the if conditions be false during editing, and runtime, but not in build? It really doesn’t make any sense to me.
Anyhow, how can i “log the conditins to the console”…? I’m not sure if i understood how to do that and what it’s going to do: some kinda debug in the console during built runtime?

Wow, ok, thanks! How does it work though? I tried implementing this simple function, to toggle the visibility of the console, but i get error messages:

    public void ToggleConsole(){
        DebugConsole.visible -= DebugConsole.visible;
    }

6237491--686732--upload_2020-8-24_12-41-57.png
Do i have to import it like any other component? Which is weird, considering on the website you gave me, they said that you only have to import in into your assets (and not your scene) for it to work (which seems weird because i’ve never done that before)