public void OpenWorkerLootBox()
 {
     if (this._economyController.Money > 1000)
     {
         this._economyController.Purchase(1000);
         this._unlockedWorkerCache = WorkerController.GenerateRandomWorker();
         this.PopulateWorkerUnlockPanel(this._unlockedWorkerCache);
         this._workerUnlockPanelReference.element.Show();
     }
     this._messageBoxReference.element.Show();
 }
    private void PopulateWorkerPanel()
    {
        if (this._playerStateService == null)
        {
            return;
        }
        XmlElement workerPanel     = _workerPanelReference.element.GetElementByInternalId <XmlElement>("workerAvatarPanel");
        XmlElement costField       = _workerPanelReference.element.GetElementByInternalId <XmlElement>("workerCost");
        XmlElement nameField       = _workerPanelReference.element.GetElementByInternalId <XmlElement>("workerName");
        XmlElement workerBodyField = _workerPanelReference.element.GetElementByInternalId <XmlElement>("workerBody");
        XmlElement workerFaceField = _workerPanelReference.element.GetElementByInternalId <XmlElement>("workerFace");
        XmlElement workerHairField = _workerPanelReference.element.GetElementByInternalId <XmlElement>("workerHair");
        XmlElement workerKitField  = _workerPanelReference.element.GetElementByInternalId <XmlElement>("workerKit");
        var        stars           = _workerPanelReference.element.GetElementByInternalId <XmlElement>("workerEfficiency").childElements;

        Worker.Worker worker = this._playerStateService.GetWorkers()[_workerCarouselPosition];
        nameField.SetAttribute("text", worker.Name);
        costField.SetAttribute("text", worker.Cost.ToString("0.00"));
        workerBodyField.SetAttribute("image", $"Faces/Bodies/Body_{worker.BodyType}");
        workerFaceField.SetAttribute("image", $"Faces/Faces/Face_{worker.FaceType}");
        workerHairField.SetAttribute("image", $"Faces/Hairs/Hair_{worker.HairType}");
        workerKitField.SetAttribute("image", $"Faces/Kits/Kit_{worker.KitType}");
        workerPanel.Show();
        for (var index = 1; index < stars.Count; index++)
        {
            XmlElement image = stars[index];
            image.SetAttribute("active", "true");
            if (index >= worker.Efficiency)
            {
                image.SetAttribute("active", "false");
            }

            image.ApplyAttributes();
        }

        nameField.ApplyAttributes();
        costField.ApplyAttributes();
        workerBodyField.ApplyAttributes();
        workerFaceField.ApplyAttributes();
        workerHairField.ApplyAttributes();
        workerKitField.ApplyAttributes();
    }
Example #3
0
        public static void FindSolution(IEnumerable <int> pieceLengths, IEnumerable <int> pieceWidths, IEnumerable <int> pieceDemands, int stockLength, int stockWidth, int stockCost, Worker.Worker worker, out CutPattern[] solution)
        {
            int[] pLengths = pieceLengths.ToArray <int>();
            int[] pWidths  = pieceWidths.ToArray <int>();
            int[] pDemands = pieceDemands.ToArray <int>();

            OptimizationProblem problem = new OptimizationProblem(stockLength, stockWidth, stockCost, pLengths, pWidths, pDemands);
            Simplex             simp    = new Simplex(problem);

            solution = simp.Solve(worker);

            worker.SetMax();
            worker.CallFinish();
        }
 public void DiscardWorker()
 {
     this._unlockedWorkerCache = null;
     this._workerUnlockPanelReference.element.Hide();
 }
Example #5
0
        static void Main(string[] args)
        {
            string portInput;
            int portInputFormatted;
            int jobTrackerPort;
            TcpChannel channel;

            //ARGS: -p ownPort [JobTrackerPath]
            if (args.Length == 2 || args.Length == 3)
            {
                if (args[0].Equals("-p"))
                {
                    portInput = args[1];
                    if (!int.TryParse(portInput, out portInputFormatted))
                    {
                        System.Console.WriteLine("Invalid port format supplied. Exitting...");
                        return;
                    }
                    if (portInputFormatted >= MIN_RANGE && portInputFormatted <= MAX_RANGE)
                    {
                        //WORKER
                        if (args.Length == 3)
                        {
                            try
                            {
                                string workerUrl = "tcp://" + System.Environment.MachineName + ":" + portInputFormatted + "/" + Worker.WORKER_OBJECT_URI;
                                string jobTrackerUrl = args[2];
                                Worker worker = new Worker(workerUrl, jobTrackerUrl);

                                BinaryServerFormatterSinkProvider provider = new BinaryServerFormatterSinkProvider();
                                IDictionary props = new Hashtable();
                                props["timeout"] = 1000;
                                props["port"] = portInputFormatted;

                                //Publish Worker object
                                channel = new TcpChannel(props, null, provider);
                               // channel = new TcpChannel(portInputFormatted);
                                ChannelServices.RegisterChannel(channel, false);

                                RemotingServices.Marshal(
                                    worker,
                                    Worker.WORKER_OBJECT_URI,
                                    typeof(PADIMapNoReduce.IWorker));

                                Console.Title = "Worker - " + workerUrl;

                                //Register worker in JobTracker
                                PADIMapNoReduce.IJobTracker jobTracker =
                                    (PADIMapNoReduce.IJobTracker)Activator.GetObject(typeof(PADIMapNoReduce.IJobTracker), args[2]);
                                if (jobTracker.registerWorker(workerUrl))
                                {
                                    System.Console.WriteLine("Worker registred");
                                }
                                else
                                {
                                    System.Console.WriteLine("Error: Could't register worker");
                                }
                            }
                            catch (Exception e)
                            {
                                System.Console.WriteLine("EXCEPTION: " + e.Message);
                                Console.ReadLine();
                                return;
                            }
                        }
                        //JOBTRACKER
                        else
                        {
                            try
                            {
                                string jobTrackerUrl = "tcp://" + System.Environment.MachineName  + ":" + portInputFormatted + "/" + Worker.WORKER_OBJECT_URI;
                                Worker worker = new Worker(jobTrackerUrl);

                               // Publish JobTrakcer object
                                BinaryServerFormatterSinkProvider provider = new BinaryServerFormatterSinkProvider();
                                IDictionary props = new Hashtable();
                                props["timeout"] = 1000;
                                props["port"] = portInputFormatted;

                                //Publish Worker object
                                channel = new TcpChannel(props, null, provider);
                                //channel = new TcpChannel(portInputFormatted);
                                ChannelServices.RegisterChannel(channel, false);
                                RemotingServices.Marshal(
                                        worker,
                                        Worker.WORKER_OBJECT_URI,
                                        typeof(PADIMapNoReduce.IWorker));

                                System.Console.WriteLine("JobTracker registred");
                                Console.Title = "JobTracker - " + "tcp://" + System.Environment.MachineName + ":" + portInputFormatted;
                            }
                            catch (Exception e)
                            {
                                System.Console.WriteLine("EXCEPTION: " + e.Message);
                                Console.ReadLine();
                                return;
                            }
                        }
                    }
                    else
                    {
                        System.Console.WriteLine("Invalid port supplied. Range not supported. Exitting...");
                        return;
                    }
                }
                else
                {
                    System.Console.WriteLine("Invalid argument supplied. Exitting...");
                    return;
                }
            }
            //SO PARA TESTING
            else
            {
                System.Console.WriteLine("Port to register worker (30001 to register JobTracker): ");

                portInput = System.Console.ReadLine();
                while (!int.TryParse(portInput, out portInputFormatted))
                {
                    System.Console.WriteLine("Invalid port format. Register port: ");
                    portInput = System.Console.ReadLine();
                }

                //DONE: Check exceptions
                //DONE: Check for port range
               // BinaryServerFormatterSinkProvider provider = new BinaryServerFormatterSinkProvider();
                //IDictionary props = new Hashtable();
                //props["timeout"] = 1000;
                //props["port"] = portInputFormatted;

                //Publish Worker object
                //channel = new TcpChannel(props, null, provider);
                channel = new TcpChannel(portInputFormatted);
                ChannelServices.RegisterChannel(channel, false);

                //TESTING
                jobTrackerPort = 30001;

                if (portInputFormatted == jobTrackerPort)
                {
                    System.Console.WriteLine("JobTracker registred");
                    Console.Title = "JobTracker - " + "tcp://localhost:" + portInputFormatted;

                    string jobTrackerUrl = "tcp://localhost:" + portInputFormatted + "/" + Worker.WORKER_OBJECT_URI;

                    Worker worker = new Worker(jobTrackerUrl);

                    RemotingServices.Marshal(
                        worker,
                        Worker.WORKER_OBJECT_URI,
                        typeof(PADIMapNoReduce.IWorker));
                }
                else
                {
                    Console.Title = "Worker - " + "tcp://localhost:" + portInputFormatted;
                    string jobTrackerUrl = "tcp://localhost:" + jobTrackerPort + "/" + Worker.WORKER_OBJECT_URI;
                    string workerUrl = "tcp://localhost:" + portInputFormatted + "/" + Worker.WORKER_OBJECT_URI;

                    Worker worker = new Worker(workerUrl, jobTrackerUrl);

                    RemotingServices.Marshal(
                        worker,
                        Worker.WORKER_OBJECT_URI,
                        typeof(PADIMapNoReduce.IWorker));

                    PADIMapNoReduce.IJobTracker jobTracker =
                        (PADIMapNoReduce.IJobTracker)Activator.GetObject(typeof(PADIMapNoReduce.IJobTracker), jobTrackerUrl);
                    jobTracker.registerWorker(workerUrl);
                }
            }

            System.Console.WriteLine("<enter> to exit...");
            System.Console.ReadLine();
        }
Example #6
0
 public void SetUpTest()
 {
     worker = new Worker.Worker();
     Worker.Worker.Instance = Substitute.For <IWorker>();
     Worker.Worker.Instance.ReceiveFromLoadBalancer(Code.CODE_ANALOG, 100).Returns(true);
 }
Example #7
0
 public bool Equals(Worker other)
 {
     return this.id == other.id;
 }
Example #8
0
 public Worker(Worker other)
 {
     this.name = other.name;
     this.surname = other.surname;
     this.id = other.id;
 }
Example #9
0
 public Project(string name, int reward, Worker worker)
 {
     Name   = name;
     Reward = reward;
     Worker = worker;
 }
Example #10
0
 public static void PrintWorker(Worker worker)
 {
     worker.GetWorkerInfo(worker);
 }