コード例 #1
0
        /// <summary>
        /// Contrutor via Código de barras
        /// </summary>
        /// <param name="barcode">Código de Barras</param>
        /// <param name="serial">Série</param>
        /// <param name="Filter">Filter</param>
        /// <param name="part">Partição</param>
        public Sgtin96(string barcode, long serial, string Filter, int part = 6)
        {
            //Se vier com "0" no inicio
            if (barcode.Substring(0, 1) == "0")
            {
                barcode = barcode.Substring(1, barcode.Length - 1);
            }

            //preenche com "0" se não for um ean 13
            barcode = HelperConverter.fill(barcode, 12);

            this.Header    = EpcHeaders.GetName(EpcHeaders.SGTIN_96);
            this.Filter    = Filter;
            this.Partition = part;
            string auxbarcode = barcode.Substring(0, (barcode.Length - 1));

            this.CompanyPrefix = Convert.ToInt64(HelperConverter.fill(auxbarcode.Substring(0, SgtinPartition.GetCompanyDigitos(this.Partition)), SgtinPartition.GetCompanyDigitos(this.Partition)));
            this.ItemReference = Convert.ToInt64(
                HelperConverter.fill(
                    auxbarcode.Substring(SgtinPartition.GetCompanyDigitos(this.Partition),
                                         (auxbarcode.Length - SgtinPartition.GetCompanyDigitos(this.Partition))),
                    SgtinPartition.GetItemDigitos(this.Partition)));
            this.SerialNumber = serial;
            this.Barcode      = barcode;
        }
コード例 #2
0
    public void Load()
    {
        if (PlayerPrefs.HasKey("Money"))
        {
            money = PlayerPrefs.GetFloat("Money");
        }
        if (PlayerPrefs.HasKey("MachineCount"))
        {
            for (int i = 0; i < PlayerPrefs.GetInt("MachineCount"); i++)
            {
                int        type = HelperConverter.IntFromString(PlayerPrefs.GetString("Machine_" + i))[0];
                GameObject go   = Instantiate(type == 0 ? player.machineFuel.gameObject : player.machineAir.gameObject);
                go.transform.parent = currentPlanet.transform.GetChild(0);
                go.GetComponent <Machine>().planetID = HelperConverter.IntFromString(PlayerPrefs.GetString("Machine_" + i))[1];
                go.GetComponent <Machine>().angle    = HelperConverter.FloatFromString(PlayerPrefs.GetString("Machine_" + i))[2];
                if (type == 0)
                {
                    go.GetComponent <MachineFuel>().maxPipeLength  = HelperConverter.FloatFromString(PlayerPrefs.GetString("Machine_" + i))[3];
                    go.GetComponent <MachineFuel>().currentPocket  = currentPlanet.planetPockets[HelperConverter.IntFromString(PlayerPrefs.GetString("Machine_" + i))[4]];
                    go.GetComponent <MachineFuel>().airFilterLevel = HelperConverter.IntFromString(PlayerPrefs.GetString("Machine_" + i))[5];
                    go.GetComponent <MachineFuel>().pumpLevel      = HelperConverter.IntFromString(PlayerPrefs.GetString("Machine_" + i))[6];
                    go.GetComponent <MachineFuel>().refineryLevel  = HelperConverter.IntFromString(PlayerPrefs.GetString("Machine_" + i))[7];
                }
                else
                {
                    go.GetComponent <MachineCleaner>().airFilterLevel  = HelperConverter.IntFromString(PlayerPrefs.GetString("Machine_" + i))[3];
                    go.GetComponent <MachineCleaner>().efficiencyLevel = HelperConverter.IntFromString(PlayerPrefs.GetString("Machine_" + i))[4];
                }
                allMachines.Add(go.GetComponent <Machine>());
                currentPlanet.machines.Add(go.GetComponent <Machine>());
            }
        }

        currentDate = DateTime.Now;

        if (PlayerPrefs.HasKey("SystemTime"))
        {
            long temp = Convert.ToInt64(PlayerPrefs.GetString("SystemTime"));

            DateTime oldDate = DateTime.FromBinary(temp);

            difference = currentDate.Subtract(oldDate);

            foreach (Machine mach in currentPlanet.machines)
            {
                if (mach is MachineFuel)
                {
                    MachineFuel machine = (MachineFuel)mach;
                    multiplier += machine.refineryLevel;
                }
            }
        }
    }
コード例 #3
0
 public IEnumerable <Expression> ConvertTokensToExpressions(IEnumerable <object> tokens)
 {
     tokens = CommentAndLayoutConverter.Convert(tokens);
     tokens = LiteralConverter.Convert(tokens);
     tokens = HelperConverter.Convert(tokens, _configuration);
     tokens = HashParametersConverter.Convert(tokens);
     tokens = PathConverter.Convert(tokens);
     tokens = SubExpressionConverter.Convert(tokens);
     tokens = PartialConverter.Convert(tokens);
     tokens = HelperArgumentAccumulator.Accumulate(tokens);
     tokens = ExpressionScopeConverter.Convert(tokens);
     tokens = WhitespaceRemover.Remove(tokens);
     tokens = StaticConverter.Convert(tokens);
     tokens = BlockAccumulator.Accumulate(tokens, _configuration);
     return(tokens.Cast <Expression>());
 }
コード例 #4
0
        /// <summary>
        /// Método de Codificação segundo o Padrão EPC
        /// </summary>
        /// <returns>Objeto Simplicado do padrão</returns>
        public EPCSimplesDTO Encript()
        {
            string Header        = EpcHeaders.GetBin(this.Header);
            string Filter        = HelperConverter.fill(Convert.ToString(Convert.ToInt32(this.Filter), 2), 3);
            string Partition     = HelperConverter.fill(Convert.ToString(this.Partition, 2), 3);
            string CompanyPrefix = HelperConverter.fill(Convert.ToString(this.CompanyPrefix, 2), GiaiPartition.GetCompany(this.Partition));
            string ItemReference = HelperConverter.fill(Convert.ToString(this.ItemReference, 2), GiaiPartition.GetItem(this.Partition));

            string        BinString = $"{Header}{Filter}{Partition}{CompanyPrefix}{ItemReference}";
            EPCSimplesDTO retorno   = new EPCSimplesDTO();

            retorno.BarCode           = this.Barcode;
            retorno.EPCString         = EpcTagURI();
            retorno.HexadecimalString = HelperConverter.BinaryStringToHexString(BinString);
            return(retorno);
        }
コード例 #5
0
    public void AddCleanerMachine()
    {
        if (manager.money >= manager.cleanerBuildingCost)
        {
            manager.money -= manager.cleanerBuildingCost;
            GameObject go = Instantiate(player.machineAir.gameObject);
            go.transform.parent = manager.currentPlanet.transform.GetChild(0);
            go.GetComponent <Machine>().angle    = manager.currentPlanet.transform.eulerAngles.z;
            go.GetComponent <Machine>().planetID = manager.currentPlanet.machines.Count;

            PlayerPrefs.SetString("Machine_" + go.GetComponent <Machine>().planetID, HelperConverter.StringFromInt(new float[] { go.GetComponent <Machine>().planetID, go.GetComponent <Machine>().angle, go.GetComponent <Machine>().level }));

            manager.currentPlanet.machines.Add(go.GetComponent <Machine>());
            manager.AddMachines(go.GetComponent <Machine>());
            CloseMenus();
        }
    }
コード例 #6
0
ファイル: EpcHelper.cs プロジェクト: rf22tr/SerializadorRfid
        /// <summary>
        /// Método de Desconversão do valor Hexadecimal
        /// </summary>
        /// <param name="hexaString">Valor hexadecimal do EPC</param>
        /// <returns>Tipo primitivo dos Padrões(GS1), pode ser Convertido para qualquer um dos Padrões (SGTIN96, GRAI96, GIAI96)</returns>
        public static GS1 GetGS1(string hexaString)
        {
            string LinhaBinaria = HelperConverter.HexToBinary(hexaString);

            switch (LinhaBinaria.Substring(0, 8))
            {
            case EpcHeaders.SGTIN_96:
                return(new Sgtin96(LinhaBinaria));

            case EpcHeaders.GRAI_96:
                return(new Grai96(LinhaBinaria));

            case EpcHeaders.GIAI_96:
                return(new Giai96(LinhaBinaria));

            default:
                return(null);
            }
        }
コード例 #7
0
    public void RemoveMachine(Machine machine)
    {
        int oldCount = allMachines.Count;

        allMachines.Remove(machine);

        for (int i = 0; i < oldCount - 1; i++)
        {
            if (allMachines[i].currentType == Machine.Type.FUEL)
            {
                PlayerPrefs.SetString("Machine_" + i, HelperConverter.StringFromInt(new float[] { allMachines[i].ID, i, allMachines[i].angle, ((MachineFuel)allMachines[i]).maxPipeLength, ((MachineFuel)allMachines[i]).currentPocket.planetID, ((MachineFuel)allMachines[i]).airFilterLevel, ((MachineFuel)allMachines[i]).pumpLevel, ((MachineFuel)allMachines[i]).refineryLevel }));
            }
            else
            {
                PlayerPrefs.SetString("Machine_" + i, HelperConverter.StringFromInt(new float[] { allMachines[i].ID, i, allMachines[i].angle, ((MachineCleaner)allMachines[i]).airFilterLevel, ((MachineCleaner)allMachines[i]).efficiencyLevel }));
            }
        }

        PlayerPrefs.DeleteKey("Machine_" + (oldCount - 1));
        PlayerPrefs.SetInt("MachineCount", allMachines.Count);
    }
コード例 #8
0
 /// <summary>
 /// Url EPC de Tag
 /// </summary>
 /// <returns></returns>
 public string EpcTagURI()
 {
     return($"urn:epc:tag:{this.Header}:{this.Filter}.{HelperConverter.fill(this.CompanyPrefix.ToString(), GiaiPartition.GetCompanyDigitos(this.Partition))}.{this.ItemReference}");
 }
コード例 #9
0
 /// <summary>
 /// Url EPC de identificação pura
 /// </summary>
 /// <returns></returns>
 public string EpcPureURI()
 {
     return($"urn:epc:id:giai:{HelperConverter.fill(this.CompanyPrefix.ToString(), GiaiPartition.GetCompanyDigitos(this.Partition))}.{this.ItemReference}");
 }
コード例 #10
0
    public void PlanetPrefs()
    {
        int randomNumber;

        if (PlayerPrefs.HasKey("Planet"))
        {
            int[] saved = HelperConverter.IntFromString(PlayerPrefs.GetString("Planet"));

            polution    = PlayerPrefs.GetFloat("Polution");
            maxPolution = saved[0];

            planetColors[0] = HelperConverter.ColorFromInt(saved[1]);
            planetColors[1] = HelperConverter.ColorFromInt(saved[2]);
            planetColors[2] = HelperConverter.ColorFromInt(saved[3]);
            planetColors[3] = HelperConverter.ColorFromInt(saved[4]);
            planetColors[4] = HelperConverter.ColorFromInt(saved[5]);

            randomNumber = saved[6];
            for (int i = 0; i < randomNumber; i++)
            {
                GameObject go = Instantiate(allPockets[saved[7 + (i * 3)]].gameObject);
                go.transform.parent                  = transform.GetChild(1);
                go.transform.localPosition           = new Vector3(0, 0, -0.01f);
                go.transform.localScale              = (Vector3.one / 10) * 3;
                go.GetComponent <Pocket>().angle     = saved[8 + (i * 3)];
                go.GetComponent <Pocket>().planetID  = i;
                go.GetComponent <Pocket>().maxAmount = saved[9 + (i * 3)];
                planetPockets.Add(go.GetComponent <Pocket>());
            }
        }
        else
        {
            polution    = Random.Range(5, 100);
            maxPolution = Random.Range(1000, 2000);

            randomNumber = Random.Range(4, 6);

            string save = maxPolution.ToString();
            save = HelperConverter.AddStringFromInt(save, HelperConverter.IntFromColor(planetColors[0]));
            save = HelperConverter.AddStringFromInt(save, HelperConverter.IntFromColor(planetColors[1]));
            save = HelperConverter.AddStringFromInt(save, HelperConverter.IntFromColor(planetColors[2]));
            save = HelperConverter.AddStringFromInt(save, HelperConverter.IntFromColor(planetColors[3]));
            save = HelperConverter.AddStringFromInt(save, HelperConverter.IntFromColor(planetColors[4]));
            save = HelperConverter.AddStringFromInt(save, randomNumber);

            for (int i = 0; i < randomNumber; i++)
            {
                GameObject go = Instantiate(allPockets[Random.Range(0, allPockets.Length)].gameObject);
                go.transform.parent                  = transform.GetChild(1);
                go.transform.localPosition           = new Vector3(0, 0, -0.01f);
                go.transform.localScale              = (Vector3.one / 10) * 3;
                go.GetComponent <Pocket>().angle     = i * (360 / randomNumber) + (Random.Range(-15, 15));
                go.GetComponent <Pocket>().planetID  = i;
                go.GetComponent <Pocket>().maxAmount = Random.Range(1000, 2000);
                go.GetComponent <Pocket>().amount    = go.GetComponent <Pocket>().maxAmount;
                planetPockets.Add(go.GetComponent <Pocket>());
                save = HelperConverter.AddStringFromInt(save, go.GetComponent <Pocket>().ID);
                save = HelperConverter.AddStringFromInt(save, (int)go.GetComponent <Pocket>().angle);
                save = HelperConverter.AddStringFromInt(save, (int)go.GetComponent <Pocket>().maxAmount);
            }
            PlayerPrefs.SetString("Planet", save);
            PlayerPrefs.Save();
        }

        planetOutside.GetComponent <MeshRenderer>().material.color = planetColors[0];
        planetInner.GetComponent <MeshRenderer>().material.color   = planetColors[3];
        planetCore.GetComponent <MeshRenderer>().material.color    = planetColors[4];
    }
コード例 #11
0
 public void MakeSave()
 {
     PlayerPrefs.SetString("Machine_" + planetID, HelperConverter.StringFromInt(new float[] { ID, planetID, angle, airFilterLevel, efficiencyLevel }));
 }
コード例 #12
0
 public void MakeSave()
 {
     PlayerPrefs.SetString("Machine_" + planetID, HelperConverter.StringFromInt(new float[] { ID, planetID, angle, maxPipeLength, currentPocket.planetID, airFilterLevel, pumpLevel, refineryLevel }));
 }
コード例 #13
0
 /// <summary>
 /// Url EPC de identificação pura
 /// </summary>
 /// <returns></returns>
 public string EpcPureURI()
 {
     return($"urn:epc:id:sgtin:{HelperConverter.fill(this.CompanyPrefix.ToString(), SgtinPartition.GetCompanyDigitos(this.Partition))}.{HelperConverter.fill(this.ItemReference.ToString(), SgtinPartition.GetItemDigitos(this.Partition))}.{this.SerialNumber}");
 }