Sto facendo un progetto per l' uni. Devo fare un gioco simile a forza 4 e lo sto organizzando ad oggetti.

1) classe GameBoard
2) classe MovementManager

inizialmente c'è una tabella 8x8 quando clicco sopra una cella parte una funzione che posiziona la pedina al posto giusto(file GameBoard).
Dopodiché chiamo una funzione che mi verifica se ha vinto qualcuno(file MovementManager) L'oggetto MovementManager si trova come istanza in GameBoard. Se ha vinto qualcuno vorrei notificare la classe GameBoard che esegue la notica "giallo vince" e successivamente clearBoard.
vi posto un pò di codice js:
Codice PHP:
this.youWin = function(boardidcolor){
        var 
connectFour 0;
        if(
board[id].horizontal){
            var 
start board[id].horizontal[0];
            var 
end board[id].horizontal[1];
            var 
nextStep board[id].horizontal[2];
            for(
starti<=end+= nextStep){
                if(
board[i].pawn){
                    if(
board[i].pawn.color == color)
                        
connectFour++;
                    else
                        
connectFour 0;
                }
            }
            if(
connectFour >= 4){
                
connectFour 0;
                
gameBoard.notifySomeoneWins(color);
            }
            else
                
connectFour 0;
        } 
come potete notare se ha vinto qualcuno richiamo "gameBoard.notifySomeoneWins(color);" (da MovementManager passo a GameManager e poi indietro in MovementManager ed, infine, GameBoard) e io vorrei evitare questo!
L'idea sarebbe:
Ha vinto qualcuno setto una variabile a true ed esco dalla funzione, poi qualcosa che si scatena quando cambia tale var e mi richima la routin di notifica "giallo vince" e clearBoard, ad esempio.

GameBoard la istanzio nel file HTML.
In linea di massima i passi sono questi:

(html) click su una cella -> (html) gameBoard.setPawn(idCella) -> (GameBoard)this.movementManeger.spostaPedinaAlPost oGiusto -> (MovementManager) this.haVintoQualcuno -> ... continua sopra.

Non so se ho reso l'idea?