protected virtual void OnSpawned(GameObject obj) { if (obj == null) { return; } if (mReqFinish != null) { mReqFinish(obj); } mClone = obj; mWaitForSpawned = false; //obj.transform.parent = AiManager.Manager.transform; mAiObject = clone.GetComponent <AiObject>(); if (mAiObject != null) { if (mAiObject.motor != null && mAiObject.motor.gravity > PETools.PEMath.Epsilon) { if (!AiUtil.CheckPositionOnTerrainCollider(mAiObject.position)) { mAiObject.Activate(false); } } mAiObject.DeathHandlerEvent += OnDeath; } mAiGroup = clone.GetComponent <SPGroup>(); if (mAiGroup != null) { mAiGroup.OnSpawndEvent += OnSpawnedChild; } }