我正在製作一個2D遊戲,玩家可以抓住和放下一些物體。我正在使用OnCollisionStay
函數來完成它。問題在於我的玩家需要「觸摸」盒子才能抓住它,並且我認爲在沒有網格渲染器的情況下在他的左右兩側製作兩個碰撞盒,並將腳本放到兩個碰撞盒上都可以解決問題。穿過箱子對撞機,但仍然執行OnCollisionStay功能
該劇本可行,但遊戲中的效果就像玩家觸摸並在他周圍的2個隱形框中抓取東西。
有什麼辦法讓不可見的盒子通過我的遊戲對象來抓住它們,同時仍然導致OnCollisionStay函數被執行?
這裏是我的腳本:
#pragma strict
var agarrado: boolean;
var cosa : Collision;
function OnCollisionStay(other : Collision) {
if (other.transform.position.y < transform.position.y-1.5)
return;
if(Input.GetKeyUp("e")){
cosa = other;
agarrado= true;
}
}
function Update()
{
if(agarrado)
{
cosa.transform.position.x = transform.position.x;
}
}
你好,歡迎堆棧溢出!作爲一個領導者:Unity實際上是指微軟的Inversion of Control框架。標記時,請務必使用Unity3D。 – 2014-09-22 15:32:20
@NickUdell感謝您的更正和建議!有什麼辦法可以讓你像工作一樣嗎? – Ezequiel 2014-09-22 16:21:02
隨着聲譽的提高,您可以對評論投票,但我不擔心。很高興幫助。 – 2014-09-22 18:22:08