IEnumerator ReplyKnock(KnockType type) { Animator anim = GetComponent <Animator>(); anim.Play("Shake"); switch (type) { case KnockType.wrongKnock: switch (Random.Range(0, 4)) { case 0: speachBubble.Say("Faaalsch!", Bubbles.Shouting, fontSize: 35, speed: .2f, autoPlay: true); break; case 1: speachBubble.Say("Nope!", Bubbles.Shouting, fontSize: 35, speed: .2f, autoPlay: true); break; case 2: speachBubble.Say("Eine Milli-\nsekunde zu\nlangsam!", Bubbles.Shouting, fontSize: 30, speed: .2f, autoPlay: true); break; case 3: speachBubble.Say("Nicht ganz\nrichtig!", Bubbles.Shouting, fontSize: 35, speed: .2f, autoPlay: true); break; } break; case KnockType.correctKnock: speachBubble.Say("Richtig!", Bubbles.Normal, fontSize: 35, speed: .2f, autoPlay: true, target: gameObject); break; } yield return(new WaitForSeconds(1)); anim.Play("Empty"); yield break; }
override public void getKnockBack(GameObject enemy, bullet_property bulletProperty) { enemy_property enemyProperty = enemy.GetComponent <enemy_property> (); //子弹的类型 //weaponType weapontype = bulletProperty.WeaponType; //Debug.Log("bulletProperty.weaponType: " +weapontype); //击退的力度 int force = bulletProperty.bulletknock; //敌人是否有霸体 if (enemyProperty.heavyBody) { return; } //击退的类型 //击退效果分类 //1:普通击退 //2:爆炸击退 //3: KnockType knockType = bulletProperty.bulletSpe.knockType; switch (knockType) { default: break; case KnockType.none: break; case KnockType.normal: normalKnockBack(bulletProperty, force); break; case KnockType.explode: explodeKnockBack(bulletProperty, force); break; break; } }