void StartNewTrail() { GameObject go = Instantiate(trailPrefab, transform.position, transform.rotation); TrailStream newStream = go.GetComponent <TrailStream>(); newStream.StartStream(this); NetworkServer.Spawn(go); if (currentStream != null) { currentStream.SetAttachment(go); } currentStream = newStream; }
public float GetTotalLength() { GetEndingPosition(); float selfLength = GetSegmentLength(); if (attachedTo == null) { return(selfLength); } TrailStream attachedTrail = attachedTo.GetComponent <TrailStream>(); FakeAttachment fakeAttachment = attachedTo.GetComponent <FakeAttachment>(); float forwardLength = attachedTrail?.GetTotalLength() ?? fakeAttachment?.GetTotalLength() ?? 0; return(forwardLength + selfLength); }
private void Start() { killFeed = KillFeed.instance; trailStream = GetComponent <TrailStream>(); }