首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

输入文字时让人物终止不动的代码

2012-10-18 
输入文字时让人物停止不动的代码var playName Nonestatic var currentControl function Update() {

输入文字时让人物停止不动的代码

var playName = "None";
static var currentControl ;

function Update() {
? ?? ???
? ?if( currentControl)
? ?? ?? ?? ?? ? return;//当有任何输入框被点击时屏蔽之后的内容
? ?? ???
? ?? ???if (Input.GetKey(KeyCode.UpArrow)||Input.GetKey(KeyCode.W)){
? ?? ?? ?? ?? ? transform.Translate(Vector3.forward*0.5);
? ?? ???}
? ?? ???if (Input.GetKey(KeyCode.DownArrow)||Input.GetKey(KeyCode.S)){
? ?? ?? ?? ?? ? transform.Translate(Vector3.forward*-0.5);
? ?? ???}
? ?? ???if (Input.GetKey(KeyCode.LeftArrow)||Input.GetKey(KeyCode.A)){
? ?? ?? ?? ?? ? transform.Rotate(Vector3.down *2);
? ?? ???}
? ?? ???if (Input.GetKey(KeyCode.RightArrow)||Input.GetKey(KeyCode.D)){
? ?? ?? ?? ?? ? transform.Rotate(Vector3.up *2);
? ?? ???}
}
function OnGUI(){
? ?? ???playName = GUI.TextField(Rect(10,10,100,20),playName);
? ?? ???//当鼠标按在除输入框的 任意位置时
? ?? ???if( Input.GetMouseButtonDown( 0 ) && GUIUtility.hotControl == 0 )
? ?? ?? ?? ?? ? GUIUtility.keyboardControl = 0;
? ?? ?? ?? ?? ?
? ?? ???currentControl = GUIUtility.keyboardControl ;
}
ps:不管输入框在那个Scrpit中,只要在想屏蔽的地方的OnGUI加上面的代码就行,? ?? ???
if( Input.GetMouseButtonDown( 0 ) && GUIUtility.hotControl == 0 )
? ?? ?? ?? ?? ? GUIUtility.keyboardControl = 0;不用重复加入。

热点排行