В конце концов, у игрока закончатся боеприпасы и он не сможет запустить лазер, поэтому давайте создадим подборщик боеприпасов, который восстановит боеприпасы игрока до максимального количества.
- В этой статье есть аспект анимации для достижения желаемых результатов, включая изменение существующих спрайтов. В этой статье этот процесс не рассматривается, но ранее я писал о создании анимации, которая может служить напоминанием.
- Первым шагом будет изменение моя модульная система включения в моем сценарии включения. Количество бонусов или случаев в отношении моего кода будет варьироваться от 0 до 3, где 3 — это только что созданный набор боеприпасов.
switch(powerupID)
{
case 0:
player.TripleShotActive();
break;
case 1:
player.SpeedBoostActive();
break;
case 2:
player.ShieldActive();
break;
case 3:
player.AmmoCount(15);
break;
default:
Debug.Log("Default Value");
break;
}
2. Если коллекционный предмет боеприпасов подобран игроком, количество боеприпасов игрока должно быть равно 15. Он также обновит пользовательский интерфейс для количества боеприпасов, чтобы отразить изменение. Изменения, добавленные ниже, находятся в моем скрипте Player.
public void AmmoCount(int shots)
{
if (shots >= _currentAmmo)
{
_currentAmmo = 15;
}
else
{
_currentAmmo += shots;
}
_uiManager.UpdateAmmo(_currentAmmo);
}
Количество выстрелов никогда не превысит 15 при сборе бонуса.
3. Убедитесь, что ваш бонус может правильно появиться в скрипте SpawnManager.
IEnumerator SpawnPowerupRoutine()
{
while (_stopSpawning == false)
{
Vector3 posToSpawn = new Vector3(Random.Range(-8.0f, 8.0f), 7, 0);
int randomPowerup = Random.Range(0, 4);
Instantiate(powerups[randomPowerup], posToSpawn, Quaternion.identity);
yield return new WaitForSeconds(Random.Range(5f, 8f));
}
}
4. Последнее, что нужно проверить, это игровой объект Spawn Manager в представлении инспектора Unity. Префаб усиления боеприпасов должен быть прикреплен, чтобы он мог появиться в вашей игре. Невыполнение этого требования либо не создаст бонус, либо создаст только другие ваши бонусы, либо, если ваши методы создания неверны, не создаст и предотвратит появление других бонусов (как я испытал).

