Exemple #1
0
    IEnumerator RocketPowerUse()
    {
        while (inFlight)
        {
            FindObjectOfType <PlayerPower>().PlayerPowerLevel -= 1;

            if (FindObjectOfType <PlayerPower>().PlayerPowerLevel <= 0)
            {
                CutSceneInfo OnStartCutScene = new CutSceneInfo
                {
                    description  = "",
                    obj          = gameObject,
                    cutSceneName = "Death"
                };
                OnStartCutScene.FireEvent();

                Debug.Log("End Of Game");
                this.enabled = false;
                inFlight     = false;
                yield break;
            }

            yield return(new WaitForSeconds(3f));
        }

        yield return(new WaitForSeconds(0.1f));
    }
Exemple #2
0
    public IEnumerator StartCutScene()
    {
        Debug.Log("Playing Cutscene...");

        CutSceneInfo OnStartCutScene = new CutSceneInfo
        {
            description    = "Scanning ... Scanning ... I detect weapons. \n Maybe I can blast the door open.",
            obj            = gameObject,
            cutSceneName   = "Door",
            cutSceneNumber = 2
        };

        OnStartCutScene.FireEvent();

        cutSceneInProgress = true;

        yield return(new WaitForSeconds(0.25f));

        Camera.main.transform.position = new Vector3(19f, -7f, -10f);
        FindObjectOfType <PlayerPower>().transform.position = otherDoor.transform.position;
        FindObjectOfType <PlayerMovement>().gotoFloorPoint  = otherDoor.transform.position;

        while (cutSceneInProgress)
        {
            yield return(new WaitForSeconds(1f));
        }

        yield return(new WaitForSeconds(0.1f));

        //ReturnFromCutScene();
    }
Exemple #3
0
    private void OnCutSceneStarted(CutSceneInfo e)
    {
        sceneStartedBy   = e.obj;
        displayText.text = e.description;
        cutSceneName     = e.cutSceneName;
        cutSceneNumber   = e.cutSceneNumber;

        StartCutScene();
    }
Exemple #4
0
    public IEnumerator StartCutScene()
    {
        //yield return StartCoroutine(FindObjectOfType<DialogMaster>().Say("What's This?... An Underground Passage?"));
        FindObjectOfType <DialogMaster>().CloseDialog();

        Debug.Log("Playing Cutscene...");

        CutSceneInfo OnStartCutScene = new CutSceneInfo
        {
            description    = "The hatch led to an elevator. \n I wonder how deep underground it goes.",
            obj            = gameObject,
            cutSceneName   = "Hatch",
            cutSceneNumber = 1
        };

        OnStartCutScene.FireEvent();

        cutSceneInProgress = true;

        yield return(new WaitForSeconds(4f));

        Camera.main.transform.position = Vector3.back * 10;

        if (soundEffect2 != null)
        {
            RuntimeManager.PlayOneShotAttached(soundEffect2, gameObject);
        }

        yield return(new WaitForSeconds(0.5f));

        FindObjectOfType <PlayerPower>().transform.position = destination.transform.position;
        FindObjectOfType <PlayerMovement>().gotoFloorPoint  = destination.transform.position;

        foreach (GameObject g in hideThese)
        {
            g.SetActive(false);
        }

        foreach (GameObject g in showThese)
        {
            g.SetActive(true);
        }

        while (cutSceneInProgress)
        {
            yield return(new WaitForSeconds(0.5f));
        }

        //yield return StartCoroutine(FindObjectOfType<DialogMaster>().Say("This lift looks dead \n Maybe I can charge it"));
        //FindObjectOfType<DialogMaster>().CloseDialog();
        //ReturnFromCutScene();
    }
Exemple #5
0
    public IEnumerator StartCutScene()
    {
        Debug.Log("Playing Cutscene...");

        CutSceneInfo OnStartCutScene = new CutSceneInfo
        {
            description    = "",
            obj            = gameObject,
            cutSceneName   = "Charging Room",
            cutSceneNumber = 3
        };

        OnStartCutScene.FireEvent();

        yield return(new WaitForSeconds(0.25f));

        Debug.Log("Final...");
    }
Exemple #6
0
    override public void Load(XmlNode node)
    {
        ID  = node.Attributes["state"].Value;
        IDN = int.Parse(ID);

        XmlAttribute networking_attr = node.Attributes["networking"];

        if (networking_attr != null)
        {
            AfterNetworking = bool.Parse(networking_attr.Value);
        }

        XmlAttribute delay_attr = node.Attributes["delay"];

        if (delay_attr != null)
        {
            delay = float.Parse(delay_attr.Value);
        }

        foreach (XmlNode child in node.SelectNodes("Item"))
        {
            Targets.Add(new TargetInfo(child));
        }

        XmlNode condition_node = node.SelectSingleNode("Condition");

        if (condition_node != null)
        {
            Condition = new TutorialConditionBase(condition_node);
        }

        this.CutSceneInfo = new CutSceneInfo(node);

        foreach (XmlNode child in node.SelectNodes("Reward"))
        {
            rewards.Add(new RewardBase(child));
        }
    }
Exemple #7
0
 private void OnEnable()
 {
     mainMenuButton.enabled = false;
     canvas.SetActive(false);
     CutSceneInfo.RegisterListener(OnCutSceneStarted);
 }