private void JudgeClick() { if (clickUpInfo.col != clickDownInfo.col || clickUpInfo.col == null) { return; } if (clickUpInfo.time < clickDownInfo.time || clickUpInfo.time - clickDownInfo.time > 0.3f) { return; } if (!Util.Vector3Equal(clickUpInfo.pos, clickDownInfo.pos, 0.15f)) { return; } if (!Util.Vector3Equal(clickUpInfo.screenPos, clickDownInfo.screenPos, 10f)) { return; } //防止连点 if (lastClickInfo.col == clickUpInfo.col && clickUpInfo.time - lastClickInfo.time < 0.3f) { return; } lastClickInfo.Init(clickUpInfo); JerryEventMgr.DispatchEvent(Enum_Event.Click3DObj.ToString(), new object[] { clickUpInfo }); }
public override void Awake() { base.Awake(); space = GameObject.Find("Space"); houseNode = new Transform[HOUSE_NODE_CNT]; for (int i = 0; i < HOUSE_NODE_CNT; i++) { houseNode[i] = space.transform.FindChild(string.Format("HouseNode{0}", i)); } housePrefab = space.transform.FindChild("HousePrefab"); housePrefab.gameObject.SetActive(false); houses = new House[HOUSE_NODE_CNT]; m_MapGridUnityLenHalf = 0.5f * m_MapGridUnityLen; _click3DCheck = new Click3DCheck(); MapUtil.Init(); if (m_DrawGrid) { #if UNITY_EDITOR JerryDrawer.Draw <DrawerElementGrid>() .SetMinPos(m_LeftSideWallStartPos + new Vector3(0.01f, 0, 0)) .SetGridSize(Vector2.one * GameApp.Inst.m_MapGridUnityLen) .SetSize(SizeXYZ2XY(m_LeftSideWallSize, Enum_Wall.Left)) .SetPlaneType(DrawerElementGrid.PlaneType.ZY) .SetColor(Color.red); JerryDrawer.Draw <DrawerElementGrid>() .SetMinPos(m_RightSideWallStartPos + new Vector3(-0.01f, 0, 0)) .SetGridSize(Vector2.one * GameApp.Inst.m_MapGridUnityLen) .SetSize(SizeXYZ2XY(m_RightSideWallSize, Enum_Wall.Right)) .SetPlaneType(DrawerElementGrid.PlaneType.ZY) .SetColor(Color.red); JerryDrawer.Draw <DrawerElementGrid>() .SetMinPos(m_WallStartPos + new Vector3(0, 0, -0.01f)) .SetGridSize(Vector2.one * GameApp.Inst.m_MapGridUnityLen) .SetSize(SizeXYZ2XY(m_WallSize, Enum_Wall.Wall)) .SetPlaneType(DrawerElementGrid.PlaneType.XY) .SetColor(Color.black); JerryDrawer.Draw <DrawerElementGrid>() .SetMinPos(m_FloorWallStartPos + new Vector3(0, 0.01f, 0)) .SetGridSize(Vector2.one * GameApp.Inst.m_MapGridUnityLen) .SetSize(SizeXYZ2XY(m_FloorWallSize, Enum_Wall.Floor)) .SetPlaneType(DrawerElementGrid.PlaneType.XZ) .SetColor(Color.black); #endif } MeshDraw.Inst.InitConfig(); JerryEventMgr.AddEvent(Enum_Event.Click3DObj.ToString(), EventClick3DObj); CreateHouse(0, 0); }
private void EventClick3DObj(object[] args) { if (args == null || args.Length != 1) { return; } if (MapUtil.m_SelectId == 0 || MapUtil.m_SelectOK) { return; } Click3DCheck.RayClickInfo info = (Click3DCheck.RayClickInfo)args[0]; if (MapUtil.IsWallLayer(info.col.gameObject.layer)) { RayClickPos fp = new RayClickPos(); fp.pos = info.pos; fp.wallType = MapUtil.WallLayer2WallEnum(info.col.gameObject.layer); //JerryDrawer.Draw<DrawerElementCube>() // .SetColor(Color.black) // .SetLife(3f) // .SetPos(fp.pos) // .SetSize(Vector3.one) // .SetWire(false) // .SetSizeFactor(0.2f); JerryEventMgr.DispatchEvent(Enum_Event.SetFurn2Pos.ToString(), new object[] { fp }); } }
public override void Init() { base.Init(); m_Text = this.transform.FindChild("Viewport/Content/Text").GetComponent <Text>(); JerryEventMgr.AddEvent(Enum_Event.SelectOneLog.ToString(), SelectOneLog); }
void Awake() { furnituresParent = this.transform.FindChild("Furnitures"); JerryEventMgr.AddEvent(Enum_Event.SaveCurHouseData.ToString(), EventSaveCurHouseData); _awaked = true; TryWork(); }
void OnDestroy() { JerryEventMgr.RemoveEvent(Enum_Event.SetOneFurn.ToString(), EventSetOneFurn); JerryEventMgr.RemoveEvent(Enum_Event.SetFurn2Pos.ToString(), EventSetFurn2Pos); JerryEventMgr.RemoveEvent(Enum_Event.CancelSetFurn.ToString(), EventCancelSetFurn); JerryEventMgr.RemoveEvent(Enum_Event.SetFurn2Package.ToString(), EventSetFurn2Package); JerryEventMgr.RemoveEvent(Enum_Event.Click3DObj.ToString(), EventClick3DObj); JerryEventMgr.RemoveEvent(Enum_Event.Click3DDown.ToString(), EventClick3DDown); }
/// <summary> /// 选中 /// </summary> private void SelectSelf(bool isNew = false) { if (MapUtil.m_SelectId != 0 && !MapUtil.m_SelectOK) { if (MapUtil.m_SelectNew) { JerryEventMgr.DispatchEvent(Enum_Event.SetFurn2Package.ToString(), new object[] { MapUtil.m_SelectId }); } else { JerryEventMgr.DispatchEvent(Enum_Event.CancelSetFurn.ToString(), new object[] { MapUtil.m_SelectId }); } } if (isNew) { RayClickPos fp = MapUtil.GetFirstPos(m_Config.setType); //Debug.LogWarning(fp.pos + " x " + fp.wallType + " " + m_Config.setType); SelectChange2Wall(Enum_Wall.Wall, fp.wallType, fp.pos); } else if (m_InitData.m_CurWall != Enum_Wall.None) { //先浮起来,再记录,保持回退时一致性 this.transform.position = MapUtil.GetMap(m_InitData.m_CurWall).AdjustFurn2Wall(m_Config.size, true, this.transform.position); m_InitData.m_LastPos = this.transform.position; m_InitData.m_LastWall = m_InitData.m_CurWall; MapUtil.GetMap(m_InitData.m_CurWall).CleanOne(this.transform.position, m_Config.size); } //Debug.LogWarning("xxx " + m_InitData.isNew + " " + m_InitData.m_CurWall); MapUtil.m_SelectId = m_Id; MapUtil.m_SelectOK = false; MapUtil.m_SelectNew = isNew; MapUtil.m_SelectFurn = this; this.gameObject.layer = LayerMask.NameToLayer(Enum_Layer.ActiveFurniture.ToString()); m_Selected = true; m_InitData.isSeted = false; bool canSet = MapUtil.GetMap(m_InitData.m_CurWall).JudgeSet(this.transform.position, m_Config.size); //GridMgr.Inst.ShowGrid(m_Config.setType, m_Config.size.y); MeshDraw.Inst.ShowGrid(m_Config.setType, m_Config.size.y); SetOutLineVisible(true); SetOutLineColor(canSet ? Color.green : Color.red); FurnitureShadow.Inst.SetSize(m_Config.size.ToVector3(), m_InitData.m_CurWall); FurnitureShadow.Inst.SetVisible(true); FurnitureShadow.Inst.SetPosColor(MapUtil.GetMap(m_InitData.m_CurWall).Adjust2Wall(this.transform.position), canSet ? Color.green : Color.red); UI_Ctr.Inst.ShowCtr(); }
void Awake() { m_Text = this.transform.FindChild("Text").GetComponent <Text>(); //TODO,UGUIEventListener不能滑动 this.gameObject.GetComponent <Button>().onClick.AddListener(() => { JerryEventMgr.DispatchEvent(Enum_Event.SelectOneLog.ToString(), new object[] { curData }); }); m_Awaked = true; TryFillData(); }
public override void Init() { base.Init(); m_Content = this.transform.FindChild("Viewport/Content"); m_BtnPrefab = this.transform.FindChild("BtnPrefab"); m_BtnPrefab.gameObject.SetActive(false); AddSysCtrs(); JerryEventMgr.AddEvent(Enum_Event.AddOneCtr.ToString(), AddOneCtr); }
/// <summary> /// 增加系统配置 /// </summary> private void AddSysCtr() { m_Ctrs.Add(new CtrConfig() { m_Name = "ReceiveMsg", m_Callback = (x) => { m_ReceiveMsg = !m_ReceiveMsg; x.ChangeColor(m_ReceiveMsg ? Color.green : Color.white); }, m_Color = m_ReceiveMsg ? Color.green : Color.white, }); m_Ctrs.Add(new CtrConfig() { m_Name = "ToBottom", m_Callback = (x) => { m_ToBottom = !m_ToBottom; x.ChangeColor(m_ToBottom ? Color.green : Color.white); if (m_ToBottom) { JerryEventMgr.DispatchEvent(Enum_Event.Change2Bottom.ToString()); } }, m_Color = m_ToBottom ? Color.green : Color.white, }); m_Ctrs.Add(new CtrConfig() { m_Name = "MessageReceived", m_Callback = (x) => { m_UseMessageReceived = !m_UseMessageReceived; x.ChangeColor(m_UseMessageReceived ? Color.green : Color.white); }, m_Color = m_UseMessageReceived ? Color.green : Color.white, }); m_Ctrs.Add(new CtrConfig() { m_Name = "TraceLev", m_Callback = (x) => { m_TraceLev = ChangeTraceLev(m_TraceLev); x.ChangeColor(GetTraceLevColor(m_TraceLev)); }, m_Color = GetTraceLevColor(m_TraceLev), }); }
void Awake() { m_Render = this.GetComponent <Renderer>(); this.gameObject.layer = LayerMask.NameToLayer(Enum_Layer.Furniture.ToString()); m_Id = Util.IDGenerator(m_Id); m_InitData = new FurnitureInitData(); JerryEventMgr.AddEvent(Enum_Event.SetOneFurn.ToString(), EventSetOneFurn); JerryEventMgr.AddEvent(Enum_Event.SetFurn2Pos.ToString(), EventSetFurn2Pos); JerryEventMgr.AddEvent(Enum_Event.CancelSetFurn.ToString(), EventCancelSetFurn); JerryEventMgr.AddEvent(Enum_Event.SetFurn2Package.ToString(), EventSetFurn2Package); JerryEventMgr.AddEvent(Enum_Event.Click3DObj.ToString(), EventClick3DObj); JerryEventMgr.AddEvent(Enum_Event.Click3DDown.ToString(), EventClick3DDown); _awaked = true; TryWork(); }
public void Update() { if (Input.GetMouseButtonDown(0) && !Util.ClickUI()) { clickDownInfo.Init(DoRayClick()); if (clickDownInfo.col != null) { JerryEventMgr.DispatchEvent(Enum_Event.Click3DDown.ToString(), new object[] { clickDownInfo }); } } if (Input.GetMouseButtonUp(0) && !Util.ClickUI()) { clickUpInfo.Init(DoRayClick()); JudgeClick(); } }
public void AddCtr(CtrConfig config) { if (m_Active == false) { return; } CtrConfig oldConfig = m_Ctrs.Find((x) => x.m_Name.Equals(config.m_Name)); if (oldConfig != null) { m_Ctrs.Remove(oldConfig); } if (config != null) { m_Ctrs.Add(config); JerryEventMgr.DispatchEvent(Enum_Event.AddOneCtr.ToString(), new object[] { config }); } }
protected override void Awake() { base.Awake(); AddSysCtr(); m_Log = this.transform.FindChild("Log"); m_LogPanel = this.transform.FindChild("Log/LogPanel"); m_LogPanel.gameObject.AddComponent <LogPanel>().Init(); m_DetailPanel = this.transform.FindChild("Log/DetailPanel"); m_DetailPanel.gameObject.AddComponent <DetailPanel>().Init(); m_CtrPanel = this.transform.FindChild("Log/CtrPanel"); m_CtrPanel.gameObject.AddComponent <CtrPanel>().Init(); //Application.logMessageReceived += HandleLog; Application.logMessageReceivedThreaded += HandleLog; JerryEventMgr.AddEvent(Enum_Event.ShowOrHideLog.ToString(), ShowOrHideLog); }
public override void Awake() { base.Awake(); m_Node = this.transform.FindChild("Node"); m_Set = m_Node.FindChild("Set"); m_SetBkg = m_Set.GetComponent <Image>(); m_Cancel = m_Node.FindChild("Cancel"); m_Back = m_Node.FindChild("Back"); UGUIEventListener.Get(m_Set.gameObject).onClick += (go) => { if (m_CanSet) { JerryEventMgr.DispatchEvent(Enum_Event.SetOneFurn.ToString(), new object[] { MapUtil.m_SelectId }); } else { UI_Tip.Inst.ShowTip("重叠"); } }; UGUIEventListener.Get(m_Cancel.gameObject).onClick += (go) => { JerryEventMgr.DispatchEvent(Enum_Event.CancelSetFurn.ToString(), new object[] { MapUtil.m_SelectId }); }; UGUIEventListener.Get(m_Back.gameObject).onClick += (go) => { JerryEventMgr.DispatchEvent(Enum_Event.SetFurn2Package.ToString(), new object[] { MapUtil.m_SelectId }); }; m_CanSet = false; HideCtr(); }
void OnDestroy() { JerryEventMgr.RemoveEvent(Enum_Event.SaveCurHouseData.ToString(), EventSaveCurHouseData); }
void OnDestroy() { JerryEventMgr.RemoveEvent(Enum_Event.SelectOneLog.ToString(), SelectOneLog); }
private void DoClick() { JerryEventMgr.DispatchEvent(Enum_Event.ShowOrHideLog.ToString()); }
void OnGUI() { GUILayout.BeginHorizontal(); GUI.color = m_EditorMode ? Color.green : Color.white; if (GUILayout.Button("编辑模式", m_GUIOpt1)) { if (UpDowning) { return; } m_EditorMode = !m_EditorMode; if (m_EditorMode) { CameraCtr.Inst.AdjustCamera(); } if (MapUtil.m_SelectId == 0 || MapUtil.m_SelectOK) { return; } //Debug.LogWarning(" " + MapUtil.m_SelectId + " " + MapUtil.m_SelectNew + " " + MapUtil.m_SelectOK); if (MapUtil.m_SelectNew) { JerryEventMgr.DispatchEvent(Enum_Event.SetFurn2Package.ToString(), new object[] { MapUtil.m_SelectId }); } else { JerryEventMgr.DispatchEvent(Enum_Event.CancelSetFurn.ToString(), new object[] { MapUtil.m_SelectId }); } } GUI.color = Color.white; if (m_EditorMode) { if (GUILayout.Button("保存方案", m_GUIOpt1)) { JerryEventMgr.DispatchEvent(Enum_Event.SaveCurHouseData.ToString()); } if (GUILayout.Button("随机一个", m_GUIOpt1)) { houses[CurNodeIdx].AddOneFurniture(); } } if (!m_EditorMode) { if (GUILayout.Button(string.Format("上楼({0})", curFloor), m_GUIOpt1)) { if (UpDowning) { return; } ToFloor(curFloor + 1); } if (GUILayout.Button(string.Format("下楼({0})", curFloor), m_GUIOpt1)) { if (UpDowning) { return; } ToFloor(curFloor - 1); } } GUILayout.EndHorizontal(); }
void OnDestroy() { JerryEventMgr.RemoveEvent(Enum_Event.Click3DObj.ToString(), EventClick3DObj); }
public override void Awake() { base.Awake(); JerryEventMgr.AddEvent(Enum_Event.Click3DDown.ToString(), EventClickDown); }
public override void Init() { base.Init(); m_LogContent = this.transform.FindChild("Log/Viewport/Content"); layout = m_LogContent.gameObject.AddComponent <LogLayout>(); m_LogPrefab = this.transform.FindChild("Log/LogPrefab"); m_LogPrefab.gameObject.SetActive(false); m_FilterInput = this.transform.FindChild("BaseCtr/InputField").GetComponent <InputField>(); m_FilterInput.onEndEdit.AddListener((str) => { filterStrs = JerryUtil.String2TArray <string>(str, ';'); RefreshList(); }); m_TypeDropdown = this.transform.FindChild("BaseCtr/TypeDropdown").GetComponent <Dropdown>(); m_TypeDropdown.options.Clear(); m_TypeDropdown.options.AddRange(new List <Dropdown.OptionData>() { new Dropdown.OptionData() { text = Enum_LogType.All.ToString() }, new Dropdown.OptionData() { text = Enum_LogType.Inf.ToString() }, new Dropdown.OptionData() { text = Enum_LogType.War.ToString() }, new Dropdown.OptionData() { text = Enum_LogType.Err.ToString() }, }); m_TypeDropdown.onValueChanged.AddListener((val) => { filterType = (Enum_LogType)val; RefreshList(); }); m_TagDropdown = this.transform.FindChild("BaseCtr/TagDropdown").GetComponent <Dropdown>(); m_TagDropdown.options.Clear(); m_TagDropdown.options.AddRange(new List <Dropdown.OptionData>() { new Dropdown.OptionData() { text = Enum_LogTag.All.ToString() }, new Dropdown.OptionData() { text = Enum_LogTag.Tag0.ToString() }, new Dropdown.OptionData() { text = Enum_LogTag.Tag1.ToString() }, new Dropdown.OptionData() { text = Enum_LogTag.Tag2.ToString() }, }); m_TagDropdown.onValueChanged.AddListener((val) => { filterTag = (Enum_LogTag)val; RefreshList(); }); JerryDebugUGUI.Inst.AddCtr(new CtrConfig() { m_Name = "Clear", m_Color = Color.red, m_Callback = (x) => { CleanAllLog(); }, }); CleanAllLog(); JerryEventMgr.AddEvent(Enum_Event.AddLog2Screen.ToString(), AddLog2Screen); JerryEventMgr.AddEvent(Enum_Event.Change2Bottom.ToString(), EventChange2Bottom); }
void OnDestroy() { JerryEventMgr.RemoveEvent(Enum_Event.AddLog2Screen.ToString(), AddLog2Screen); JerryEventMgr.RemoveEvent(Enum_Event.Change2Bottom.ToString(), EventChange2Bottom); }
void OnDestroy() { JerryEventMgr.RemoveEvent(Enum_Event.AddOneCtr.ToString(), AddOneCtr); }
private void AddToScreen(LogItem.LogInfo info) { JerryEventMgr.DispatchEvent(Enum_Event.AddLog2Screen.ToString(), new object[] { info }); }
void OnDestroy() { JerryEventMgr.RemoveEvent(Enum_Event.Click3DDown.ToString(), EventClickDown); }
void OnDestroy() { JerryEventMgr.RemoveEvent(Enum_Event.ShowOrHideLog.ToString(), ShowOrHideLog); }