protected virtual IEnumerator Put(ResourceTileSelection selection)
{
HTTP.Request request;
m_actionProgress = 0f;
string json = GetActionJson();
Debug.Log(json);
List<ResourceTile> tiles = new List<ResourceTile>();
float div = 1f/selection.Count();
for (int i=0; i<selection.Count(); ++i) {
int id = selection[i];
request = new HTTP.Request( "Put", WebRequests.GetURLToResourceTile(id) );
request.SetText( json );
request.AddParameters( WebRequests.authenticatedGodModeParameters );
request.Send();
while (!request.isDone) {
//m_actionProgress = (i+www.uploadProgress)*div;
yield return 0;
}
if( request.ProducedError ) {
m_actionProgress = 1f;
yield break;
}
try {
tiles.Add(JSONDecoder.Decode<IndividualResourceTile>(request.response.Text).resource_tile);
}
catch (JsonException) {
Debug.LogError(request.response.Text);
}
}
// ConcludeActionOnResourceTiles(tiles.ToArray());
//Update the world
IEnumerator e = WebRequests.RefreshWorldData(new WebCoroutine());
yield return e.Current;
while(e.MoveNext()) yield return e.Current;
}