當前位置: 首頁>>代碼示例>>C#>>正文


C# CmdRequest.ContainsKey方法代碼示例

本文整理匯總了C#中CmdRequest.ContainsKey方法的典型用法代碼示例。如果您正苦於以下問題:C# CmdRequest.ContainsKey方法的具體用法?C# CmdRequest.ContainsKey怎麽用?C# CmdRequest.ContainsKey使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在CmdRequest的用法示例。


在下文中一共展示了CmdRequest.ContainsKey方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: ExecuteRequest

        public override CmdResult ExecuteRequest(CmdRequest args)
        {
            bool moveInsteadOfCopy = args.IsTrue("--move");
            if (!args.ContainsKey("items") || !args.ContainsKey("to"))
            {
                return ShowUsage();
            }
            int argsUsed;
            List<SimObject> allTargets;
            if (!args.TryGetValue("to", out allTargets))
            {
                return Failure("Cannot find avatar/objects 'to' give to");
            }

            Success("Going to give to " + allTargets.Count + " avatar/objects");

            var man = Client.BotInventory;
            var found = man.FindAll(args.GetProperty("items"), false,
                                    inventoryName => Failure("No inventory item named " + inventoryName + " found."));

            int given = 0;
            foreach (var dest in allTargets)
            {
                foreach (InventoryBase item in found)
                {
                    GiveAll(man, item, dest, moveInsteadOfCopy);
                }
            }
            return SuccessOrFailure();
        }
開發者ID:drzo,項目名稱:opensim4opencog,代碼行數:30,代碼來源:GiveItemCommand.cs

示例2: ExecuteRequestProc

        public static CmdResult ExecuteRequestProc(CmdRequest args, Command cmd)
        {
            if (!args.ContainsKey("to"))
                args.SetValue("to", "verb");

            ;
            if (!cmd.Client.IsLoggedInAndReady)
            {
                return cmd.Failure("Not yet logged in!");
            }
            var TheSimAvatar = cmd.WorldSystem.TheSimAvatar;

            if (TheSimAvatar.IsSitting && !TheSimAvatar.IsDrivingVehical)
            {
                cmd.WriteLine("$bot is standing up before moving.");
                TheSimAvatar.StandUp();
                // WriteLine("$bot is sitting, Please stand up to move.");
            }
            SimPosition position;
            if (!args.TryGetValue("to", out position))
            {
                return cmd.Failure("I don't understand how to move " + args.str);
            }
            if (position == null)
            {
                return cmd.Failure("Coulnd not resolve location: " + args.str);
            }
            if (!position.IsRegionAttached)
            {
                return cmd.Failure("!IsRegionAttached: " + position);
            }
            if (position.SimPosition == Vector3.Zero)
            {
                return cmd.Failure("SimPosition.Zero: " + position);
            }
            Vector3d delta0 = position.GlobalPosition - TheSimAvatar.GlobalPosition;
            Vector3 delta = new Vector3((float) delta0.X, (float) delta0.Y, (float) delta0.Z);

            float fnd;
            if (args.TryGetValue("dist", out fnd))
            {
                delta.Normalize();
                delta = delta*fnd;
                position = new SimOffsetPosition(TheSimAvatar, delta);
            }

            MovementProceedure proc;
            bool salientProc = args.TryGetValue("sproc", out proc);
            if (salientProc)
            {
                TheSimAvatar.SalientMovementProceedure = proc;
            }

            if (args.TryGetValue("proc", out proc))
            {
                TheSimAvatar.SimpleMoveToMovementProceedure = proc;
            }

            Vector3d g = position.GlobalPosition;
            TheSimAvatar.SetClient(cmd.TheBotClient);
            if (salientProc)
            {
                return cmd.Result(string.Format("SalientGoto: {0},{1},{2}", position, g, position.SimPosition),
                                  TheSimAvatar.SalientGoto(position));
            }
            else
            {
                TheSimAvatar.SetMoveTarget(position, position.GetSizeDistance());
            }
            //Client.Self.AutoPilot(g.X, g.Y, g.Z);
            // MoveThread = new Thread(MoveProc);
            return cmd.Success(string.Format("SetMoveTarget: {0},{1},{2}", position, g, position.SimPosition));
        }
開發者ID:drzo,項目名稱:opensim4opencog,代碼行數:73,代碼來源:MoveToCommand.cs


注:本文中的CmdRequest.ContainsKey方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。