예제 #1
0
    internal static void Execute(object msg, NetConnection conn, NetworkSystem networkSystem)
    {
        Msg_RC_Enter enter = msg as Msg_RC_Enter;

        if (null == enter)
        {
            return;
        }
    }
예제 #2
0
        private void UserEnterCampSight(UserInfo enter_user_info, int campid)
        {
            User enter_user = enter_user_info.CustomData as User;

            if (enter_user == null)
            {
                return;
            }
            IList <UserInfo> camp_users = m_SightManager.GetCampUsers(campid);

            foreach (UserInfo user_info in camp_users)
            {
                User user = user_info.CustomData as User;
                if (user == null)
                {
                    continue;
                }
                if (enter_user_info.GetId() != user_info.GetId())
                {
                    user.AddICareUser(enter_user);
                    //send message
                    Vector3 enter_user_pos = enter_user_info.GetMovementStateInfo().GetPosition3D();
                    ArkCrossEngineMessage.Position pos_bd0 = new ArkCrossEngineMessage.Position();
                    pos_bd0.x = enter_user_pos.X;
                    pos_bd0.z = enter_user_pos.Z;
                    Msg_RC_Enter bder = new Msg_RC_Enter();
                    bder.role_id   = enter_user.RoleId;
                    bder.hero_id   = enter_user.HeroId;
                    bder.camp_id   = enter_user.CampId;
                    bder.position  = pos_bd0;
                    bder.face_dir  = (float)enter_user_info.GetMovementStateInfo().GetFaceDir();
                    bder.is_moving = enter_user_info.GetMovementStateInfo().IsMoving;
                    bder.move_dir  = (float)enter_user_info.GetMovementStateInfo().GetMoveDir();
                    user.SendMessage(bder);

                    Msg_RC_SyncProperty propBuilder = DataSyncUtility.BuildSyncPropertyMessage(enter_user_info);
                    user.SendMessage(propBuilder);
                    DataSyncUtility.SyncBuffListToUser(enter_user_info, user);
                }
            }
        }