コード例 #1
0
    void Init()
    {
        mainCamera       = Camera.main.gameObject;
        cameraManager    = mainCamera.GetComponent <CameraManager>();
        state            = States.NotInitialized;
        eventSystem      = GetComponent <IgorEventSystemS>();
        queue            = queueReference.GetComponent <Queue>();
        occurenceManager = occurenceReference.GetComponent <OccurenceManager>();
        player           = playerReference.GetComponent <Player>();
        foreach (string s in eventSystem.eventsList)
        {
            eventSystem.Subscribe(s, DefaultEvent);
        }


        audioSource = GetComponent <AudioSource>();
        audioSource.Play();
        if (!audioSource.isPlaying)
        {
            Debug.Log("Not playing");
        }
        audioSource             = gameObject.AddComponent <AudioSource>();
        audioSource.playOnAwake = false;
        audioSource.loop        = false;
        audioSource.volume      = 0.5f;

        lastTimePlayed = new float[audios.Length];
        for (int i = 0; i < lastTimePlayed.Length; i++)
        {
            lastTimePlayed[i] = Time.time;
        }


        occurenceManager.Init();
        queue.Init();
        player.Init();

        state = States.GameManagerReady;
    }
コード例 #2
0
    private void Update()
    {
        time += Time.deltaTime;

        switch (state)
        {
        case States.GameInitialized:
            eventSystem.Subscribe("PlayerDied", PlayerDied);
            eventSystem.Call("GameInitialized", eventSystem);
            state = States.GameRunning;
            break;

        case States.GameRunning:
            gameSpeed += Time.deltaTime / 13;
            if (time - lastTimePlayedDroplets > timeBetweenDroplets)
            {
                PlaySound("Droplets", 2f);
                lastTimePlayedDroplets = time;
            }
            points         += (int)(player.transform.position.x * pointsMultiplier);
            pointsText.text = points.ToString();
            break;
        }
    }