private void OnTriggerEnter2D(Collider2D collision) { ObstacleController obstacle = collision.gameObject.GetComponent <ObstacleController>(); CointController coint = collision.gameObject.GetComponent <CointController>(); GrassController grass = collision.gameObject.GetComponent <GrassController>(); if (obstacle != null) { angle = -60; gameControllerScript.End(); } else if (coint != null) { gameControllerScript.AddCoins(coint.value); coint.desroyCoint(); CoinMusic.Play(); } else if (grass != null) { angle = -60; gameControllerScript.End(); } }
// Update Maps void UpdateMaps(){ float distant = CaculateDistance (); //Debug.Log ("BBBBBBBBBBBBBBBB s" + distant + " - " + (NUMBER_OBJ - 5) * 28 ); if (distant < (NUMBER_OBJ - 2) * 28) { int end = (int)maps [END_MAP].transform.position.z / 28; Destroy(maps[START_MAP]); maps[START_MAP] = null; for(int i =1 ;i < NUMBER_OBJ ; i++){ maps[i-1] = maps[i]; } //random map if(currentMapGen==NUMBER_OBJ_IN_MODE){ currentMapGen = 0; currentMapType=(int)Random.Range(0.0F, 2.9F); Debug.Log ("MAP TYPE: " + currentMapType ); }else{ currentMapGen++; } maps[END_MAP] = Instantiate(Resources.Load(mapsPath[currentMapType])) as GameObject; maps[END_MAP].transform.position = new Vector3(0.0f , 0.0f, (end + 1)*28f); maps[END_MAP].transform.parent = this.transform; AddWall(maps[END_MAP]); enemyController.AddEnemy(maps[END_MAP]); if(coinController){ coinController.AddCoint(maps[END_MAP]); }else{ coinController=GameObject.Find("CointController").GetComponent<CointController>(); coinController.AddCoint(maps[END_MAP]); Debug.Log ("MapController CointController NULL!!!!"); } //if(START_MAP) } // Check wall distance for (int i = walls.Count - 1; i >= 0; i--) { GameObject wall = walls[i]; //Debug.Log ("CHECK"); if(wall){ float distance = wall.transform.position.z - clt.character.transform.position.z; //Debug.Log ("CHECK" + distance); if (distance < -35.0f) { walls.Remove(wall); Destroy(wall); } }else{ walls.Remove(wall); } } }