public void EnemyScale(AIActor aiActor, Vector2 ScaleVector) { aiActor.transform.localScale = ScaleVector.ToVector3ZUp(1f); aiActor.HasShadow = false; // aiActor.CorpseObject.transform.localScale = actorSize.ToVector3ZUp(1f); int cachedLayer = aiActor.gameObject.layer; int cachedOutlineLayer = cachedLayer; aiActor.gameObject.layer = LayerMask.NameToLayer("Unpixelated"); cachedOutlineLayer = SpriteOutlineManager.ChangeOutlineLayer(aiActor.sprite, LayerMask.NameToLayer("Unpixelated")); if (aiActor.specRigidbody) { SpeculativeRigidbody specRigidbody = aiActor.GetComponent <SpeculativeRigidbody>(); // if (specRigidbody == null) { return; } specRigidbody.transform.localScale = ScaleVector.ToVector3ZUp(1f); for (int i = 0; i < specRigidbody.PixelColliders.Count; i++) { specRigidbody.PixelColliders[i].Regenerate(specRigidbody.transform, true, true); } specRigidbody.UpdateCollidersOnScale = true; specRigidbody.RegenerateColliders = true; specRigidbody.ForceRegenerate(true, true); specRigidbody.RegenerateCache(); } ChaosUtility.CorrectForWalls(aiActor); // aiActor.procedurallyOutlined = true; // aiActor.SetOutlines(true); }