// OnInspector GUI
    public override void OnInspectorGUI() //2
    {
        base.DrawDefaultInspector();

        if (GUILayout.Button("SetPosition")) //8
        {
            AlcoveThirdPartyExperience           script = (AlcoveThirdPartyExperience)target;
            AlcoveThirdPartyExperienceController experienceController = FindObjectOfType <AlcoveThirdPartyExperienceController>();
            if (experienceController == null)
            {
                Debug.LogError("No Third Party Experience Controller found in scene.");
            }

            if (script.m_Data.ExperienceType == ThirdPartyExperienceType.Room && experienceController.m_RoomExperienceTransform == null)
            {
                Debug.LogError("No transform for Room type assigned to the ThirdPartyExperienceController.");
            }
            else if (script.m_Data.ExperienceType == ThirdPartyExperienceType.Room)
            {
                script.transform.position = experienceController.m_RoomExperienceTransform.position;
                script.transform.rotation = experienceController.m_RoomExperienceTransform.rotation;
            }

            else if (script.m_Data.ExperienceType == ThirdPartyExperienceType.Tabletop && experienceController.m_RoomExperienceTransform == null)
            {
                Debug.LogError("No transform for Tabletop type assigned to the ThirdPartyExperienceController.");
            }
            else if (script.m_Data.ExperienceType == ThirdPartyExperienceType.Tabletop)
            {
                script.transform.position = experienceController.m_TableExperienceTransform.position;
                script.transform.rotation = experienceController.m_TableExperienceTransform.rotation;
            }
        }
    }
Ejemplo n.º 2
0
 public void DestroyThirdPartyExperience(ThirdPartyExperienceType type)
 {
     AlcovePositionController.getInstance().ResetThirdPartySpawnPoints(CurrentThirdPartyExperience.GetComponent <AlcoveThirdPartyExperience>().m_Data.ExperienceType);
     if (CurrentThirdPartyExperience.gameObject != null)
     {
         PhotonNetwork.Destroy(CurrentThirdPartyExperience.gameObject);
     }
     CurrentThirdPartyExperience = null;
 }
Ejemplo n.º 3
0
    public void InstantiateThirdPartyExperienceWithNameAndType(string experienceName, ThirdPartyExperienceType type)
    {
        Transform instantiationTransform = type == ThirdPartyExperienceType.Tabletop
            ? m_TableExperienceTransform
            : m_RoomExperienceTransform;

        GameObject newExperienceObj = PhotonNetwork.Instantiate(experienceName, instantiationTransform.position, instantiationTransform.rotation, 0, null);

        AlcoveThirdPartyExperience newExperience = newExperienceObj.GetComponent <AlcoveThirdPartyExperience>();

        if (newExperience == null)
        {
            Debug.LogError("The root GameObject for an instantiated experience must be assigned the AlcoveThirdPartyExperience component.");
        }
        else
        {
            CurrentThirdPartyExperience = newExperience;
        }
    }
Ejemplo n.º 4
0
    void Awake()
    {
        HomeEnvironmentSceneName = SceneManager.GetActiveScene().name;

        foreach (GameObject alcoveThirdPartyExperience in m_AlcoveThirdPartyExperiences)
        {
            if (!alcoveThirdPartyExperience)
            {
                continue;
            }

            AlcoveThirdPartyExperience experience =
                alcoveThirdPartyExperience.GetComponent <AlcoveThirdPartyExperience>();

            if (experience == null)
            {
                Debug.LogException(new Exception("Experience " + alcoveThirdPartyExperience.name + " was assigned to the AlcoveThirdPartyExperienceController without a AlcoveThirdPartyExperience component."));
                continue;
            }

            CreateExperienceButton(experience.m_Data, experience.gameObject.name);
        }
    }