Ver 0.2.3.0 추가 수정사항
+ Rockfall 로직 변경 떨어지는 속도 0.8초 등가속도 + ProjectileController 에서 targetLayer가 Props인 경우 DamageableProps으로 한정
This commit is contained in:
parent
07ae6e86b2
commit
bb10ead082
@ -108,6 +108,12 @@ namespace BlueWater
|
||||
|
||||
// transform.position = raycastHit.point + raycastHit.normal * _collideOffset;
|
||||
var hitCollider = _hitColliders[0];
|
||||
if (hitCollider.gameObject.layer == LayerMask.NameToLayer("Props")
|
||||
&& !hitCollider.CompareTag("DamageableProps"))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
var trailParticles = GetComponentsInChildren<ParticleSystem>();
|
||||
foreach (var element in trailParticles)
|
||||
{
|
||||
|
@ -61,7 +61,7 @@ namespace BlueWater
|
||||
|
||||
private IEnumerator Start()
|
||||
{
|
||||
_visualLook.SetActive(false);
|
||||
//_visualLook.SetActive(false);
|
||||
_sphereCollider.enabled = false;
|
||||
_startPosition = transform.position;
|
||||
SpawnLocation = MapManager.Instance.SandMoleMapController.ParticleInstanceLocation;
|
||||
@ -85,45 +85,62 @@ namespace BlueWater
|
||||
var fillValue = Mathf.Lerp(0f, 1f, time);
|
||||
_indicator.material.SetFloat(_fillHash, fillValue);
|
||||
}
|
||||
//transform.position = Vector3.Lerp(_startPosition, _endPosition, time);
|
||||
|
||||
// TODO : 가끔씩 공중에서 멈추는 경우?
|
||||
if (_isAcceleratedFall)
|
||||
{
|
||||
var distance = Vector3.Distance(_startPosition, _endPosition);
|
||||
var acceleration = 2 * distance / (_fallTime * _fallTime); // a = 2d / t^2
|
||||
var displacement = 0.5f * acceleration * elapsedTime * elapsedTime;
|
||||
var progress = displacement / distance;
|
||||
transform.position = Vector3.Lerp(_startPosition, _endPosition, progress);
|
||||
}
|
||||
else
|
||||
{
|
||||
transform.position = Vector3.Lerp(_startPosition, _endPosition, time);
|
||||
}
|
||||
|
||||
elapsedTime += Time.deltaTime;
|
||||
|
||||
yield return null;
|
||||
}
|
||||
|
||||
|
||||
transform.position = _endPosition;
|
||||
_indicator.material.SetFloat(_fillHash, 1f);
|
||||
HideIndicator();
|
||||
_visualLook.SetActive(true);
|
||||
//_visualLook.SetActive(true);
|
||||
|
||||
if (_isAcceleratedFall)
|
||||
{
|
||||
var distance = Vector3.Distance(_startPosition, _endPosition);
|
||||
var acceleration = 2 * distance / (_fallTime * _fallTime); // a = 2d / t^2
|
||||
elapsedTime = 0f;
|
||||
|
||||
while (elapsedTime <= _fallTime)
|
||||
{
|
||||
var time = elapsedTime;
|
||||
var displacement = 0.5f * acceleration * time * time;
|
||||
var progress = displacement / distance;
|
||||
transform.position = Vector3.Lerp(_startPosition, _endPosition, progress);
|
||||
elapsedTime += Time.deltaTime;
|
||||
|
||||
yield return null;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
elapsedTime = 0f;
|
||||
while (elapsedTime <= _fallTime)
|
||||
{
|
||||
var time = elapsedTime / _fallTime;
|
||||
transform.position = Vector3.Lerp(_startPosition, _endPosition, time);
|
||||
elapsedTime += Time.deltaTime;
|
||||
|
||||
yield return null;
|
||||
}
|
||||
}
|
||||
// if (_isAcceleratedFall)
|
||||
// {
|
||||
// var distance = Vector3.Distance(_startPosition, _endPosition);
|
||||
// var acceleration = 2 * distance / (_fallTime * _fallTime); // a = 2d / t^2
|
||||
// elapsedTime = 0f;
|
||||
//
|
||||
// while (elapsedTime <= _fallTime)
|
||||
// {
|
||||
// var time = elapsedTime;
|
||||
// var displacement = 0.5f * acceleration * time * time;
|
||||
// var progress = displacement / distance;
|
||||
// transform.position = Vector3.Lerp(_startPosition, _endPosition, progress);
|
||||
// elapsedTime += Time.deltaTime;
|
||||
//
|
||||
// yield return null;
|
||||
// }
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// elapsedTime = 0f;
|
||||
// while (elapsedTime <= _fallTime)
|
||||
// {
|
||||
// var time = elapsedTime / _fallTime;
|
||||
// transform.position = Vector3.Lerp(_startPosition, _endPosition, time);
|
||||
// elapsedTime += Time.deltaTime;
|
||||
//
|
||||
// yield return null;
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// transform.position = _endPosition;
|
||||
|
||||
if (!string.IsNullOrEmpty(_groundCrashSfxName))
|
||||
{
|
||||
|
@ -58,9 +58,9 @@ Rigidbody:
|
||||
m_ImplicitTensor: 1
|
||||
m_UseGravity: 1
|
||||
m_IsKinematic: 0
|
||||
m_Interpolate: 1
|
||||
m_Interpolate: 0
|
||||
m_Constraints: 112
|
||||
m_CollisionDetection: 2
|
||||
m_CollisionDetection: 0
|
||||
--- !u!135 &1772409705626034443
|
||||
SphereCollider:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -309,8 +309,8 @@ MonoBehaviour:
|
||||
_groundLayer:
|
||||
serializedVersion: 2
|
||||
m_Bits: 64
|
||||
_indicatorTime: 0.5
|
||||
_fallTime: 0.5
|
||||
_indicatorTime: 0.8
|
||||
_fallTime: 0.8
|
||||
_attackDamage: 1
|
||||
_isAcceleratedFall: 1
|
||||
_groundCrashSfxName:
|
||||
|
Loading…
Reference in New Issue
Block a user