0

在接下来的几天里,我即将开始一项游戏设计和开发研究,我想在我开始掌握它之前,为了时间而继续前进并向前迈出一步。

在创建游戏项目几天后,我陷入了这种愚蠢的情况,即我从脚本 1“PlayerDamageHandler”调用公共 Int“盾牌”到脚本 2“PlayerHealthGUI”,一开始我可以从Public Static Shield Int,但我需要 SHIELD 成为 Public NOT static int,每当我从“Shield int”中删除“static”时,我都会收到编译器警告

我还在c#编程领域迈出第一步,了解我作为学徒的情况,这次我需要一位大师来帮助我理清思路。

(自从我沉迷于编程以来,我的睡眠时间也只有过去的 1/4!)

基本上,您如何将 PlyDmghandler 中的“Shield” int 称为 PlyGUI,使其如此:

public int Shield = "a variable i want to change depending on which player i use it";

使 int“屏蔽”公开(非静态)并从“PlyHealthGUI”调用它

这些是我第一天制作的第一个 c#(我的第一个代码行,它们真的很简单):

using UnityEngine;
using System.Collections;
public class PlayerDamageHandler : MonoBehaviour {

public bool explosion = false;
public GameObject exp;
public AudioClip expsound;
public float soundvalue = 1f;
public static int Shield = 15;

void OnTriggerEnter2D() {
Shield--;
}

void Update() {
        if (Shield <= 0)
die();
}
void die() {
    Destroy (gameObject);
}
}

这是需要调用“Shield”以在用户界面“文本”上呈现其值的 2*nd 脚本。

using UnityEngine;
using UnityEngine.UI;
using System.Collections;

public class PlayerHealthGUI : MonoBehaviour {

Text text;

void Start () {
    text = GetComponent <Text>();
}

void Update () {
//The UserInterface Health/Shield used on the scene.
    text.text = ("-(") + PlayerDamageHandler.Shield + (")-");
}
}
4

0 回答 0