void OnLand(WeightManager.Weight aWeight, LandImpact.CEnviroment aEnviroment, float aFallDistance) { //重さが2で if (aWeight == WeightManager.Weight.heavy) { //水中か、地上に着地したら if (aEnviroment == LandImpact.CEnviroment.cWater || aEnviroment == LandImpact.CEnviroment.cGround) { //既にコルーチンが走っているなら、止める if (mShakeCoroutine != null) { StopCoroutine(mShakeCoroutine); } //落下した高さが一定以下なら if (mShakeDisHeight >= aFallDistance) { mShakeCoroutine = StartCoroutine(Shake(mShakeTime, mShakeMagnitude / 2.0f, 0.25f)); //カメラを揺らす(弱い) } else { mShakeCoroutine = StartCoroutine(Shake(mShakeTime, mShakeMagnitude * 3.0f, 0.25f)); //カメラを揺らす(強い) } //プレイヤーなら、移動不可にする SetPlayerCanMove(false); StopPlayerMove(); //慣性をなくす } } }
void OnLand(WeightManager.Weight aWeight, LandImpact.CEnviroment aEnviroment) { //重さが2で if (aWeight == WeightManager.Weight.heavy) { //水中か、地上に着地したら if (aEnviroment == LandImpact.CEnviroment.cWater || aEnviroment == LandImpact.CEnviroment.cGround) { ShakeCamera.ShakeAll(mShakeTime); //カメラを揺らす } } }
void OnLand(WeightManager.Weight aWeight, LandImpact.CEnviroment aEnviroment, float aFallDistance) { //水面に落ちたなら if (aEnviroment == LandImpact.CEnviroment.cWaterSurface) { //重さが2なら if (aWeight == WeightManager.Weight.heavy) { SoundManager.SPlay(mLandImpactWaterHeavySE); //音を鳴らす } else if (aWeight == WeightManager.Weight.light) { SoundManager.SPlay(mLandImpactWaterLightSE); } } //地上で落ちたなら else if (aEnviroment == LandImpact.CEnviroment.cGround) { if (aWeight == WeightManager.Weight.heavy) { SoundManager.SPlay(mLandImpactHeavySE); } else if (aWeight == WeightManager.Weight.light) { SoundManager.SPlay(mLandImpactLightSE); } } //水中で落ちたなら else if (aEnviroment == LandImpact.CEnviroment.cWater) { if (aWeight == WeightManager.Weight.heavy) { SoundManager.SPlay(mLandImpactHeavySE); } else { SoundManager.SPlay(mLandImpactLightSE); } } }
void OnLand(WeightManager.Weight aWeight, LandImpact.CEnviroment aEnviroment) { //水面に落下したなら if (aEnviroment == LandImpact.CEnviroment.cWaterSurface) { if (aWeight == WeightManager.Weight.heavy) { var g = Instantiate(mLandImpactWaterHeavyPrefab, transform); g.transform.localPosition = mWaterEffectOffset; g.transform.parent = null; //オブジェクトに追従しない } if (aWeight == WeightManager.Weight.light) { var g = Instantiate(mLandImpactWaterLightPrefab, transform); g.transform.localPosition = mWaterEffectOffset; g.transform.parent = null; //オブジェクトに追従しない } } //地上に落下したなら else if (aEnviroment == LandImpact.CEnviroment.cGround) { if (aWeight == WeightManager.Weight.heavy) { var g = Instantiate(mLandImpactGroundHeavyPrefab, transform); g.transform.localPosition = mDownEffectOffset; } if (aWeight == WeightManager.Weight.light) { var g = Instantiate(mLandImpactGroundLightPrefab, transform); g.transform.localPosition = mDownEffectOffset; } if (aWeight == WeightManager.Weight.flying) { var g = Instantiate(mLandImpactGroundFlyingPrefab, transform); g.transform.localPosition = mUpEffectOffset; } } }
void OnLand(WeightManager.Weight aWeight, LandImpact.CEnviroment aEnviroment, float aFallDistance) { //水面に落下したなら if (aEnviroment == LandImpact.CEnviroment.cWaterSurface) { if (aWeight == WeightManager.Weight.heavy) { var g = Instantiate(mLandImpactWaterHeavyPrefab); //オブジェクトに追従しない g.transform.position = WaterEffectPosition(); } if (aWeight == WeightManager.Weight.light) { var g = Instantiate(mLandImpactWaterLightPrefab); g.transform.position = WaterEffectPosition(); } } //地上に落下したなら else if (aEnviroment == LandImpact.CEnviroment.cGround) { if (aWeight == WeightManager.Weight.heavy) { var g = Instantiate(mLandImpactGroundHeavyPrefab); g.transform.position = DownEffectPosition(); } if (aWeight == WeightManager.Weight.light) { var g = Instantiate(mLandImpactGroundLightPrefab); g.transform.position = DownEffectPosition(); } if (aWeight == WeightManager.Weight.flying) { //var g = Instantiate(mLandImpactGroundFlyingPrefab); //g.transform.position = UpEffectPosition(); } } }