Hola !! , hasta ahora estoy muy feliz con el curso , aqui comparto mis bugs;
-
Primer bug : a veces me funciona que se vayan los matches en horizontal (por defectos)que se producen el colapso de piezas y caen , pero otras veces no y tengo que buscar una cuarta pieza para que se vayan con un match.
-
Segundo Bug : el tile pig por alguna razon cuando intercambio con otra pieza como el elephant se va en diagonal y se coloca por debajo de otra pieza, no se van elephant en el match si no esta unica pieza pig , y despues, en este ultimo me aparece despues de un rato jugando.
Este es el error de unity :
NullReferenceException: Object reference not set to an instance of an object
Board+<SwapTiles>d__21.MoveNext () (at Assets/Scripts/Board.cs:152)
UnityEngine.SetupCoroutine.InvokeMoveNext (System.Collections.IEnumerator enumerator, System.IntPtr returnValueAddress) (at <10871f9e312b442cb78b9b97db88fdcb>:0)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
Board:TileUp(Tile) (at Assets/Scripts/Board.cs:137)
Tile:OnMouseUp() (at Assets/Scripts/Tile.cs:28)
UnityEngine.SendMouseEvents:DoSendMouseEvents(Int32)
y estas son las lineas que supuestamente dan problemas:
if (allMatches.Count == 0)//comprobacion cambia con allmatches viendo la cantidad de obajetos, si la cuenta de allmatches es cero(no encontramos ningun matches), debemos devolver las piezas a su lugar
{
StartPiece.Move(startTile.x, startTile.y);
EndPiece.Move(endTile.x, endTile.y);
Pieces[startTile.x, startTile.y] = StartPiece;
Pieces[endTile.x, endTile.y] = EndPiece;
}
else //si encontramos matches cuenta mayor a cero,llamamos a nuestra nueva funcion clearPieces, que va a recibir todos los matches que encontramos
{
ClearPieces(allMatches);
}
startTile = null; //despues de esto reiniciamos el valor
endTile = null;
swappingPieces = false;//ya terminamos el intercambio de piezas
yield return null; //rompemos la corrutina
}
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?