コード例 #1
0
        public void MoveControl()
        {
            MoveParam param = new MoveParam();

            param.moveSpeed = _moveSpeed;
            _cacheParam.SetParam(CmdType.Move, param);
        }
コード例 #2
0
        public void MoveHandler_Folders(bool overwrite)
        {
            const string CURRENT_ROOT      = "TestMoveFolder";
            const string CURRENT_ROOT_PATH = ROOT_TEST_PATH + "\\" + CURRENT_ROOT;

            const string TEST_FOLDER_SRC_NAME = "FolderSrc";
            const string TEST_FOLDER_SRC_PATH = CURRENT_ROOT_PATH + "\\" + TEST_FOLDER_SRC_NAME;

            const string TEST_FOLDER_DST_NAME = "FolderDst";
            const string TEST_FOLDER_DST_PATH = CURRENT_ROOT_PATH + "\\" + TEST_FOLDER_DST_NAME;

            const string TEST_SUB_FOLDER_NAME     = "SubFolder";
            const string TEST_SUB_FOLDER_SRC_PATH = TEST_FOLDER_SRC_PATH + "\\" + TEST_SUB_FOLDER_NAME;
            const string TEST_SUB_FOLDER_DST_PATH = TEST_FOLDER_DST_PATH + "\\" + TEST_SUB_FOLDER_NAME;

            const string TEST_FILE_TXT_NAME         = "TestFile.txt";
            const string TEST_SUB_SRC_FILE_TXT_PATH = TEST_SUB_FOLDER_SRC_PATH + "\\" + TEST_FILE_TXT_NAME;
            const string TEST_SUB_DST_FILE_TXT_PATH = TEST_SUB_FOLDER_DST_PATH + "\\" + TEST_FILE_TXT_NAME;

            Directory.CreateDirectory(TEST_SUB_FOLDER_SRC_PATH);
            Directory.CreateDirectory(TEST_SUB_FOLDER_DST_PATH);
            FileIO.WriteData(TEST_SUB_SRC_FILE_TXT_PATH, "0");
            FileIO.WriteData(TEST_SUB_DST_FILE_TXT_PATH, "1");

            var targetToMove = new BaseActionTarget
            {
                Name = TEST_SUB_FOLDER_NAME
            };

            var param = new MoveParam
            {
                SourceDirectory      = $"/{CURRENT_ROOT}/{TEST_FOLDER_SRC_NAME}",
                DestinationDirectory = $"/{CURRENT_ROOT}/{TEST_FOLDER_DST_NAME}",
                Targets = new List <BaseActionTarget> {
                    targetToMove
                },
                Overwrite = overwrite
            };

            var result = new MoveHandler(CreateHostingEnv()).Run(param) as MoveResult;

            PrintErrors(result.Errors);

            string value = FileIO.ReadToEnd(TEST_SUB_DST_FILE_TXT_PATH);

            if (overwrite)
            {
                Assert.Equal("0", value);
            }
            else
            {
                Assert.Equal("1", value);
            }
            Assert.False(Directory.Exists(TEST_SUB_FOLDER_SRC_PATH));
            Assert.True(result.Errors.Count == 0);
        }
コード例 #3
0
    private IEnumerator PlayerMoveCoroutine(object param)
    {
        MoveParam p = param as MoveParam;

        player.Move(p.delta, p.period);
        while (player.ManualIsMoving)
        {
            yield return(null);
        }
        currPlotEnd = true;
    }
コード例 #4
0
    private IEnumerator RobotMoveCoroutine(object param)
    {
        MoveParam p = param as MoveParam;

        droneRobot.Move(p.delta, p.period);
        while (droneRobot.IsMoving)
        {
            yield return(null);
        }
        currPlotEnd = true;
    }
コード例 #5
0
 public void OnDestinationMove(LTInstanceNode cur, LTInstanceNode target, int num)
 {
     bossRewardStop = false;
     moveActionList = LTInstanceMapModel.Instance.GetRoad(cur, target, false, ref bossRewardStop);
     if (moveActionList == null)
     {
         return;
     }
     if (num < moveActionList.Count)
     {
         moveActionList.RemoveRange(num, moveActionList.Count - num);
     }
     moveType = MoveParam.Fabricate;
     AutoMoveMap();
 }
コード例 #6
0
        private void RequestChallengeMoveChar(LTInstanceNode targetNode, MoveParam type)
        {
            if (targetNode == null || LTInstanceMapModel.Instance.CurNode == null)
            {
                return;
            }

            int dir = (int)LTInstanceMapModel.Instance.CurNode.GetDirByPos(targetNode.x, targetNode.y);

            if (dir <= 0)
            {
                if (moveActionList != null && moveActionList.Count > 0)
                {
                    ClearMoveActionList();
                }
                return;
            }

            bool isLoayout = !string.IsNullOrEmpty(targetNode.Layout);

            if (type == MoveParam.Fabricate)
            {
                LTInstanceMapModel.Instance.SimulateFunc(dir);
                return;
            }

            //直接或Boss区域特殊逻辑或时,直接调用协议,不等待
            if (type == MoveParam.Direct || LTInstanceMapModel.Instance.IsBossArea())
            {
                RequestMoveCharWithCallback(dir, isLoayout);
                return;
            }

            //前端模拟
            if (type == MoveParam.Simulate && (HasNext() || !HasNext() && (targetNode.RoleData.Id == 0 || LTInstanceConfig.EmptyRoleList.Contains(targetNode.RoleData.Img))))
            {
                LTInstanceMapModel.Instance.SimulateFunc(dir);
                return;
            }

            //同步数据回调后才能调用
            InstanceWaitUpdataMap(delegate
            {
                RequestMoveCharWithCallback(dir, isLoayout);
            }, false);
        }
コード例 #7
0
        public void Reset()
        {
            modelController   = PEUtil.GetCmpt <PEModelController>(transform);
            ragdollController = PEUtil.GetCmpt <PERagdollController>(transform);
            ikArray           = PEUtil.GetCmpts <IK>(transform);
            ikFlashLight      = PEUtil.GetCmpt <IKFlashLight>(transform);
            fbbik             = PEUtil.GetCmpt <FullBodyBipedIK>(transform);
            grounderFBBIK     = PEUtil.GetCmpt <GrounderFBBIK>(transform);
            humanPhyCtrl      = PEUtil.GetCmpt <HumanPhyCtrl>(transform);
            ikAimCtrl         = PEUtil.GetCmpt <IKAimCtrl>(transform);
            ikAnimEffectCtrl  = PEUtil.GetCmpt <IKAnimEffectCtrl>(transform);
            ikDrive           = PEUtil.GetCmpt <IKDrive>(transform);
            defenceTrigger    = PEUtil.GetCmpt <PEDefenceTrigger>(transform);
            pathFinder        = PEUtil.GetCmpt <PEPathfinder>(transform);
            motor             = PEUtil.GetCmpt <PEMotor>(transform);
            steerAgent        = PEUtil.GetCmpt <Steer3D.SteerAgent>(transform);
            animFollow_AF     = PEUtil.GetCmpt <AnimFollow_AF>(transform);
            beatParam         = PEUtil.GetCmpt <BeatParam>(transform);
            moveParam         = PEUtil.GetCmpt <MoveParam>(transform);
            barrelController  = PEUtil.GetCmpt <PEBarrelController>(transform);
            billBoard         = PEUtil.GetCmpt <BillBoard>(transform);
            armorBones        = PEUtil.GetCmpt <ArmorBones>(transform);
            visions           = PEUtil.GetCmpts <PEVision>(transform);
            hears             = PEUtil.GetCmpts <PEHearing>(transform);
            native            = PEUtil.GetCmpt <PENative>(transform);
            monster           = PEUtil.GetCmpt <PEMonster>(transform);
            if (null != modelController)
            {
                modelController.ResetModelInfo();
            }

            if (null != animFollow_AF)
            {
                animFollow_AF.ResetModelInfo();
            }

            if (null != ragdollController)
            {
                ragdollController.ResetRagdoll();
            }
        }
コード例 #8
0
 private void RequestMoveCharWithCallback(int dir, bool isLayout)
 {
     isWaitForUpdataMap = true;
     if (isLayout)
     {
         InputBlockerManager.Instance.Block(InputBlockReason.UI_SERVER_REQUEST, 2f);
     }
     LTInstanceMapModel.Instance.RequestMoveChar(dir, delegate(bool moved)
     {
         if (moved)//如果没有任何移动,说明服务器已经返回停止移动(可能是因为阻挡,事件等)
         {
             moveType = MoveParam.None;
             AutoMoveMap();
         }
         else
         {
             ClearMoveActionList();
         }
         isWaitForUpdataMap = false;
     });
 }
コード例 #9
0
        public void OnFloorClick(LTInstanceNode NodeData, Transform Target, bool needStop = false)
        {
            if (LTInstanceMapModel.Instance.moveResultList.Count > 0 || LTInstanceMapModel.Instance.DealDirQueue.Count > 0)
            {
                return;
            }

            if (NodeData == null || isWaitForUpdataMap)
            {
                return;
            }

            if (NodeData == curNode)
            {
                if (OnRealEnd != null)
                {
                    System.Action <bool> tmp = OnRealEnd;
                    OnRealEnd = null;
                    tmp(true);
                }
                return;
            }

            if (NodeData.RoleData.Img == "Copy_Icon_Guanmen" && !NodeData.RoleData.CampaignData.IsDoorOpen)
            {
                OnRealEnd = null;
                MessageTemplateManager.ShowMessage(eMessageUIType.FloatingText, EB.Localizer.GetString("ID_codefont_in_LTInstanceMapCtrl_9085"));
                return;
            }

            mRealEndNode   = NodeData;
            bossRewardStop = false;
            moveActionList = LTInstanceMapModel.Instance.GetRoad(LTInstanceMapModel.Instance.CurNode, mRealEndNode, needStop, ref bossRewardStop);
            if (moveActionList != null)
            {
                Instance.LTInstanceOptimizeManager.Instance.ShowSelectObj(true, Target);
            }
            else
            {
                Instance.LTInstanceOptimizeManager.Instance.ShowSelectObj(false, Target);
                return;
            }

            if (bossRewardStop)
            {
                OnRealEnd = new System.Action <bool>(delegate(bool isPath)
                {
                    LTInstanceMapModel.Instance.RequestBossReward();
                });
            }

            if (MoveCoroutine == null)
            {
                if (!HasNext())//针对在玩家旁边,不需要寻路的格子,因为不调用Move协程,得直接结束调用
                {
                    RealEndHandler(LTInstanceMapModel.Instance.CurNode, false);
                }
                moveType = MoveParam.Simulate;
                AutoMoveMap();
            }
        }
コード例 #10
0
        static void Main(string[] args)
        {
            Console.WriteLine("Generating format...");

            #region Params

            var p_copy = new CopyParam
            {
                CurrentFolderPath    = "/",
                SourceDirectory      = "/",
                DestinationDirectory = "/",
                Overwrite            = false,
                Targets = new System.Collections.Generic.List <BaseActionTarget>
                {
                    new BaseActionTarget
                    {
                        IsFile = true,
                        Name   = "sample.txt"
                    }
                }
            };

            var p_move = new MoveParam
            {
                CurrentFolderPath    = "/",
                SourceDirectory      = "/",
                DestinationDirectory = "/",
                Overwrite            = false,
                Targets = new System.Collections.Generic.List <BaseActionTarget>
                {
                    new BaseActionTarget
                    {
                        IsFile = true,
                        Name   = "sample.txt"
                    }
                }
            };

            var p_createFolder = new CreateFolderParam
            {
                CurrentFolderPath = "/",
                Name = "new folder name"
            };

            var p_delete = new DeleteParam
            {
                CurrentFolderPath = "/",
                Targets           = new System.Collections.Generic.List <string>
                {
                    "itemNameToDelete"
                }
            };

            var p_folderStruct = new FolderStructParam
            {
                CurrentFolderPath = "/",
                FileExtensions    = new string[] { ".txt" }
            };

            var p_rename = new RenameParam
            {
                CurrentFolderPath = "/",
                Targets           = new System.Collections.Generic.List <RenameActionTarget>
                {
                    new RenameActionTarget
                    {
                        IsFile  = true,
                        Name    = "new name",
                        OldName = "old name"
                    }
                }
            };

            #endregion

            #region Results

            var r_copy = new CopyResult
            {
                Errors = new System.Collections.Generic.List <string>
                {
                    "Error message."
                }
            };

            var r_move = new MoveResult
            {
                Errors = new System.Collections.Generic.List <string>
                {
                    "Error message."
                }
            };

            var r_createFolder = new CreateFolderResult
            {
                Errors = new System.Collections.Generic.List <string>
                {
                    "Error message."
                }
            };

            var r_delete = new DeleteResult
            {
                Affected = 0,
                Errors   = new System.Collections.Generic.List <string>
                {
                    "Error message."
                }
            };

            var r_folderStruct = new FolderStructResult
            {
                Errors = new System.Collections.Generic.List <string>
                {
                    "Error message."
                },
                Files = new System.Collections.Generic.List <FileInfoProxy>
                {
                    new FileInfoProxy
                    {
                        Name       = "file.name",
                        Properties = new System.Collections.Generic.Dictionary <string, string>
                        {
                            { "Property", "Value" }
                        }
                    }
                },
                Folders = new System.Collections.Generic.List <FileInfoProxy>
                {
                    new FileInfoProxy
                    {
                        Name       = "folder name",
                        Properties = new System.Collections.Generic.Dictionary <string, string>
                        {
                            { "Property", "Value" }
                        }
                    }
                }
            };

            var r_rename = new RenameResult
            {
                Affected = 0,
                Errors   = new System.Collections.Generic.List <string>
                {
                    "Error message."
                },
                RenamedObjects = new System.Collections.Generic.List <RenameActionTarget>()
                {
                    new RenameActionTarget
                    {
                        IsFile  = true,
                        Name    = "new name",
                        OldName = "old name"
                    }
                }
            };

            #endregion

            SaveFormat("p_copy.json", p_copy);
            SaveFormat("p_move.json", p_move);
            SaveFormat("p_createFolder.json", p_createFolder);
            SaveFormat("p_delete.json", p_delete);
            SaveFormat("p_folderStruct.json", p_folderStruct);
            SaveFormat("p_rename.json", p_rename);

            SaveFormat("r_copy.json", r_copy);
            SaveFormat("r_move.json", r_move);
            SaveFormat("r_createFolder.json", r_createFolder);
            SaveFormat("r_delete.json", r_delete);
            SaveFormat("r_folderStruct.json", r_folderStruct);
            SaveFormat("r_rename.json", r_rename);
        }