예제 #1
0
		public ClientUI(string address) {

			this.controller = new ClientController(address);
			this.address = address;

			this.queueLock = new object();
			this.queue = new Queue<CAStateEvent>();

			this.pendingChanges = new Dictionary<Point, uint>();
			this.curState = State.UnInited;
			this.running = true;

			this.board = new uint[500][];
			for(int i = 0; i < 500; i++) {
				board[i] = new uint[500];
			}

			var thread = new Thread(queueThread);
			thread.Start();

		}
        public static void AddEquipmentToClient(Client client, Equipment equipment)
        {
            ClientController clientController = new ClientController();

            clientController.equipment.Add(equipment, client);
        }
예제 #3
0
    //Colisionable - If ball touches the cube, it disappears
    private void OnTriggerEnter(Collider other)
    {
        if (other.CompareTag("Food"))
        {
            _audio.PlayAudio("NewPoint");
            foodNumber++;
            ShowScore();
            other.gameObject.SetActive(false);
        }
        else if (other.CompareTag("PowerUp"))
        {
            _audio.PlayAudio("PowerUp");
            //_speed *= 1.1f;
            //_speed *= 1.15f;
            other.gameObject.SetActive(false);
            EnergyGain();
        }
        else if (other.CompareTag("SpeedUp"))
        {
            _audio.PlayAudio("SpeedUp");
            other.gameObject.SetActive(false);
            FullEnergy();
            StartCoroutine(Run());
        }
        else if (other.CompareTag("Enemy"))
        {
            if (_isTriggeredHelper)             //Prevents triggering twice
            {
                _isTriggeredHelper = false;
                lifeRemaining      = lifeRemaining - 1;
                ShowScore();
                _audio.PlayAudio("Ouch");
                if (lifeRemaining == 0)
                {
                    LoseGame("The rats ate your food");
                }
            }
            else
            {
                _isTriggeredHelper = true;
            }
        }
        else if (other.CompareTag("Client"))
        {
            ClientController client = other.GetComponent <ClientController>();
            if (!client.HasFood && foodNumber > 0)             //Give food to client
            {
                foodNumber     = foodNumber - 1;
                client.HasFood = true;
                attendedClients++;
                //Get money
                _audio.PlayAudio("Cash");
                moneyEarned = moneyEarned + other.GetComponent <ClientController>().payFood();
                //Instantiate food plate in front
                if (foodPlatePrefab == null)
                {
                    Debug.LogWarning("FoodPlatePrefab is null in Player Controller");
                }
                Vector3    platePosition = new Vector3(other.transform.position.x, 2.2f, other.transform.position.z);                       //Set over table
                GameObject plateInstance = Instantiate(foodPlatePrefab, platePosition + other.transform.forward, other.transform.rotation); //Set in front of client
                plateInstance.transform.SetParent(other.transform);

                ShowScore();
                if (attendedClients == totalClientsToAttend)
                {
                    WinGame("You won!");
                }
            }
        }
    }
    // private static dynamic client;



    private void Awake()
    {
        instance = this;
    }
예제 #5
0
 /// <summary>
 /// Конструктор
 /// </summary>
 public SocketServer()
 {
     _events           = new ServerSocketEvents();
     _clientController = new ClientController();
     _isListen         = false;
 }
        protected override void BeginProcessing()
        {
            base.BeginProcessing();

            _controller = new ClientController(DbContext, this);
        }
예제 #7
0
 public GUIDeleteClient()
 {
     InitializeComponent();
     this.clientController = ClientController.Instance;
 }
예제 #8
0
    protected ClientController controller;//client Controller

    public SceneAbstract() {
        controller = ClientController.Instance;
    }
예제 #9
0
 public MyArticlesForm(ClientController ctr)
 {
     InitializeComponent();
     ctrl              = ctr;
     Ctrl.updateEvent += Ctrl_updateEvent;
 }
예제 #10
0
 public void UnregisterClient(ClientController client)
 {
 }
예제 #11
0
 public void RegisterClient(ClientController client)
 {
     // Needed since CarController must be made in the main thread
     clientsPending.Enqueue(client);
 }
        public ControllerViewModel(ClientController controller)
        {
            ClientController = controller;
            var crossViewManager = new CrossViewManager();

            crossViewManager.OpenCommandView += CrossViewManagerOnOpenCommandView;

            _commandViewWindows = new Dictionary <ICommandView, IWindow>();

            var tempCommandViews =
                new List <ICommandView>(
                    PluginManager.Current.LoadedPlugins.OfType <IViewPlugin>()
                    .Where(
                        x =>
                        !(x is FactoryCommandPlugin) ||
                        controller.Client.Plugins.FirstOrDefault(y => y.Guid == x.PluginInfo.Guid)?.IsLoaded ==
                        true)
                    .Select(x => (ICommandView)Activator.CreateInstance(x.CommandView)))
            {
                new FunViewModel(),
                new ConsoleViewModel(),
                new CommandViewModels.PasswordsViewModel(),
                new FileExplorerViewModel(),
                new MessageBoxViewModel(),
                new AudioViewModel(),
                new CodeViewModel(),
                new RegistryViewModel(),
                new ActiveConnectionsViewModel(),
                new UninstallProgramsViewModel(),
                new ClientPluginsViewModel(),
                new ClientConfigViewModel(),
                new EventLogViewModel(),
                new ReverseProxyViewModel(),
                new WebcamViewModel(),
                new AudioVolumeControlViewModel(),
                new LivePerformanceViewModel(),
                new UserInteractionViewModel(),
#if DEBUG
                new HvncViewModel(),
#endif
                new TextChatViewModel(),
                new CommandViewModels.ComputerInformationViewModel(),
                new RemoteDesktopViewModel(),
                new LiveKeyloggerViewModel(),
                new StartupManagerViewModel(),
                new WindowsCustomizerViewModel(),
                new SystemRestoreViewModel(),
                new TaskmanagerViewModel(),
                new WindowManagerViewModel(),
                new DeviceManagerViewModel(),
                new ClientCommandsViewModel(),
                new VoiceChatViewModel(),
                new WindowsDriversViewModel(),
                new DropAndExecuteViewModel(),
                new ClipboardManagerViewModel()
            };

            UnsupportedCommandViews = new List <CommandView>();
            foreach (var commandView in tempCommandViews.OfType <CommandView>().ToList())
            {
                var minimumVersionAttribute =
                    (MinimumClientVersionAttribute)
                    commandView.GetType().GetCustomAttribute(typeof(MinimumClientVersionAttribute));

                if (controller.Client.Version < minimumVersionAttribute?.MinimumClientVersion)
                {
                    tempCommandViews.Remove(commandView);
                    UnsupportedCommandViews.Add(commandView);
                }
            }

            var categoryOrder = new List <Category>
            {
                Category.Client,
                Category.Information,
                Category.Fun,
                Category.Utilities,
                Category.System,
                Category.Surveillance
            };

            _collectionViews = new List <ICommandView>(tempCommandViews.OrderBy(x => categoryOrder.IndexOf(x.Category)).ThenBy(x => x.Name));
            _collectionViews.Insert(0, new ClientControlViewModel()); //This should always be the first entry

            var currentWindow = WindowServiceInterface.Current.GetCurrentWindow();

            foreach (var commandView in _collectionViews)
            {
                commandView.WindowService = currentWindow;
                commandView.Initialize(controller, crossViewManager);
            }
            CommandViews = CollectionViewSource.GetDefaultView(_collectionViews);
            CommandViews.GroupDescriptions.Add(new PropertyGroupDescription("Category"));
            CommandViews.Filter = Filter;
            SelectedCommandView = _collectionViews[0];
        }
예제 #13
0
		public void pullChanges() {

			enqueue(() => {
				if(curState == State.Running) {
					try {
						var changes = controller.pullChanges();
						updateUI(changes);
					} catch(System.TimeoutException e) {
						sendError(CAErrorType.Update, "WCF call timed out while pulling changes, state may be corrupted.");
						this.controller.Close();
						this.controller = new ClientController(address);
					}
				}
			});
		}
예제 #14
0
 public void TestGetClientByBadId()
 {
     Assert.IsNull(ClientController.GetClientById(546465464));
 }
예제 #15
0
 public LoginForm(ClientController ctr)
 {
     InitializeComponent();
     ctrl = ctr;
 }
예제 #16
0
 public FuelQuoteTest()
 {
     _controller       = new AccountController(userManager, signInManager);
     _controllerClient = new ClientController();
 }
예제 #17
0
 public FtpClientPlugin(IClientView view, ClientController clientController, SettingInfoBase loginSettings)
 {
     _view          = view;
     _controller    = clientController;
     _loginSettings = loginSettings;
 }
예제 #18
0
        public AdminPanel2(ClientController c)
        {
            ctrl = c;
            InitializeComponent();
            BindingList <Model.User> possiblePcMembers = new BindingList <Model.User>(ctrl.GetSpecialUsers());

            addedChairs    = new BindingList <Model.User>();
            addedPCMembers = new BindingList <Model.User>();

            buttonSubmit.Enabled = false;
            tempTopics           = new BindingList <string>();
            tempAvailableRooms   = new BindingList <Model.AvailableRoom>();

            dataGridViewComitee.AutoGenerateColumns        = false;
            dataGridViewAddedChairs.AutoGenerateColumns    = false;
            dataGridViewAddedPCMembers.AutoGenerateColumns = false;
            //name, affiliation, email
            DataGridViewTextBoxColumn nameCol = new DataGridViewTextBoxColumn()
            {
                CellTemplate     = new DataGridViewTextBoxCell(),
                Name             = "Name",
                HeaderText       = "Name",
                DataPropertyName = "Name"
            };

            DataGridViewTextBoxColumn affiliationCol = new DataGridViewTextBoxColumn()
            {
                CellTemplate     = new DataGridViewTextBoxCell(),
                Name             = "Affiliation",
                HeaderText       = "Affiliation",
                DataPropertyName = "Affiliation"
            };

            DataGridViewTextBoxColumn emailCol = new DataGridViewTextBoxColumn()
            {
                CellTemplate     = new DataGridViewTextBoxCell(),
                Name             = "Email",
                HeaderText       = "E-Mail",
                DataPropertyName = "Email"
            };

            dataGridViewComitee.Columns.Add(nameCol);
            dataGridViewComitee.Columns.Add(affiliationCol);
            dataGridViewComitee.Columns.Add(emailCol);

            DataGridViewTextBoxColumn nameCol2 = new DataGridViewTextBoxColumn()
            {
                CellTemplate     = new DataGridViewTextBoxCell(),
                Name             = "Name",
                HeaderText       = "Name",
                DataPropertyName = "Name"
            };
            DataGridViewTextBoxColumn affiliationCol2 = new DataGridViewTextBoxColumn()
            {
                CellTemplate     = new DataGridViewTextBoxCell(),
                Name             = "Affiliation",
                HeaderText       = "Affiliation",
                DataPropertyName = "Affiliation"
            };

            DataGridViewTextBoxColumn emailCol2 = new DataGridViewTextBoxColumn()
            {
                CellTemplate     = new DataGridViewTextBoxCell(),
                Name             = "Email",
                HeaderText       = "E-Mail",
                DataPropertyName = "Email"
            };

            dataGridViewAddedChairs.Columns.Add(nameCol2);
            dataGridViewAddedChairs.Columns.Add(affiliationCol2);
            dataGridViewAddedChairs.Columns.Add(emailCol2);

            DataGridViewTextBoxColumn nameCol3 = new DataGridViewTextBoxColumn()
            {
                CellTemplate     = new DataGridViewTextBoxCell(),
                Name             = "Name",
                HeaderText       = "Name",
                DataPropertyName = "Name"
            };
            DataGridViewTextBoxColumn affiliationCol3 = new DataGridViewTextBoxColumn()
            {
                CellTemplate     = new DataGridViewTextBoxCell(),
                Name             = "Affiliation",
                HeaderText       = "Affiliation",
                DataPropertyName = "Affiliation"
            };

            DataGridViewTextBoxColumn emailCol3 = new DataGridViewTextBoxColumn()
            {
                CellTemplate     = new DataGridViewTextBoxCell(),
                Name             = "Email",
                HeaderText       = "E-Mail",
                DataPropertyName = "Email"
            };

            dataGridViewAddedPCMembers.Columns.Add(nameCol3);
            dataGridViewAddedPCMembers.Columns.Add(affiliationCol3);
            dataGridViewAddedPCMembers.Columns.Add(emailCol3);

            dataGridViewComitee.DataSource        = possiblePcMembers;
            dataGridViewAddedChairs.DataSource    = addedChairs;
            dataGridViewAddedPCMembers.DataSource = addedPCMembers;
        }
예제 #19
0
        static void Main(string[] args)
        {
            ClientController clientController = new ClientController();

            clientController.DisplayClientView();
        }
예제 #20
0
 public LogInWindow(ClientController ctr)
 {
     InitializeComponent();
     this.ctr = ctr;
 }
예제 #21
0
        protected void btnSaveClient_Click(object sender, EventArgs e)
        {
            try
            {
                if (txtMobile.Text != string.Empty && isExist(txtMobile.Text, txtContactPersonName.Text))
                {
                    General.ShowAlertMessage("This Contact detail is already in database");
                }
                else
                {
                    BusinessObjects.Clients cl = new BusinessObjects.Clients();
                    cl.OrganizationName  = txtOrganizationName.Text;
                    cl.ContactPersonName = txtContactPersonName.Text;
                    cl.MobileNo          = txtMobile.Text;
                    cl.Email             = txtEmail.Text;
                    cl.Address           = txtAddress.Text;
                    cl.City  = txtCity.Text;
                    cl.State = txtState.Text;

                    cl.MemberCount = 0;            //String.IsNullOrEmpty(txtMembersCount.Text) ? 0 : Convert.ToInt32(txtMembersCount.Text);
                    cl.UserAllowed = string.Empty; //txtUsersAllowedCount.Text;
                    cl.CreateDate  = DateTime.UtcNow.AddHours(5.5);
                    int ClientID = 0;

                    ClientID = new ClientController().CreateNewClient(cl);



                    if (fuLogo.HasFile)
                    {
                        fuLogo.PostedFile.SaveAs(Server.MapPath("~/images/" + ClientID.ToString() + ".jpg"));
                    }
                    fuLogo.PostedFile.SaveAs(Server.MapPath("~/images/" + ClientID.ToString() + ".jpg"));


                    User   u         = new User();
                    string strUserID = string.Empty;


                    string CouponCode = string.Empty;
                    u.FirstName               = txtContactPersonName.Text;
                    u.EMail                   = txtEmail.Text;
                    u.MobileNo                = txtMobile.Text;
                    u.CreateDate              = DateTime.Now;
                    u.DOB                     = Convert.ToDateTime("1/1/1900");
                    u.LastLockoutDate         = DateTime.Now;
                    u.LastLoginDate           = DateTime.Now;
                    u.LastPasswordChangedDate = DateTime.Now;
                    u.CouponCode              = CouponCode;
                    u.IsDeleted               = false;
                    u.IsLockedOut             = false;
                    u.RoleID                  = 2;
                    u.Custom1                 = "0";
                    u.Custom2                 = string.Empty;
                    u.Custom3                 = string.Empty;
                    u.Custom4                 = string.Empty;
                    u.Custom5                 = "3";
                    u.PWD                     = Encryption.Encrypt(txtPwd.Text);
                    u.ChangedPassword         = true;
                    u.Session                 = General.GetCurrentSession;
                    u.ClientID                = ClientID;
                    strUserID                 = new UserController().CreateUser(u);
                    new UserController().FirstTimeUpdatePassword(strUserID, u.PWD, u.MobileNo);
                    FormsAuthentication.SetAuthCookie(strUserID, false);
                    General.ShowAlertMessage("Congratulations for successfully registering. Your first 5 groups are free forever.", "/admin/addgroup?ClientID=" + ClientID.ToString());
                    //, "/admin/addgroup?ClientID = " + ClientID.ToString());
                    //You have successfully registered!", "/admin/addgroup?ClientID=" + ClientID.ToString() + "");
                    txtOrganizationName.Text  = string.Empty;
                    txtContactPersonName.Text = string.Empty;
                    txtMobile.Text            = string.Empty;
                    txtEmail.Text             = string.Empty;
                    txtAddress.Text           = string.Empty;
                    txtCity.Text  = string.Empty;
                    txtState.Text = string.Empty;
                }
            }
            catch (Exception ex)
            {
                General.ShowAlertMessage(ex.Message + "\r\n Please validate the details and try again.");
            }
        }
예제 #22
0
 public UpdatingClientState(ClientController clientController)
 {
     this.clientController = clientController;
     this.uiController     = clientController.UIController;
 }
예제 #23
0
        public void Clients_Returns_ActionsResult()
        {
            // Arrange
            //ClientController controller = new ClientController();
            Mock <IRepository <int, Client> > clinetMock = new Mock <IRepository <int, Client> >();

            clinetMock.Setup(m => m.Entities).Returns(
                new Client[]
            {
                new Client
                {
                    Address       = "Address 1A",
                    Client_id     = 1,
                    Client_name   = "amut",
                    Client_number = "C1",
                    Create_date   = new DateTime().Date,
                    Email         = "*****@*****.**",
                    Id            = 11,
                    IsActive      = true,
                    IsIntern      = true,
                    Last_update   = new DateTime().Date,
                    Prefix        = "mr",
                    Responsible   = "Response",
                    User_id       = 11
                },
                new Client
                {
                    Address       = "Address 2A",
                    Client_id     = 2,
                    Client_name   = "amut",
                    Client_number = "C1",
                    Create_date   = new DateTime().Date,
                    Email         = "*****@*****.**",
                    Id            = 11,
                    IsActive      = true,
                    IsIntern      = true,
                    Last_update   = new DateTime().Date,
                    Prefix        = "mr",
                    Responsible   = "Response",
                    User_id       = 12
                },
                new Client
                {
                    Address       = "Address 3A",
                    Client_id     = 3,
                    Client_name   = "amut",
                    Client_number = "C1",
                    Create_date   = new DateTime().Date,
                    Email         = "*****@*****.**",
                    Id            = 11,
                    IsActive      = true,
                    IsIntern      = true,
                    Last_update   = new DateTime().Date,
                    Prefix        = "mr",
                    Responsible   = "Response",
                    User_id       = 13
                }
            }.AsQueryable()
                );
            ClientController          controller = new ClientController(clinetMock.Object);
            IRepository <int, Client> c          = clinetMock.Object;
            // Act
            var actual = c;


            // Assert
            Assert.IsInstanceOf <IRepository <int, Client> >(actual);
        }
예제 #24
0
        public static void CheckForUpdates(object state, ElapsedEventArgs elapsedEventArgs)
        {
            var mods        = Mongo.Mods.FindAllAs <Mod>();
            var updatedMods = new HashSet <Mod>();

            log.Info("Checking for updates to mods...");
            var logic = new CompareLogic()
            {
                Config = new ComparisonConfig()
                {
                    Caching = false, MaxDifferences = 100
                }
            };
            var  modIds           = new HashSet <string>();
            bool cosmeticsChanged = false;

            foreach (var mod in mods)
            {
                modIds.Add(mod.Id);
                if (!ModCache.ContainsKey(mod.Id))
                {
                    ModCache.Add(mod.Id, mod);
                    updatedMods.Add(mod);
                    log.InfoFormat("Mod [{0}] added to database.", mod.fullname);
                    cosmeticsChanged = true;
                    continue;
                }
                var omod = ModCache[mod.Id];
                var diff = logic.Compare(omod, mod);
                if (diff.AreEqual)
                {
                    continue;
                }
                log.InfoFormat("Mod [{0}] updated!", mod.fullname);
                foreach (var difference in diff.Differences)
                {
                    log.Info(difference.PropertyName + ": " + difference.Object1Value + " => " + difference.Object2Value);
                }
                if (mod.version != omod.version || mod.isPublic != omod.isPublic || mod.playable != omod.playable)
                {
                    updatedMods.Add(mod);
                }
                ModCache[mod.Id] = mod;
                cosmeticsChanged = true;
            }
            foreach (var mod in ModCache.Where(mod => !modIds.Contains(mod.Key)).ToArray())
            {
                updatedMods.Add(mod.Value);
                ModCache.Remove(mod.Value.Id);
                cosmeticsChanged = true;
                log.InfoFormat("Mod [{0}] deleted!", mod.Value.fullname);
            }
            if (cosmeticsChanged)
            {
                Browser.AsyncSendToAll(BrowserController.UpdateMods(), res => {});
                log.Info("Telling browsers to download new mod list!");
            }
            if (updatedMods.Count == 0)
            {
                return;
            }
            log.InfoFormat("[{0}] mods updated, re-initing all clients and servers.", updatedMods.Count);
            ServerAddons.Init(ModCache.Values);
            foreach (var mod in updatedMods)
            {
                LobbyManager.CloseAll(mod);
            }
            Clients.SendToAll(ClientController.UpdateMods());
            foreach (var server in Servers.Find(m => m.Inited))
            {
                server.Inited = false;
                server.Send("updateMods|" + string.Join(",", updatedMods.Select(m => m.name)));
            }
        }
예제 #25
0
 public void ReadDatawithCheckingAccount() => ClientController.CheckClient(AccountController.Kind.checking, data);
예제 #26
0
 public ViewReviewsForProposal(ClientController controller, ProposalDTO proposal)
 {
     _ctrl     = controller;
     _proposal = proposal;
     InitializeComponent();
 }
예제 #27
0
 public static void SendEvent(ClientController client, byte[] data, string networkID = "")
 {
     SKServer.SendEvent(client.Peer, data, networkID);
 }
예제 #28
0
    private void processInput(String buttonName)
    {
        switch (buttonName)
        {
        //client cases
        case "c_Create()":
            StartCoroutine(this.clientArea.GetComponent <ClientController>().createSocket());
            break;

        case "c_Bind()":
            StartCoroutine(this.clientArea.GetComponent <ClientController>().bindSocket());
            break;

        case "c_Close()":
            StartCoroutine(this.clientArea.GetComponent <ClientController>().closeSocket());
            break;

        case "c_Connect()":
            this.clientArea.GetComponent <ClientController>().connectToServer();
            break;

        case "c_Send()":
            StartCoroutine(this.clientArea.GetComponent <ClientController>().sendData());
            break;

        case "c_Auto_Send()":
            this.clientArea.GetComponent <ClientController>().toggleAutoSend();
            break;

        case "c_Listen()":
            this.clientArea.GetComponent <ClientController>().listenForConnection();
            break;

        case "c_Accept()":
            this.clientArea.GetComponent <ClientController>().acceptConnection();
            break;

        case "c_Receive()":
            this.clientArea.GetComponent <ClientController>().receiveData();
            break;

        case "c_Auto_Receive()":
            this.clientArea.GetComponent <ClientController>().toggleAutoReceive();
            break;

        case "c_Reset()":
            this.clientArea.GetComponent <ClientController>().resetModules();
            break;

        case "c_0":
            this.clientArea.GetComponent <ClientController>().numpad('0');
            break;

        case "c_1":
            this.clientArea.GetComponent <ClientController>().numpad('1');
            break;

        case "c_2":
            this.clientArea.GetComponent <ClientController>().numpad('2');
            break;

        case "c_3":
            this.clientArea.GetComponent <ClientController>().numpad('3');
            break;

        case "c_4":
            this.clientArea.GetComponent <ClientController>().numpad('4');
            break;

        case "c_5":
            this.clientArea.GetComponent <ClientController>().numpad('5');
            break;

        case "c_6":
            this.clientArea.GetComponent <ClientController>().numpad('6');
            break;

        case "c_7":
            this.clientArea.GetComponent <ClientController>().numpad('7');
            break;

        case "c_8":
            this.clientArea.GetComponent <ClientController>().numpad('8');
            break;

        case "c_9":
            this.clientArea.GetComponent <ClientController>().numpad('9');
            break;

        case "c_period":
            this.clientArea.GetComponent <ClientController>().numpad('.');
            break;

        case "c_backspace":
            this.clientArea.GetComponent <ClientController>().numpad('b');
            break;

        case "c_enter":
            this.clientArea.GetComponent <ClientController>().numpad('e');
            break;

        // server cases
        case "s_Create()":
            StartCoroutine(this.serverArea.GetComponent <ServerController>().createSocket());
            break;

        case "s_Bind()":
            StartCoroutine(this.serverArea.GetComponent <ServerController>().bindSocket());
            break;

        case "s_Close()":
            StartCoroutine(this.serverArea.GetComponent <ServerController>().closeSocket());
            break;

        case "s_Connect()":
            this.serverArea.GetComponent <ServerController>().connectToServer();
            break;

        case "s_Send()":
            this.serverArea.GetComponent <ServerController>().sendData();
            break;

        case "s_Auto_Send()":
            this.serverArea.GetComponent <ServerController>().toggleAutoSend();
            break;

        case "s_Listen()":
            this.serverArea.GetComponent <ServerController>().listenForConnection();
            break;

        case "s_Accept()":
            this.serverArea.GetComponent <ServerController>().acceptConnection();
            break;

        case "s_Receive()":
            this.serverArea.GetComponent <ServerController>().receiveData();
            break;

        case "s_Auto_Receive()":
            this.serverArea.GetComponent <ServerController>().toggleAutoReceive();
            break;

        case "s_Reset()":
            this.serverArea.GetComponent <ServerController>().resetModules();
            break;

        case "s_0":
            this.serverArea.GetComponent <ServerController>().numpad('0');
            break;

        case "s_1":
            this.serverArea.GetComponent <ServerController>().numpad('1');
            break;

        case "s_2":
            this.serverArea.GetComponent <ServerController>().numpad('2');
            break;

        case "s_3":
            this.serverArea.GetComponent <ServerController>().numpad('3');
            break;

        case "s_4":
            this.serverArea.GetComponent <ServerController>().numpad('4');
            break;

        case "s_5":
            this.serverArea.GetComponent <ServerController>().numpad('5');
            break;

        case "s_6":
            this.serverArea.GetComponent <ServerController>().numpad('6');
            break;

        case "s_7":
            this.serverArea.GetComponent <ServerController>().numpad('7');
            break;

        case "s_8":
            this.serverArea.GetComponent <ServerController>().numpad('8');
            break;

        case "s_9":
            this.serverArea.GetComponent <ServerController>().numpad('9');
            break;

        case "s_period":
            this.serverArea.GetComponent <ServerController>().numpad('.');
            break;

        case "s_backspace":
            this.serverArea.GetComponent <ServerController>().numpad('b');
            break;

        case "s_enter":
            this.serverArea.GetComponent <ServerController>().numpad('e');
            break;

        // task board cases
        case "More Info Button (cc)":
            GameObject.Find("Info pages").transform.Find("Client Create").GetComponent <MoreInfoVisibility>().toggleInfo();
            break;

        case "More Info Button (cb)":
            GameObject.Find("Info pages").transform.Find("Client Bind").GetComponent <MoreInfoVisibility>().toggleInfo();
            break;

        case "More Info Button (sc)":
            GameObject.Find("Info pages").transform.Find("Server Create").GetComponent <MoreInfoVisibility>().toggleInfo();
            break;

        case "More Info Button (sb)":
            GameObject.Find("Info pages").transform.Find("Server Bind").GetComponent <MoreInfoVisibility>().toggleInfo();
            break;

        case "More Info Button (sr)":
            GameObject.Find("Info pages").transform.Find("Server Receive").GetComponent <MoreInfoVisibility>().toggleInfo();
            break;

        case "More Info Button (cs)":
            GameObject.Find("Info pages").transform.Find("Client Send").GetComponent <MoreInfoVisibility>().toggleInfo();
            break;

        case "More Info Button (scl)":
            GameObject.Find("Info pages").transform.Find("Server Close").GetComponent <MoreInfoVisibility>().toggleInfo();
            break;

        case "More Info Button (ccl)":
            GameObject.Find("Info pages").transform.Find("Client Close").GetComponent <MoreInfoVisibility>().toggleInfo();
            break;

        case "Exit button":
            GameObject info_pages = GameObject.Find("Info pages");
            foreach (Transform page in info_pages.transform)
            {
                if (page.gameObject.activeSelf == true)
                {
                    page.GetComponent <MoreInfoVisibility>().toggleInfo();
                }
            }
            break;

        case "Task List Button":
            taskList.SetActive(!taskList.activeSelf);
            break;

        case "Quiz Button":
            // check that Checkmark (cc), Checkmark (cs), Checkmark (ccl) are all active
            ClientController ccontrol       = Transform.FindObjectOfType <ClientController>();
            bool             clientComplete = true;
            foreach (GameObject obj in ccontrol.checkmarks)
            {
                if (obj.name != "Checkmark (cb)" && obj.activeSelf == false)
                {
                    clientComplete = false;
                }
            }

            ServerController scontrol       = Transform.FindObjectOfType <ServerController>();
            bool             serverComplete = true;
            foreach (GameObject obj in scontrol.checkmarks)
            {
                if (obj.activeSelf == false)
                {
                    clientComplete = false;
                }
            }
            // check that Checkmark (sc), Checkmark (sb), Checkmark (sr), and Checkmark (scl) are all active
            if (clientComplete && serverComplete)
            {
                Debug.Log("start quiz here");
                SceneManager.LoadScene(quizScene, LoadSceneMode.Single);
            }
            else
            {
                Debug.Log("still more steps to complete before starting quiz");
            }
            break;

        case "StartGame":
            desktopPlayer.transform.position = labPositionDesktop;
            vrPlayer.transform.position      = labPositionVR;
            break;

        case "TitleButton":
            desktopPlayer.transform.position = startPosDesktop;
            vrPlayer.transform.position      = startPosVR;
            break;

        case "QuitButton":
            Application.Quit();
            break;

        // Quiz Scene buttons
        case "A":
            GameObject.Find("QuizHandler").GetComponent <Quiz>().A_choices();
            break;

        case "B":
            GameObject.Find("QuizHandler").GetComponent <Quiz>().B_choices();
            break;

        case "C":
            GameObject.Find("QuizHandler").GetComponent <Quiz>().C_choices();
            break;

        case "D":
            GameObject.Find("QuizHandler").GetComponent <Quiz>().D_choices();
            break;

        case "GoToLab":
            GameObject.Find("QuizHandler").GetComponent <Quiz>().goToLab();
            break;

        default:
            break;
        }
    }
예제 #29
0
        private void ReadClient(XmlReader reader)
        {
            if (reader.IsEmptyElement)
            {
                return;
            }

            bool   loop = true;
            string name = null;

            // Components
            Entity                 entity  = new Entity();
            ClientComponent        client  = new ClientComponent();
            ClientOptionsComponent options = new ClientOptionsComponent();

            GroupComponent  group  = new GroupComponent();
            ServerComponent server = new ServerComponent();
            List <string>   paths  = new List <string>();

            client.Enabled = bool.Parse(reader.GetAttribute(XmlTag.Enabled));

            while (loop && reader.Read())
            {
                switch (reader.NodeType)
                {
                case XmlNodeType.Element:
                {
                    name = reader.Name;

                    switch (name)
                    {
                    case XmlTag.Router:
                    {
                        ReadRouter(reader, ref server);
                        break;
                    }

                    case XmlTag.Options:
                    {
                        ReadOptions(reader, ref options);
                        break;
                    }

                    case XmlTag.Folders:
                    {
                        ReadFolders(reader, ref paths);
                        break;
                    }
                    }

                    break;
                }

                case XmlNodeType.Text:
                {
                    switch (name)
                    {
                    case XmlTag.Id:
                    {
                        entity.Id = reader.Value;
                        break;
                    }

                    case XmlTag.Name:
                    {
                        client.Name = reader.Value;
                        break;
                    }

                    case XmlTag.Download:
                    {
                        client.Download = reader.Value;
                        break;
                    }

                    case XmlTag.Group:
                    {
                        group.Path = reader.Value;
                        break;
                    }
                    }

                    break;
                }

                case XmlNodeType.EndElement:
                {
                    if (XmlTag.Client.Equals(reader.Name))
                    {
                        loop = false;
                    }

                    break;
                }
                }
            }

            // Components
            entity.Add(client);
            entity.Add(options);
            entity.Add(group);
            entity.Add(server);

            FolderListComponent folderList = new FolderListComponent();

            entity.Add(folderList);

            FileMapComponent fileMap = new FileMapComponent();

            entity.Add(fileMap);

            FolderMapComponent folderMap = new FolderMapComponent();

            entity.Add(folderMap);

            ClientMachineComponent machine = new ClientMachineComponent();

            entity.Add <MachineComponent>(machine);

            SessionComponent session = new SessionComponent();

            entity.Add(session);

            FileComponent file = new FileComponent();

            entity.Add(file);

            SearchListComponent search = new SearchListComponent(SearchController.Dispatcher);

            entity.Add(search);

            BrowseComponent browse = new BrowseComponent();

            entity.Add(browse);

            DownloadListComponent download = new DownloadListComponent(DownloadController.Dispatcher);

            entity.Add(download);

            UploadListComponent upload = new UploadListComponent(UploadController.Dispatcher);

            entity.Add(upload);
#if DEBUG
            LogComponent log = new LogComponent(LogController);
            entity.Add(log);
#endif
            ClientController.Add(entity);

            foreach (string path in paths)
            {
                FileComponent shared = new FileComponent(path)
                {
                    Owner = entity
                };
                folderList.Add(shared);
            }
        }
        public static void RemoveEquipmentFromClient(Client client, Equipment equipment)
        {
            ClientController clientController = new ClientController();

            clientController.equipment.Remove(equipment, client);
        }
예제 #31
0
 public void Update()
 {
     ClientController.Update();
 }
예제 #32
0
 public LogIn(ClientController ctrl)
 {
     uc = ctrl;
     InitializeComponent();
 }
예제 #33
0
 public void SetContext(ClientController context)
 {
     _controller = context;
 }
예제 #34
0
    private static IGameController MakeController(GameType type, GameCore core, EventFactory eventFactory)
    {
        IGameController controller;
        var baseController = new GameController(core, eventFactory);
        switch (type)
        {
        case GameType.Local:
            controller = baseController;
            break;
        case GameType.Streaming:
            controller = new ServerController(baseController);
            break;
        case GameType.Watching:
            controller = new ClientController(baseController);
            break;
        default:
            throw new ArgumentOutOfRangeException("GameType");
        }

        return controller;
    }
예제 #35
0
    //Constructor
    public ClientController()
    {
        if (m_controller != null)
        {
            return;
        }
        else
        {
            //create our socket instance
            //Debug.Log("Instatiating ClientNetworkController Singleton");

            PopulateFunctionCodeDict();
            m_sock = new Socket(AddressFamily.InterNetwork,
                  SocketType.Stream,
                  ProtocolType.Tcp);
            m_reader.Init(4096);
            m_writer.Init(4096);
            m_controller = this;

        }
    }