
飞雷神苦无(U7 LWRP)
U7 LWRP兼容版!传送苦无!丢弃这把武器即可瞬移至其落点。注意投掷位置,否则可能当场暴毙。使用说明详见详情描述
查看大图- 使用动作按钮(法术选择器按钮)在不同模式之间切换。
- 普通模式:投掷苦无,传送到其落点位置。
- 替代模式:苦无上的文字将变为黄色。苦无将粘附在它碰撞到的任何表面上。尝试用心灵传动移动它来传送到其位置。如果你在附近,心灵传动将照常工作。
代码。如果你想要它被注释,请在评论中告诉我。
public class ItemTeleportKunai : MonoBehaviour
{
受保护的物品项;
public Collider 刀刃碰撞器;
public Transform 玩家变换;
public Transform 苦无变换;
private Transform 头部变换;
public float 初始高度;
私有 Vector3 传送位置;
public float smallStep = 0.3f;
public MeshRenderer 网格渲染器;
颜色 初始颜色;
public bool isTeleporting = false;
public bool 可传送 = false;
public bool isDelayedMode = false;
public float 传送半径 = 2f;
protected void Awake()
{
item = this.GetComponent<Item>();
网格 = this.GetComponentsInChildren<MeshRenderer>()[5];
初始颜色 = 网格.材质.颜色;
刀刃碰撞器 = item.GetComponentsInChildren<Collider>()[1];
playerTransform = Creature.player.transform;
headTransform = Player.local.head.gameObject.transform;
苦无变换 = 物品.变换;
初始高度 = 苦无变换.位置.y;
item.OnCollisionEvent += OnKunaiCollisionEvent;
item.OnGrabEvent += OnKunaiGrabEvent;
item.OnTeleGrabEvent += OnKunaiTeleGrab;
item.OnHeldActionEvent += OnKunaiHeldAction;
}
void 当苦无持有时执行动作(交互器 交互器, 手柄 手柄, 可交互对象.动作 动作)
{
如果(动作 == 可交互对象.动作.备用使用开始 && !是延迟模式)
{
延迟模式 = 开启;
mesh.material.color = Color.yellow;
} else if(动作 == 可交互对象.动作.备用使用开始 & 是延迟模式)
{
延迟模式 = 关闭;
mesh.material.color = 初始颜色;
}
}
void 当苦无碰撞事件(ref 碰撞结构体 collisionInstance)
{
如果(碰撞实例.源碰撞体 == 刀刃碰撞体 || 碰撞实例.目标碰撞体 == 刀刃碰撞体)
{
如果(物品.正在飞行)
{
如果(是延迟模式)
{
可传送 = true;
如果(碰撞实例.目标类型 != 碰撞结构体.目标类型.NPC)
{
item.rb.isKinematic = true;
}
}
否则
{
传送();
}
}
}
}
void 当苦无远程抓取(Handle 句柄, Telekinesis 远程抓取器)
{
如果 ((Vector3.Distance(headTransform.position, kunaiTransform.position) < 传送半径))
{
item.rb.isKinematic = false;
可传送 = false;
}
如果(可传送且为延迟模式)
{
传送();
}
}
void 当苦无抓取事件(Handle handle, Interactor interactor)
{
item.rb.isKinematic = false;
可传送 = false;
}
void FixedUpdate()
{
}
void 传送()
{
传送位置 = 苦无变换.位置 - 玩家变换.位置;
传送位置.y = 0f;
传送位置.归一化();
传送位置 *= 小步长;
playerTransform.position = kunaiTransform.position - teleportLocation;
生物.玩家.身体.玩家.移动到身体(生物.玩家.身体);
}
}
还没有人评论,去客户端里说两句吧。
评论在新手盒子客户端中发表,这里同步展示。