void onSlash(YoumuSlashTarget.SlashData data) { var typeData = data.target.TypeData; //set Variables var AbsOffset = Mathf.Abs(data.timeOffset); var hitLevel = getHitLevel(AbsOffset); var particlePrefab = getParticlePrefab(hitLevel); //Create particles var newObject = Instantiate(particlePrefab, transform.position, Quaternion.identity); newObject.transform.parent = transform.root; newObject.transform.position += positionOffset; newObject.transform.localScale = new Vector3( Mathf.Abs(newObject.transform.localScale.x), Mathf.Abs(newObject.transform.localScale.y), Mathf.Abs(newObject.transform.localScale.z)); //Particle arcing for non-good hits if (hitLevel != HitLevel.Good) { var particles = newObject.GetComponent <ParticleSystem>(); var particlesShapeModule = particles.shape; var arc = hitLevel == HitLevel.Bad ? badArc : normalArc; particlesShapeModule.arc = arc; var rotation = (180f - arc) / 2f; if (data.timeOffset > 0f) { rotation += 180f; } newObject.transform.eulerAngles = Vector3.forward * rotation; } //Play audio YoumuSlashSoundEffectPlayer.instance.play(data.target.TypeData.HitBaseSoundEffect, data.target.HitDirection); if (hitLevel != HitLevel.Bad) { YoumuSlashSoundEffectPlayer.instance.play(data.target.TypeData.HitNormalSoundEffect, data.target.HitDirection); } else { YoumuSlashSoundEffectPlayer.instance.play(data.target.TypeData.HitBarelySoundEffect, data.target.HitDirection); } }
void onSlash(YoumuSlashTarget.SlashData slashData) { enabled = false; }