예제 코드를 파악해서 왜 기존 방법이 되지않는지를 알게됐다
축구판에 선수 요소를 띄우는 방법의 차이가 있었다
그래서 선수 교체를 하면 거기서 에러가 발생하는 것이었다
예제 코드는 미리 선수들의 목록을 json으로 다 저장해 놓았고
거기에 맞는 방식으로 변경을 했었다
선수 배열의 인덱스를 바꿈으로서 선수를 변경하는 방식이었다
그러다보니 우리가 원래 사용했던 방식인 true false로 하면 에러가 뜨는 것이었다
에러가 뜨는 이유는 축구판에 선수를 띄우는 방식때문이다
축구판에 선수를 띄우는 방식이 그냥 배열에서 1부터 11 인덱스까지
띄우는 것이라서 우리가 했던 방식대로 true false로하면
해당 선수의 인덱스가 11이 넘어가면 그 이상의 포메이션은 없기 때문에
에러가 나는 것이었다
그래서 예제 코드의 방식을 따라가기로 하였다
예제가 원래 어떻게 됐었는지 기억하는지 모르겠지만
예제는 선수판에 있는 선수들 끼리 변경하거나 오른쪽에 리스트를 띄워놓고
리스트에 있는 선수와 변경하는 방식이었다
그러나 우리는 리스트를 띄우지 않고 오른쪽 마우스로 모달로 띄우도록 하는 방식을 사용했다
근데 예제 코드의 교체 방식은 아래와 같다
이렇기 때문에 모달형태로 선수를 교체하려면 오른쪽 마우스로 리스트를 띄우는 순간
선수가 선택되도록 구현해야 했다
근데 이렇게 하면 한가지 문제가 생겼다
사용자가 한 선수를 왼쪽 마우스로 선택했다가 마음이 바껴서 다른 선수를 오른쪽 마우스로 클릭하면
처음 클릭한 선수와 두번째 모달을 띄우려고한 선수가 변경돼버렸다
그래서 지금 이걸 해결중에 있는데 flag를 사용해서 해결하면 될 것 같다
다 변경하고 화면을 보여주겠다 !