using UnityEngine;
using System.Collections;
public class Map : MonoBehaviour {
public GameObject player;//要定位的物体、人物
//设备在地图上的信息
[System.Serializable]
public class Equipment {
public Texture2D m_texture;//按钮的背景图(设备缩略图)
public Rect m_rect;//按钮的位置及大小
public string m_tip;//鼠标移动到设备缩略图(按钮)上的提示信息
public Vector3 m_position;//按钮点击后摄像机跳转的位置
public Vector3 m_quaternion;//按钮点击后摄像机跳转的角度
}
public Equipment[] equip;
private Equipment tempEquip;
void OnGUI() {
for (int i = 0; i < equip.Length; ++i) {
tempEquip = equip[i];//保存当前按钮的信息
if (GUI.Button(tempEquip.m_rect, new GUIContent(tempEquip.m_texture, tempEquip.m_tip)))//绘制按钮(设备图标)
{
player.transform.position = tempEquip.m_position;//更改Player的位置
player.transform.eulerAngles = tempEquip.m_quaternion;//更改Player的角度
}
}
GUI.Label(new Rect(Input.mousePosition.x + 10, Screen.height - Input.mousePosition.y - 10, 300, 30), GUI.tooltip);//显示提示信息
}
}
Unity3d 地图
最新推荐文章于 2025-03-06 11:07:00 发布