Beispiel #1
0
        /*
         * void CC_CombatCommands(string arguments)
         * {
         *  if (CombatManager.Instance == null | CombatManager.Instance.ActiveEntity != playerCharacter)
         *      return;
         *
         *  switch (arguments)
         *  {
         *      case "end":
         *          CombatManager.Instance.AttemptEnd();
         *          break;
         *
         *      case "endTurn":
         *          playerCharacter.EndTurn();
         *          break;
         *
         *      default:
         *          Log.Warning("Unknown command {0}", arguments);
         *          break;
         *  }
         * }*/

        void CC_CreateWindow(string arguments)
        {
            if (hudControl == null || hudControl.selectedUnit == null)
            {
                return;
            }

            RTSUnitAI intellect = hudControl.selectedUnit.Intellect as RTSUnitAI;

            if (intellect == null)
            {
                return;
            }

            switch (arguments)
            {
            case "inv":
                if (hudControl.selectedUnit.CanOpenInventory())
                {
                    if (intellect.CurrentTask.Entity != null)
                    {
                        if (!(intellect.CurrentTask.Entity as InventoryObject).Disabled)
                        {
                            Controls.Add(new ObjectInventoryWindow(hudControl.selectedUnit, intellect.CurrentTask.Entity as InventoryObject));
                        }
                        else
                        {
                            Log.Info((intellect.CurrentTask.Entity as InventoryObject).Type.disabledMessage);
                        }
                    }
                    else
                    {
                        Controls.Add(new TESTinventory(hudControl.selectedUnit));
                    }
                }
                break;

            case "chat":
                if (hudControl.selectedUnit != null)
                {
                    VBCharacter partner = (hudControl.selectedUnit.Intellect as RTSUnitAI).CurrentTask.Entity as VBCharacter;

                    ChatWindow tmpchat = new ChatWindow();
                    tmpchat.SetPartners(hudControl.selectedUnit, partner);
                    Controls.Add(tmpchat);
                    tmpchat.LoadConversation(partner.Name, partner);
                    cameraPosition = partner.Position;
                }
                break;

            default:
                Controls.Add(ControlDeclarationManager.Instance.CreateControl(arguments));
                break;
            }
        }