【发布时间】:2021-03-12 15:52:31
【问题描述】:
我制作了一个 2D 格斗游戏,在该游戏中,玩家应该通过从一个对象到另一个对象进行格斗来穿越地图。现在我只是将其中一些预制件拖到我的场景中以尝试游戏玩法。我也有一些能量提升和障碍。但是,我希望地图在 x 轴上是无限的。为了实现这一点,我想在玩家或更好的相机边界移动时随机实例化我的地图预制件。此外,我希望脚本能够处理地图预制的不同概率和随机生成位置。 我不太确定如何解决这个问题,因为我不知道使用某种随机生成的、被实例化的块或其他东西是否有意义。
我目前唯一编写的脚本是这样的:
using System.Collections.Generic;
using System.Collections.Specialized;
using UnityEngine;
public class MapBuilder : MonoBehaviour
{
private Vector2 screenBounds;
[Header("Map Prefabs:")]
public GameObject Rec;
public GameObject Circle;
public GameObject Coin;
public GameObject Thorn;
public GameObject Time;
public GameObject Boost;
public GameObject Multi;
public GameObject Disabler;
void Start()
{
screenBounds = Camera.main.ScreenToWorldPoint(new Vector3(Screen.width, Screen.height, Camera.main.transform.position.z));
}
}
【问题讨论】:
-
欢迎。我回答了一个可能的算法。我认为您的问题有点过于宽泛,无法包含所有需要的代码。希望这能让你开始。
标签: c# dictionary unity3d