2017-04-26 94 views
2

我是一个绝对的初学者。我目前做的目的是降低景点脚本JavaScript和目标时,我想为x和y的灵敏度下降到2。我试图用更改FirstPersonController MouseLook的灵敏度

GetComponent.<UnityStandardAssets.Characters.FirstPerson.MouseLook>().sensitivityX = 2; 

,但不起作用。该行的错误是

NullReferenceException: Object reference not set to an instance of an object 
Boo.Lang.Runtime.RuntimeServices.GetDispatcher (System.Object target, System.String cacheKeyName, System.Type[] cacheKeyTypes, Boo.Lang.Runtime.DynamicDispatching.DispatcherFactory factory) 
Boo.Lang.Runtime.RuntimeServices.GetDispatcher (System.Object target, System.Object[] args, System.String cacheKeyName, Boo.Lang.Runtime.DynamicDispatching.DispatcherFactory factory) 
Boo.Lang.Runtime.RuntimeServices.SetProperty (System.Object target, System.String name, System.Object value) 
AimDownSights.Update() (at Assets/AimDownSights.js:33) 

有谁知道如何访问参考FPSController鼠标外观下拉,所以我可以改变的敏感性?谢谢!

+1

你得到任何错误?你是什​​么意思*“它不工作”*? – Programmer

+0

@Programmer我编辑了OP – Orion31

回答

1

首先,您应该尽快使用C#,因为它具有比Javascript更多的功能。此外,你将获得比Unity更多的帮助。最后,Unity脚本将来会停止使用的可能性很高,所以现在就做出这个决定。你可以找到Unity的C#教程here

脚本未在FirstPersonController脚本中公开。

我们将公开MouseLook。从资产/资产标准/人物/ FirstPersonCharacter /脚本目录打开FirstPersonController.cs脚本,下面添加到它的脚本:

public MouseLook mouseLookCustom 
{ 
    get { return m_MouseLook; } 
} 

就是这样。我们现在已经暴露了MouseLook实例。


要修改鼠标的东西:

C#:

using UnityStandardAssets.Characters.FirstPerson; 

public class Fpstest : MonoBehaviour 
{ 
    FirstPersonController fps; 

    // Use this for initialization 
    void Start() 
    { 
     GameObject fpObj = GameObject.Find("FPSController"); 
     fps = fpObj.GetComponent<FirstPersonController>(); 
     fps.mouseLookCustom.XSensitivity = 5; 
    } 
} 

Unityscript/JavaScript的

#pragma strict 
import UnityStandardAssets.Characters.FirstPerson; 

var fps:FirstPersonController; 

function Start() { 
    var fpObj = GameObject.Find("FPSController"); 
    fps = GetComponent.<FirstPersonController>(); 
    fps.mouseLookCustom.XSensitivity = 5; 
} 
+0

非常好的答案!我本周开始使用Unity,由于我已经了解Javascript,因此我正在使用。我有计划学习C#,但我想在深入了解新语言之前了解Unity的感受 – Orion31