Пример #1
0
        private void btnCarte4_Click(object sender, RoutedEventArgs e)
        {
            if (actif == j1)
            {
                btnCarte1.Opacity = 0.5;
                btnCarte2.Opacity = 0.5;
                btnCarte3.Opacity = 0.5;
                btnCarte4.Opacity = 1;

                foreach (CartePersonnage c in j1.Main)
                {
                    if (c.Numero == Convert.ToString(btnCarte4.Content))
                    {
                        selected = c;
                    }
                }
            }
            else
            {
                btnCarte1.Opacity = 0.5;
                btnCarte2.Opacity = 0.5;
                btnCarte3.Opacity = 0.5;
                btnCarte4.Opacity = 1;

                foreach (CartePersonnage c in j2.Main)
                {
                    if (c.Numero == Convert.ToString(btnCarte4.Content))
                    {
                        selected = c;
                    }
                }
            }
        }
Пример #2
0
        public Accueil_Jeu()
        {
            InitializeComponent();
            var json = JsonConvert.DeserializeObject <dynamic>(File.ReadAllText("ninjago.json"));

            //pour recuperer les cartes depuis le Json et instancié les decks et ma collections
            foreach (var carte in json)
            {
                Carte c = new Carte(carte.Nom.ToString(), carte.Numero.ToString(), Convert.ToInt32(carte.Exemplaire), carte.Description.ToString(), carte.Type.ToString(), Convert.ToBoolean(carte.Deck1), Convert.ToBoolean(carte.Deck2), Convert.ToBoolean(carte.Deck3));
                if (c.Type == "P")
                {
                    CartePersonnage cp = new CartePersonnage(carte.Nom.ToString(), carte.Numero.ToString(), Convert.ToInt32(carte.Exemplaire), carte.Description.ToString(), carte.Type.ToString(), Convert.ToBoolean(carte.Deck1), Convert.ToBoolean(carte.Deck2), Convert.ToBoolean(carte.Deck3), Convert.ToInt32(carte.Attaque), Convert.ToInt32(carte.Defense), Convert.ToInt32(carte.Vitesse), Convert.ToInt32(carte.Force));
                    lesCartes.Add(cp);
                    if (cp.Deck1 == true)
                    {
                        deck1.Add(cp);
                    }
                    if (cp.Deck2 == true)
                    {
                        deck2.Add(cp);
                    }
                    if (cp.Deck3 == true)
                    {
                        deck3.Add(cp);
                    }
                    if (cp.Exemplaire > 0)
                    {
                        maCollection.Add(cp);
                    }
                }
            }
            // pour remplir la comboBox des decks si un deck contient 20 cartes il sera ajouter dans la combo box
            if (deck1 != null)
            {
                if (deck1.Count() == 20)
                {
                    cbxDeckJ1.Items.Add("deck 1");
                    cbxDeckJ2.Items.Add("deck 1");
                }
            }
            if (deck2 != null)
            {
                if (deck2.Count() == 20)
                {
                    cbxDeckJ1.Items.Add("deck 2");
                    cbxDeckJ2.Items.Add("deck 2");
                }
            }
            if (deck3 != null)
            {
                if (deck3.Count() == 20)
                {
                    cbxDeckJ1.Items.Add("deck 3");
                    cbxDeckJ2.Items.Add("deck 3");
                }
            }
        }
Пример #3
0
        public Launcher()
        {
            InitializeComponent();
            #region Initialisation Liste générale
            //recuperation du JSON du fichier local
            var json = JsonConvert.DeserializeObject <dynamic>(File.ReadAllText("ninjago.json"));
            //Parcours de la collection pour créer les cartes en fonction du type renvoyer par le JSON
            try
            {
                foreach (var carte in json)
                {
                    if (carte.Type == "P")
                    {
                        CartePersonnage cp = new CartePersonnage(carte.Nom.ToString(), carte.Numero.ToString(), Convert.ToInt32(carte.Exemplaire), carte.Description.ToString(), carte.Type.ToString(), Convert.ToBoolean(carte.Deck1), Convert.ToBoolean(carte.Deck2), Convert.ToBoolean(carte.Deck3), Convert.ToInt32(carte.Attaque), Convert.ToInt32(carte.Defense), Convert.ToInt32(carte.Vitesse), Convert.ToInt32(carte.Force));
                        lesCartes.Add(cp);
                    }
                    else if (carte.Type == "A")
                    {
                        CarteAction ca = new CarteAction(carte.Nom.ToString(), carte.Numero.ToString(), Convert.ToInt32(carte.Exemplaire), carte.Description.ToString(), carte.Type.ToString());
                        lesCartes.Add(ca);
                    }
                    else if (carte.Type == "V")
                    {
                        CarteVehicule cv = new CarteVehicule(carte.Nom.ToString(), carte.Numero.ToString(), Convert.ToInt32(carte.Exemplaire), carte.Description.ToString(), carte.Type.ToString());
                        lesCartes.Add(cv);
                    }
                }
            }
            catch
            {
            }
            //Envoie des données au fichier Json local
            File.WriteAllText("ninjago.json", JsonConvert.SerializeObject(lesCartes, Formatting.Indented));
            #endregion
            #region Initailisation maCollection

            //Parcours de la collection pour créer les cartes en fonction du type renvoyer par le JSON
            foreach (Carte c in lesCartes)      //Pour chaque carte de la liste complete
            {
                if (c.Exemplaire > 0)           //Si le nbr d'exemplaire et supérieur à 0 on l'ajoute dans la collection du joueur
                {
                    maCollection.Add(c);
                }
            }
            #endregion
            #region Initialisation monDeck
            foreach (Carte c in maCollection)  //Pour chaque carte de la collection du joueur
            {
                if (c.Deck1 == true)           //Si le booleen deck est vrai on l'ajoute dans le deck du joueur
                {
                    monDeck1.Add(c);
                }
                if (c.Deck2 == true)
                {
                    monDeck2.Add(c);
                }
                if (c.Deck3 == true)
                {
                    monDeck3.Add(c);
                }
            }
            #endregion
        }
Пример #4
0
        private void btn_recup_api_Click(object sender, RoutedEventArgs e)
        {
            bool ajout = true;
            //recuperation du JSON de l'API
            String url  = "http://127.0.0.1/ninjago/public/api";
            var    res  = new WebClient();
            var    json = res.DownloadString(url);      // il existe uploadString aussi
            JArray o    = JArray.Parse(json);

            //Parcours de la collection pour créer les cartes en fonction du type renvoyer par le JSON
            if (lesCartes.Count() == 0)
            {
                foreach (JObject carte in o)
                {
                    Carte c = new Carte(carte.GetValue("nom").ToString(), carte.GetValue("numero").ToString(), Convert.ToInt32(carte.GetValue("exemplaire")), carte.GetValue("description").ToString(), carte.GetValue("type").ToString(), Convert.ToBoolean(carte.GetValue("deck1")), Convert.ToBoolean(carte.GetValue("deck2")), Convert.ToBoolean(carte.GetValue("deck3")));  //GetValue("xxx") permet de récupérer les données du JSON

                    if (c.Type == "P")
                    {
                        CartePersonnage cp = new CartePersonnage(carte.GetValue("nom").ToString(), carte.GetValue("numero").ToString(), Convert.ToInt32(carte.GetValue("exemplaire")), carte.GetValue("description").ToString(), carte.GetValue("type").ToString(), Convert.ToBoolean(carte.GetValue("deck1")), Convert.ToBoolean(carte.GetValue("deck2")), Convert.ToBoolean(carte.GetValue("deck3")), Convert.ToInt32(carte.GetValue("attaque")), Convert.ToInt32(carte.GetValue("defense")), Convert.ToInt32(carte.GetValue("vitesse")), Convert.ToInt32(carte.GetValue("force")));
                        lesCartes.Add(cp);
                    }
                    else if (c.Type == "A")
                    {
                        CarteAction ca = new CarteAction(carte.GetValue("nom").ToString(), carte.GetValue("numero").ToString(), Convert.ToInt32(carte.GetValue("exemplaire")), carte.GetValue("description").ToString(), carte.GetValue("type").ToString());
                        lesCartes.Add(ca);
                    }
                    else if (c.Type == "V")
                    {
                        CarteVehicule cv = new CarteVehicule(carte.GetValue("nom").ToString(), carte.GetValue("numero").ToString(), Convert.ToInt32(carte.GetValue("exemplaire")), carte.GetValue("description").ToString(), carte.GetValue("type").ToString());
                        lesCartes.Add(cv);
                    }
                }
            }
            else
            {
                foreach (JObject carte in o)
                {
                    foreach (Carte laCarte in lesCartes)
                    {
                        Carte c = new Carte(carte.GetValue("nom").ToString(), carte.GetValue("numero").ToString(), Convert.ToInt32(carte.GetValue("exemplaire")), carte.GetValue("description").ToString(), carte.GetValue("type").ToString(), Convert.ToBoolean(carte.GetValue("deck1")), Convert.ToBoolean(carte.GetValue("deck2")), Convert.ToBoolean(carte.GetValue("deck3")));  //GetValue("xxx") permet de récupérer les données du JSON
                        if (c.Nom == laCarte.Nom)
                        {
                            ajout = false;
                        }
                        else
                        {
                        }
                    }
                    if (ajout == true)
                    {
                        if (carte.GetValue("type").ToString() == "P")
                        {
                            CartePersonnage cp = new CartePersonnage(carte.GetValue("nom").ToString(), carte.GetValue("numero").ToString(), Convert.ToInt32(carte.GetValue("exemplaire")), carte.GetValue("description").ToString(), carte.GetValue("type").ToString(), Convert.ToBoolean(carte.GetValue("deck1")), Convert.ToBoolean(carte.GetValue("deck2")), Convert.ToBoolean(carte.GetValue("deck3")), Convert.ToInt32(carte.GetValue("attaque")), Convert.ToInt32(carte.GetValue("defense")), Convert.ToInt32(carte.GetValue("vitesse")), Convert.ToInt32(carte.GetValue("force")));
                            lesCartes.Add(cp);
                        }
                        else if (carte.GetValue("type").ToString() == "A")
                        {
                            CarteAction ca = new CarteAction(carte.GetValue("nom").ToString(), carte.GetValue("numero").ToString(), Convert.ToInt32(carte.GetValue("exemplaire")), carte.GetValue("description").ToString(), carte.GetValue("type").ToString());
                            lesCartes.Add(ca);
                        }
                        else if (carte.GetValue("type").ToString() == "V")
                        {
                            CarteVehicule cv = new CarteVehicule(carte.GetValue("nom").ToString(), carte.GetValue("numero").ToString(), Convert.ToInt32(carte.GetValue("exemplaire")), carte.GetValue("description").ToString(), carte.GetValue("type").ToString());
                            lesCartes.Add(cv);
                        }
                    }
                }
            }
            //Ensuite on réécrit les données récupérer dans le fichier local (!!!Attention reset du nombre d'exemplaire et du booléen ==> a corriger)
            File.WriteAllText("ninjago.json", JsonConvert.SerializeObject(lesCartes, Formatting.Indented));
        }
Пример #5
0
        public Deck()
        {
            InitializeComponent();
            #region Initialisation Liste générale
            //recuperation du JSON du fichier local
            var json = JsonConvert.DeserializeObject <dynamic>(File.ReadAllText("ninjago.json"));
            //Parcours de la collection pour créer les cartes en fonction du type renvoyer par le JSON
            try
            {
                foreach (var carte in json)
                {
                    if (carte.Type == "P")
                    {
                        CartePersonnage cp = new CartePersonnage(carte.Nom.ToString(), carte.Numero.ToString(), Convert.ToInt32(carte.Exemplaire), carte.Description.ToString(), carte.Type.ToString(), Convert.ToBoolean(carte.Deck1), Convert.ToBoolean(carte.Deck2), Convert.ToBoolean(carte.Deck3), Convert.ToInt32(carte.Attaque), Convert.ToInt32(carte.Defense), Convert.ToInt32(carte.Vitesse), Convert.ToInt32(carte.Force));
                        lesCartes.Add(cp);
                    }
                    else if (carte.Type == "A")
                    {
                        CarteAction ca = new CarteAction(carte.Nom.ToString(), carte.Numero.ToString(), Convert.ToInt32(carte.Exemplaire), carte.Description.ToString(), carte.Type.ToString());
                        lesCartes.Add(ca);
                    }
                    else if (carte.Type == "V")
                    {
                        CarteVehicule cv = new CarteVehicule(carte.Nom.ToString(), carte.Numero.ToString(), Convert.ToInt32(carte.Exemplaire), carte.Description.ToString(), carte.Type.ToString());
                        lesCartes.Add(cv);
                    }
                }
            }
            catch
            {
            }
            #endregion
            #region Initailisation maCollection

            //Parcours de la collection pour créer les cartes en fonction du type renvoyer par le JSON
            foreach (Carte c in lesCartes)      //Pour chaque carte de la liste complete
            {
                if (c.Exemplaire > 0)           //Si le nbr d'exemplaire et supérieur à 0 on l'ajoute dans la collection du joueur
                {
                    maCollection.Add(c);
                }
            }
            #endregion
            #region Initialisation monDeck
            foreach (Carte c in maCollection)  //Pour chaque carte de la collection du joueur
            {
                if (c.Deck1 == true)           //Si le booleen deck est vrai on l'ajoute dans le deck du joueur
                {
                    monDeck1.Add(c);
                }
                if (c.Deck2 == true)
                {
                    monDeck2.Add(c);
                }
                if (c.Deck3 == true)
                {
                    monDeck3.Add(c);
                }
            }
            #endregion
            //Remplissage de la liste box deck
            cbbx_choix_deck.SelectedIndex = 0;  //permet de remplir la list box deck avec par défaut, le deck 1
            if (cbbx_choix_deck.SelectedIndex == 0)
            {
                lbox_deck.ItemsSource = monDeck1;
            }
            else if (cbbx_choix_deck.SelectedIndex == 1)
            {
                lbox_deck.ItemsSource = monDeck2;
            }
            else if (cbbx_choix_deck.SelectedIndex == 2)
            {
                lbox_deck.ItemsSource = monDeck3;
            }
            //Remplissage de la liste box collection
            lbox_collection.Items.Clear();
            foreach (Carte c in maCollection)
            {
                if (cbbx_choix_deck.SelectedIndex == 0)
                {
                    lbl_deck_count.Content = monDeck1.Count() + " / 20";
                    if (c.Deck1 == true)
                    {
                    }
                    else
                    {
                        lbox_collection.Items.Add(c);
                    }
                }
                else if (cbbx_choix_deck.SelectedIndex == 1)
                {
                    lbl_deck_count.Content = monDeck2.Count() + " / 20";
                    if (c.Deck2 == true)
                    {
                    }
                    else
                    {
                        lbox_collection.Items.Add(c);
                    }
                }
                else if (cbbx_choix_deck.SelectedIndex == 2)
                {
                    lbl_deck_count.Content = monDeck1.Count() + " / 20";
                    if (c.Deck3 == true)
                    {
                    }
                    else
                    {
                        lbox_collection.Items.Add(c);
                    }
                }
            }
            //initialisation compteur de carte
            lbl_collection_count.Content = lbox_collection.Items.Count + " / " + lesCartes.Count();
            lbl_deck_count.Content       = monDeck1.Count() + " / 20";
        }
Пример #6
0
        public void refresh()
        {
            //refresh de la collection
            lbox_collection.Items.Clear();
            foreach (Carte c in maCollection)
            {
                if (cbbx_choix_deck.SelectedIndex == 0)
                {
                    lbl_deck_count.Content = monDeck1.Count() + " / 20";
                    if (c.Deck1 == true)
                    {
                    }
                    else
                    {
                        lbox_collection.Items.Add(c);
                    }
                }
                else if (cbbx_choix_deck.SelectedIndex == 1)
                {
                    lbl_deck_count.Content = monDeck2.Count() + " / 20";
                    if (c.Deck2 == true)
                    {
                    }
                    else
                    {
                        lbox_collection.Items.Add(c);
                    }
                }
                else if (cbbx_choix_deck.SelectedIndex == 2)
                {
                    lbl_deck_count.Content = monDeck1.Count() + " / 20";
                    if (c.Deck3 == true)
                    {
                    }
                    else
                    {
                        lbox_collection.Items.Add(c);
                    }
                }
            }
            lbox_deck.Items.Refresh();
            //compteur de carte
            lbl_collection_count.Content = lbox_collection.Items.Count + " / " + lesCartes.Count();
            if (cbbx_choix_deck.SelectedIndex == 0)
            {
                lbl_deck_count.Content = monDeck1.Count() + " / 20";
            }
            else if (cbbx_choix_deck.SelectedIndex == 1)
            {
                lbl_deck_count.Content = monDeck2.Count() + " / 20";
            }
            else if (cbbx_choix_deck.SelectedIndex == 2)
            {
                lbl_deck_count.Content = monDeck3.Count() + " / 20";
            }

            if (carte != null)      //on vérifie que la carte séléctionnée n'es pas null pour éviter le plantage
            {
                lbl_nom.Content    = carte.ToString();
                lbl_numero.Content = carte.Numero.ToString();
                if (carte.Type == "P")
                {
                    CartePersonnage cp = new CartePersonnage();
                    cp = (CartePersonnage)carte;
                    lbl_vitesse.Content = cp.Vitesse;
                    lbl_attaque.Content = cp.Attaque;
                    lbl_force.Content   = cp.Force;
                    lbl_defense.Content = cp.Defense;
                }
                //Recuperation des images (try catch nécessaire pour éviter le plantage si la carte ne correspond à aucune image)
                try
                {
                    img_carte.Visibility = Visibility.Visible;
                    try                                                                                                                  //Conversion en int puis à nouveau en string pour supprier les 0 de l'affichage //Try catch nécessaire pour les cartes LEx car on ne peut aps convertir en int
                    {
                        carte.UrlImage = "pack://application:,,,/Ressource/cartes/" + Convert.ToInt32(carte.Numero).ToString() + ".png"; //l'attribut UrlImage prend les attributs de la carte pour les metttre en forme comme le nom de l'image qui lui correspond
                    }
                    catch
                    {
                        carte.UrlImage = "pack://application:,,,/Ressource/cartes/" + carte.Numero.ToString() + ".png";  //l'attribut UrlImage prend les attributs de la carte pour les metttre en forme comme le nom de l'image qui lui correspond
                    }
                    var uri    = new Uri(carte.UrlImage);
                    var bitmap = new BitmapImage(uri);
                    img_carte.Source = bitmap;
                }
                catch
                {
                    img_carte.Visibility = Visibility.Hidden;
                }
            }
            else    //si la carte est nulle, ont vide tous les affichages
            {
                lbl_nom.Content      = "";
                lbl_numero.Content   = "";
                lbl_vitesse.Content  = "";
                lbl_attaque.Content  = "";
                lbl_force.Content    = "";
                lbl_defense.Content  = "";
                img_carte.Visibility = Visibility.Hidden;
            }
        }
Пример #7
0
        public Plateau_Jeu()
        {
            InitializeComponent();
            Main.Visibility   = Visibility.Hidden;
            btn_jouer.Content = "Jouer";
            var json = JsonConvert.DeserializeObject <dynamic>(File.ReadAllText("joueur.json"));

            //Parcours de la collection pour créer les cartes en fonction du type renvoyer par le JSON

            foreach (var j in json)
            {
                List <CartePersonnage> deck = new List <CartePersonnage>();
                foreach (var cp in j.Deck)
                {
                    CartePersonnage c = new CartePersonnage(cp.Nom.ToString(), cp.Numero.ToString(), Convert.ToInt32(cp.Exemplaire), cp.Description.ToString(), cp.Type.ToString(), Convert.ToBoolean(cp.Deck1), Convert.ToBoolean(cp.Deck2), Convert.ToBoolean(cp.Deck3), Convert.ToInt32(cp.Attaque), Convert.ToInt32(cp.Defense), Convert.ToInt32(cp.Vitesse), Convert.ToInt32(cp.Force));
                    deck.Add(c);
                }
                Joueur player = new Joueur(Convert.ToString(j.Nom), Convert.ToString(j.Prenom), Convert.ToDateTime(j.DateNaissance), deck);

                lesJ.Add(player);
            }

            var jsonCartes = JsonConvert.DeserializeObject <dynamic>(File.ReadAllText("ninjago.json"));

            //Parcours de la collection pour créer la liste de cartes en fonction du type renvoyer par le JSON
            try
            {
                foreach (var carte in jsonCartes)
                {
                    if (carte.Type == "P")
                    {
                        CartePersonnage cp = new CartePersonnage(carte.Nom.ToString(), carte.Numero.ToString(), Convert.ToInt32(carte.Exemplaire), carte.Description.ToString(), carte.Type.ToString(), Convert.ToBoolean(carte.Deck1), Convert.ToBoolean(carte.Deck2), Convert.ToBoolean(carte.Deck3), Convert.ToInt32(carte.Attaque), Convert.ToInt32(carte.Defense), Convert.ToInt32(carte.Vitesse), Convert.ToInt32(carte.Force));
                        lesCartes.Add(cp);
                    }
                }
            }
            catch
            {
            }
            //List <Case> lesCases = new List<Case>();
            plt = new Plateau(5);

            for (int r = 0; r <= 4; r++)
            {
                for (int c = 0; c <= 4; c++)
                {
                    Button btn = new Button();
                    btn = (Button)FindName("btn" + r + "_" + c);
                    Case laCase = new Case(btn);
                    plt.UnPlateau[r, c] = laCase;
                }
            }


            if (lesJ[0].DateNaissance > lesJ[1].DateNaissance)
            {
                j1 = lesJ[0];
                j2 = lesJ[1];
            }
            else
            {
                j1 = lesJ[1];
                j2 = lesJ[0];
            }
            j1.TirerCarte();
            j2.TirerCarte();
        }
Пример #8
0
        private void btn_jouer_Click(object sender, RoutedEventArgs e)
        { //poser qu'une carte par tour : variable globale utiliser aussi dans btn_click
            btnCarte1.Opacity = 1;
            btnCarte2.Opacity = 1;
            btnCarte3.Opacity = 1;
            btnCarte4.Opacity = 1;
            // action pour retourner le plateau et indiquer le nom du personnage sur les radiobutton et transition entre j1 et j2
            int val_ret;

            if (btn_jouer.Content.ToString() == "Jouer")
            {
                action   = 1;
                defausse = false;
                if (retourner == true)
                {
                    actif = j1;
                    j1.Piocher();
                    val_ret              = 0;
                    retourner            = false;
                    lblNomJoueur.Content = j1.Nom.ToString();
                    try
                    {
                        btnDepot.Content = j1.Depot[j1.Depot.Count - 1].Numero;
                        try
                        {
                            btnDepot.Background = new ImageBrush(new BitmapImage(new Uri(@"pack://*****:*****@"pack://application:,,,/Ressource/cartes/" + btnDepot.Content + ".png")));
                        }
                    }
                    catch
                    {
                        btnDepot.Content    = "carteDepot";
                        btnDepot.Background = new ImageBrush(new BitmapImage(new Uri(@"pack://*****:*****@"pack://application:,,,/Ressource/cartes/" + Convert.ToInt32(btnDepot.Content).ToString() + ".png")));
                        }
                        catch
                        {
                            btnDepot.Background = new ImageBrush(new BitmapImage(new Uri(@"pack://*****:*****@"pack://application:,,,/Ressource/" + btnDepot.Content + ".jpg")));
                    }
                    refreshMain();
                    lblNbrCarteRestante.Content = j2.Deck.Count();
                }
                RotateTransform rotateTransform = new RotateTransform(val_ret);
                rotateTransform.CenterX    = -1;
                rotateTransform.CenterY    = -3;
                PlateauJeu.RenderTransform = rotateTransform;
                //changer le label jouer en passer
                btn_jouer.Content = "Passer";
                //rendre visible la main du joueur
                Main.Visibility = Visibility.Visible;


                //action pour retourner les boutons vides ( comme ça le joueur aura toujours ses cartes a lui dans son sens)
                for (int i = 1; i <= 3; i++)
                {
                    RotateTransform rotateTransformBtn = new RotateTransform(val_ret);
                    rotateTransformBtn.CenterX = 90;
                    rotateTransformBtn.CenterY = 70;


                    Button btn1 = (Button)FindName("btn1_" + i);
                    if (btn1.Content.Equals(""))
                    {
                        btn1.RenderTransform = rotateTransformBtn;
                    }
                    Button btn2 = (Button)FindName("btn2_" + i);
                    if (btn2.Content.Equals(""))
                    {
                        btn2.RenderTransform = rotateTransformBtn;
                    }
                    Button btn3 = (Button)FindName("btn3_" + i);
                    if (btn3.Content.Equals(""))
                    {
                        btn3.RenderTransform = rotateTransformBtn;
                    }
                    for (int j = 1; j <= 3; j++)
                    {
                        RotateTransform rotateTransformBtnDuel = new RotateTransform(val_ret);
                        Button          duel = (Button)FindName("duel" + i + "_" + j);
                        rotateTransformBtnDuel.CenterX = -20;
                        rotateTransformBtnDuel.CenterY = 40;
                        duel.RenderTransform           = rotateTransformBtnDuel;
                    }
                }
            }
            // cacher ses cartes
            else if (action == 0 && duel == false)
            {
                //permet de masque les boutton duel au changement de tour
                btnLeft.Visibility   = Visibility.Hidden;
                btnRight.Visibility  = Visibility.Hidden;
                btnTop.Visibility    = Visibility.Hidden;
                btnBottom.Visibility = Visibility.Hidden;
                //on passe la carte selectionner à null
                selected             = null;
                btnPoser             = null;
                btn_jouer.Content    = "Jouer";
                lblNomJoueur.Content = "";
                Main.Visibility      = Visibility.Hidden;
            }
            score();
        }
Пример #9
0
        public Vue_Carte()
        {
            InitializeComponent();
            #region Initialisation Liste générale
            //recuperation du JSON du fichier local
            var json = JsonConvert.DeserializeObject <dynamic>(File.ReadAllText("ninjago.json"));
            //Parcours de la collection pour créer les cartes en fonction du type renvoyer par le JSON
            try
            {
                foreach (var carte in json)
                {
                    if (carte.Type == "P")
                    {
                        CartePersonnage cp = new CartePersonnage(carte.Nom.ToString(), carte.Numero.ToString(), Convert.ToInt32(carte.Exemplaire), carte.Description.ToString(), carte.Type.ToString(), Convert.ToBoolean(carte.Deck1), Convert.ToBoolean(carte.Deck2), Convert.ToBoolean(carte.Deck3), Convert.ToInt32(carte.Attaque), Convert.ToInt32(carte.Defense), Convert.ToInt32(carte.Vitesse), Convert.ToInt32(carte.Force));
                        lesCartes.Add(cp);
                    }
                    else if (carte.Type == "A")
                    {
                        CarteAction ca = new CarteAction(carte.Nom.ToString(), carte.Numero.ToString(), Convert.ToInt32(carte.Exemplaire), carte.Description.ToString(), carte.Type.ToString());
                        lesCartes.Add(ca);
                    }
                    else if (carte.Type == "V")
                    {
                        CarteVehicule cv = new CarteVehicule(carte.Nom.ToString(), carte.Numero.ToString(), Convert.ToInt32(carte.Exemplaire), carte.Description.ToString(), carte.Type.ToString());
                        lesCartes.Add(cv);
                    }
                }
            }
            catch
            {
            }

            #endregion

            #region Initailisation maCollection

            //Parcours de la collection pour créer les cartes en fonction du type renvoyer par le JSON
            foreach (Carte c in lesCartes)      //Pour chaque carte de la liste complete
            {
                if (c.Exemplaire > 0)           //Si le nbr d'exemplaire et supérieur à 0 on l'ajoute dans la collection du joueur
                {
                    maCollection.Add(c);
                }
            }
            #endregion
            #region compteur page
            lbl_nb_page.Content = "Page " + p + "/19";
            if (p == 1)
            {
                btn_page_prec.Visibility = Visibility.Hidden;
            }
            else if (p == 19)
            {
                btn_page_suiv.Visibility = Visibility.Hidden;
            }
            else
            {
                btn_page_prec.Visibility = Visibility.Visible;
                btn_page_suiv.Visibility = Visibility.Visible;
            }
            #endregion
            for (int r = 1; r <= 2; r++)
            {
                for (int c = 1; c <= 5; c++)
                {
                    i = i + 1;
                    Button btnCollection = (Button)FindName("btn" + r + "_" + c);
                    Label  lblCarte      = (Label)FindName("lbl" + r + "_" + c);
                    try
                    {
                        btnCollection.Content = maCollection[i].Numero;
                        lblCarte.Content      = maCollection[i].Exemplaire;
                    }
                    catch
                    {
                        btnCollection.Content    = "cartevide";
                        lblCarte.Content         = "";
                        lblCarte.Visibility      = Visibility.Hidden;
                        btnCollection.Background = new ImageBrush(new BitmapImage(new Uri(@"pack://*****:*****@"pack://application:,,,/Ressource/cartes/" + Convert.ToInt32(btnCollection.Content).ToString() + ".png")));
                    }
                    catch
                    {
                        btnCollection.Background = new ImageBrush(new BitmapImage(new Uri(@"pack://application:,,,/Ressource/cartes/" + btnCollection.Content.ToString() + ".png")));
                    }
                }
            }
        }
Пример #10
0
 public void refresh()
 {
     //refresh des lbox
     lbox_cartes.Items.Clear();
     lbox_collection.Items.Clear();
     foreach (Carte c in lesCartes)      //Pour chaque carte de la liste complete
     {
         if (c.Exemplaire > 0)           //Si le nbr d'exemplaire et supérieur à 0 on l'ajoute dans la collection du joueur
         {
             lbox_collection.Items.Add(c);
         }
         else
         {
             lbox_cartes.Items.Add(c);
         }
     }
     //compteur de carte
     lbl_collection_count.Content = maCollection.Count() + " / " + lesCartes.Count();
     if (carte != null)      //on vérifie que la carte séléctionnée n'es pas null pour éviter le plantage
     {
         lbl_nb_exemplaire.Content = carte.Exemplaire.ToString();
         lbl_nom.Content           = carte.ToString();
         lbl_numero.Content        = carte.Numero.ToString();
         if (carte.Type == "P")
         {
             CartePersonnage cp = new CartePersonnage();
             cp = (CartePersonnage)carte;
             lbl_vitesse.Content  = cp.Vitesse;
             lbl_attaque.Content  = cp.Attaque;
             lbl_force.Content    = cp.Force;
             lbl_defense.Content  = cp.Defense;
             txt_description.Text = "";
         }
         else if (carte.Type == "A")
         {
             CarteAction ca = new CarteAction();
             ca = (CarteAction)carte;
             lbl_vitesse.Content  = "";
             lbl_attaque.Content  = "";
             lbl_force.Content    = "";
             lbl_defense.Content  = "";
             txt_description.Text = ca.Description;
         }
         else if (carte.Type == "V")
         {
             CarteVehicule cv = new CarteVehicule();
             cv = (CarteVehicule)carte;
             lbl_vitesse.Content  = "";
             lbl_attaque.Content  = "";
             lbl_force.Content    = "";
             lbl_defense.Content  = "";
             txt_description.Text = cv.Description;
         }
         //Recuperation des images (try catch nécessaire pour éviter le plantage si la carte ne correspond à aucune image)
         try
         {
             img_carte.Visibility = Visibility.Visible;
             try                                                                                                                  //Conversion en int puis à nouveau en string pour supprier les 0 de l'affichage //Try catch nécessaire pour les cartes LEx car on ne peut aps convertir en int
             {
                 carte.UrlImage = "pack://application:,,,/Ressource/cartes/" + Convert.ToInt32(carte.Numero).ToString() + ".png"; //l'attribut UrlImage prend les attributs de la carte pour les metttre en forme comme le nom de l'image qui lui correspond
             }
             catch
             {
                 carte.UrlImage = "pack://application:,,,/Ressource/cartes/" + carte.Numero.ToString() + ".png";  //l'attribut UrlImage prend les attributs de la carte pour les metttre en forme comme le nom de l'image qui lui correspond
             }
             var uri    = new Uri(carte.UrlImage);
             var bitmap = new BitmapImage(uri);
             img_carte.Source     = bitmap;
             lbl_nom.Content      = "";
             lbl_numero.Content   = "";
             lbl_vitesse.Content  = "";
             lbl_attaque.Content  = "";
             lbl_force.Content    = "";
             lbl_defense.Content  = "";
             txt_description.Text = "";
         }
         catch
         {
             img_carte.Visibility = Visibility.Hidden;
         }
     }
     else         //si la carte est nulle, ont vide tous les affichages
     {
         lbl_nb_exemplaire.Content = "";
         lbl_nom.Content           = "";
         lbl_numero.Content        = "";
         lbl_vitesse.Content       = "";
         lbl_attaque.Content       = "";
         lbl_force.Content         = "";
         lbl_defense.Content       = "";
         txt_description.Text      = "";
         img_carte.Visibility      = Visibility.Hidden;
     }
 }