using Snxxz.UI;
|
using System;
|
using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
|
public class ClientTreasureDungeon
|
{
|
public const int Client_DataMap = 4000;
|
|
public static int challengeTreasureId = 0;
|
|
public static void RequestEnter(int treasureId)
|
{
|
challengeTreasureId = treasureId;
|
|
var hero = PlayerDatas.Instance.hero;
|
if (hero != null)
|
{
|
hero.StopAll();
|
}
|
|
MapTransferUtility.Instance.Clear();
|
ClientDungeonStageUtility.SetClientDungeon(true, (ushort)Client_DataMap);
|
ClientDungeonStageUtility.RequestStartClientDungeon(0, 0);
|
StageLoad.Instance.PushSceneLoadCommand(new StageLoad.StageLoadCommand()
|
{
|
toMapId = Client_DataMap,
|
toLineId = 0,
|
needEmpty = true,
|
needLoadResource = true,
|
serverType = ServerType.Main,
|
isClientLoadMap = true
|
});
|
|
PlayerDatas.Instance.baseData.mainServerMapIdRecord = PlayerDatas.Instance.baseData.MapID;
|
PlayerDatas.Instance.baseData.MapID = (ushort)Client_DataMap;
|
}
|
|
public static void RequestExit()
|
{
|
ClientDungeonStageUtility.SetClientDungeon(false, 0);
|
PlayerDatas.Instance.extersion.pkState = 0;
|
ModelCenter.Instance.GetModel<DungeonModel>().ResetBufData();
|
|
StageLoad.Instance.onStageLoadFinish -= OnStageLoadFinish;
|
StageLoad.Instance.onStageLoadFinish += OnStageLoadFinish;
|
|
PlayerDatas.Instance.baseData.MapID = PlayerDatas.Instance.baseData.mainServerMapIdRecord;
|
StageLoad.Instance.PushSceneLoadCommand(new StageLoad.StageLoadCommand()
|
{
|
toMapId = PlayerDatas.Instance.baseData.MapID,
|
toLineId = 0,
|
needEmpty = true,
|
needLoadResource = true,
|
serverType = ServerType.Main,
|
isClientLoadMap = true,
|
refreshPlayerDatas = true
|
});
|
}
|
|
private static void OnStageLoadFinish()
|
{
|
ClientDungeonStageUtility.RequestExitClientDungeon();
|
StageLoad.Instance.onStageLoadFinish -= OnStageLoadFinish;
|
}
|
}
|