在Unity的另一个场景中显示分数 - c#

在游戏中,我正在创建一个“游戏结束”场景,一旦玩家输掉游戏,该场景就会加载。在游戏过程中,分数由玩家在屏幕上的位置计数,并且随着玩家y轴位置的增加而增加。

我使用以下代码在实际玩游戏的场景上显示分数:

using UnityEngine;
using UnityEngine.UI;

public class PlayerScore : MonoBehaviour 
{

    public Transform player;
    public Text scoreText; 

    // Update is called once per frame
    void Update() 
    {
        scoreText.text = player.position.y.ToString("0"); 
    }
}

我尝试使用相同的编码在“游戏结束”屏幕上显示玩家的最终分数。我面临的问题是我无法在“游戏结束”场景中识别出该玩家,因为该玩家不是该场景中的物体或精灵。

有没有一种简单的方法可以将玩家从以前的场景归入最终(“游戏结束”)场景,以便我可以用来确定最终得分?

这是我在游戏场景中尝试使用“ EndScene”游戏对象的脚本:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;

public class EndMenu: MonoBehaviour 
{

    public Text scoreText;
    public Transform player;
    public static bool GameEnds = false;
    public GameObject endMenuUI;

    void OnCollisionEnter2D(Collision2D exampleCol) 
    {
        if(exampleCol.collider.tag == "Obstacle")
        {
            endMenuUI.SetActive(true);
            Time.timeScale = 0.0001f;
            GameEnds = true;
        }
    }

    public void Retry()
    {
        SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex - 1);
    }

    public void BackToMenu()
    {
        SceneManager.LoadScene("Menu");
    }

    public void Quit()
    {
        Debug.Log("Quitting game...");
        Application.Quit();
    }

    // Update is called once per frame
    void Update()
    {
        scoreText.text = player.position.y.ToString("0");
    }
}

参考方案

您可以使用DontDestroyOnLoad保持播放器

您可以将其添加到播放器中:

void Awake() {
    DontDestroyOnLoad(transform.gameObject);
}

您可以做其他事情,例如仅保留数据……但是更简单的方法应该是这种方法。

请记住,玩家将留在您的游戏结束画面中。

在我看来,最好的主意是在您的游戏场景中创建一个名为“ GameOverScreen”的新游戏对象,并禁用它直到您需要它为止。

当回复有时是一个对象有时是一个数组时,如何在使用改造时解析JSON回复? - java

我正在使用Retrofit来获取JSON答复。这是我实施的一部分-@GET("/api/report/list") Observable<Bills> listBill(@Query("employee_id") String employeeID); 而条例草案类是-public static class…

改造正在返回一个空的响应主体 - java

我正在尝试使用Retrofit和Gson解析一些JSON。但是,我得到的响应机构是空的。当我尝试从对象中打印信息时,出现NullPointerException。我确保URL正确,并且我也确保POJO也正确。我正在使用jsonschema2pojo来帮助创建POJO类。这是我要解析的JSON{ "?xml": { "@versi…

每个文件合并后添加换行 - python

我有很多类似以下内容的JSON文件:例如。1.json{"name": "one", "description": "testDescription...", "comment": ""} test.json{"name"…

从数据表C#创建复杂的JSON - javascript

我的数据集中有3个数据表。表A与B和C有一对多的关系。我想像下面那样在C#中使用Linq创建Json。有人可以帮帮我吗?我要在此先感谢所有将指导我或为我的问题提供投入的人。{ "A": [ { "id": "0001", "type": "donut", &#…

Json到php,json_decode返回NULL - php

我正在用PHP进行JSON解析器的一些API,用于存储有关遗产的信息。我在解析时遇到问题,因为它返回的是NULL值而不是数组或对象。简单的JSON代码可以很好地解析,但是可以这样:{"success":true,"totalCount":1,"data":[{"id":99694…