本文整理汇总了C#中Widget.SendMessage方法的典型用法代码示例。如果您正苦于以下问题:C# Widget.SendMessage方法的具体用法?C# Widget.SendMessage怎么用?C# Widget.SendMessage使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Widget
的用法示例。
在下文中一共展示了Widget.SendMessage方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: PerformRayCast
void PerformRayCast()
{
//Get the world position of the tip of the wand
Vector3 wand_tip_pos = transform.position + (transform.forward * 2f);
RaycastHit hit;
bool success_hit = Physics.Raycast (wand_tip_pos,transform.forward,out hit,Mathf.Infinity);
if(success_hit)
{
//Debug.Log (hit.collider.name);
}
//If we hit a widget via raycast
if(success_hit && hit.collider.transform.parent.GetComponent<Widget>())
{
//The current widget we're hovering over, if not null, should have on leave called
if(current_widget != null)
{
current_widget.SendMessage ("Leave");
}
//Make the current widget what we just hit
current_widget = hit.collider.transform.parent.GetComponent<Widget>();
//Send the on hover message to the widget.
current_widget.SendMessage ("Hover");
//If left mouse clicked: Send the on click message to the widget.
if(Input.GetMouseButtonDown(0))
{
current_widget.SendMessage("Click");
}
}
//If we didn't hit a widget via raycast
else if(current_widget != null)
{
//The current widget's on leave is called and made null.
current_widget.SendMessage ("Leave");
current_widget = null;
}
//For debugging purposes
Debug.DrawRay(wand_tip_pos,transform.forward*100f,Color.green);
}