void Start() { Instance = this; InitToggleMethod(); ToggleAuthoritySet(); SceneEvents.FullViewStateChange += OnFullViewChange; }
public void PersonEnter() { DevSubsystemManage fpsManager = DevSubsystemManage.Instance; if (fpsManager.IsFPSInBuilding()) { RoamManage.Instance.EntranceIndoor(true); } }
/// <summary> /// 修改设备信息 /// </summary> private void ModifyDevInfo() { DevSubsystemManage manager = DevSubsystemManage.Instance; if (manager && manager.DevEditorToggle.isOn) { ClearSelection(); DeviceEditUIManager.Instacne.Show(this); } }
void OnTriggerExit(Collider other) { if (other.transform.GetComponent <CharacterController>() != null && other.gameObject.layer != LayerMask.NameToLayer("Person")) { IsFPSEnter = false; DevSubsystemManage fpsManager = DevSubsystemManage.Instance; if (fpsManager) { fpsManager.SetTriggerBuilding(this, false); } RoamManage.Instance.EntranceIndoor(false); //ShowBuildingDev(false); if (fpsManager && !fpsManager.IsFPSInBuilding()) { RoamManage.Instance.SetLight(false); //人不在建筑中,才关闭灯光 } } }
void OnTriggerEnter(Collider other) { //定位人员的Layer是Person,漫游人员没有设置是Default if (other.transform.GetComponent <CharacterController>() != null && other.gameObject.layer != LayerMask.NameToLayer("Person")) { if (BuildingTopColliderManage.IsInBuildingRoof) { return; //处于楼顶,不算楼内 } DevSubsystemManage fpsManager = DevSubsystemManage.Instance; if (fpsManager) { fpsManager.SetTriggerBuilding(this, true); } RoamManage.Instance.EntranceIndoor(true); ShowBuildingDev(true); IsFPSEnter = true; } }
private void SetBuildingState(GameObject person, bool isEnter) { Debug.Log("DoorAccessItem.SetBuildingState isEnter:" + isEnter); if (doorBuilding == null) { doorBuilding = transform.GetComponentInParent <BuildingController>(); } DevSubsystemManage manager = DevSubsystemManage.Instance; if (doorBuilding == null || manager == null) { return; } if (isEnter)//进入门的范围 { BuildingBox box = doorBuilding.GetComponent <BuildingBox>(); if (box != null) { box.LoadBuilding(dep => { LoadBuildingDev(doorBuilding); }); } else { LoadBuildingDev(doorBuilding); } } else//离开门的范围 { var isExist = manager.IsBuildingExist(doorBuilding); if (!isExist) { DevSubsystemManage.Instance.SetTriggerBuilding(doorBuilding, false); //doorBuilding.ShowBuildingDev(false); RoamManage.Instance.SetLight(false); } } }