Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

158
Vistas
Atravesar una matriz de carretes de juego columna por columna de izquierda a derecha

Tengo una matriz de 3x5 que actúa como un carrete de juego. Primero, busco a través de los símbolos del juego que me interesan (llamémoslos clones salvajes) y luego busco a través de sus elementos secundarios (para ubicar el objeto del juego que tiene la animación) y luego activo esas animaciones.

 private IEnumerator EnableWilds(float delayBetweenWildsAppear) { WildSymbol[] wilds = FindObjectsOfType<WildSymbol>(); GameObject[] symbols = new GameObject[wilds.Length]; for (int i = 0; i < wilds.Length; i++) { symbols[i] = wilds[i].gameObject; } for (int i = 0; i < symbols.Length; i++) { if ( symbols[i].name.Contains("(Clone)") ) { int reelIndex = symbols[i].GetComponentInParent<GameReel>().ReelIndex; int indexOnReel = symbols[i].GetComponent<WildSymbol>().IndexOnReel; // ?? for (int j = 0; j < symbols[i].transform.childCount; j++) { if ( symbols[i].transform.GetChild(j).gameObject.name.Contains("MM_wild") ) { symbols[i].transform.GetChild(j).gameObject.SetActive(true); yield return new WaitForSeconds(delayBetweenWildsAppear); } } } } }

Empecé a pensar en cómo puedo activar esos comodines comenzando desde la esquina superior izquierda, bajando por el carrete y pasando al siguiente carrete y animando los comodines de arriba a abajo, etc...

Entonces, me di cuenta de que necesito obtener el índice de carrete de cada símbolo (es decir, el número de columna) y el índice en el carrete (es decir, la posición en el carrete), así que voy a Reel1 y luego wild clon 1 y 2 y 3, y luego Reel2 seguido de wild clon 1 y 2 y 3, y así sucesivamente...

Estoy tratando de hacer esto donde puse un // ?? pero en este punto, estoy un poco perdido, conceptualmente. No puedo entender cómo realizar este recorrido.

¿Podría alguien ayudarme con esto, por favor?

Mi juego carrete 1

Mi juego carrete 2

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Así es como lo resolví yo mismo y luego lo simplifiqué:

 private IEnumerator DisableWilds(float delayBetweenWildsDisappear) { WildSymbol[] wilds = FindObjectsOfType<WildSymbol>(); wilds = wilds.Where( (item, index) => item.name.Contains("(Clone)") ) .OrderBy( x => x.GetComponent<WildSymbol>().IndexOnReel ) .OrderBy( x => x.GetComponentInParent<GameReel>().ReelIndex ) .ToArray(); for (int i = 0; i < wilds.Length; i++) { for (int j = 0; j < wilds[i].transform.childCount; j++) { if (wilds[i].transform.GetChild(j).gameObject.name.Contains("MM_wild")) { wilds[i].transform.GetChild(j).gameObject.SetActive(false); yield return new WaitForSeconds(delayBetweenWildsDisappear); } } } }
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda