2015-01-12 3 views
0

다른 스크립트에서 변수를 가져 오는 데 문제가 있습니다. 나는 C#에서 일하고있다. 이 경우 GUI 스크립트로 플레이어의 상태가 나아지지만 변수는 0을 반환합니다. 비슷한 문제를 검색하여 이해하려고했지만 이해할 수 없었습니다. 감사!/PixzleOne 건강이 monobehavior 부분에 플레이어의 스크립트에서 설정하는 방법Unity 게임 엔진에서 GetComponent가 0을 반환합니다.

:

int playerHealth; 
public GameObject player; 
void Update() { 
    playerHealth = player.GetComponent<playerScript>().health; 
    print (playerHealth); //Only for me to see if it returns anything. 
} 
+1

해당 개체에 대한 속성에서 변수가 변경 되었습니까? 관리자 값은 스크립트 정의 값을 무시합니다. – SirBraneDamuj

+0

예! 고마워요! 대답으로 쓰면 나는 그것을 표시 할 것이다. – PixzleOne

답변

0

당신은 아마이 있습니다

public int health = 100; 

나는 GUI 스크립트의 건강을 얻기 위해 시도하는 방법 값이 객체의 속성에서 변경되었습니다. 관리자 값은 스크립트 정의 값을 무시합니다.

중요한 점은주의해야 - 이전과 같이 기본 값없이 (또한 관리자 변수로 함) 귀하의 public 변수를 선언하는 경우 :

public int myValue; 

다음 스크립트의 값으로 업데이트 :

public int myValue = 1; 

검사관 은 변화를 선택하지 것입니다. 검사관에서 직접 변경해야합니다. 내가 처음으로 화합으로 시작했을 때 나는이 점을 기억하고있다.

의심 스럽다면 검사기를 확인하십시오.

관련 문제