コード例 #1
0
 static ExtensionString()
 {
     #region NormalizarXml
     caracteresReservadosXml = new LlistaOrdenada <string, string>();
     for (int i = 0; i < caracteresXmlReservados.Length; i++)
     {
         caracteresReservadosXml.Add(caracteresXmlReservados[i], caracteresXmlSustitutos[i]);
         caracteresReservadosXml.Add(caracteresXmlSustitutos[i], caracteresXmlReservados[i]);
     }
     #endregion
 }
コード例 #2
0
ファイル: Partida.cs プロジェクト: TetradogBeta/Dominion.Core
        public Partida(string[] jugadors, string[] tipusCartesSubmnistraments)
        {
            if (jugadors.Length < 2 || jugadors.Length > 4)
            {
                throw new ArgumentOutOfRangeException("jugador");
            }
            if (tipusCartesSubmnistraments.Length != 10)
            {
                throw new ArgumentException("Han d'haver 10 tipus de subministraments");
            }

            Jugadors = new Jugador[jugadors.Length];
            for (int i = 0; i < jugadors.Length; i++)
            {
                Jugadors[i] = new Jugador(i, jugadors[i]);
            }
            Eliminades       = new Llista <CartaDominion>();
            Jugada           = new Llista <CartaDominion>();
            subministraments = new LlistaOrdenada <string, int>();
            for (int i = 0; i < tipusCartesSubmnistraments.Length; i++)
            {
                subministraments.Add(tipusCartesSubmnistraments[i], 0);
            }

            subministraments.Add(nameof(Malediccio), 0);
            subministraments.Add(nameof(Ducat), 0);
            subministraments.Add(nameof(Provincia), 0);
            subministraments.Add(nameof(Finca), 0);

            subministraments.Add(nameof(Or), 0);
            subministraments.Add(nameof(Plata), 0);
            subministraments.Add(nameof(Coure), 0);
            guanyadorsPartidaAnterior = new List <int>();
        }
コード例 #3
0
        static CartaDominion()
        {
            Type tipoArray = typeof(byte[]);

            Type tipoResources = typeof(Dominion.Core.Properties.Resources);

            PropertyInfo[] imgsRecursos = tipoResources.GetProperties();
            string         nomRevers    = nameof(Dominion.Core.Properties.Resources.Revers);

            Cartes     = new string[imgsRecursos.Length - 2];
            DicImatges = new LlistaOrdenada <string, ResourceImage>();
            //si esta ordenado empezaré por 2 asi quito el primer if :)
            for (int i = 0, j = 0; i < imgsRecursos.Length; i++)
            {
                if (imgsRecursos[i].PropertyType.Equals(tipoArray))
                {
                    DicImatges.Add(imgsRecursos[i].Name, new ResourceImage(tipoResources, imgsRecursos[i].Name));
                    if (!imgsRecursos[i].Name.Contains("Final"))
                    {
                        Cartes[j++] = imgsRecursos[i].Name;
                    }
                }
            }
            imgRevers = DicImatges[nomRevers];
        }
コード例 #4
0
 public Tarea(Lista lista, string contenido, long idUnico)
 {
     this.contenidoConFormato = contenido;
     this.idUnico             = idUnico;
     this.Lista        = lista;
     listasTareaHecha  = new LlistaOrdenada <Lista, DateTime>();
     listasTareaOculta = new ListaUnica <Lista>();
     todasLasTareas.Add(this);
     if (!tareasPorLista.ContainsKey(lista))
     {
         tareasPorLista.Add(lista, new ListaUnica <Tarea>());
     }
     if (!tareasPorLista[lista].Contains(this))
     {
         tareasPorLista[lista].Add(this);
     }
 }
コード例 #5
0
        static RadioButton()
        {
            selectionDic     = new LlistaOrdenada <string, LlistaOrdenada <int, RadioButton> >();
            selectionModeDic = new LlistaOrdenada <string, Selection>();

            selectionDic.Add(DEFAULTGROUP, new LlistaOrdenada <int, RadioButton>());
            selectionModeDic.Add(DEFAULTGROUP, Selection.Singel);
            genId = new GenIdInt();
        }
コード例 #6
0
 public Data()
 {
     Listas     = new LlistaOrdenada <long, Lista>();
     Categorias = new LlistaOrdenada <long, Categoria>();
     Listas.Add(new Lista("Mi primera lista", 0));
     Categorias.Add(new Categoria("Todas", 0)
     {
         Listas = Listas
     });
 }
コード例 #7
0
 static ElementoBinario()
 {
     GuardarSerializadoresAutosHechos   = true;
     SerializadoresElementosAutosHechos = new LlistaOrdenada <string, ElementoBinario>();
     SerializadoresTiposNoSoportados    = new LlistaOrdenada <string, ElementoBinario>();
     DicTiposGenericos = new LlistaOrdenada <string, string>();//tipo obj generico,tipo serializador generico
     DicTipos          = new LlistaOrdenada <string, ElementoBinario>();
     //tipos normales
     DicTipos.Add(typeof(CrazyKey).AssemblyQualifiedName, new CrazyKeyBinario());
     DicTipos.Add(typeof(IdUnico).AssemblyQualifiedName, new IdUnicoBinario());
     DicTipos.Add(typeof(Key).AssemblyQualifiedName, new KeyBinario());
     DicTipos.Add(typeof(byte[]).AssemblyQualifiedName, new ByteArrayBinario());
     //tipos genericos
     DicTiposGenericos.Add(typeof(KeyValuePair <,>).AssemblyQualifiedName, typeof(KeyValuePairBinario <,>).AssemblyQualifiedName);
     DicTiposGenericos.Add(typeof(TwoKeys <,>).AssemblyQualifiedName, typeof(TwoKeysBinario <,>).AssemblyQualifiedName);
     DicTiposGenericos.Add(typeof(Array).AssemblyQualifiedName, typeof(ElementoArrayBinario <>).AssemblyQualifiedName);
     //IDictionary<TKey,TValue>
     DicTiposGenericos.Add(typeof(IDictionary <,>).AssemblyQualifiedName, typeof(DictionaryBinary <, ,>).AssemblyQualifiedName);
     //IList<T>
     DicTiposGenericos.Add(typeof(IList <>).AssemblyQualifiedName, typeof(ElementoIListBinario <,>).AssemblyQualifiedName);
 }
コード例 #8
0
        public void UnaClaseConDiccionario()
        {
            const int ELEMENTOS = 10;
            LlistaOrdenada <long, string> dic = new LlistaOrdenada <long, string>();

            for (int i = 0; i < ELEMENTOS; i++)
            {
                dic.Add(DateTime.Now.Ticks, i + "");
            }

            Assert.IsTrue(TestClases(() => new ClaseConDiccionario()
            {
                Dic = dic
            }));
        }
コード例 #9
0
        private void LoadKeys()
        {
            string[]   names;
            string[]   campos;
            KeyBinario serializador = new KeyBinario();

            string[] files = Directory.GetFiles(FOLDER);
            SortedList <string, Key>    keys              = new SortedList <string, Key>();
            SortedList <string, string> dicNames          = new SortedList <string, string>();
            ElementoBinario             stringSerialitzer = ElementoBinario.GetSerializador <string>();
            string masterPath = Path.Combine(FOLDER, MASTERKEYFILE);

            if (File.Exists(masterPath))
            {
                File.Decrypt(masterPath);
                MasterKey = serializador.GetObject(File.ReadAllBytes(masterPath)) as Key;
                File.Encrypt(masterPath);

                stringSerialitzer.Key = MasterKey;
                serializador.Key      = MasterKey;

                for (int i = 0; i < files.Length; i++)
                {
                    if (Path.GetExtension(files[i]) == EXTENSIONKEY)
                    {
                        keys.Add(Path.GetFileNameWithoutExtension(files[i]), serializador.GetObject(File.ReadAllBytes(files[i])) as Key);
                    }
                    else
                    {
                        names = (stringSerialitzer.GetObject(File.ReadAllBytes(files[i])) as string).Split('\n');
                        for (int j = 0; j < names.Length; j++)
                        {
                            campos = names[j].Split(CARACTERSPLIT);
                            dicNames.Add(campos[0].DescaparCaracteresXML(), campos[1].DescaparCaracteresXML());
                        }
                    }
                }
                foreach (var item in dicNames)
                {
                    DicKeys.Add(item.Key, keys[item.Value]);
                }
            }
            else
            {
                MasterKey = Key.GetKey(MASTERKEYS); //para la primera vez
            }
        }
コード例 #10
0
 public Tarea(long lista, string contenido, long idUnico)
 {
     this.ContenidoConFormato = contenido;
     this.IdUnico             = idUnico;
     this.IdListaParent       = lista;
     ListasTareaHecha         = new LlistaOrdenada <long, DateTime>();
     ListasTareaOculta        = new LlistaOrdenada <long, long>();
     Todas.Add(this);
     if (!TodasAgrupadas.ContainsKey(lista))
     {
         TodasAgrupadas.Add(lista, new LlistaOrdenada <Tarea>());
     }
     if (!TodasAgrupadas[lista].ContainsKey(this))
     {
         TodasAgrupadas[lista].Add(this);
     }
 }
コード例 #11
0
        //loadXml
        public static Lista LoadNodoXml(XmlNode nodoListas)
        {
            XmlNode nodo, nodoListaTemporal = nodoListas.ChildNodes[0].FirstChild;
            Lista   lista;
            long    idLista;

            listasGuardadas.Clear();
            //pongo las listas guardadas
            nodoListas = nodoListas.ChildNodes[1];
            //creo las listas
            for (int i = 0; i < nodoListas.ChildNodes.Count; i++)
            {
                lista = new Lista(nodoListas.ChildNodes[i]);
                listasGuardadas.Add(lista.IdUnico, lista);
            }
            //pongo la herencia
            for (int i = 0; i < nodoListas.ChildNodes.Count; i++)
            {
                idLista = Convert.ToInt64(nodoListas.ChildNodes[i].ChildNodes[(int)NodoLista.Id].InnerText);
                nodo    = nodoListas.ChildNodes[i].ChildNodes[(int)NodoLista.Herencia];
                PonHerenciaXml(nodo, listasGuardadas[idLista]);
            }
            //añado tareas ocultas y hechas
            for (int j = 0; j < nodoListas.ChildNodes.Count; j++)
            {
                nodo = nodoListas.ChildNodes[j];
                PonTareasHechasYOclutasXml(nodo, listasGuardadas[Convert.ToInt64(nodo.ChildNodes[(int)NodoLista.Id].InnerText)]);
            }
            if (nodoListaTemporal != null && nodoListaTemporal.HasChildNodes)
            {
                lista = new Lista(nodoListaTemporal);
                PonHerenciaXml(nodoListaTemporal.ChildNodes[(int)NodoLista.Herencia], lista);
                PonTareasHechasYOclutasXml(nodoListaTemporal, lista);
            }
            else
            {
                lista = null;
            }
            return(lista);
        }
コード例 #12
0
 public Categoria(long idUnico, string nombre)
 {
     this.IdUnico = idUnico;
     this.Nombre  = nombre;
     TodasLasCateogiras.Add(IdUnico, this);
 }