unity2Dでのタグを条件とした異なる場所にコンポ―メントされているプログラムのメソッドを呼び出す方法

実現したいこと

タグに触れた時にそのタグを付けた場所とは異なる場所にコンポ―メントされているプログラムのメソッドを呼び出したい。

前提

https://sunagitsune.com/unitygetcomponentscript/amp/
を参考にして触れている場所自体にコンポ―メントされているプログラムのメソッドを呼び出すプログラムを流用したが動かなかった。

触れている場所とは異なる場所にコンポ―メントされているプログラムのメソッドを呼び出すプログラムを知りたい。

該当のソースコード

C#

1using System.Collections;2using System.Collections.Generic;3using UnityEngine;4 5public class WarpPoint : MonoBehaviour 6{7 private Rigidbody2D rbody2D;8 9 void Start()10 {11 rbody2D = GetComponent<Rigidbody2D>();12 }13 private void OnTriggerEnter2D(Collider2D collider)14 {15 if (collider.gameObject.tag == "warp")16 {17 18 19 if (collider.gameObject.GetComponent<Fadeout>())20 {21 22 collider.GetComponent<Fadeout>().Fade();23 }24 25 transform.position = new Vector3(0.0f, 0.0f, 0.0f);26 27 }28 29 }30}

C#

1using System.Collections;2using System.Collections.Generic;3using UnityEngine;4using UnityEngine.UI;5using UnityEngine.SceneManagement;6 7public class Fadeout : MonoBehaviour 8{9 10 11 public GameObject Panelfade;12 13 Image fadealpha;14 15 private float alpha;16 17 private bool fadeout;18 19 public int SceneNo;20 21 22 void Start()23 {24 fadealpha = Panelfade.GetComponent<Image>();25 alpha = fadealpha.color.a;26 fadeout = false;27 28 }29 30 31 void Update()32 {33 if (fadeout == true)34 {35 alpha += 0.01f;36 fadealpha.color = new Color(0, 0, 0, alpha);37 if (alpha >= 1)38 {39 fadeout = false;40 }41 }42 }43 public void Fade()44 {45 fadeout = true;46 }47}

コメントを投稿

0 コメント