private void Init(UITexture ui_tex, float fov, LOADER_TYPE loader_type = LOADER_TYPE.ITEM)
    {
        //IL_0071: Unknown result type (might be due to invalid IL or missing references)
        //IL_008c: Unknown result type (might be due to invalid IL or missing references)
        //IL_00a7: Unknown result type (might be due to invalid IL or missing references)
        //IL_00c2: Unknown result type (might be due to invalid IL or missing references)
        if (model == null)
        {
            uiTexture       = ui_tex;
            uiRenderTexture = UIRenderTexture.Get(ui_tex, fov, false, -1);
            model           = Utility.CreateGameObject("UIModel", uiRenderTexture.modelTransform, uiRenderTexture.renderLayer);
            switch (loader_type)
            {
            case LOADER_TYPE.PLAYER:
                playerLoader = model.get_gameObject().AddComponent <PlayerLoader>();
                break;

            case LOADER_TYPE.NPC:
                npcLoader = model.get_gameObject().AddComponent <NPCLoader>();
                break;

            case LOADER_TYPE.ITEM:
                itemLoader = model.get_gameObject().AddComponent <ItemLoader>();
                break;

            case LOADER_TYPE.ENEMY:
                enemyLoader = model.get_gameObject().AddComponent <EnemyLoader>();
                break;
            }
            modelLayer = uiRenderTexture.renderLayer;
        }
    }
Exemple #2
0
 public void LoadPlayer(PlayerLoadInfo load_info)
 {
     //IL_002f: Unknown result type (might be due to invalid IL or missing references)
     //IL_003a: Unknown result type (might be due to invalid IL or missing references)
     //IL_004e: Unknown result type (might be due to invalid IL or missing references)
     //IL_0053: Unknown result type (might be due to invalid IL or missing references)
     //IL_0122: Unknown result type (might be due to invalid IL or missing references)
     if (playerShadow == null)
     {
         playerShadow = PlayerLoader.CreateShadow(MonoBehaviourSingleton <StageManager> .I.stageObject, false, -1, false);
         playerShadow.get_transform().set_position(parameter.playerPos + new Vector3(0f, 0.005f, 0f));
     }
     ShaderGlobal.lightProbe = false;
     if (!(playerLoader != null) || !playerLoader.loadInfo.Equals(load_info))
     {
         if (renderTexture != null)
         {
             Object.DestroyImmediate(renderTexture);
         }
         renderTexture = UIRenderTexture.Get(uiTexture, -1f, true, -1);
         renderTexture.Disable();
         renderTexture.nearClipPlane = parameter.renderTextureNearClip;
         int num = -1;
         if (MonoBehaviourSingleton <OutGameSettingsManager> .IsValid())
         {
             num = ((!MonoBehaviourSingleton <OutGameSettingsManager> .I.statusScene.isChangeHairShader) ? (-1) : MonoBehaviourSingleton <UserInfoManager> .I.userStatus.hairColorId);
         }
         playerLoader = renderTexture.modelTransform.get_gameObject().AddComponent <PlayerLoader>();
         PlayerLoader obj = playerLoader;
         int          use_hair_overlay = num;
         obj.StartLoad(load_info, renderTexture.renderLayer, PLAYER_ANIM_TYPE.GetStatus(MonoBehaviourSingleton <UserInfoManager> .I.userStatus.sex), false, false, false, false, false, true, true, true, SHADER_TYPE.NORMAL, delegate
         {
             //IL_0006: Unknown result type (might be due to invalid IL or missing references)
             //IL_0011: Unknown result type (might be due to invalid IL or missing references)
             //IL_0021: Unknown result type (might be due to invalid IL or missing references)
             //IL_0056: Unknown result type (might be due to invalid IL or missing references)
             //IL_00a2: Unknown result type (might be due to invalid IL or missing references)
             //IL_00ad: Unknown result type (might be due to invalid IL or missing references)
             //IL_00b2: Unknown result type (might be due to invalid IL or missing references)
             //IL_00ba: Unknown result type (might be due to invalid IL or missing references)
             //IL_00bf: Unknown result type (might be due to invalid IL or missing references)
             playerLoader.get_transform().set_position(parameter.playerPos);
             playerLoader.get_transform().set_eulerAngles(new Vector3(0f, (viewMode != 0) ? parameter.avatarPlayerRot : parameter.playerRot, 0f));
             if (MonoBehaviourSingleton <UserInfoManager> .IsValid())
             {
                 UserStatus userStatus = MonoBehaviourSingleton <UserInfoManager> .I.userStatus;
                 float num2            = (userStatus.sex != 0) ? parameter.playerScaleFemale : parameter.playerScaleMale;
                 playerLoader.get_transform().set_localScale(playerLoader.get_transform().get_localScale().Mul(new Vector3(num2, num2, num2)));
             }
             renderTexture.Enable(0.25f);
         }, true, use_hair_overlay);
     }
 }
Exemple #3
0
    public static StoryCharacter Initialize(int id, UITexture ui_tex, string _name, string _dir, string idle_anim)
    {
        //IL_0056: Unknown result type (might be due to invalid IL or missing references)
        //IL_00cf: Unknown result type (might be due to invalid IL or missing references)
        //IL_00e3: Expected O, but got Unknown
        //IL_00f9: Unknown result type (might be due to invalid IL or missing references)
        //IL_00fe: Expected O, but got Unknown
        NPCTable.NPCData nPCData = Singleton <NPCTable> .I.GetNPCData(_name);

        if (nPCData == null)
        {
            return(null);
        }
        UIRenderTexture uIRenderTexture = UIRenderTexture.Get(ui_tex, -1f, true, -1);

        uIRenderTexture.Disable();
        uIRenderTexture.nearClipPlane = 1f;
        uIRenderTexture.farClipPlane  = 100f;
        Transform      val            = Utility.CreateGameObject("StoryModel", uIRenderTexture.modelTransform, uIRenderTexture.renderLayer);
        StoryCharacter storyCharacter = val.get_gameObject().AddComponent <StoryCharacter>();

        storyCharacter.model     = val;
        storyCharacter.id        = id;
        storyCharacter.renderTex = uIRenderTexture;
        storyCharacter.uiTex     = ui_tex;
        storyCharacter.charaName = _name;
        storyCharacter.aliasName = string.Empty;
        storyCharacter.SetStandPosition(_dir, false);
        if (string.IsNullOrEmpty(idle_anim))
        {
            storyCharacter.idleAnim = PlayerAnimCtrl.StringToEnum(nPCData.anim);
        }
        else
        {
            storyCharacter.idleAnim = PlayerAnimCtrl.StringToEnum(idle_anim);
        }
        storyCharacter.isLoading = true;
        ModelLoaderBase modelLoaderBase = nPCData.LoadModel(val.get_gameObject(), false, false, storyCharacter.OnModelLoadComplete, false);

        storyCharacter.npcLoader = (modelLoaderBase as NPCLoader);
        storyCharacter.CollectTween(ui_tex.get_transform());
        return(storyCharacter);
    }
 public void LoadModel(int index, CharaInfo user_info)
 {
     //IL_00c9: Unknown result type (might be due to invalid IL or missing references)
     //IL_00e8: Unknown result type (might be due to invalid IL or missing references)
     //IL_00f9: Unknown result type (might be due to invalid IL or missing references)
     if (user_info == null)
     {
         if (index <= 3 && index >= 0)
         {
             userIndex = index;
         }
         DeleteModel();
         userIndex = -1;
         userInfo  = null;
     }
     else
     {
         userIndex = index;
         userInfo  = user_info;
         if (index <= 3)
         {
             UITexture componentInChildren = this.GetComponentInChildren <UITexture>();
             if (MonoBehaviourSingleton <OutGameSettingsManager> .I.questSelect.isRightDepthForward)
             {
                 componentInChildren.depth = index;
             }
             else
             {
                 componentInChildren.depth = 3 - index;
             }
             renderTexture = UIRenderTexture.Get(componentInChildren, -1f, false, -1);
             renderTexture.nearClipPlane = 4f;
             model = Utility.CreateGameObject("PlayerModel", renderTexture.modelTransform, -1);
             model.set_localPosition(new Vector3(0f, -1.1f, 8f));
             model.set_eulerAngles(new Vector3(0f, 180f, 0f));
             this.StartCoroutine(Loading());
         }
     }
 }
    private IEnumerator RunScript()
    {
        Transform camera_t = MonoBehaviourSingleton <AppMain> .I.mainCameraTransform;

        for (int cmd_row = 0; cmd_row < scriptCommands.Count; cmd_row++)
        {
            string cmd = scriptCommands[cmd_row].cmd;
            string p0  = scriptCommands[cmd_row].p0;
            string p   = scriptCommands[cmd_row].p1;
            string p2  = scriptCommands[cmd_row].p2;
            string p3  = scriptCommands[cmd_row].p3;
            string msg = scriptCommands[cmd_row].msg;
            switch (cmd)
            {
            case "WAIT":
            {
                float time = (!string.IsNullOrEmpty(p0)) ? float.Parse(p0) : 0f;
                while (true)
                {
                    yield return((object)null);

                    if (time > 0f)
                    {
                        time -= Time.get_deltaTime();
                    }
                    else if (!MonoBehaviourSingleton <ResourceManager> .I.isLoading && !InstantiateManager.isBusy && !MonoBehaviourSingleton <TransitionManager> .I.isTransing && !(charas.Find((StoryCharacter o) => o.isMoving) != null) && !cameraPosAnim.IsPlaying())
                    {
                        break;
                    }
                }
                break;
            }

            case "FADE_IN":
                eventReceiver.FadeIn();
                break;

            case "FADE_OUT":
            {
                Color c = Color.get_black();
                switch (p0)
                {
                case "BLUE":
                    c = Color.get_blue();
                    break;

                case "WHITE":
                    c = Color.get_white();
                    break;

                case "RED":
                    c = Color.get_red();
                    break;

                case "YELLOW":
                    c = Color.get_yellow();
                    break;
                }
                eventReceiver.FadeOut(c);
                break;
            }

            case "CHR_EASE":
            {
                StoryCharacter.EaseDir type = (!(p == "L")) ? StoryCharacter.EaseDir.RIGHT : StoryCharacter.EaseDir.LEFT;
                bool           forward      = (!(p2 == "IN")) ? true : false;
                StoryCharacter chara        = FindChara(p0);
                if (chara != null)
                {
                    while (chara.isLoading)
                    {
                        yield return((object)null);
                    }
                    chara.PlayTween(type, forward, null);
                }
                break;
            }

            case "EFF_SHOW":
            {
                LoadObject load_obj = effectPrefabs.Get(p0);
                if (load_obj != null)
                {
                    while (load_obj.isLoading)
                    {
                        yield return((object)null);
                    }
                    Transform      effect = ResourceUtility.Realizes(load_obj.loadedObject, effectRenderTex.modelTransform, 1);
                    Vector3        pos    = Vector3.get_zero();
                    StoryCharacter chara2 = FindChara(p);
                    if (chara2 != null)
                    {
                        pos = chara2.model.get_position();
                    }
                    Vector3 position = camera_t.get_position();
                    pos.y = position.y;
                    effect.set_position(pos);
                    if (float.TryParse(p2, out float scale))
                    {
                        effect.set_localScale(new Vector3(scale, scale, scale));
                    }
                }
                break;
            }

            case "SE_PLAY":
            {
                int se_id = int.Parse(p0);
                SoundManager.PlayOneShotUISE(se_id);
                break;
            }

            case "BGM_CHANGE":
            {
                int bgm_id = int.Parse(p0);
                MonoBehaviourSingleton <SoundManager> .I.requestBGMID = bgm_id;
                break;
            }

            case "CHR_SHOW":
            {
                StoryCharacter chara5 = FindChara(p0);
                if (chara5 != null)
                {
                    while (chara5.isLoading)
                    {
                        yield return((object)null);
                    }
                    FadeCharacter(true, chara5);
                    yield return((object)new WaitForSeconds(MonoBehaviourSingleton <OutGameSettingsManager> .I.storyScene.charaFadeTime));
                }
                break;
            }

            case "CHR_HIDE":
            {
                StoryCharacter chara7 = FindChara(p0);
                if (chara7 != null)
                {
                    while (chara7.isLoading)
                    {
                        yield return((object)null);
                    }
                    FadeCharacter(false, chara7);
                    yield return((object)new WaitForSeconds(MonoBehaviourSingleton <OutGameSettingsManager> .I.storyScene.charaFadeTime));
                }
                break;
            }

            case "CHR_ROT":
            {
                StoryCharacter chara8 = FindChara(p0);
                if (chara8 != null)
                {
                    float angle;
                    if (string.IsNullOrEmpty(p))
                    {
                        chara8.RotateDefault();
                    }
                    else if (p == "F")
                    {
                        chara8.RotateFront();
                    }
                    else if (float.TryParse(p, out angle))
                    {
                        chara8.RotateAngle(angle);
                    }
                }
                break;
            }

            case "CHR_POSE":
            {
                StoryCharacter chara9 = FindChara(p0);
                if (chara9 != null)
                {
                    chara9.RequestPose(p);
                }
                break;
            }

            case "CHR_STAND":
            {
                StoryCharacter chara10 = FindChara(p0);
                if (chara10 != null)
                {
                    chara10.SetStandPosition(p, true);
                }
                break;
            }

            case "CHR_SCALE":
            {
                StoryCharacter chara11 = FindChara(p0);
                if (chara11 != null)
                {
                    Vector3 scale2 = new Vector3
                    {
                        x = float.Parse(p),
                        y = float.Parse(p),
                        z = float.Parse(p)
                    };
                    chara11.SetModelScale(scale2);
                }
                break;
            }

            case "CHR_FACE":
            {
                StoryCharacter chara12 = FindChara(p0);
                if (chara12 != null)
                {
                    chara12.RequestFace(p, p2);
                }
                break;
            }

            case "CAM_SET":
            {
                int camIndex2 = int.Parse(p0);
                if (0 <= camIndex2 && cameraPositions.Length > camIndex2)
                {
                    float x = float.Parse(p);
                    float y = float.Parse(p2);
                    float z = float.Parse(p3);
                    cameraPositions[camIndex2] = new Vector3(x, y, z);
                }
                break;
            }

            case "CAM_MOV":
            {
                int camIndex = int.Parse(p0);
                if (0 <= camIndex && cameraPositions.Length > camIndex)
                {
                    ((InterpolatorBase <Vector3>)cameraPosAnim).Set(0.3f, cameraPositions[camIndex], null, default(Vector3), null);
                    cameraPosAnim.Play();
                }
                break;
            }

            case "CAM_PAN":
            {
                StoryCharacter chara6 = FindChara(p0);
                if (chara6 != null)
                {
                    int charaShowCount = GetCharaShowCount();
                    switch (charaShowCount)
                    {
                    case 1:
                    {
                        Vector3 position2 = chara6.model.get_position();
                        Vector3 pos3;
                        pos3.x = position2.x;
                        Transform chara_neck = (!(p == "F")) ? Utility.Find(chara6.model, "Neck") : Utility.Find(chara6.model, "Spine01");
                        if (chara_neck != null)
                        {
                            Vector3 position3 = chara_neck.get_position();
                            pos3.y = position3.y;
                        }
                        else
                        {
                            pos3.y = initCameraPos.y;
                        }
                        if (p == "N")
                        {
                            pos3.z = MonoBehaviourSingleton <OutGameSettingsManager> .I.storyScene.cameraPanNearZ;
                        }
                        else if (p == "F")
                        {
                            pos3.z = MonoBehaviourSingleton <OutGameSettingsManager> .I.storyScene.cameraPanFarZ;
                        }
                        else
                        {
                            pos3.z = MonoBehaviourSingleton <OutGameSettingsManager> .I.storyScene.cameraPanNormalZ;
                        }
                        ((InterpolatorBase <Vector3>)cameraPosAnim).Set(0.3f, pos3, null, default(Vector3), null);
                        cameraPosAnim.Play();
                        break;
                    }

                    case 2:
                        ((InterpolatorBase <Vector3>)cameraPosAnim).Set(0.3f, MonoBehaviourSingleton <OutGameSettingsManager> .I.storyScene.duoCameraPos, null, default(Vector3), null);
                        cameraPosAnim.Play();
                        break;

                    default:
                        if (3 <= charaShowCount)
                        {
                            ((InterpolatorBase <Vector3>)cameraPosAnim).Set(0.3f, MonoBehaviourSingleton <OutGameSettingsManager> .I.storyScene.trioCameraPos, null, default(Vector3), null);
                            cameraPosAnim.Play();
                        }
                        break;
                    }
                }
                else
                {
                    Vector3 pos2;
                    pos2.x = 0f;
                    pos2.y = initCameraPos.y;
                    pos2.z = 0f;
                    ((InterpolatorBase <Vector3>)cameraPosAnim).Set(0.3f, pos2, null, default(Vector3), null);
                    cameraPosAnim.Play();
                }
                break;
            }

            case "CHR_ALIAS":
            {
                StoryCharacter chara4 = FindChara(p0);
                if (chara4 != null)
                {
                    chara4.SetAliasName(p);
                }
                break;
            }

            case "MSG":
            {
                MSG_TYPE msg_type = MSG_TYPE.NORMAL;
                if (p == "M" || p == "MONOLOGUE")
                {
                    msg_type = MSG_TYPE.MONOLOGUE;
                }
                waitMessage = true;
                StoryCharacter chara3 = FindChara(p0);
                msg = GetReplacedText(msg);
                eventReceiver.AddMessage((!(chara3 != null)) ? p0 : chara3.displayName, msg, (chara3 != null) ? chara3.dir : POS.NONE, msg_type);
                if (!string.IsNullOrEmpty(p2))
                {
                    int voice_id = int.Parse(p2);
                    SoundManager.PlayVoice(voice_id, 1f, 0u, null, null);
                }
                break;
            }

            case "BG":
            {
                bool         isFirstLoad = false;
                LoadingQueue load_queue  = new LoadingQueue(this);
                if (locationRednerTex != null)
                {
                    locationRednerTex.Release();
                }
                else
                {
                    isFirstLoad = true;
                }
                int loc_image_id = int.Parse(p0);
                int loc_sky_id   = int.Parse(p);
                ResourceManager.enableCache = false;
                LoadObject lo_loc_image = (loc_image_id <= 0) ? null : load_queue.Load(RESOURCE_CATEGORY.STORY_LOCATION_IMAGE, ResourceName.GetStoryLocationImage(loc_image_id), false);
                LoadObject lo_loc_sky   = (loc_sky_id <= 0) ? null : load_queue.Load(RESOURCE_CATEGORY.STORY_LOCATION_SKY, ResourceName.GetStoryLocationSky(loc_sky_id), false);
                yield return((object)load_queue.Wait());

                ResourceManager.enableCache = true;
                locationRednerTex           = UIRenderTexture.Get(locationTex, -1f, false, 0);
                locationRednerTex.Disable();
                locationRednerTex.orthographicSize = (float)locationTex.height * 0.5f * 0.01f;
                locationRednerTex.modelTransform.set_position(new Vector3(0f, 0f, 10f));
                locationRoot = Utility.CreateGameObject("LocationRoot", locationRednerTex.modelTransform, locationRednerTex.renderLayer);
                locationRoot.set_localPosition(new Vector3(0f, 0f, 3f));
                locationRoot.set_localScale(new Vector3(0.01f, 0.01f, 1f));
                if (lo_loc_image != null)
                {
                    locationImageRoot = Utility.CreateGameObject("LocationImageRoot", locationRoot, locationRednerTex.renderLayer);
                    locationImage     = ResourceUtility.Realizes(lo_loc_image.loadedObject, locationImageRoot, locationRednerTex.renderLayer);
                }
                if (lo_loc_sky != null)
                {
                    locationSky = ResourceUtility.Realizes(lo_loc_sky.loadedObject, locationRoot, locationRednerTex.renderLayer);
                    locationSky.set_localPosition(new Vector3(0f, 0f, 1f));
                }
                locationRednerTex.Enable(0.25f);
                if (isFirstLoad)
                {
                    eventReceiver.EndLoadFirstBG();
                }
                break;
            }
            }
            while (waitMessage)
            {
                yield return((object)null);
            }
        }
        isRunning = false;
        FocusChara(null);
        eventReceiver.EndStory();
    }
    private IEnumerator LoadScriptResources()
    {
        Transform camera_t = MonoBehaviourSingleton <AppMain> .I.mainCameraTransform;

        initCameraPos = camera_t.get_position();
        cameraPosAnim.Set(initCameraPos);
        LoadingQueue load_queue = new LoadingQueue(this);

        for (int cmd_row = 0; cmd_row < scriptCommands.Count; cmd_row++)
        {
            string cmd = scriptCommands[cmd_row].cmd;
            string p4  = scriptCommands[cmd_row].p0;
            string p3  = scriptCommands[cmd_row].p1;
            string p2  = scriptCommands[cmd_row].p2;
            switch (cmd)
            {
            case "EFF_SHOW":
            {
                LoadObject load_obj = load_queue.LoadEffect(RESOURCE_CATEGORY.EFFECT_ACTION, p4, false);
                effectPrefabs.Add(p4, load_obj);
                if (effectRenderTex == null)
                {
                    effectRenderTex = UIRenderTexture.Get(effectTex, -1f, true, 1);
                    effectRenderTex.Enable(0.25f);
                }
                break;
            }

            case "SE_PLAY":
                try
                {
                    int se_id = int.Parse(p4);
                    load_queue.CacheSE(se_id, null);
                }
                catch
                {
                    Log.Error(LOG.EXCEPTION, "{0}コマンドのSEIDに整数ではない値が指定されています。", cmd);
                }
                break;

            case "MSG":
                if (!string.IsNullOrEmpty(p2))
                {
                    try
                    {
                        int voice_id = int.Parse(p2);
                        load_queue.CacheVoice(voice_id, null);
                    }
                    catch
                    {
                        Log.Error(LOG.EXCEPTION, "{0}コマンドのボイスIDに整数ではない値が指定されています。", cmd);
                    }
                }
                break;

            case "CHR_LOAD":
            {
                int id = -1;
                for (int i = 0; (float)i < 4f; i++)
                {
                    if (charas.Find((StoryCharacter o) => o.id == ((_003CLoadScriptResources_003Ec__IteratorC1) /*Error near IL_02d5: stateMachine*/)._003Ci_003E__11) == null)
                    {
                        id = i;
                        break;
                    }
                }
                if (id != -1)
                {
                    UITexture ui_tex = eventReceiver.GetModelUITexture(id);
                    if (ui_tex != null)
                    {
                        StoryCharacter chara = StoryCharacter.Initialize(id, ui_tex, p4, p3, p2);
                        if (chara != null)
                        {
                            charas.Add(chara);
                        }
                    }
                }
                break;
            }
            }
        }
        while (MonoBehaviourSingleton <ResourceManager> .I.isLoading || InstantiateManager.isBusy)
        {
            yield return((object)null);
        }
        isLoading = false;
    }
Exemple #7
0
    private IEnumerator DoInitialize()
    {
        uint         regionId              = MonoBehaviourSingleton <FieldManager> .I.currentMapData.regionId;
        LoadingQueue loadQueue             = new LoadingQueue(this);
        LoadObject   loadedExploreMapFrame = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreMapFrame", false);
        LoadObject   loadedExploreMap      = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreMap_" + regionId.ToString("D3"), false);
        LoadObject   loadedPlayerMarker    = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExplorePlayerMarker", false);
        LoadObject   loadedCircle          = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreCircle", false);
        LoadObject   loadedBattleIcon      = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreBattleMarker", false);
        LoadObject   loadedFootprint       = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreTraceMarker", false);
        LoadObject   loadedFindIcon        = null;
        LoadObject   loadedDirSonar        = null;
        LoadObject   loadedSonarTexture    = null;

        if (openType == OPEN_MAP_TYPE.SONAR)
        {
            loadedFindIcon     = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreExclametionMarker", false);
            loadedDirSonar     = loadQueue.Load(RESOURCE_CATEGORY.EFFECT_UI, "ef_ui_sonar_02", false);
            loadedSonarTexture = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ExploreSonarTexture", false);
            CacheAudio(loadQueue);
        }
        if (loadQueue.IsLoading())
        {
            yield return((object)loadQueue.Wait());
        }
        Transform exploreMapFrame = ResourceUtility.Realizes(loadedExploreMapFrame.loadedObject, base._transform, -1);
        Transform exploreMap      = ResourceUtility.Realizes(loadedExploreMap.loadedObject, exploreMapFrame, -1);
        Transform map             = exploreMap.FindChild("Map");

        map.get_gameObject().SetActive(true);
        mapRoot_ = exploreMap.GetComponent <ExploreMapRoot>();
        ExploreMapLocation[] locations = mapRoot_.locations;
        for (int k = 0; k < locations.Length; k++)
        {
            Transform active   = locations[k].get_transform().FindChild("ExploreSpotActive");
            Transform inactive = locations[k].get_transform().FindChild("ExploreSpotInactive");
            Transform sonar    = locations[k].get_transform().FindChild("ExploreSpotSonar");
            active.get_gameObject().SetActive(true);
            inactive.get_gameObject().SetActive(false);
            List <FieldMapTable.FieldGimmickPointTableData> gimmicks = Singleton <FieldMapTable> .I.GetFieldGimmickPointListByMapID((uint)locations[k].mapId);

            if (gimmicks != null && sonar != null)
            {
                for (int i = 0; i < gimmicks.Count; i++)
                {
                    if (gimmicks[i].gimmickType == FieldMapTable.FieldGimmickPointTableData.GIMMICK_TYPE.SONAR)
                    {
                        active.get_gameObject().SetActive(false);
                        inactive.get_gameObject().SetActive(false);
                        sonar.get_gameObject().SetActive(true);
                    }
                }
            }
        }
        mapRoot_.UpdatePortals(false);
        ExploreMapFrame frame = exploreMapFrame.GetComponent <ExploreMapFrame>();

        frame.SetMap(mapRoot_);
        RegionTable.Data regionData = Singleton <RegionTable> .I.GetData(regionId);

        if (regionData != null)
        {
            frame.SetCaption(regionData.regionName);
        }
        for (int j = 0; j < playerMarkers_.Length; j++)
        {
            playerMarkers_[j] = ResourceUtility.Realizes(loadedPlayerMarker.loadedObject, exploreMapFrame, -1);
            ExplorePlayerMarker marker = playerMarkers_[j].GetComponent <ExplorePlayerMarker>();
            if (null != marker)
            {
                marker.SetIndex(j);
            }
            marker.get_gameObject().SetActive(false);
        }
        mapRoot_.SetMarkers(playerMarkers_, false);
        ExploreStatus.TraceInfo[] traceHistory = MonoBehaviourSingleton <QuestManager> .I.GetBossTraceHistory();

        if (traceHistory != null && traceHistory.Length > 0)
        {
            Transform lastFootprint          = ResourceUtility.Realizes(loadedFootprint.loadedObject, exploreMap, -1);
            ExploreStatus.TraceInfo lastInfo = traceHistory[traceHistory.Length - 1];
            Vector3 lastPos = mapRoot_.GetPositionOnMap(lastInfo.mapId);
            lastFootprint.set_localPosition(new Vector3(lastPos.x + 22f, lastPos.y + 33f, lastPos.z));
            lastFootprint.get_gameObject().SetActive(true);
            if (traceHistory.Length > 1)
            {
                Transform lastSecondFootprint          = ResourceUtility.Realizes(loadedFootprint.loadedObject, exploreMap, -1);
                ExploreStatus.TraceInfo lastSecondInfo = traceHistory[traceHistory.Length - 2];
                Vector3 lastSecondPos = mapRoot_.GetPositionOnMap(lastSecondInfo.mapId);
                lastSecondFootprint.set_localPosition(new Vector3(lastSecondPos.x + 22f, lastSecondPos.y + 33f, lastSecondPos.z));
                lastSecondFootprint.get_gameObject().SetActive(true);
            }
        }
        redCircle = ResourceUtility.Realizes(loadedCircle.loadedObject, exploreMap, -1);
        redCircle.set_localScale(new Vector3(0.6f, 0.6f, 0.6f));
        battleIcon = ResourceUtility.Realizes(loadedBattleIcon.loadedObject, exploreMap, -1);
        if (mapRoot_.showBattleMarker && openType != OPEN_MAP_TYPE.SONAR)
        {
            int bossMapId = MonoBehaviourSingleton <QuestManager> .I.GetExploreBossAppearMapId();

            Vector3 pos = mapRoot_.GetPositionOnMap(bossMapId);
            redCircle.set_localPosition(pos);
            battleIcon.set_localPosition(new Vector3(pos.x + 22f, pos.y + 33f, pos.z));
            TweenAlpha tweenAlpha = redCircle.GetComponent <TweenAlpha>();
            if (null != tweenAlpha)
            {
                tweenAlpha.from = tweenAlpha.to;
            }
            redCircle.get_gameObject().SetActive(true);
            battleIcon.get_gameObject().SetActive(true);
        }
        else
        {
            redCircle.get_gameObject().SetActive(false);
            battleIcon.get_gameObject().SetActive(false);
        }
        if (openType == OPEN_MAP_TYPE.SONAR)
        {
            tapToSkip = Utility.FindChild(exploreMapFrame, "TaptoSkip");
            Transform backGround = Utility.FindChild(exploreMapFrame, "BG");
            backGround.get_gameObject().SetActive(true);
            bgEventListener = UIEventListener.Get(backGround.get_gameObject());
            Transform close = Utility.FindChild(exploreMapFrame, "CaptionRoot/Close");
            if (close != null)
            {
                close.get_gameObject().SetActive(false);
            }
            findIcon = ResourceUtility.Realizes(loadedFindIcon.loadedObject, exploreMap, -1);
            findIcon.get_gameObject().SetActive(false);
            sonarTexture = ResourceUtility.Realizes(loadedSonarTexture.loadedObject, exploreMap, -1);
            UITexture       uiTex         = sonarTexture.get_gameObject().GetComponentInChildren <UITexture>();
            UIRenderTexture renderTexture = UIRenderTexture.Get(uiTex, mapRoot_.GetSonarFov(), false, -1);
            renderTexture.modelTransform.set_localPosition(new Vector3(0f, 0f, 150f));
            sonarDirEffect = ResourceUtility.Realizes(loadedDirSonar.loadedObject, renderTexture.modelTransform, renderTexture.renderLayer);
            sonarDirEffect.set_localScale(Vector2.op_Implicit(mapRoot_.GetSonarScale()));
            sonarDirEffect.get_gameObject().SetActive(false);
            renderTexture.Enable(0.25f);
            renderTexture.renderCamera.set_backgroundColor(mapRoot_.sonarBackGroundColor);
            mapRoot_.SetDirectionSonar(sonarDirEffect.get_gameObject());
        }
        base.Initialize();
    }