I tried to refer to another script using GetComponent<>(), but I get the following error and cannot refer to it.
Severity Code Description Project File Line Suppression State
Error CS0246 The type or namespace name'FixedJoystick' could not be found (are you missing a using directive or an assembly reference?) Assembly-CSharp-firstpass D: \ Unity GameProject \ tutorial \ SmartPhone UI Test \ Assets \ Standard Assets \ Characters \ ThirdPersonCharacter \ Scripts \ ThirdPersonUserControl.cs 51 Active
Corresponding source code
When I added the code and wrote GetComponent in the script of "ThirdPersonUserControl" included in Standard Assets, this error occurred and I could not refer to it.
The line where the error occurred is the top line in FixedUpdate ().
I want to refer to a script called "Fixed Joystick", but I can't.
using System;
using UnityEngine;
using UnityStandardAssets.CrossPlatformInput;
namespace UnityStandardAssets.Characters.ThirdPerson
{
[RequireComponent (typeof (ThirdPersonCharacter))]
public class ThirdPersonUserControl: MonoBehaviour
{
private ThirdPersonCharacter m_Character;// A reference to the ThirdPersonCharacter on the object
private Transform m_Cam;// A reference to the main camera in the scenes transform
private Vector3 m_CamForward;// The current forward direction of the camera
private Vector3 m_Move;
private bool m_Jump;// the world-relative desired move direction, calculated from the camForward and user input.
[SerializeField]
GameObject Joystick;
private void Start ()
{
// get the transform of the main camera
if (Camera.main! = null)
{
m_Cam = Camera.main.transform;}
else else
{
Debug.LogWarning (
"Warning: no main camera found. Third person character needs a Camera tagged \" MainCamera \ ", for camera-relative controls.", GameObject);
// we use self-relative controls in this case, which probably isn't what the user wants, but hey, we warned them!
}
// get the third person character (this should never be null due to require component)
m_Character = GetComponent<ThirdPersonCharacter>();
}
private void Update ()
{
if (! m_Jump)
{
m_Jump = CrossPlatformInputManager.GetButtonDown ("Jump");
}
}
// Fixed update is called in sync with physics
private void FixedUpdate ()
{
float hoge = Joystick.GetComponent<FixedJoystick>(). Vertical;
// read inputs
float h = CrossPlatformInputManager.GetAxis ("Horizontal");
float v = CrossPlatformInputManager.GetAxis ("Vertical");
bool crouch = Input.GetKey (KeyCode.C);
// calculate move direction to pass to character
if (m_Cam! = null){
// calculate camera relative direction to move:
m_CamForward = Vector3.Scale (m_Cam.forward, new Vector3 (1, 0, 1)). Normalized;
m_Move = v * m_CamForward + h * m_Cam.right;
}
else else
{
// we use world-relative directions in the case of no main camera
m_Move = v * Vector3.forward + h * Vector3.right;
}
#if! MOBILE_INPUT
// walk speed multiplier
if (Input.GetKey (KeyCode.LeftShift)) m_Move * = 0.5f;
#endif
// pass all parameters to the character control script
m_Character.Move (m_Move, crouch, m_Jump);
m_Jump = false;
}
}
}
What I tried
I can somehow understand that the namespace makes it impossible to refer to it, but I don't know the specifics at all.
"Unable to reference Unity namespace script"
I tried searching for it, but I didn't understand.
"Using namespace name"
If i write, you will be able to refer to variables in the specified namespace, but this time it was not the same problem.
I was able to refer to "Fixed Joystick" without any problem from the newly created script without namespace setting.
Please let me know if anyone can understand why the "ThirdPersonUserControl" script can no longer be referenced.
Supplementary information (FW/tool version, etc.)Please provide more detailed information here.
-
Answer # 1
Related articles
- c # - i want to call a method of another script in unity, but it doesn't work
- unity - when i refer to another script from one script, i get a nullreferenceexception
- c # - i can't attach a script in unity (beginner)
- c # - unity i want to access script variables attached to other objects
- c # - code error of script implemented by unity cannot be resolved
- c # - [unity] how to make a script that executes processing after a certain period of time
- c # - if you want to extend the script of unity asset store
- c # - slider ui is not generated from script in unity
- c # - i want to create a list of toggle in a unity script
- c # - [unity] i want to start the variables of the script of multiple generated objects individually
- c # - [unity] i want to stop the script without using getcomopnent () enabled = false;
- c # - i'm using addforce in my unity script, but i want to add a speed limit
- c # - no sound in unity games
- c # - i want to get the text of unity toggle group
- c # - unity delegate basic cs0246 error
- unity - script invalidation does not work
- c # - i want to learn unity mlagents ai with camera information
- c # - [unity] i want to paste multiple textures on a game object
- c # - i made a unity oculus rift laser pointer, but it doesn't respond
- python - you may need to restart the kernel to use updated packages error
- dart - flutter: the instance member'stars' can't be accessed in an initializer error
- php - coincheck api authentication doesn't work
- php - i would like to introduce the coincheck api so that i can make payments with bitcoin on my ec site
- [php] i want to get account information using coincheck api
- the emulator process for avd pixel_2_api_29 was killed occurred when the android studio emulator was started, so i would like to
- javascript - how to check if an element exists in puppeteer
- sh - 'apt-get' is not recognized as an internal or external command, operable program or batch file
- i want to check the type of a shell script variable
- i want to call a child component method from a parent in vuejs
Another question I saw a long time ago was "I want to make MonoBehavior inheritance Photon.MonoBehavior inheritance, but I get an error" or "I want the script of FirstPersonController to refer to the value!" had.
PostscriptThirdPersonUserControl
Should be a Standard Assets script, so maybe these cases apply?if
FixedJoystick
If is pointing to what is included in the Joystick Pack, put the "Joystick Pack" folder in the project in the "Plugins" folder (or create a new one if not), and then "Assets"->"Plugins"->" If you make a folder structure such as "Joystick Pack" → ...ThirdPersonUserControl
At the innerFixedJoystick
I think you will be able to see.