我正在制作一个砖块破碎机游戏,其中砖块放置如下:
现在我想要的是每当我开始我的新游戏或者在比赛结束后重新开始时应该随机改变,但位置不应该改变!
有谁知道我怎么做到这一点?我应该更改Bricks脚本或Inspector本身还是两者?
这是砖块脚本:
public class BricksScript : MonoBehaviour {
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
void OnCollisionEnter2D(Collision2D col){
if (col.gameObject.tag == "ball") {
gameObject.SetActive (false);
}
}
}
答案 0 :(得分:0)
我的Unity安装在其他地方,但这是一个总体想法:
Start()
方法中:
或者,您可以将位置硬编码为砖块管理器脚本中的代码,或使用空的游戏对象来保存位置。
答案 1 :(得分:0)
谢谢你,我解决了我的问题如下:
empty gameobject
并附加script
。然后我按如下方式编写了脚本:
public class positionsBricks : MonoBehaviour {
public GameObject[] bricks;
int brickNo;
// Use this for initialization
void Start () {
Vector3 Brickpos = new Vector3 (transform.position.x, transform.position.y, transform.position.z);
brickNo = Random.Range (0, bricks.Length);
Instantiate (bricks [brickNo], Brickpos, transform.rotation);
}
// Update is called once per frame
void Update () {
}
}
在检查员处,我在脚本中拖放所有预制件然后
gameobject
并将其放在原先prefabs
所在的相同位置,并删除了原来的 $user = $this->get('security.token_storage')->getToken()->getUser();
$chartnew = $Charts->setChartNo(9999);
$user->addUserschart($chartnew);
$em->persist($user);
$em->flush();