public override void OnInspectorGUI() { OrganismBranch mytarget = (OrganismBranch)target; if (GUILayout.Button("Break This Branch")) { mytarget.BreakBranch(); } }
public GameObject AddBranch(Vector3 _basePosition, Vector3 _dir, int length) { GameObject newBranchGameobject = new GameObject(); newBranchGameobject.name = "Branch"; newBranchGameobject.transform.position = _basePosition; OrganismBranch newOB = newBranchGameobject.AddComponent <OrganismBranch> (); newOB.direction = _dir; newBranchGameobject.transform.parent = gameObject.transform; newOB.index = allBranchGameObjects.Count; //0,1,2,3.... newOB.branchLength = length; allBranchGameObjects.Add(newBranchGameobject); return(newBranchGameobject); }
// Use this for initialization void Start() { //get paremeter value from Organism myOrganismClass = gameObject.transform.parent.transform.parent.GetComponent <Organism> (); myOrganismBranchClass = gameObject.transform.parent.GetComponent <OrganismBranch> (); growingSpeed = myOrganismClass.growingSpeed; startScale = new Vector3(myOrganismClass.newBornScale, myOrganismClass.newBornScale, myOrganismClass.newBornScale); gameObject.tag = myOrganismClass.objectTagName; growingVelocity = new Vector3(growingSpeed, growingSpeed, growingSpeed); gameObject.transform.localScale = startScale; gameObject.transform.rotation = Random.rotation; float randomSize = Random.Range(0.7f, 1.4f) * myOrganismClass.modelSizeCorrection; targetScale = new Vector3(randomSize, randomSize, randomSize); }