private void CorporationUpdate(Corporation cb) { if (null == cb) { return; } if (!corps.ContainsKey(cb.ID)) { Corporation corp = new Corporation(cb.ID); AddObject(corp); corps.Add(corp.ID, corp); } eventHolder.AddRange(corps[cb.ID].Update(cb)); if (LocalCorporation == null && cb.Owner == LocalCharacterID) { LocalCorporation = corps[cb.ID]; MyShipList.SetLocalCorp(cb.ID); } }
private void Start() { list = LocalDataManager.instance.MyShipList; list.OnChange += OnChange; OnChange(); }
private IEnumerator Prepare(int id) { MyShipList = new MyShipList(this); //charger la current Frame long frameReqID = WideDataManager.Request(new GetCurrentFrameRequest()); bool waitForFrame = true; RequestIDDone frameMethCB = delegate(Request r) { if (r.RequestID == frameReqID) { GetCurrentFrameRequest g = r as GetCurrentFrameRequest; waitForFrame = false; frame = g.Frame; } }; OnRequestDone += frameMethCB; while (waitForFrame) { yield return(null); } OnRequestDone -= frameMethCB; //charger le character du joeur WideDataManager.wideDataManager.SendRequest(new LoadCharacterRequest(id)); while (!characters.ContainsKey(id) || !characters[id].Loaded) { yield return(null); } //charger egalement sa mailbox while (mailBox == null || !mailBox.Loaded) { yield return(null); } //charger la corportation du joueur si elle existe float waiting = 3.0f; if (characters.ContainsKey(id) && characters[id].Corp != -1) { while (!corps.ContainsKey(characters[id].Corp) || !corps[characters[id].Corp].Loaded) { if (waiting > 2.0f) { WideDataManager.wideDataManager.SendRequest(new LoadCorporationRequest(characters[id].Corp)); waiting = 0.0f; } waiting += Time.deltaTime; yield return(null); } } //charger la liste des stations de l'univers long reqID = WideDataManager.wideDataManager.SendRequest(new LoadStationsRequest()); bool stationLoadOK = false; RequestIDDone methCB = delegate(Request r) { if (r.RequestID == reqID) { stationLoadOK = true; } }; OnRequestDone += methCB; while (!stationLoadOK) { yield return(null); } OnRequestDone -= methCB; /* * reqID = WideDataManager.wideDataManager.SendRequest(new LoadRoutesRequest()); * * bool routesOK = false; * methCB = delegate (Request r) { * if (r.RequestID == reqID) { * LoadRoutesRequest lrr = r as LoadRoutesRequest; * routes = lrr.Routes; * routesOK = true; * } * }; * * OnRequestDone += methCB; * while (!routesOK) { * yield return null; * } * OnRequestDone -= methCB; */ Ready = true; TutorialManager.RaiseEvent("gameStart"); }