public bool Release(ResourceComponent res, out MarketRow row) { ResourceRow <Market> fromParent = null; bool released = _Release(res, out fromParent); row = fromParent as MarketRow; return(released); }
public bool Release(ResourceComponent res, out WarehouseRow row) { ResourceRow <Warehouse> fromParent = null; bool released = _Release(res, out fromParent); row = fromParent as WarehouseRow; return(released); }
public ResourceRow AddResourceRow(string File, string Key, string DefaultValue, string Value) { ResourceRow rowResourceRow = ((ResourceRow)(this.NewRow())); object[] columnValuesArray = new object[] { File, Key, DefaultValue, Value }; rowResourceRow.ItemArray = columnValuesArray; this.Rows.Add(rowResourceRow); return(rowResourceRow); }
protected bool _Release(ResourceComponent res, out ResourceRow <T> row) { row = this; if (IndexMap.ContainsKey(res)) { int index = IndexMap[res]; IndexMap.Remove(res); parent.RemoveFromGlobalList(res); stack[index] = null; return(true); } else { return(false); } }
private void CreateResourceMap() { foreach (var p in this._package) { foreach (var t in p.TypeTable) { Dictionary <Int32, ArscApi.Res_value> refKeys1 = new Dictionary <Int32, ArscApi.Res_value>(); foreach (var simple in t.Simple) { ResourceRow row = null; switch (simple.Value.Value.dataType) { case ArscApi.DATA_TYPE.STRING: row = new ResourceRow(simple.Value.Value, this._valueStringPool.Strings[simple.Value.Value.data]); break; case ArscApi.DATA_TYPE.REFERENCE: refKeys1.Add(simple.Key, simple.Value.Value); break; default: row = new ResourceRow(simple.Value.Value, null); break; } if (row != null) { this.AddToMap(simple.Key, row); } } List <ResourceRow> values; foreach (var refResource in refKeys1) { if (this._resourceMap.TryGetValue(refResource.Value.data, out values)) { this.AddToMap(refResource.Key, values.ToArray()); } } } } }
/// Should listen to changes in Faction resources public override void OnRaise(Faction data) { if (data is PlayerFaction) { FactionResources resources = data.Resources; foreach (var(resource, quantity) in resources.GetResources()) { /// Instantiates Resource Row if not already present /// Later, this could be used for refined resources /// so that they would not be displayed at the start of the game /// when the player is far from obtaining them if (!this.resourceRows.ContainsKey(resource)) { ResourceRow row = Instantiate(this.resourceRowPrefab) as ResourceRow; row.transform.SetParent(this.resourceRowsParent, false); this.resourceRows[resource] = row; this.resourceRows[resource].UpdateResourceNameLabel(resource.Name); } this.resourceRows[resource].UpdateAmountLabel(quantity); } } }
public ResourceRowChangeEvent(ResourceRow row, global::System.Data.DataRowAction action) { this.eventRow = row; this.eventAction = action; }
public void RemoveResourceRow(ResourceRow row) { this.Rows.Remove(row); }
public void AddResourceRow(ResourceRow row) { this.Rows.Add(row); }
public ResourceRowChangeEvent(ResourceRow row, global::System.Data.DataRowAction action) { this.eventRow = row; this.eventAction = action; }
public void RemoveResourceRow(ResourceRow row) { this.Rows.Remove(row); }
public void AddResourceRow(ResourceRow row) { this.Rows.Add(row); }