Unity3d Unity脚本:渲染器精灵组件
我使用Brackeys的库存系统,然后我尝试定制一个设备对象,就像文档中说的那样。我需要该项目启用渲染器精灵组件时,对象拖动到武器持有人(库存),并禁用渲染器精灵时,对象从武器持有人拖出。我是实现GetComponent(spritender).enabled=true;用于激活渲染器精灵和GetComponent(Spriterender)。enabled=false;禁用,但脚本似乎不起作用,当对象从资源清册中拖出时,渲染器精灵组件仍处于活动状态。这里是启用/禁用渲染器精灵的脚本部分Unity3d Unity脚本:渲染器精灵组件,unity3d,unityscript,Unity3d,Unityscript,我使用Brackeys的库存系统,然后我尝试定制一个设备对象,就像文档中说的那样。我需要该项目启用渲染器精灵组件时,对象拖动到武器持有人(库存),并禁用渲染器精灵时,对象从武器持有人拖出。我是实现GetComponent(spritender).enabled=true;用于激活渲染器精灵和GetComponent(Spriterender)。enabled=false;禁用,但脚本似乎不起作用,当对象从资源清册中拖出时,渲染器精灵组件仍处于活动状态。这里是启用/禁用渲染器精灵的脚本部分 #pr
#pragma strict
//This script allows you to create equipment effects that will be called either OnEquip or WhileEquipped. This is usefull for magic effects and stat handling.
@script AddComponentMenu ("Inventory/Items/Equipment Effect")
@script RequireComponent(Item)
private var effectActive = false;
function Update ()
{
if (effectActive == true)
{
//-----> THIS IS WHERE YOU INSERT CODE YOU WANT TO EXECUTE AS LONG AS THE ITEM IS EQUIPPED. <-----
}
}
function EquipmentEffectToggle (effectIs : boolean)
{
if (effectIs == true)
{
effectActive = true;
Debug.LogWarning("Remember to insert code for the EquipmentEffect script you have attached to " + transform.name + ".");
//-----> THIS IS WHERE YOU INSERT CODE YOU WANT TO EXECUTE JUST WHEN THE ITEM IS EQUIPPED. <-----
GetComponent(SpriteRenderer).enabled = true;
}
else
{
effectActive = false;
//-----> THIS IS WHERE YOU INSERT CODE YOU WANT TO EXECUTE JUST WHEN THE ITEM IS UNEQUIPPED. <-----
GetComponent(SpriteRenderer).enabled = false;
//Destroy(gameObject);
}
}
#pragma strict
//此脚本允许您创建称为OnEquip或WhileEquipped的设备效果。这对魔法效果和属性处理很有用。
@脚本添加组件菜单(“库存/项目/设备效果”)
@脚本要求重新组件(项目)
private var effectActive=false;
函数更新()
{
if(effectActive==true)
{
//----->这是插入只要装备了物品就要执行的代码的地方。这是插入只要装备了物品就要执行的代码的地方。这是插入只要装备了物品就要执行的代码的地方。你应该读取冲突和触发器的信息。让它们切换渲染器启用或者在脚本中被禁用。或者更好的是让清单这样做……我不认为这是非常有效的方式,他们正在尝试
i、 e.将清单设置为触发器,并使OnTriggerCenter(collider col)do col.gameObject.GetComponent().enabled=true
和OnTriggerExit(collider col)do col.gameObject.GetComponent().enabled=false
如果您使用的是Unity的2D组件,那么它就是OnTriggerInter2D(CollizedR2D col)等等。。。。。
这只是一个示例,远远不是100%完全可靠的代码。只是朝着一个可能的方向前进。您可能需要设置更多内容。如果您仍然在,请删除此问题,干杯