コード例 #1
0
    //移动人物
    public void MoveRole(RoleModel roleModel)
    {
        //判断当前游戏是否在进行,同时是否有对象正在移动
        if ((!isRuning) || actionManager.IsMoving())
        {
            return;
        }

        Vector3 destination, mid_destination;

        if (roleModel.isInBoat)
        {
            //若人在船上,则将其移向岸上
            if (boatController.GetBoatModel().isRight)
            {
                destination = rightLandController.AddRole(roleModel);
            }
            else
            {
                destination = leftLandController.AddRole(roleModel);
            }
            if (roleModel.role.transform.localPosition.y > destination.y)
            {
                mid_destination = new Vector3(destination.x, roleModel.role.transform.localPosition.y, destination.z);
            }
            else
            {
                mid_destination = new Vector3(roleModel.role.transform.localPosition.x, destination.y, destination.z);
            }
            actionManager.MoveRole(roleModel.role, mid_destination, destination, 5);
            roleModel.isRight = boatController.GetBoatModel().isRight;
            boatController.RemoveRole(roleModel);
        }
        else
        {
            //若人在岸上,则将其移向船
            if (boatController.GetBoatModel().isRight == roleModel.isRight)
            {
                if (roleModel.isRight)
                {
                    rightLandController.RemoveRole(roleModel);
                }
                else
                {
                    leftLandController.RemoveRole(roleModel);
                }
                destination = boatController.AddRole(roleModel);
                if (roleModel.role.transform.localPosition.y > destination.y)
                {
                    mid_destination = new Vector3(destination.x, roleModel.role.transform.localPosition.y, destination.z);
                }
                else
                {
                    mid_destination = new Vector3(roleModel.role.transform.localPosition.x, destination.y, destination.z);
                }
                actionManager.MoveRole(roleModel.role, mid_destination, destination, 5);
            }
        }
    }
コード例 #2
0
    private BoatController boatRoleController;                                  //船控制器

    //导入资源
    public void LoadResources()
    {
        //初始化
        roleModelControllers = new RoleModelController[6];
        for (int i = 0; i < 6; i++)
        {
            roleModelControllers[i] = new RoleModelController();
            roleModelControllers[i].CreateRole(PositionModel.roles[i], i < 3 ? true : false, i);
        }

        leftLandRoleController = new LandModelController();
        leftLandRoleController.CreateLand("left_land", PositionModel.left_land);
        rightLandRoleController = new LandModelController();
        rightLandRoleController.CreateLand("right_land", PositionModel.right_land);
        foreach (RoleModelController roleModelController in roleModelControllers)
        {
            roleModelController.GetRoleModel().role.transform.localPosition = leftLandRoleController.AddRole(roleModelController.GetRoleModel());
        }
        riverModel         = new RiverModel(PositionModel.river);
        boatRoleController = new BoatController();
        boatRoleController.CreateBoat(PositionModel.left_boat);
        moveController = new MoveController();
        isRuning       = true;
        time           = 60;
    }
コード例 #3
0
 //导入资源
 public void LoadResources()
 {
     //人物初始化
     roleControllers = new RoleModelController[6];
     for (int i = 0; i < 6; i++)
     {
         roleControllers[i] = new RoleModelController();
         roleControllers[i].CreateRole(PositionModel.roles[i], i < 3 ? true : false, i);
     }
     //左右岸初始化
     leftLandController = new LandModelController();
     leftLandController.CreateLand("left_land", PositionModel.left_land);
     rightLandController = new LandModelController();
     rightLandController.CreateLand("right_land", PositionModel.right_land);
     //将人物添加并定位至左岸
     foreach (RoleModelController roleModelController in roleControllers)
     {
         roleModelController.GetRoleModel().role.transform.localPosition = leftLandController.AddRole(roleModelController.GetRoleModel());
     }
     //河流Model实例化
     riverModel = new RiverModel(PositionModel.river);
     //船初始化
     boatController = new BoatModelController();
     boatController.CreateBoat(PositionModel.left_boat);
     //移动控制器实例化
     //moveController = new MoveController();
     //数据初始化
     isRuning = true;
     time     = 60;
 }
コード例 #4
0
 public void MoveRole(RoleModel roleModel)
 {
     if (!isRuning || moveController.GetIsMoving())
     {
         return;
     }
     if (roleModel.isInBoat)
     {
         roleModel.isRight = boatRoleController.GetBoatModel().isRight;
         moveController.SetMove(landRoleController.AddRole(roleModel), roleModel.role);
         boatRoleController.RemoveRole(roleModel);
     }
     else if (boatRoleController.GetBoatModel().isRight == roleModel.isRight)
     {
         landRoleController.RemoveRole(roleModel);
         moveController.SetMove(boatRoleController.AddRole(roleModel), roleModel.role);
     }
 }
コード例 #5
0
    //移动人物
    public void MoveRole(RoleModel roleModel)
    {
        //判断当前游戏是否在进行,同时是否有对象正在移动
        if ((!isRuning) || moveController.GetIsMoving())
        {
            return;
        }

        if (roleModel.isInBoat)
        {
            //若人在船上,则将其移向岸上
            if (boatRoleController.GetBoatModel().isRight)
            {
                moveController.SetMove(rightLandRoleController.AddRole(roleModel), roleModel.role);
            }
            else
            {
                moveController.SetMove(leftLandRoleController.AddRole(roleModel), roleModel.role);
            }
            roleModel.isRight = boatRoleController.GetBoatModel().isRight;
            boatRoleController.RemoveRole(roleModel);
        }
        else
        {
            //若人在岸上,则将其移向船
            if (boatRoleController.GetBoatModel().isRight == roleModel.isRight)
            {
                if (roleModel.isRight)
                {
                    rightLandRoleController.RemoveRole(roleModel);
                }
                else
                {
                    leftLandRoleController.RemoveRole(roleModel);
                }
                moveController.SetMove(boatRoleController.AddRole(roleModel), roleModel.role);
            }
        }
    }
コード例 #6
0
    //移动人物,判断当前游戏是否在进行,同时是否有对象正在移动,然后判断人在船上还是岸上,再移动
    public void MoveRole(RoleModel roleModel)
    {
        //
        if ((!isRuning) || moveController.GetIsMoving())
        {
            return;
        }

        if (roleModel.isInBoat)
        {
            if (boatRoleController.GetBoatModel().isRight)
            {
                moveController.SetMove(rightLandRoleController.AddRole(roleModel), roleModel.role);
            }
            else
            {
                moveController.SetMove(leftLandRoleController.AddRole(roleModel), roleModel.role);
            }
            roleModel.isRight = boatRoleController.GetBoatModel().isRight;
            boatRoleController.RemoveRole(roleModel);
        }
        else
        {
            if (boatRoleController.GetBoatModel().isRight == roleModel.isRight)
            {
                if (roleModel.isRight)
                {
                    rightLandRoleController.RemoveRole(roleModel);
                }
                else
                {
                    leftLandRoleController.RemoveRole(roleModel);
                }
                moveController.SetMove(boatRoleController.AddRole(roleModel), roleModel.role);
            }
        }
    }
コード例 #7
0
 // loading resources for the first scence
 public void LoadResources()
 {
     landRoleController = new LandModelController();
     landRoleController.CreateLand();
     roleModelControllers = new RoleModelController[6];
     for (int i = 0; i < 6; i++)
     {
         roleModelControllers[i] = new RoleModelController();
         roleModelControllers[i].CreateRole(i < 3? true:false, i);
         roleModelControllers[i].GetRoleModel().role.transform.localPosition = landRoleController.AddRole(roleModelControllers[i].GetRoleModel());
     }
     boatRoleController = new BoatController();
     boatRoleController.CreateBoat();
     moveController = new MoveController();
     leftPriestNum  = leftDevilNum = 3;
     rightPriestNum = rightDevilNum = 0;
     isRuning       = true;
 }