Теперь я понимаю, что этот вопрос задают много, и я заверяю вас, что я много сделал для этого, попробовал некоторые скрипты и попробовал сериализатор из хранилища активов единства. но я просто не могу найти то, что мне нужно.Сохранить/загрузить в unity3d
следующий уровень только разблокируется после избиения предыдущего, поэтому необходимо помнить, какие уровни были избиты/разблокированы, и когда вы загружаете, вы можете выбрать любой из разблокированных уровней, также следует помнить, что самый высокий балл на каждом уровне должен помнить и заменяются только в том случае, если новый балл выше, более низкие баллы не нужно сохранять.
Что я нашел в google, так это то, как сохранить все объекты и вещи, которые произошли на уровне, но мне не нужно экономить на уровне, мои уровни действительно короткие и можно играть за 1 ход.
EDIT: это сценарий, где я хотел бы добавить от 1 до levelIndex после игрока бьет уровень и моя цель после того, как игрок нажимает нагрузки в StartMenu, новое всплывающее меню, и игрок сможет выбрать из всех разблокированных уровней и после выбора уровень загрузится.
(что я в настоящее время по этому вопросу находится на // линиях)
#pragma strict
var normalParticle : ParticleSystem;
var teleportParticle : ParticleSystem;
var teleportSound : AudioClip;
var ignoreListenerPause: boolean;
// var levelIndex : int;
function Start() {
teleportParticle.Stop();
}
function OnTriggerEnter(other : Collider)
{
if(other.tag == "Player"){
teleportParticle.Play();
normalParticle.Stop();
for (var o : GameObject in GameObject.FindGameObjectsWithTag("Virus"))
{
var comp : Component = o.GetComponent(ChaseScript);
if (comp != null)
{
comp.active = false;
}
}
yield WaitForSeconds (0.5);
audio.ignoreListenerPause = true;
audio.PlayOneShot(teleportSound);
yield WaitForSeconds (3.9);
//levelIndex++;
//PlayerPrefs.SetInt("Last_Level", levelIndex);
Application.LoadLevel(Application.loadedLevel+1);
}
}
function OnTriggerExit(other : Collider)
{
teleportParticle.Stop();
normalParticle.Play();
}
я нашел учебник раньше, объясняющий, как добиться того, что я хотел, но это не является эффективным для игры с большим количеством уровней , он использует сценарий для каждого уровня завершен и использует if's для каждого уровня, и моя игра будет иметь около 50, поэтому я бы предпочел лучший/более чистый способ, вот видео: http://forum.unity3d.com/threads/unity-level-unlocking-system-using-playerprefs.146955/. Вы можете увидеть его сценарии в 10:10 и 14:14.
заранее спасибо :)
кажется JSON может быть излишним для вашей проблемы, я обновил свой ответ. – Imapler