private void CheckElement(ElementInstance element) { if (element.GetTokenAmount(GetTokenDefinition(0)) >= int.Parse(element.GetAttributeValue("Cena"))) { element.Color = element.Definition.Colors[1]; element.SetAttributeValue("Czy kupiony?", "Tak"); } else { element.Color = element.Definition.Colors[0]; element.SetAttributeValue("Czy kupiony?", "Nie"); } }
public JsonResult EditElement(int gameId, int elementId, FormCollection elementData) { lock (Game) { try { Player player = Platform.GetCurrentPlayer(Game); ElementInstance element = Game.GetElement(elementId); if (element.PlayerId != player.Id && !player.IsModerator()) { throw new Error.AccessDenied(); } foreach (var key in elementData.AllKeys) { if (element.Definition.HasAttribute(key)) { element.Definition.GetAttribute(key).Validate(elementData.Get(key)); element.SetAttributeValue(key, elementData.Get(key)); } } Game.Definition.OnEditElement(Game, element); return(Json(Result.Succes)); } catch (Error.AppError ex) { return(Json(new Result(ex.Message).AsFailure())); } } }
public JsonResult AddElement(int gameId, int elementDefinitionId, FormCollection elementData) { lock (Game) { try { ElementInstance element = new ElementInstance(Game.Definition.GetElementDefinition(elementDefinitionId)); element.PlayerId = Platform.GameAuthentication.GetPlayerId(gameId); foreach (var key in elementData.AllKeys) { if (element.Definition.HasAttribute(key)) { element.SetAttributeValue(key, elementData.Get(key)); } } if (element.Definition.CanAdd(Platform.GetCurrentPlayer(Game))) { int id = Game.AddElement(element); return(Json(new Result(new { elementId = id }).AsSuccess())); } else { throw new Error.AccessDenied(); } } catch (Error.AppError ex) { return(Json(new Result(ex.Message).AsFailure())); } } }