void Start() { if (Nights2SpotMgr.Instance != null) _closestSpot = Nights2SpotMgr.Instance.FindClosestSpotTo(transform.position); _animator = gameObject.GetComponent<Animator>(); _playerIsClose = false; SetAnimatorBool(PlayerCloseBool, false); SetAnimatorBool(ShamashOnBool, false); SetAnimatorBool(FlameExtinguishedBool, false); if (TunnelPivot != null) _defaultTunnelRot = TunnelPivot.rotation; //subscribe to state changed events if (Nights2Mgr.Instance != null) Nights2Mgr.Instance.OnStateChanged += OnNights2StateChanged; }
void Start() { //print out color of each candle along with where in the progression it lives /*int progreshIdx = -1; for(int i = 0 ; i < Nights2Mgr.Instance.CandlePathOrderLength() ; i++) { if (Nights2Mgr.Instance.GetPath(i).LeadsToBeacon == this) { progreshIdx = i; break; } } Debug.Log("color " + progreshIdx + ": ( " + CandleColor.r * 255.0f + ", " + CandleColor.g * 255.0f + ", " + CandleColor.b * 255.0f + " ) " + gameObject.name); */ if (Nights2SpotMgr.Instance != null) _closestSpot = Nights2SpotMgr.Instance.FindClosestSpotTo(transform.position); _animator = gameObject.GetComponent<Animator>(); EightNightsMgr.GroupID group = Nights2AudioMgr.Instance.GetGroupForBeacon(this); _narrationSound = Nights2AudioMgr.Instance.GetNarrationForGroup(group); if (_narrationSound != null) { _narrationMeter = _narrationSound.gameObject.GetComponent<FModLevelMeter>(); _narrationFFT = _narrationSound.gameObject.GetComponent<FModPrecomputedFFT>(); } _narrationDuration = Nights2AudioMgr.Instance.GetNarrationTimeForGroup(group); SetIsNext(false); SetLit(false); //set our color for (int i = 0; i < DriveColors.Length; i++) { Renderer r = DriveColors[i].Mesh; string propName = DriveColors[i].ColorPropName; if ((r != null) && (propName.Length > 0)) r.material.SetColor(propName, CandleColor); } //subscribe to state changed events if (Nights2Mgr.Instance != null) { Nights2Mgr.Instance.OnTeleported += OnTeleported; Nights2Mgr.Instance.OnStateChanged += OnNights2StateChanged; } }
public void MakeSpotActive(Nights2Spot s) { if (s == _activeSpot) return; if (_activeSpot != null) _activeSpot.MakeActive(false); _activeSpot = s; if (_activeSpot != null) _activeSpot.MakeActive(true); }
public SpotEventArgs(Nights2Spot s) { Spot = s; }
void Start() { //spawn into each location _spawned = new GameObject[Spots.Length]; for (int i = 0; i < _spawned.Length; i++) { GameObject spawnedObj = Instantiate(SpotPrefab) as GameObject; Debug.Assert(spawnedObj != null); Nights2Spot spot = Spots[i]; Debug.Assert(spot != null); spot.SetSpawned(spawnedObj); spot.MakeActive(false); spawnedObj.transform.parent = spot.transform; spawnedObj.transform.localPosition = Vector3.zero; spawnedObj.transform.localRotation = Quaternion.identity; _spawned[i] = spawnedObj; } _activeSpot = null; }
public void TriggerSpotFX(LightAction l, float overrideTime = 1.0f, Nights2Spot actionSpot = null, float optionalHoldTime = 0.50f) { _overrideStartTime = Time.time; _overrideTime = overrideTime; //how long to override for _overrideHoldTime = optionalHoldTime; _overrideAction = l; _actionSpot = actionSpot; }
public void NotifyLanternArrived(Nights2Spot spot) { if (OnLanternArrived != null) OnLanternArrived(this, new SpotEventArgs(spot)); }