public bool InNode(Gravitybody body) { Vector3 body_p = body.gameObject.transform.position; body_p = body_p - center; body_p = new Vector3(Mathf.Abs(body_p.x), Mathf.Abs(body_p.y), Mathf.Abs(body_p.z)); return(body_p.x <= half_dim.x && body_p.y <= half_dim.y && body_p.z <= half_dim.z); }
private void AddGravityBody() { GameObject gbobject = Instantiate(gravitybodyPrefab); Gravitybody gbody = gbobject.GetComponent <Gravitybody>(); if (gbody != null) { gbody.mass = (maxMass - minMass) * Random.value + minMass; gbody.velocity = new Vector3( (maxStartVelocity.x - minStartVelocity.x) * Random.value + minStartVelocity.x, (maxStartVelocity.y - minStartVelocity.y) * Random.value + minStartVelocity.y, (maxStartVelocity.z - minStartVelocity.z) * Random.value + minStartVelocity.z); gbody.transform.position = new Vector3( (maxStartPosition.x - minStartPosition.x) * Random.value + minStartPosition.x, (maxStartPosition.y - minStartPosition.y) * Random.value + minStartPosition.y, (maxStartPosition.z - minStartPosition.z) * Random.value + minStartPosition.z); gbody.gravityBodyManager = this; gbodystructure.AddGravityBody(gbody); } }
public abstract List <Gravitybody> GetGravityBodies(Gravitybody body);
public abstract void AddGravityBody(Gravitybody body);
public List <Gravitybody> GetAffectingBodies(Gravitybody body) { return(gbodystructure.GetGravityBodies(body)); }
public override List <Gravitybody> GetGravityBodies(Gravitybody body) { return(gbodies); }
public override void AddGravityBody(Gravitybody body) { gbodies.Add(body); }
public void AddBody(Gravitybody body) { }