public void Update(TimeObject timeObject) { ScreenEffects.Update(timeObject); SpriteTrail.Update(timeObject); ParticleManager.Update(timeObject); _world.Update(timeObject); JamUtilities.Camera.DoCameraMovement(timeObject); List <Tribe> templist = new List <Tribe>(); foreach (var t in _tribeList) { t.Update(timeObject); if (!t.IsDead()) { templist.Add(t); } else { if (t.Equals(_tribeList[0])) { _playerTribeDead = true; } } } _tribeList = templist; }
public static GameObject GetFreeElement() { if (m_FreeElements.Count > 0) { return(m_FreeElements.Pop()); } return(GameObject.Instantiate(SpriteTrail.GetTrailElementPrefab())); }
public void Initialise(SpriteTrail trail) { m_NeedDequeue = false; m_TrailPos = -1; m_NeedLateUpdate = false; m_TimeSinceCreation = 0; m_MotherTrail = trail; this.gameObject.SetActive(true); m_TrailSettings = trail.m_CurrentTrailPreset; m_SpRenderer = GetComponent <SpriteRenderer>(); if (m_TrailSettings.m_SpecialMat != null) { m_SpRenderer.material = m_TrailSettings.m_SpecialMat; } else { m_SpRenderer.material = trail.m_SpriteToDuplicate.material; } m_SpRenderer.color = trail.m_SpriteToDuplicate.color; m_SpRenderer.sortingLayerName = trail.m_LayerName; m_SpRenderer.sortingOrder = trail.m_TrailOrderInLayer; m_SpRenderer.sprite = trail.m_SpriteToDuplicate.sprite; m_SpRenderer.flipX = trail.m_SpriteToDuplicate.flipX; m_SpRenderer.flipY = trail.m_SpriteToDuplicate.flipY; m_InitSize = m_Transform.localScale; m_InitPos = m_Transform.localPosition; m_Init = true; trail.m_ElementsInTrail.Enqueue(this); ApplyFrameEffect(); if (m_TrailSettings.m_TrailElementDurationCondition == TrailElementDurationCondition.ElementCount) { if (m_TrailSettings.m_TrailMaxLength > 0) { while (trail.m_ElementsInTrail.Count > m_TrailSettings.m_TrailMaxLength) { trail.m_ElementsInTrail.Dequeue().Hide(); } } else { while (trail.m_ElementsInTrail.Count > 0) { trail.m_ElementsInTrail.Dequeue().Hide(); } } int _cnt = 0; foreach (TrailElement _elem in trail.m_ElementsInTrail) { _elem.m_TrailPos = trail.m_ElementsInTrail.Count - _cnt; _elem.m_NeedLateUpdate = true; _cnt++; } } }
public override void _Ready() { Global.Drop = this; PauseMode = PauseModeEnum.Stop; GetParent().Connect("TeleportStarted", this, nameof(OnTeleportStarted)); GetParent().Connect("TeleportFinished", this, nameof(OnTeleportFinished)); _originalScale = new Vector2(Scale); _spriteTrail = FindNode("SpriteTrail") as SpriteTrail; CurrentModulate = BasicModulate; }
// Called when the node enters the scene tree for the first time. public override void _Ready() { _rand.Randomize(); _obstacle = GetParent <Obstacle>(); _velocity = new Vector2(_rand.RandfRange(-1f, 2f), _rand.RandfRange(-5f, -6f)); if (_velocity.x < 0) { _accel = new Vector2(_accel.x * -1, _accel.y); } if (_obstacle.Position.y <= 0) { _accel = new Vector2(_accel.x, _accel.y * -1); _velocity = new Vector2(_velocity.x, _velocity.y * -1); } SpriteTrail st = new SpriteTrail(); _obstacle.AddChild(st); }
public override void OnInspectorGUI() { serializedObject.Update(); SpriteTrail TrailSettingsScript = target as SpriteTrail; EditorGUILayout.PropertyField(m_TrailName); GUILayout.Space(15); EditorGUILayout.PropertyField(m_CurrentTrailPreset); if (TrailSettingsScript.m_CurrentTrailPreset == null) { EditorGUILayout.HelpBox("You need to assign a preset (Current trail preset).\n You can create one, or use one of the preset In the folder : \nSpriteTrail/PREFAB/TRAIL_PRESETS", MessageType.Warning, true); GUILayout.Space(15); } EditorGUILayout.PropertyField(m_HideTrailOnDisabled); //GUILayout.Space(15); EditorGUILayout.PropertyField(m_TrailActivationCondition); switch (TrailSettingsScript.m_TrailActivationCondition) { case TrailActivationCondition.AlwaysEnabled: break; case TrailActivationCondition.Manual: break; case TrailActivationCondition.VelocityMagnitude: EditorGUILayout.PropertyField(m_VelocityNeededToStart); EditorGUILayout.PropertyField(m_StartIfUnderVelocity); EditorGUILayout.PropertyField(m_VelocityStartIsLocalSpace); GUILayout.Space(15); break; } EditorGUILayout.PropertyField(m_TrailDisactivationCondition); switch (TrailSettingsScript.m_TrailDisactivationCondition) { case TrailDisactivationCondition.Manual: break; case TrailDisactivationCondition.Time: EditorGUILayout.PropertyField(m_TrailActivationDuration); GUILayout.Space(15); break; case TrailDisactivationCondition.VelocityMagnitude: EditorGUILayout.PropertyField(m_VelocityNeededToStop); EditorGUILayout.PropertyField(m_StopIfOverVelocity); EditorGUILayout.PropertyField(m_VelocityStopIsLocalSpace); GUILayout.Space(15); break; } EditorGUILayout.PropertyField(m_TrailParent); EditorGUILayout.PropertyField(m_SpriteToDuplicate); EditorGUILayout.PropertyField(m_LayerName); EditorGUILayout.PropertyField(m_ZMoveStep); EditorGUILayout.PropertyField(m_ZMoveMax); EditorGUILayout.PropertyField(m_TrailOrderInLayer); serializedObject.ApplyModifiedProperties(); }