async Task <LandDetails> GetLandDetails(ushort x, ushort y)
        {
            LandDetails result = new LandDetails()
            {
                X = x, Y = y
            };

            //System.Threading.Thread.Sleep(5000);
            //StringBuilder sb = new StringBuilder();

            List <Task <Contracts.Land.ContractDefinition.GetTileOutputDTO> > getTileTasks =
                new List <Task <Contracts.Land.ContractDefinition.GetTileOutputDTO> >();

            for (byte i = 0; i < 18; i++)
            {
                getTileTasks.Add(EthKeyManager.Land.GetTileQueryAsync(x, y, i));
            }

            for (byte i = 0; i < 18; i++)
            {
                var tileOutput = await getTileTasks[i];
                result.TileInfoRaw.Add(tileOutput);
            }

            return(result);
        }
        internal async Task LoadIsland(int mainIslandX, int mainIslandY)
        {
            Debug.Log("Loading Island " + mainIslandX + " " + mainIslandY);
            CurrentLandDetails = await GetLandDetails((ushort)mainIslandX, (ushort)mainIslandY);

            CurrentLandDetailsDirty = true;
        }
        async Task SetToNewLand(Galleass3D.Contracts.Land.ContractDefinition.LandGeneratedEventDTO generateLandEvent)
        {
            Debug.Log("Land got generated: " + generateLandEvent.X + " " + generateLandEvent.Y + " - " + generateLandEvent.Island1 + " - " + generateLandEvent.Island2 + " - " + generateLandEvent.Island3 + " - " + generateLandEvent.Island4 + " - " + generateLandEvent.Island5 + " - " + generateLandEvent.Island6 + " - " + generateLandEvent.Island7 + " - " + generateLandEvent.Island8 + " - " + generateLandEvent.Island9);
            CurrentLandDetails = await GetLandDetails(generateLandEvent.X, generateLandEvent.Y);

            CurrentLandDetailsDirty = true;
        }