public SShakeData(Transform pTransform, EShakePos eShakePos, float fShakePower, float fShakeMinusDelta) { this.pTransform = pTransform; this.vecOriginPos = pTransform.position; eShakePosType = eShakePos; _fRemainShakePow = fShakePower; _fShakeMinusDelta = fShakeMinusDelta; }
public Vector3 DoCalculate_ShakePosition(Vector3 vecOriginPos, EShakePos eShakePosType, float fShakePower) { Vector3 vecShakePos = PrimitiveHelper.RandomRange(vecOriginPos.AddFloat(-fShakePower), vecOriginPos.AddFloat(fShakePower)); if (eShakePosType != EShakePos.All) { if (eShakePosType == EShakePos.Y || eShakePosType == EShakePos.YZ || eShakePosType == EShakePos.Z) { vecShakePos.x = vecOriginPos.x; } if (eShakePosType == EShakePos.X || eShakePosType == EShakePos.XZ || eShakePosType == EShakePos.Z) { vecShakePos.y = vecOriginPos.y; } if (eShakePosType == EShakePos.X || eShakePosType == EShakePos.XY || eShakePosType == EShakePos.Y) { vecShakePos.z = vecOriginPos.z; } } return(vecShakePos); }
// ========================================================================== // /* public - [Do] Function * 외부 객체가 호출(For External class call)*/ public void DoShakeObject(Transform pTransform, EShakePos eShakePos, float fShakePower, float fShakeMinusDelta) { _listShakeData.Add(new SShakeData(pTransform, eShakePos, fShakePower, fShakeMinusDelta)); }