void Start()
    {
        start = transform.position;
        end   = transform.position + Vector3.left * transform.position.x * 2;
        if (end.x > -10)
        {
            end = new Vector3(-40, end.x, end.z);
        }
        if (levelMover == null)
        {
            levelMover = FindObjectOfType <LevelMover>();
        }
        spriteRenderer = GetComponent <SpriteRenderer>();

        if (parallaxCoef == 0)
        {
            parallaxCoef = levelMover.ParallaxCoef(spriteRenderer.sortingLayerName);
        }
        else if (parallaxCoef == -1)
        {
            parallaxCoef = 0;
        }
        FastModeChange();
        rigidbody = GetComponent <Rigidbody2D>();
    }
示例#2
0
    IEnumerator SpawnNewLevelComponent()
    {
        while (true)
        {
            while (true)
            {
                GameObject spawn = levelComponents[Random.Range(0, levelComponents.Length)];

                if (Random.Range(0, 100) <= (spawn.GetComponent <LevelMover>().obstacleDifficulty + (gm.currentScore * 1)))
                {
                    GameObject newSpawn = Instantiate(spawn, transform);
                    LevelMover lm       = newSpawn.GetComponent <LevelMover>();

                    if (gm.currentScore >= 10)
                    {
                        if (gm.currentScore > ((colors.Length / 3) * 10))
                        {
                            currentColor = (currentColor + 3) % colors.Length;
                        }
                        else if (gm.currentScore % 10 == 0)
                        {
                            currentColor = (currentColor + 3) % colors.Length;
                        }
                    }
                    lm.SetColor(colors, currentColor);
                    break;
                }
            }

            yield return(new WaitForSeconds(-Mathf.Log(gm.levelSpeed) * spawnRate + 5));
        }
    }
示例#3
0
    private void Start()
    {
        if (_generateMoveSpeed)
        {
            _moveSpeed = Random.Range(_lowerSpeedLimit, _upperSpeedLimit);
        }

        _levelMover = LevelMover.Instance;
    }
示例#4
0
 // Start is called before the first frame update
 void Start()
 {
     levelMover  = Instantiate(levelMover, Vector3.zero, Quaternion.identity);
     starfighter = Instantiate(starfighter, levelMover.transform);
     starfighter.transform.parent = levelMover.transform;
     OnStarfighterCreated(new StarfighterCreatedEventArgs()
     {
         starfighter = starfighter
     });
 }
示例#5
0
 void Start()
 {
     if (levelMover == null)
     {
         levelMover = FindObjectOfType <LevelMover>();
     }
     car        = FindObjectOfType <Car>();
     building   = GetComponent <IInteractiveBuilding>();
     levelSpeed = levelMover.GetComponent <LevelSpeed>();
 }
示例#6
0
 void Start()
 {
     winker = GetComponentInChildren <WinkerAction>();
     //carBase = GameObject.FindGameObjectWithTag("CarBase");
     //borders = FindObjectOfType<CarBorders>();
     PrepareAllPartsForStart();
     FindInteractives();
     levelMover          = FindObjectOfType <LevelMover>();
     levelMover.OnNight += TurnLight;
     levelMover.OnDay   += TurnOffLight;
 }
示例#7
0
    Queue <float> spawnTimes = new Queue <float>(); //list of spawn times, to simulate lifetime. Back of the queue is vertex 1, front of the queue is the end of the trail.
                                                    //Length of this queue is one less than the number of positions in the linerenderer, since the linerenderer always has a non-solidified vertex at the object's position.

    // Use this for initialization
    void Awake()
    {
        line = GetComponent <LineRenderer>();
        line.useWorldSpace = true;
        points             = new List <Vector3>()
        {
            transform.position
        };                                                   //indices 1 - end are solidified points, index 0 is always transform.position
        line.SetPositions(points.ToArray());

        _levelMover = LevelMover.Instance;
    }
示例#8
0
    private void Start()
    {
        levelMover = FindObjectOfType <LevelMover>();

        var r = Random.Range(0, transform.childCount);

        for (int i = 0; i < transform.childCount; i++)
        {
            if (i == r)
            {
                obj = transform.GetChild(i).gameObject;
                obj.SetActive(true);
            }
        }
    }
示例#9
0
    //private List<ColorType> availableTypes;

    private void Start()
    {
        policeLevel    = GetComponent <PoliceLevel>();
        robbersPrefab  = Resources.LoadAll <GameObject>("Levels/Police/Robbers");
        types          = new List <ColorType>();
        catchedRobbers = new List <ColorType>();
        RandomizeColors();
        carParts       = FindObjectOfType <CarParts>();
        car            = carParts.GetComponentInParent <Car>();
        levelMover     = GetComponent <LevelMover>();
        levelGenerator = GetComponent <LevelGenerator>();
        levelSpeed     = GetComponent <LevelSpeed>();
        lightPrefab    = levelGenerator.LightGameObject;

        dreamSpawner = FindObjectOfType <DreamSpawner>();
    }
示例#10
0
    // Use this for initialization
    void Start()
    {
        objectsList = new List <GameObject>();

        mover = FindObjectOfType <LevelMover>();


        for (int i = 0; i < pooledAmount; i++)
        {
            GameObject obj = (GameObject)Instantiate(pooledObject, parent.transform);
            obj.transform.parent = parent.transform;
            obj.SetActive(false);
            objectsList.Add(obj);
            mover.rigidbodyList.Add(obj.GetComponent <Rigidbody2D>());
        }
    }
示例#11
0
    private void Start()
    {
        bannedButtons = new List <int>();
        car           = FindObjectOfType <Car>();
        ui            = GetComponentInParent <UI>();
        level         = FindObjectOfType <Level>();
        levelMover    = level.GetComponent <LevelMover>();
        catching      = level.GetComponent <CatchingRobbers>();
        if (catching == null)
        {
            catching = level.gameObject.AddComponent <CatchingRobbers>();
        }

        catching.OnColorsChanged += ChangeIcons;

        icons = Resources.LoadAll <Sprite>("Levels/Police/BanditIcons");
    }
示例#12
0
    void Awake()
    {
        print("GM awake");
        screensParent.SetActive(true);

        canvas            = GameObject.Find("Canvas").GetComponent <Canvas>();
        invertSpawner     = GameObject.Find("InvertSpawner").GetComponent <InvertSpawner>();
        levelMover        = GameObject.Find("LevelAnchor").GetComponent <LevelMover>();
        playerController  = GameObject.Find("Player").GetComponent <PlayerController>();
        playerJumpTrigger = GameObject.Find("JumpTrigger").GetComponent <CircleCollider2D>();
        levelCreator      = GameObject.Find("LevelAnchor").GetComponent <LevelCreator>();

        countdownScreen = GameObject.Find("CountdownScreen");
        countdownText   = countdownScreen.transform.GetChild(1).GetComponent <Text>();
        gameOverScreen  = GameObject.Find("GameOverScreen");
        endScoreText    = gameOverScreen.transform.GetChild(1).GetComponent <Text>();
        bestScoreText   = gameOverScreen.transform.GetChild(2).GetComponent <Text>();
        pauseScreen     = GameObject.Find("PauseScreen");
        pauseButton     = GameObject.Find("PauseButton");
        scoreText       = GameObject.Find("ScoreText").GetComponent <Text>();
        scoreText.text  = "";

        countdownScreen.SetActive(false);
        gameOverScreen.SetActive(false);
        pauseScreen.SetActive(false);

        checkpointRespawns = 5;
        score            = 0;
        paused           = false;
        startSpeed       = 10;
        gameOver         = false;
        playerIsReseting = false;

        gravityIsDown = true;
        gravity       = new Vector2(0.0f, -9.8f);
    }
示例#13
0
    void Awake()
    {
        print("GM awake");
        screensParent.SetActive(true);

        canvas = GameObject.Find("Canvas").GetComponent<Canvas>();
        invertSpawner = GameObject.Find("InvertSpawner").GetComponent<InvertSpawner>();
        levelMover = GameObject.Find("LevelAnchor").GetComponent<LevelMover>();
        playerController = GameObject.Find("Player").GetComponent<PlayerController>();
        playerJumpTrigger = GameObject.Find("JumpTrigger").GetComponent<CircleCollider2D>();
        levelCreator = GameObject.Find("LevelAnchor").GetComponent<LevelCreator>();

        countdownScreen = GameObject.Find("CountdownScreen");
        countdownText = countdownScreen.transform.GetChild(1).GetComponent<Text>();
        gameOverScreen = GameObject.Find("GameOverScreen");
        endScoreText = gameOverScreen.transform.GetChild(1).GetComponent<Text>();
        bestScoreText = gameOverScreen.transform.GetChild(2).GetComponent<Text>();
        pauseScreen = GameObject.Find("PauseScreen");
        pauseButton = GameObject.Find("PauseButton");
        scoreText = GameObject.Find("ScoreText").GetComponent<Text>();
        scoreText.text = "";

        countdownScreen.SetActive(false);
        gameOverScreen.SetActive(false);
        pauseScreen.SetActive(false);

        checkpointRespawns = 5;
        score = 0;
        paused = false;
        startSpeed = 10;
        gameOver = false;
        playerIsReseting = false;

        gravityIsDown = true;
        gravity = new Vector2(0.0f, -9.8f);
    }
示例#14
0
 void Start()
 {
     level = FindObjectOfType <LevelMover>();
     image = GetComponent <Image>();
     TurnDay();
 }
示例#15
0
 private void Start()
 {
     levelMover = FindObjectOfType <LevelMover>();
     FrontSpawn();
     BackSpawn();
 }
示例#16
0
 private void Awake()
 {
     car   = FindObjectOfType <Car>();
     level = GetComponent <LevelMover>();
 }
示例#17
0
 private void Start()
 {
     lm = transform.parent.GetComponent <LevelMover>();
     pm = GetComponent <PlayerMover>();
 }