private void ProcessPacket(Packet packet, Stream socketStream)
        {
            switch (packet.Type)
            {
            case PacketTypes.WorldStatus:
            {
                WorldDescription currentDescription = _userWorld.GetCurrentDescription();

                var returnPacket = new Packet(PacketTypes.WorldStatus, currentDescription);

                returnPacket.CopyTo(socketStream);
                break;
            }

            case PacketTypes.ClientCommand:
            {
                MoveArguments args = packet.Data as MoveArguments;

                if (args == null)
                {
                    return;
                }

                _userWorld.SendTo(args.Units, args.Position);
                break;
            }
            }
        }
    private void SendSelectedToPoint(Point point)
    {
        var args = new MoveArguments()
        {
            Position = point, Units = _unitSprites.Where(us => us.Value.IsSelected).Select(us => us.Key).ToArray()
        };

        _networkManager.SendCommand(args);
    }
Esempio n. 3
0
    public void SendCommand(MoveArguments args)
    {
        var commandPacket = new Packet(PacketTypes.ClientCommand, args);

        lock (_packets)
        {
            _packets.Enqueue(commandPacket);
        }
    }
Esempio n. 4
0
 /// <summary>
 /// Move the selected actors to the position.
 /// </summary>
 /// <param name="mouseButton">Which mouse button it is used.</param>
 /// <param name="raycastHit">The RaycastHit information</param>
 private static void MoveSquad(MouseButton mouseButton, RaycastHit raycastHit)
 {
     if (mouseButton == MouseButton.LEFT_MOUSE_BUTTON)
     {
         MoveArguments moveArguments = new MoveArguments(raycastHit.point);
         _units.ForEach(x => {
             if (x.Actor.Selected)
             {
                 x.Actor.TaskScheduler.CreateTask <Move>(moveArguments);
             }
         });
     }
 }
Esempio n. 5
0
        public async Task <ActionResult <TurnLog> > Move(Guid gameId, [FromBody] MoveArguments arguments)
        {
            MakeMoveResult makeMoveResult = _gameService.MakeMove(gameId, Position.Create(arguments.Origin), Position.Create(arguments.Destination));

            if (!makeMoveResult.Success)
            {
                return(BadRequest(makeMoveResult.FailReason));
            }

            if (_hub != null)
            {
                await _hub.Clients.All.SendAsync("RefreshGame");
            }

            return(makeMoveResult.TurnLog);
        }
Esempio n. 6
0
    protected void cmdOK_Click(object sender, EventArgs e)
    {
        ClearErrors();
        try
        {
            if (!ValidateUIRequirements()) return;
            MoveArguments arguments = new MoveArguments
                                                 {
                                                     SourceContact = Contact,
                                                     SourceAccount = Contact.Account,
                                                     TargetAccount = (IAccount) lueTargetAccount.LookupResultValue,
                                                     UseSourceContactInfo = chkUseSourceAddressPhn.Checked
                                                 };
            //Add the move/reassign options for each of the items
            //Activity Options
            MoveItemOption moveOption = rdbMoveActivity.Checked
                                            ? new MoveItemOption { Entity = "Activity", MoveToAccount = true, ReassignTo = arguments.TargetAccount.Id }
                                            : new MoveItemOption { Entity = "Activity", ReassignTo = (lueReassignActivity.LookupResultValue as IContact).Id, MoveToAccount = false };
            arguments.Items.Add(moveOption);

            //History/Notes Options
            moveOption = rdbMoveHistory.Checked
                             ? new MoveItemOption { Entity = "History", MoveToAccount = true, ReassignTo = arguments.TargetAccount.Id }
                             : new MoveItemOption { Entity = "History", ReassignTo = (lueReassignNotesHistory.LookupResultValue as IContact).Id, MoveToAccount = false };
            arguments.Items.Add(moveOption);

            object openItemsReassignContact = lueReassignOpenItems.LookupResultValue != null ? (lueReassignOpenItems.LookupResultValue as IContact).Id : null;
            object closedItemsReassignContact = lueReassignClosedItems.LookupResultValue != null ? (lueReassignClosedItems.LookupResultValue as IContact).Id : null;
            object openSupportItemsReassignContact = lueReassignSupportItems.LookupResultValue != null
                                                         ? (lueReassignSupportItems.LookupResultValue as IContact).Id
                                                         : null;
            //Attachment Options
            moveOption = new MoveItemOption
            {
                Entity = "Attachment",
                ReassignTo = openItemsReassignContact,
                MoveToAccount = false
            };
            arguments.Items.Add(moveOption);

            //Literature Requests Options
            moveOption = new MoveItemOption
            {
                Entity = "LitRequest",
                OpenItemsOnly = true,
                ClosedItemsOnly = true,
                ReassignTo = openItemsReassignContact,
                ReassignToClosed = closedItemsReassignContact,
                MoveToAccount = false
            };
            arguments.Items.Add(moveOption);

            //Opportunity Options
            moveOption = new MoveItemOption
                             {
                                 Entity = "OpportunityContact",
                                 OpenItemsOnly = true,
                                 ClosedItemsOnly = true,
                                 ReassignTo = openItemsReassignContact,
                                 ReassignToClosed = closedItemsReassignContact,
                                 MoveToAccount = false
                             };
            arguments.Items.Add(moveOption);

            //Sales Order Options
            moveOption = new MoveItemOption
            {
                Entity = "SalesOrder",
                OpenItemsOnly = true,
                ReassignTo = openItemsReassignContact,
                MoveToAccount = false
            };
            arguments.Items.Add(moveOption);

            //Ticket Options
            moveOption = new MoveItemOption
            {
                Entity = "Ticket",
                ReassignTo = openSupportItemsReassignContact,
                OpenItemsOnly = true,
                MoveToAccount = false
            };
            arguments.Items.Add(moveOption);
            //Return Options
            moveOption = new MoveItemOption
            {
                Entity = "Return",
                ReassignTo = openSupportItemsReassignContact,
                OpenItemsOnly = true,
                MoveToAccount = false
            };
            arguments.Items.Add(moveOption);
            //Contract Options
            moveOption = new MoveItemOption
            {
                Entity = "Contract",
                ReassignTo = openSupportItemsReassignContact,
                OpenItemsOnly = true,
                MoveToAccount = false
            };
            arguments.Items.Add(moveOption);

            Contact.MoveContact(arguments);

            // redirect back to page so new info can be displayed
            if (Contact.Id != null)
            {
                Response.Redirect(string.Format("Contact.aspx?entityId={0}", (Contact.Id)), false);
            }
        }
        catch (Exception ex)
        {
            string sSlxErrorId = null;
            var sMsg = ErrorHelper.GetClientErrorHtmlMessage(ex, ref sSlxErrorId);
            if (!string.IsNullOrEmpty(sSlxErrorId))
            {
                log.Error(ErrorHelper.AppendSlxErrorId("The call to SmartParts_Contact_MoveContact.cmdOK_Click failed", sSlxErrorId),
                          ex);
            }
            DialogService.ShowHtmlMessage(sMsg, ErrorHelper.IsDevelopmentContext() ? 600 : -1,
                                          ErrorHelper.IsDevelopmentContext() ? 800 : -1);
        }
    }
Esempio n. 7
0
    protected void cmdOK_Click(object sender, EventArgs e)
    {
        ClearErrors();
        try
        {
            if (!ValidateUIRequirements())
            {
                return;
            }
            MoveArguments arguments = new MoveArguments
            {
                SourceContact        = Contact,
                SourceAccount        = Contact.Account,
                TargetAccount        = (IAccount)lueTargetAccount.LookupResultValue,
                UseSourceContactInfo = chkUseSourceAddressPhn.Checked
            };
            //Add the move/reassign options for each of the items
            //Activity Options
            MoveItemOption moveOption = rdbMoveActivity.Checked
                                            ? new MoveItemOption {
                Entity = "Activity", MoveToAccount = true, ReassignTo = arguments.TargetAccount.Id
            }
                                            : new MoveItemOption {
                Entity = "Activity", ReassignTo = (lueReassignActivity.LookupResultValue as IContact).Id, MoveToAccount = false
            };
            arguments.Items.Add(moveOption);

            //History/Notes Options
            moveOption = rdbMoveHistory.Checked
                             ? new MoveItemOption {
                Entity = "History", MoveToAccount = true, ReassignTo = arguments.TargetAccount.Id
            }
                             : new MoveItemOption {
                Entity = "History", ReassignTo = (lueReassignNotesHistory.LookupResultValue as IContact).Id, MoveToAccount = false
            };
            arguments.Items.Add(moveOption);

            object openItemsReassignContact        = lueReassignOpenItems.LookupResultValue != null ? (lueReassignOpenItems.LookupResultValue as IContact).Id : null;
            object closedItemsReassignContact      = lueReassignClosedItems.LookupResultValue != null ? (lueReassignClosedItems.LookupResultValue as IContact).Id : null;
            object openSupportItemsReassignContact = lueReassignSupportItems.LookupResultValue != null
                                                         ? (lueReassignSupportItems.LookupResultValue as IContact).Id
                                                         : null;
            //Attachment Options
            moveOption = new MoveItemOption
            {
                Entity        = "Attachment",
                ReassignTo    = openItemsReassignContact,
                MoveToAccount = false
            };
            arguments.Items.Add(moveOption);

            //Literature Requests Options
            moveOption = new MoveItemOption
            {
                Entity           = "LitRequest",
                OpenItemsOnly    = true,
                ClosedItemsOnly  = true,
                ReassignTo       = openItemsReassignContact,
                ReassignToClosed = closedItemsReassignContact,
                MoveToAccount    = false
            };
            arguments.Items.Add(moveOption);

            //Opportunity Options
            moveOption = new MoveItemOption
            {
                Entity           = "OpportunityContact",
                OpenItemsOnly    = true,
                ClosedItemsOnly  = true,
                ReassignTo       = openItemsReassignContact,
                ReassignToClosed = closedItemsReassignContact,
                MoveToAccount    = false
            };
            arguments.Items.Add(moveOption);

            //Sales Order Options
            moveOption = new MoveItemOption
            {
                Entity        = "SalesOrder",
                OpenItemsOnly = true,
                ReassignTo    = openItemsReassignContact,
                MoveToAccount = false
            };
            arguments.Items.Add(moveOption);

            //Ticket Options
            moveOption = new MoveItemOption
            {
                Entity        = "Ticket",
                ReassignTo    = openSupportItemsReassignContact,
                OpenItemsOnly = true,
                MoveToAccount = false
            };
            arguments.Items.Add(moveOption);
            //Return Options
            moveOption = new MoveItemOption
            {
                Entity        = "Return",
                ReassignTo    = openSupportItemsReassignContact,
                OpenItemsOnly = true,
                MoveToAccount = false
            };
            arguments.Items.Add(moveOption);
            //Contract Options
            moveOption = new MoveItemOption
            {
                Entity        = "Contract",
                ReassignTo    = openSupportItemsReassignContact,
                OpenItemsOnly = true,
                MoveToAccount = false
            };
            arguments.Items.Add(moveOption);

            Contact.MoveContact(arguments);

            // redirect back to page so new info can be displayed
            if (Contact.Id != null)
            {
                Response.Redirect(string.Format("Contact.aspx?entityId={0}", (Contact.Id)), false);
            }
        }
        catch (Exception ex)
        {
            string sSlxErrorId = null;
            var    sMsg        = ErrorHelper.GetClientErrorHtmlMessage(ex, ref sSlxErrorId);
            if (!string.IsNullOrEmpty(sSlxErrorId))
            {
                log.Error(ErrorHelper.AppendSlxErrorId("The call to SmartParts_Contact_MoveContact.cmdOK_Click failed", sSlxErrorId),
                          ex);
            }
            DialogService.ShowHtmlMessage(sMsg, ErrorHelper.IsDevelopmentContext() ? 600 : -1,
                                          ErrorHelper.IsDevelopmentContext() ? 800 : -1);
        }
    }