/// <summary> /// Resets health. /// </summary> public override void Init() { if (transform.position.z > 0) { upDownType = UpOrDownType.Up; currentDriftingPoint = new Vector3(targetPosition.position.x, targetPosition.position.y, targetPosition.position.z + trainWidthForDrifting * 1.5f); } else { upDownType = UpOrDownType.Down; currentDriftingPoint = new Vector3(targetPosition.position.x, targetPosition.position.y, targetPosition.position.z - trainWidthForDrifting * 1.5f); } enemyType = EnemyType.Wheeled; _textures = new List <Texture>(); timer = new Timer(); renderers = GetComponentsInChildren <Renderer>(); foreach (Renderer rend in renderers) { if (rend) { _textures.Add(rend.material.mainTexture); } } }
/// <summary> /// Resets health. /// </summary> public override void Init(SceneData sceneData) { target = sceneData.TrainCars[0].gameObject.transform; targetPosition = sceneData.TrainCars[0].gameObject.transform; System.Random r = new System.Random(); if (transform.position.z < 0) { upDownType = UpOrDownType.Down; } if (upDownType == UpOrDownType.Up) { currentDriftingPoint = new Vector3(targetPosition.position.x, targetPosition.position.y, targetPosition.position.z + trainWidthForDrifting * 1.5f); } else { currentDriftingPoint = new Vector3(targetPosition.position.x, targetPosition.position.y, targetPosition.position.z - trainWidthForDrifting * 1.5f); } weapon.Init(); IsActive = true; MaxHealth = maxHealth; Health = MaxHealth; renderers = GetComponentsInChildren <Renderer>(); initTexture = renderers[2].material.mainTexture; Init(); }