static int _m_IsCanOpenMinimap_xlua_st_(RealStatePtr L) { try { { bool __cl_gen_ret = MiniMapHelp.IsCanOpenMinimap( ); LuaAPI.lua_pushboolean(L, __cl_gen_ret); return(1); } } catch (System.Exception __gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + __gen_e)); } }
public void CreateTranspotPoint() { var list = MiniMapHelp.GetInstanceAllTrasnspot(m_CurSceneId); for (int i = 0; i < list.Count; i++) { var info = list[i]; var rect = GetItem(m_TranspotPoint); Vector3 vect = new Vector3((info.Position.x - minX) / uiScalex, (info.Position.z - minY) / uiScaley, 0); rect.localPosition = vect; Button btn = rect.GetComponent <Button>(); btn.onClick.RemoveAllListeners(); btn.onClick.AddListener(() => { OnClickTranspotPoint(info); }); mTranspotListPointObjs.Add(rect.gameObject); } }
static int __CreateInstance(RealStatePtr L) { ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L); try { if (LuaAPI.lua_gettop(L) == 1) { MiniMapHelp __cl_gen_ret = new MiniMapHelp(); translator.Push(L, __cl_gen_ret); return(1); } } catch (System.Exception __gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + __gen_e)); } return(LuaAPI.luaL_error(L, "invalid arguments to MiniMapHelp constructor!")); }
static int _m_isMapOpen_xlua_st_(RealStatePtr L) { try { { uint mapid = LuaAPI.xlua_touint(L, 1); bool __cl_gen_ret = MiniMapHelp.isMapOpen(mapid); LuaAPI.lua_pushboolean(L, __cl_gen_ret); return(1); } } catch (System.Exception __gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + __gen_e)); } }
/// <summary> /// 创建挂机点怪物和特殊怪物(世界boss)位置的UI物体 /// </summary> public void CreateMonsterPoint() { var monster_infos = MiniMapHelp.GetInstanceAllNormalMonster(m_CurSceneId); WorldBossList.Clear(); for (int i = 0; i < monster_infos.Count; i++) { var info = monster_infos[i]; var rect = GetItem(m_MonsterPoint); Vector3 vect = new Vector3((info.Position.x - minX) / uiScalex, (info.Position.z - minY) / uiScaley, 0); rect.localPosition = vect; Text nameText = UIHelper.FindChild(rect.gameObject, "NameText").GetComponent <Text>(); var monster1 = UIHelper.FindChild(rect.gameObject, "MonsterType1"); var monster2 = UIHelper.FindChild(rect.gameObject, "MonsterType2"); var monster3 = UIHelper.FindChild(rect.gameObject, "MonsterType3"); var bossDead = UIHelper.FindChild(rect.gameObject, "BossDead"); Button moneterBtn = rect.GetComponent <Button>(); moneterBtn.onClick.RemoveAllListeners(); moneterBtn.onClick.AddListener(() => { OnClickMonsterPoint(info); }); monster1.SetActive(false); monster2.SetActive(false); monster3.SetActive(false); bossDead.SetActive(false); string blackLv = ActorHelper.GetColorLvDiff(info.ActorId, 1); switch (info.PointType) { case MiniMapPointType.Monster: case MiniMapPointType.EliteMonster: monster2.SetActive(true); nameText.text = info.BlackName; break; case MiniMapPointType.Boss: monster3.SetActive(true); WorldBossList.Add(info.Id, info); nameText.text = string.Format("{0}\n{1}", info.BlackName, blackLv); break; } mMonsterListPointObjs.Add(info.Id, rect.gameObject); } }
private void OnMainMapLoad(CEventBaseArgs args) { InstanceOpenState.Clear(); List <Dictionary <string, string> > data_world = DBManager.Instance.QuerySqliteTable <string>(GlobalConfig.DBFile, "data_world"); for (int i = 0; i < data_world.Count; i++) { Dictionary <string, string> data = data_world[i]; uint mapId = DBTextResource.ParseUI_s(data["map_id"], 0); var instanceInfo = DBInstance.Instance.GetInstanceInfo(mapId); if (instanceInfo != null) { InstaneOpenState state = InstaneOpenState.NotOpen; bool isOpen = MiniMapHelp.isMapOpen(mapId); if (isOpen) { state = InstaneOpenState.Open; } InstanceOpenState.Add(mapId, state); } } }
public void CreateNpcPoint() { var List = MiniMapHelp.GetInstanceAllNpc(m_CurSceneId); for (int i = 0; i < List.Count; i++) { var info = List[i]; uint state = NpcHelper.GetNpcTaskState((uint)info.Id, m_CurSceneId);//npcId if (IsDisplayNpcByTaskState(state)) { var rect = GetItem(m_NpcPoint); UpdateOneNpc(state, rect.gameObject); Vector3 vect = new Vector3((info.Position.x - minX) / uiScalex, (info.Position.z - minY) / uiScaley, 0); rect.localPosition = vect; Text nameText = UIHelper.FindChild(rect.gameObject, "NameText").GetComponent <Text>(); nameText.text = info.BlackName; Button btn = rect.GetComponent <Button>(); btn.onClick.RemoveAllListeners(); btn.onClick.AddListener(() => { OnClickNpcPoint(info); }); mNpcListPointObjs.Add((uint)info.Id, rect.gameObject); } } }
public override void EnableBehaviour(bool isEnable) { base.EnableBehaviour(isEnable); m_bNetAnswer = false; m_CurSceneId = SceneHelp.Instance.CurSceneID; if (isEnable) // 显示 { uint pos_tag = 0; // 指定的挂机点位置Tag if (Window != null && Window.ShowParam != null) { if (Window.ShowParam.Length >= 1) { if ((bool)Window.ShowParam[0] == true) // 标识需要通过离线挂机表来寻找合适的场景和挂机点 { var hang_info = DBHang.Instance.GetSuitableHangInfo(); if (hang_info != null) { m_CurSceneId = hang_info.Dungeon; pos_tag = hang_info.GetRandomTag().Id; } } } } DBInstance.InstanceInfo instanceInfo = DBInstance.Instance.GetInstanceInfo(m_CurSceneId); if (instanceInfo != null) { minX = instanceInfo.mMinPos.x; minY = instanceInfo.mMinPos.y; uiScalex = instanceInfo.mMiniMapWidth / mMiniMapRawImage.rectTransform.rect.width; uiScaley = instanceInfo.mMiniMapHeight / mMiniMapRawImage.rectTransform.rect.height; LoadMiniMapTexture(instanceInfo.mMiniMapName); } LocalCenter(); ClearPoint(); CreateMonsterPoint(); CreateTranspotPoint(); CreateNpcPoint(); if (TargetPathManager.Instance.IsNavigating) { CreatePathPoint(); } UpdateRequsetTeam(null); UpdateWorldBossState(null); bool isInCurScene = SceneHelp.Instance.CurSceneID.Equals(m_CurSceneId); m_LocalPlayerPoint.SetActive(isInCurScene); m_LocalPlayerPoint.transform.SetAsLastSibling(); MonsterTipsTrigger.transform.SetAsLastSibling(); // 寻找指定的挂机点 var monster_infos = MiniMapHelp.GetInstanceAllNormalMonster(m_CurSceneId); for (int i = 0; i < monster_infos.Count; i++) { var info = monster_infos[i]; if (info == null) { continue; } if (info.Id == pos_tag) { OnClickMonsterPoint(info); break; } } } else// 隐藏 { ClearPathPoint(); ClearPoint(); MonsterTipsTrigger.gameObject.SetActive(false); } }
static int _m_GetInstanceAllNpc_xlua_st_(RealStatePtr L) { ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L); try { { uint instance_id = LuaAPI.xlua_touint(L, 1); System.Collections.Generic.List <MiniMapPointInfo> __cl_gen_ret = MiniMapHelp.GetInstanceAllNpc(instance_id); translator.Push(L, __cl_gen_ret); return(1); } } catch (System.Exception __gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + __gen_e)); } }
public void UpdateState(Task mainTask) { LocalPlayerLevel = LocalPlayerManager.Instance.Level; if (mainTask != null && mainTask.Define != null) { MaintaskId = mainTask.Define.Id; } foreach (var kv in mMapGoDic) { DBInstance.InstanceInfo instanceInfo = DBInstance.Instance.GetInstanceInfo((uint)kv.Key); if (instanceInfo != null) { // 设置区域名字 Text name_text = UIHelper.FindChild(kv.Value, "NameText").GetComponent <Text>(); string inst_name = instanceInfo.mName; StringBuilder align_name = new StringBuilder(inst_name.Length * 2); foreach (var c in inst_name) { align_name.Append(c); align_name.Append('\n'); } name_text.text = align_name.ToString(); bool isOpen = MiniMapHelp.isMapOpen((uint)kv.Key); // 背景图片 var bgImage = kv.Value.GetComponent <Image>(); // 设置开启等级信息 uint need_level = InstanceHelper.GetInstanceNeedRoleLevel((uint)kv.Key); Text level_text = UIHelper.FindChild(kv.Value, "LevelText").GetComponent <Text>(); string peakLvDesc = GetPeakLvDesc(need_level); if (!isOpen) { peakLvDesc = "<color=#ff0000>" + peakLvDesc + "</color>"; SetMapPointImgState(bgImage, true); } else { SetMapPointImgState(bgImage, false); } level_text.text = peakLvDesc; // 设置当前是否可开启的标记 GameObject lock_object = UIHelper.FindChild(kv.Value, "Lock"); lock_object.SetActive(!isOpen); // 根据pk区域设置不同的图标 var stateNode = UIHelper.FindChild(kv.Value, "State"); GameObject free_pk_area = UIHelper.FindChild(kv.Value, "FreePkArea"); GameObject no_safe_area = UIHelper.FindChild(kv.Value, "NoSafeArea"); stateNode.SetActive(isOpen); int pk_type = instanceInfo.mPKType; switch (pk_type) { case GameConst.SCENE_PK_COMMON: { no_safe_area.SetActive(true); free_pk_area.SetActive(false); //pkStr = "<color=#ffeb07>非安全区域</color>"; break; } case GameConst.SCENE_PK_DANGER: { free_pk_area.SetActive(true); no_safe_area.SetActive(false); //pkStr = "<color=#ff0000>PK区域</color>"; break; } default: { free_pk_area.SetActive(false); no_safe_area.SetActive(false); //pkStr = "安全区域"; break; } } } } }