public void TryPlaceButton(ButtonVisualAspect button) { bool donePosition = false; int posX, posY; while (donePosition == false) { // Random a position posX = Random.Range(0, widthGrid - 1); posY = Random.Range(0, heightGrid - 1); switch (button.typeButton) { case TypeButtonVisualAspect.Size1x1: // Place 1 by 1 button if (validListPositions [posX, posY] == 1) { validListPositions [posX, posY] = 0; button.transform.position = new Vector3(origin.x + posX * widthCellGrid, origin.y + posY * heightCellGrid, button.transform.position.z); donePosition = true; } break; case TypeButtonVisualAspect.Size1x2: // Place 1 by 2 button // Check if the size of the button fits on the grid and if there is a valid position for it. if ((posY + 1) < widthGrid && validListPositions [posX, posY] == 1 && validListPositions [posX, posY+1] == 1) { validListPositions [posX, posY] = 0; validListPositions [posX, posY+1] = 0; button.transform.position = new Vector3(origin.x + posX * widthCellGrid, origin.y + posY * heightCellGrid, button.transform.position.z); donePosition = true; } break; case TypeButtonVisualAspect.Size2x1: // Check if the size of the button fits on the grid and if there is a valid position for it. if ((posX + 1) < heightGrid && validListPositions [posX, posY] == 1 && validListPositions [posX+1, posY] == 1) { validListPositions [posX, posY] = 0; validListPositions [posX+1, posY] = 0; button.transform.position = new Vector3(origin.x + posX * widthCellGrid, origin.y + posY * heightCellGrid, button.transform.position.z); donePosition = true; } break; case TypeButtonVisualAspect.Size2x2: // Check if the size of the button fits on the grid and if there is a valid position for it. if ((posX + 1) < widthGrid && (posY + 1) < heightGrid && validListPositions [posX, posY] == 1 && validListPositions [posX+1, posY] == 1 && validListPositions [posX, posY+1] == 1 && validListPositions [posX+1, posY+1] == 1) { validListPositions [posX, posY] = 0; validListPositions [posX+1, posY] = 0; validListPositions [posX, posY+1] = 0; validListPositions [posX+1, posY+1] = 0; button.transform.position = new Vector3(origin.x + posX * widthCellGrid, origin.y + posY * heightCellGrid, button.transform.position.z); donePosition = true; } break; } } }
public void RandomizePanel() { // Place the controls 'randomly'. pvgPub.DoPlaceButton(); for (int btnIdx = 0; btnIdx < pvgPub.listOfButtons.Length; btnIdx++) { ButtonVisualAspect curButton = pvgPub.listOfButtons[btnIdx]; posList.Add(curButton.transform.localPosition.x); posList.Add(curButton.transform.localPosition.y); posList.Add(curButton.GetComponent <Control>().subType); curButton.GetComponent <Control>().offSprite = curButton.GetComponent <Control>().controlSprites[curButton.GetComponent <Control>().subType].offSprite; curButton.GetComponent <Control>().onSprite = curButton.GetComponent <Control>().controlSprites[curButton.GetComponent <Control>().subType].onSprite; } }
public void TutorializePanel() { ButtonVisualAspect curButton = pvgPub.listOfButtons[0]; posList.Add(-100.0f); posList.Add(0.0f); posList.Add(curButton.GetComponent <Control>().subType); curButton.GetComponent <Control>().offSprite = curButton.GetComponent <Control>().controlSprites[curButton.GetComponent <Control>().subType].offSprite; curButton.GetComponent <Control>().onSprite = curButton.GetComponent <Control>().controlSprites[curButton.GetComponent <Control>().subType].onSprite; curButton = pvgPub.listOfButtons[1]; posList.Add(0.0f); posList.Add(0.0f); posList.Add(curButton.GetComponent <Control>().subType); curButton.GetComponent <Control>().offSprite = curButton.GetComponent <Control>().controlSprites[curButton.GetComponent <Control>().subType].offSprite; curButton.GetComponent <Control>().onSprite = curButton.GetComponent <Control>().controlSprites[curButton.GetComponent <Control>().subType].onSprite; curButton = pvgPub.listOfButtons[2]; posList.Add(100.0f); posList.Add(0.0f); posList.Add(curButton.GetComponent <Control>().subType); curButton.GetComponent <Control>().offSprite = curButton.GetComponent <Control>().controlSprites[curButton.GetComponent <Control>().subType].offSprite; curButton.GetComponent <Control>().onSprite = curButton.GetComponent <Control>().controlSprites[curButton.GetComponent <Control>().subType].onSprite; }
void Init() { if (Player.GetLocalPlayer().isTutorial) { completeSequence = completeSequenceTutorial; } //buttonCount = FindObjectOfType<NetMgr>().controlCount; TypeButtonVisualAspect[] buttonArr; MatchMgr matchMgr = FindObjectOfType <MatchMgr>(); if (!matchMgr.isTutorialMatch) { buttonArr = new TypeButtonVisualAspect[buttonCount]; switch (buttonCount) { case 2: buttonArr[0] = TypeButtonVisualAspect.Size2x2; buttonArr[1] = TypeButtonVisualAspect.Size2x2; break; case 3: buttonArr[0] = TypeButtonVisualAspect.Size2x2; buttonArr[1] = TypeButtonVisualAspect.Size1x1; buttonArr[2] = TypeButtonVisualAspect.Size2x2; break; case 4: buttonArr[0] = TypeButtonVisualAspect.Size1x2; buttonArr[1] = TypeButtonVisualAspect.Size2x2; buttonArr[2] = TypeButtonVisualAspect.Size1x1; buttonArr[3] = TypeButtonVisualAspect.Size2x2; break; case 5: buttonArr[0] = TypeButtonVisualAspect.Size2x2; buttonArr[1] = TypeButtonVisualAspect.Size1x2; buttonArr[2] = TypeButtonVisualAspect.Size2x1; buttonArr[3] = TypeButtonVisualAspect.Size1x1; buttonArr[4] = TypeButtonVisualAspect.Size2x2; break; case 6: buttonArr[0] = TypeButtonVisualAspect.Size2x2; buttonArr[1] = TypeButtonVisualAspect.Size1x1; buttonArr[2] = TypeButtonVisualAspect.Size2x1; buttonArr[3] = TypeButtonVisualAspect.Size1x2; buttonArr[4] = TypeButtonVisualAspect.Size2x1; buttonArr[5] = TypeButtonVisualAspect.Size1x2; break; case 7: buttonArr[0] = TypeButtonVisualAspect.Size2x2; buttonArr[1] = TypeButtonVisualAspect.Size1x1; buttonArr[2] = TypeButtonVisualAspect.Size2x1; buttonArr[3] = TypeButtonVisualAspect.Size1x2; buttonArr[4] = TypeButtonVisualAspect.Size2x2; buttonArr[5] = TypeButtonVisualAspect.Size1x1; buttonArr[6] = TypeButtonVisualAspect.Size2x1; break; } } else { buttonCount = 3; buttonArr = new TypeButtonVisualAspect[buttonCount]; buttonArr[0] = TypeButtonVisualAspect.Size2x2; buttonArr[1] = TypeButtonVisualAspect.Size2x2; buttonArr[2] = TypeButtonVisualAspect.Size2x2; tutorialSource.clip = tutorialClips[id - 1]; } GenButtons(buttonArr); if (isServer) { SetUpPanel(); if (matchMgr.isTutorialMatch) { for (int btnIdx = 0; btnIdx < pvgPub.listOfButtons.Length; btnIdx++) { ButtonVisualAspect curButton = pvgPub.listOfButtons[btnIdx]; curButton.transform.localPosition = new Vector3(posList[btnIdx * 3], posList[btnIdx * 3 + 1], -1.0f); curButton.GetComponent <Control>().offSprite = curButton.GetComponent <Control>().controlSprites[(int)posList[btnIdx * 3 + 2]].offSprite; curButton.GetComponent <Control>().onSprite = curButton.GetComponent <Control>().controlSprites[(int)posList[btnIdx * 3 + 2]].onSprite; } } } else { for (int btnIdx = 0; btnIdx < pvgPub.listOfButtons.Length; btnIdx++) { ButtonVisualAspect curButton = pvgPub.listOfButtons[btnIdx]; curButton.transform.localPosition = new Vector3(posList[btnIdx * 3], posList[btnIdx * 3 + 1], -1.0f); curButton.GetComponent <Control>().offSprite = curButton.GetComponent <Control>().controlSprites[(int)posList[btnIdx * 3 + 2]].offSprite; curButton.GetComponent <Control>().onSprite = curButton.GetComponent <Control>().controlSprites[(int)posList[btnIdx * 3 + 2]].onSprite; } } /* * PanelVisualGenerator pvgen1 = GetComponent<PanelVisualGenerator>(); * for(int btnIdx = 0; btnIdx < pvgen1.listOfButtons.Length; btnIdx++) * { * ButtonVisualAspect curButton = pvgen1.listOfButtons[btnIdx]; * curButton.GetComponent<Control>().offSprite = curButton.GetComponent<Control>().controlSprites[(int)posList[btnIdx * 2 + 2]].offSprite; * curButton.GetComponent<Control>().onSprite = curButton.GetComponent<Control>().controlSprites[(int)posList[btnIdx * 2 + 2]].onSprite; * } */ GetComponent <SpriteRenderer>().sprite = panelSprites[id - 1]; // Obtain reference to audio source. if (audioSource == null) { audioSource = GetComponent <AudioSource>(); } // Decode correct sequence string. DecodeCorrectSequence(); }
public void TryPlaceButton(ButtonVisualAspect button) { bool donePosition = false; int posX, posY; while (donePosition == false) { // Random a position posX = Random.Range(0, widthGrid - 1); posY = Random.Range(0, heightGrid - 1); switch (button.typeButton) { case TypeButtonVisualAspect.Size1x1: // Place 1 by 1 button if (validListPositions [posX, posY] == 1) { validListPositions [posX, posY] = 0; button.transform.position = new Vector3(origin.x + posX * widthCellGrid, origin.y + posY * heightCellGrid, button.transform.position.z); donePosition = true; } break; case TypeButtonVisualAspect.Size1x2: // Place 1 by 2 button // Check if the size of the button fits on the grid and if there is a valid position for it. if ((posY + 1) < widthGrid && validListPositions [posX, posY] == 1 && validListPositions [posX, posY + 1] == 1) { validListPositions [posX, posY] = 0; validListPositions [posX, posY + 1] = 0; button.transform.position = new Vector3(origin.x + posX * widthCellGrid, origin.y + posY * heightCellGrid, button.transform.position.z); donePosition = true; } break; case TypeButtonVisualAspect.Size2x1: // Check if the size of the button fits on the grid and if there is a valid position for it. if ((posX + 1) < heightGrid && validListPositions [posX, posY] == 1 && validListPositions [posX + 1, posY] == 1) { validListPositions [posX, posY] = 0; validListPositions [posX + 1, posY] = 0; button.transform.position = new Vector3(origin.x + posX * widthCellGrid, origin.y + posY * heightCellGrid, button.transform.position.z); donePosition = true; } break; case TypeButtonVisualAspect.Size2x2: // Check if the size of the button fits on the grid and if there is a valid position for it. if ((posX + 1) < widthGrid && (posY + 1) < heightGrid && validListPositions [posX, posY] == 1 && validListPositions [posX + 1, posY] == 1 && validListPositions [posX, posY + 1] == 1 && validListPositions [posX + 1, posY + 1] == 1) { validListPositions [posX, posY] = 0; validListPositions [posX + 1, posY] = 0; validListPositions [posX, posY + 1] = 0; validListPositions [posX + 1, posY + 1] = 0; button.transform.position = new Vector3(origin.x + posX * widthCellGrid, origin.y + posY * heightCellGrid, button.transform.position.z); donePosition = true; } break; } } }