=====TakeOff プラグインの処理アナザー===== TakeOff プラグインは選択されたメイドを TakeOff するプラグインとして機能を記述します。\\ TakeOff が脱衣というのは許せない、メイドを飛ばさないとダメだ!!という方はこちらです。\\ // [ 実行 ]ボタン if (GUILayout.Button("実行", this.uiStyleButton) && this.maid != null) { // TODO : 実行ボタン押下時の処理を記述(ひな形ではログを出力するだけ) ConsoleLog.Information("実行されたメイドさんは{0}。", maid.status.fullNameJpStyle); } この部分を if (GUILayout.Button("実行", this.uiStyleButton) && this.maid != null) { // 飛び上がらせるコルーチンを定義する IEnumerator takeOff(Maid targetMaid) { // 飛び上がった量 var height = 0f; // 飛び上がる速度 var speed = 0f; // 加速度 var acceleration = 0.01f; do { // 速度を加速度分加速 speed += acceleration; // 今回飛び上がる分を加算 height += speed; // 現在のメイド位置を取得 var newPosition = targetMaid.transform.position; // 今回飛び上がる分をY座標に加算 newPosition.y += speed; // 今回飛び上がらせた位置を反映 targetMaid.transform.position = newPosition; // 1/60秒待つ yield return new WaitForSeconds(1f/60f); // 計200上昇するまで繰り返す } while (height < 200f); // 現在のメイド位置を取得 var orgPosition = targetMaid.transform.position; // 飛び上がった分をY座標に減算することで元の位置に orgPosition.y -= height; // 戻した位置を反映 targetMaid.transform.position = orgPosition; } // 飛び上がらせるコルーチンを起動する、その際選択中のメイドを渡す。 this.StartCoroutine(takeOff(this.maid)); } に変更します。\\ \\ 処理を解説していきます。\\ // 飛び上がらせるコルーチンを定義する IEnumerator takeOff(Maid targetMaid) 関数内ローカル関数でコルーチンを定義します。\\ 渡されたメイドに対して 1/60 秒ごとに、上方向に座標を変更するコルーチンを定義します。 // 飛び上がらせるコルーチンを起動する、その際選択中のメイドを渡す。 this.StartCoroutine(takeOff(this.maid)); 定義したコルーチンに選択中のメイドを渡し実行します。 IEnumerator takeOff(Maid targetMaid) { // 飛び上がった量 var height = 0f; // 飛び上がる速度 var speed = 0f; // 加速度 var acceleration = 0.01f; do { // 速度を加速度分加速 speed += acceleration; // 今回飛び上がる分を加算 height += speed; // 現在のメイド位置を取得 var newPosition = targetMaid.transform.position; // 今回飛び上がる分をY座標に加算 newPosition.y += speed; // 今回飛び上がらせた位置を反映 targetMaid.transform.position = newPosition; // 1/60秒待つ yield return new WaitForSeconds(1f/60f); // 計200上昇するまで繰り返す } while (height < 200f); // 現在のメイド位置を取得 var orgPosition = targetMaid.transform.position; // 飛び上がった分をY座標に減算することで元の位置に orgPosition.y -= height; // 戻した位置を反映 targetMaid.transform.position = orgPosition; } コルーチンは連続した処理を一定間隔やフレーム毎に実行させる処理を定義できる関数です。\\ \\ acceleration ずつ speed をあげて、その speed 分メイドの Y 座標を上に変更します。\\ 変更した量は height に記録しておいて、200 以上上昇するまで 1/60 秒待ってループしています。\\ 200 以上上昇後は、 height に記録してある上昇量分メイドの Y 座標を下げてコルーチンを終了しています。\\ ====欲張りなあなたへ・・・==== 脱衣後に打ち上がられてもいいんじゃよ。\\