public override void LoadContent() { width = ScreenManager.GraphicsDevice.Viewport.Width; height = ScreenManager.GraphicsDevice.Viewport.Height; r = new Rectangle(0, 0, width, height); font_manage = new Police_Size_Manage(height, width, this); font = font_manage.Get_Regular_Font(); string_1 = langue.getString(43); bouton_1_string = langue.getString(44); bouton_2_string = langue.getString(21); _no_co = new No_Connection_POPUP(this); _code = (string)IsolatedStorageSettings.ApplicationSettings ["code"]; _id = (string)IsolatedStorageSettings.ApplicationSettings ["id"]; int _loading_height = (int)(width * 0.05); _position_texte = new Vector2((float)(width / 2 - font.MeasureString(string_1).X *font_manage._scale / 2), (float)(height * 0.3)); _position_loading = new Vector2((float)(width * 0.6 + font.MeasureString(string_1).X *font_manage._scale / 2), (float)(height * 0.3 + font.MeasureString(string_1).Y *font_manage._scale / 2)); Vector2 bouton_taille = new Vector2((float)(width * 0.5), (float)(height * 0.15)); Vector2 position_bouton_1 = new Vector2((float)(width / 2 - bouton_taille.X / 2), (float)(height * 0.45)); Rectangle r1 = new Rectangle((int)(position_bouton_1.X), (int)(position_bouton_1.Y), (int)(bouton_taille.X), (int)(bouton_taille.Y)); Rectangle r2 = new Rectangle((int)(position_bouton_1.X), (int)(height * 0.65), (int)(bouton_taille.X), (int)(bouton_taille.Y)); int marge = (int)(r1.Height * 0.1); _bouton_1 = new Bouton(this, r1, font, bouton_1_string, marge, 0, Color.White, color_bouton, font_manage._scale); _bouton_2 = new Bouton(this, r2, font, bouton_2_string, marge, 0, Color.White, color_bouton, font_manage._scale); _loading = new LoadingSprite(this, _loading_height, _position_loading, color_texte); if (server == null) { server = new Echange_Server_Class(); server.Ajout_Joueur_Liste_Attente(_id, _code); } else { if (!server.Echange_en_cours) { server.Verifier_Partie_trouver(_id, _code); } } popup = new Adversaire_Found_POPUP(this, server); base.LoadContent(); }
public override void HandleInput(InputState input) { if (_no_co._statut != No_Connection_POPUP.Statut_Popup.Wait) { _no_co.Input(input); if (_no_co._statut == No_Connection_POPUP.Statut_Popup.Option_1) { _no_co._statut = No_Connection_POPUP.Statut_Popup.Wait; server.CloseConnection(); server = new Echange_Server_Class(); server.Ajout_Joueur_Liste_Attente(_id, _code); } else if (_no_co._statut == No_Connection_POPUP.Statut_Popup.Option_2) { server.CloseConnection(); this.ExitScreen(); ScreenManager.AddScreen(new MainMenuScreen()); } } else if (popup.is_active) { popup.Input(input); } else { foreach (GestureSample gesture in input.Gestures) { if (gesture.GestureType == GestureType.Tap) { if (_bouton_1.Input(gesture.Position)) { this.ExitScreen(); ScreenManager.AddScreen(new PlayClass(server, is_dans_salle_attente)); } if (_bouton_2.Input(gesture.Position)) { server.CloseConnection(); this.ExitScreen(); ScreenManager.AddScreen(new MainMenuScreen()); } } } } base.HandleInput(input); }
public override void Update(GameTime gameTime, bool otherScreenHasFocus, bool coveredByOtherScreen) { if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed) { this.ExitScreen(); ScreenManager.AddScreen(new MainMenuScreen()); } float timer = (float)gameTime.ElapsedGameTime.TotalMilliseconds; transition.Update_Transition(timer); _no_co.Update(timer, server); if (!popup.is_active) { _loading.Update(timer); } else { GestionFin_Popup(); popup.Update(timer); } if (!popup.is_active) { if (server.Info_Attente_Check()) { string blbl = server.Recuperer_Info(); string[] data = blbl.Split(' '); if (!is_dans_salle_attente) { if (data [0] == "true") { is_dans_salle_attente = true; server.Verifier_Partie_trouver(_id, _code); } else { server.Ajout_Joueur_Liste_Attente(_id, _code); } } else { if (data [0] == "true") { Adversaire_Found(data [1]); } } } if (is_dans_salle_attente) { if (!server.Echange_en_cours && _timer_ping_partie.IncreaseTimer(timer)) { server.Verifier_Partie_trouver(_id, _code); } } } base.Update(gameTime, otherScreenHasFocus, coveredByOtherScreen); }