private void OnRequest(Request r) { if (r.RequestID == _reqID) { _reqID = -1; LocalDataManager.instance.OnRequestDone -= OnRequest; waiting.SetActive(false); MarketPlaceSellOrderRequest m = r as MarketPlaceSellOrderRequest; if (m.Result == 0) { Window w = GetComponentInParent <Window>(); Destroy(w.gameObject); } else { WindowSystem ws = FindObjectOfType <WindowSystem>(); switch (m.Result) { case -1: ws.ShowMessage("Not enough resource in hangar"); break; } } } }
private IEnumerator MarketPlaceSellOrderRequest(Request r) { yield return(new WaitForSeconds(_loadTime)); MarketPlaceSellOrderRequest m = r as MarketPlaceSellOrderRequest; m.Hangar = _container._hangars[m.HangarID]; if (_hangarManager.RemoveResourceToHangar(m.HangarID, m.ResourceType, m.Qte)) { //on a reussi a enlever les ressources on fait la requete _marketManager.CreateSellOrder(m.ResourceType, m.Qte, m.Price); Corporation corp = _container._corps[m.Hangar.Corp]; corp.ICU += m.Qte * m.Price; m.Corp = corp; } else { //pas suffisement de ressources m.Result = -1; } FinishRequest(m); }