public override UpdateData GetSetupData(SubscriberLevel subscriber) { var data = new UpdateData("City"); data["id"] = Id; data["name"] = name; data["info"] = info; data["type"] = type; data["location"] = new Dictionary <String, double> { { "x", location.Latitude }, { "y", location.Longitude } }; data["owner"] = owner.Id; data["population"] = population; data["offers"] = offers; if (subscriber == SubscriberLevel.Owner) { var buildingsData = new Dictionary <BuildingType, object>(); foreach (var b in this.buildings) { buildingsData[b.Key] = b.Value.GetSetupData(subscriber); } data["buildings"] = buildingsData; data["items"] = items; data["populationSurplus"] = populationSurplus; data["consumesPerPopulation"] = consumesPerPopulation; data["consumedSeconds"] = (DateTime.Now - lastConsumed).TotalSeconds; } return(data); }
public override UpdateData GetSetupData(SubscriberLevel subscriber) { return(new UpdateData(this.type.ToString()) { { "quant", quant }, { "type", type } }); }
protected void MakeUpdateDataIfNotExists(SubscriberLevel subscriberLevel) { if (updateData == null) { updateData = new Dictionary <SubscriberLevel, UpdateData>(); } if (!updateData.ContainsKey(subscriberLevel)) { updateData[subscriberLevel] = new UpdateData(EntityName()); } }
public void SetUpdateDataDict <K, V>(SubscriberLevel subscriberLevel, string propertyName, K key, V value) { MakeUpdateDataIfNotExists(subscriberLevel); if (!updateData[subscriberLevel].ContainsKey(propertyName)) { updateData[subscriberLevel][propertyName] = new Dictionary <K, V>(); } var dict = (Dictionary <K, V>)updateData[subscriberLevel][propertyName]; dict[key] = value; }
public override UpdateData GetSetupData(SubscriberLevel subscriber) { return(new UpdateData("event") { { "id", Id }, { "type", "Fight" }, { "executesInSec", (executionTime - DateTime.Now).TotalSeconds }, { "fromCityID", fromCityID }, { "targetCityID", targetCityID }, { "unitIDs", unitIDs }, }); }
public override UpdateData GetSetupData(SubscriberLevel subscriber) { UpdateData UpdateData = new UpdateData("event"); if (subscriber == SubscriberLevel.Owner) { UpdateData["type"] = "BuildingUpgrade"; UpdateData["cityID"] = cityID; UpdateData["BuildingType"] = BuildingType.ToString(); UpdateData["executesInSec"] = (executionTime - DateTime.Now).TotalSeconds; } return(UpdateData); }
public override UpdateData GetSetupData(SubscriberLevel subscriber) { UpdateData UpdateData = new UpdateData("event"); if (subscriber == SubscriberLevel.Owner) { UpdateData["type"] = "UnitArrives"; UpdateData["unitID"] = unitID; UpdateData["fromCityID"] = fromCityID; UpdateData["targetCityID"] = targetCityID; UpdateData["executesInSec"] = (executionTime - DateTime.Now).TotalSeconds; } return(UpdateData); }
//Subscriber public void AddSubscription(Player player, SubscriberLevel level) { if (!subscribers.ContainsKey(level)) { subscribers[level] = new HashSet <Player>(); } if (!player.subscriptions.ContainsKey(level)) { player.subscriptions[level] = new HashSet <Subscribable>(); } subscribers[level].Add(player); player.subscriptions[level].Add(this); base.SetUpdateData(level, "id", this.Id); updateData[level] = GetSetupData(level); }
public override UpdateData GetSetupData(SubscriberLevel subscriber) { var data = new UpdateData(type.ToString()) { { "type", type.ToString() }, { "lvl", lvl }, { "productionSeconds", (DateTime.Now - lastProduced).TotalSeconds } }; if (Setting.educts.Count > 0) { data["orderedProductions"] = orderedProductions; } return(data); }
public override UpdateData GetSetupData(SubscriberLevel subscriber) { UpdateData data = new UpdateData("Player") { { "id", Id }, { "name", name }, { "online", online }, { "contracts", contracts.Where(c => c.Value.until > DateTime.Now).ToDictionary(c => c.Key.Id, c => c.Value) }, }; if (subscriber == SubscriberLevel.Owner) { data["money"] = money; data["messages"] = (from m in messages.Values select m.GetSetupData(SubscriberLevel.Owner)).ToList(); data["contractProposals"] = contractProposals.ToDictionary(c => c.Key.Id, c => c.Value); } return(data); }
public override UpdateData GetSetupData(SubscriberLevel subscriber) { var data = new UpdateData(EntityName()); if (from != null) { data["from"] = from.Id; } data["id"] = Id; data["message"] = message; data["read"] = read; data["date"] = date; if (this.data != null) { data["data"] = this.data; } return(data); }
abstract public UpdateData GetSetupData(SubscriberLevel subscriber);
new public void SetUpdateDataDict <K, V>(SubscriberLevel subscriberLevel, string propertyName, K key, V value) { base.SetUpdateDataDict(subscriberLevel, propertyName, key, value); base.SetUpdateData(subscriberLevel, "id", this.Id); }
public void SetUpdateData(SubscriberLevel subscriberLevel, string propertyName, object value) { MakeUpdateDataIfNotExists(subscriberLevel); updateData[subscriberLevel][propertyName] = value; }
public UpdateData GetUpdateData(SubscriberLevel s) { return(updateData[s]); }
public void RemoveSubscription(Player player, SubscriberLevel level) { subscribers[level].Remove(player); player.subscriptions[level].Remove(this); }
new public void SetUpdateData(SubscriberLevel subscriberLevel, string propertyName, object value) { base.SetUpdateData(subscriberLevel, propertyName, value); base.SetUpdateData(subscriberLevel, "id", this.Id); }