예제 #1
0
 private int targetDistanceMin(carriage targetCarriage)
 {
     if (targetCarriage == carriage.front)
     {
         return(12);
     }
     else if (targetCarriage == carriage.middle)
     {
         return(3);
     }
     else
     {
         return(-15);
     }
 }
예제 #2
0
 private int targetAreaToIndex(carriage targetCarriage)
 {
     if (targetCarriage == carriage.front)
     {
         return(1);
     }
     else if (targetCarriage == carriage.middle)
     {
         return(2);
     }
     else
     {
         return(3);
     }
 }
예제 #3
0
 public void SetTarget()
 {
     if (destination.x < 3)
     {
         target = carriage.back;
     }
     else if (destination.x < 12)
     {
         target = carriage.middle;
     }
     else
     {
         target = carriage.front;
     }
     players = GameManager.GM.players;
 }
예제 #4
0
        static void Main(string[] args)
        {
            coupe coupe1 = new coupe(1,4);
            coupe coupe2 = new coupe(2,3);
            coupe coupe3 = new coupe(3, 3);
            coupe coupe4 = new coupe(4,4);
            coupe coupe5 = new coupe(5,2);

            carriage carriage = new carriage(1,5);
            carriage.add(coupe1);
            carriage.add(coupe2);
            carriage.add(coupe3);
            carriage.add(coupe4);
            carriage.add(coupe5);

            carriage carriage1 = new carriage(1, 1);
            carriage1.add(coupe1);

            carriage carriage2 = new carriage(2, 2);
            carriage2.add(coupe1);
            carriage2.add(coupe5);

            carriage carriage3 = new carriage(3, 3);
            carriage3.add(coupe1);
            carriage3.add(coupe3);
            carriage3.add(coupe4);

            train train = new train(1,4);
            train.add(carriage);
            train.add(carriage1);
            train.add(carriage2);
            train.add(carriage3);

            Workwithfiles f = new Workwithfiles();
            train b= f.readfrombinaryfile(train);

            foreach(coupe c in carriage)
            {
                Console.WriteLine(c.Number.ToString()+"вагон, кол. пассажиров="+c.Number_passenger.ToString());
            }
            Console.ReadLine();     
        
        }
예제 #5
0
            public train readfromfile(train stream)
            {
                RijndaelManaged rijmanaged = new RijndaelManaged();
                byte[] key = { 0x17, 0x54, 0x03, 0x34, 0x05, 0x63, 0x51, 0x48, 0x29, 0x15, 0x11 };
                byte[] iv = { 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16 };


                using(Stream f = File.OpenRead("D:\\file.txt"))
                {
                    using(var ds = new DeflateStream(f, CompressionMode.Decompress))
                    {
                        using(var crypto = new CryptoStream(ds, rijmanaged.CreateDecryptor(key, iv),
                            CryptoStreamMode.Read))
                        {
                            using(TextReader bw = new StreamReader(crypto))
                            {
                                stream.number = int.Parse(bw.ReadLine());
                                stream.number_carriages = int.Parse(bw.ReadLine());
                                for(int i = 0;i < stream.number_carriages;i++)
                                {
                                    int number, number_coupes;
                                    number = int.Parse(bw.ReadLine());
                                    number_coupes = int.Parse(bw.ReadLine());
                                    carriage newcar = new carriage(number, number_coupes);
                                    for(int j = 0;j < newcar.number_coupes;j++)
                                    {
                                        int numberof, number_passenger;
                                        numberof = int.Parse(bw.ReadLine());
                                        number_passenger = int.Parse(bw.ReadLine());
                                        coupe newcoupe = new coupe(numberof, number_passenger);
                                        newcar.add(newcoupe);
                                    }
                                    stream.add(newcar);
                                }
                            }
                        }
                    }
                }
                return stream;
            }
예제 #6
0
        static void Main(string[] args)
        {
            coupe coupe1 = new coupe(1,4);
            coupe coupe2 = new coupe(2,3);
            coupe coupe3 = new coupe(3, 3);
            coupe coupe4 = new coupe(4,4);
            coupe coupe5 = new coupe(5,2);

            carriage carriage = new carriage(1,5);
            carriage.add(coupe1);
            carriage.add(coupe2);
            carriage.add(coupe3);
            carriage.add(coupe4);
            carriage.add(coupe5);

            carriage carriage1 = new carriage(1, 1);
            carriage1.add(coupe1);

            carriage carriage2 = new carriage(2, 2);
            carriage2.add(coupe1);
            carriage2.add(coupe5);

            carriage carriage3 = new carriage(3, 3);
            carriage3.add(coupe1);
            carriage3.add(coupe3);
            carriage3.add(coupe4);

            train train = new train();
            train.add(carriage);
            train.add(carriage1);
            train.add(carriage2);
            train.add(carriage3);

            Serialize s = new Serialize();
            s.SerializeWithDataContract(train);

            train _train = new train();
            _train = s.DeserializeWithDataContract();
        }
예제 #7
0
            public train readfrombinaryfile(train stream)
            {
                RijndaelManaged rijmanaged = new RijndaelManaged();
                byte[] key = { 0x17, 0x54, 0x03, 0x34, 0x05, 0x63, 0x51, 0x48, 0x29, 0x15, 0x11 };
                byte[] iv = { 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16 };

                using(Stream str = File.OpenRead("myfile.bin"))
                {
                    using(var ds = new DeflateStream(str, CompressionMode.Decompress))
                    {
                        using(var crypto = new CryptoStream(ds, rijmanaged.CreateDecryptor(key, iv),
                            CryptoStreamMode.Read))
                        {
                            using(var f = new BinaryReader(crypto))
                            {
                                stream.number = f.ReadInt32();
                                stream.number_carriages = f.ReadInt32();
                                for(int i = 0;i < stream.number_carriages;i++)
                                {
                                    int number,number_coupes;
                                    number = f.ReadInt32();
                                    number_coupes=f.ReadInt32();
                                    carriage newcar = new carriage(number,number_coupes);
                                    for(int j = 0;j < newcar.number_coupes;j++)
                                    {
                                        int numberof, number_passenger;
                                        numberof=f.ReadInt32();
                                        number_passenger=f.ReadInt32();
                                        coupe newcoupe = new coupe(numberof, number_passenger);
                                        newcar.add(newcoupe);
                                    }
                                    stream.add(newcar);
                                }
                            }
                        }
                    }
                }
                return stream;
            }