void SmoothPushing() { if (ExtraMath.IsEqual(rb.velocity.x, 0f, 0.5f)) { if (ExtraMath.IsEqual(rb.velocity.y, 0f, 0.5f)) { base.LockSprites("xyz"); } else { base.LockSprites("xz"); } } else { if (ExtraMath.IsEqual(rb.velocity.y, 0f, 0.5f)) { base.LockSprites("yz"); } else { base.LockSprites("z"); } } }
protected virtual void DoSpriteLock(Vector2 direction) { if (ExtraMath.IsEqual(direction.x, 0)) { if (ExtraMath.IsEqual(direction.y, 0)) { LockSprites("xyz"); } else { LockSprites("xz"); } } else { if (ExtraMath.IsEqual(direction.y, 0)) { LockSprites("yz"); } else { LockSprites("z"); } } }
public virtual void UpdateDimensions(Vector2 newLength) { Vector2 intDimensions = new Vector2(Mathf.Ceil(newLength.x), Mathf.Ceil(newLength.y)); //if (!hasBeenInitialized) { Initialize(); //} bool isVisible = (!ExtraMath.IsEqual(newLength.x, 0) && !ExtraMath.IsEqual(newLength.y, 0)); hitBox.enabled = isVisible; rend.enabled = isVisible; if (isVisible) { rend.size = intDimensions; hitBox.offset = new Vector2(intDimensions.x / 2, dimensions.y / 2); hitBox.size = newLength; } //dimensions = intDimensions; }