スクリプトを更新したのに、InspectorViewの変数が増えない
プログラムが間違っていてビルドエラーが出ている可能性が高いです。
エディタ上でbuildしてみましょう。
{}の対応が間違っていないか、全角スペースが入っているかなど、確認してみましょう
//3行目に追加
using UnityEngine.UI;
//class名が違っていたら上書き
public class GameManager : MonoBehaviour {
//入ってすぐのところに
public Image image;
//Start内を下記に
void Start () {
// コルーチンを開始する
IEnumerator coroutine = LoadImage("http://web.sfc.keio.ac.jp/~wadari/sdp/k07_web/Player.png");
StartCoroutine(coroutine);
}
//Classが終わる直前にメソッドを追加
IEnumerator LoadImage(string url)
{
// WWWインスタンスを作成する
WWW loader = new WWW(url);
// ダウンロードが終わるまで待つ
yield return loader;
// 結果を処理する
if (!string.IsNullOrEmpty(loader.error)) {
// エラーがあった場合
print("WWW Error");
}
else
{
// 正常にダウンロードを終えた場合
// テクスチャ画像として貼る
Texture2D tex = loader.texture;
Rect rect = new Rect(0, 0, tex.width, tex.height);
Vector2 pivot = new Vector2(0.5f, 0.5f);
image.sprite = Sprite.Create(tex, rect, pivot);
}
}
//変数の宣言を追加
public Text webt;
public Text t;
int score=0;
string pname="nanashi";
float time= 20.0f;
//Classが終わる前に、ボタンを押した時のメソッドを追加
public void sendScore ()
{
// コルーチンを開始する
string send_url = "http://web.sfc.keio.ac.jp/~wadari/sdp/k07_web/score.cgi?score="+score+"&name="+pname;
IEnumerator coroutine = LoadText(send_url);
StartCoroutine(coroutine);
}
//Classが終わる前に、通信して結果をテキストに格納するメソッドを追加
IEnumerator LoadText(string url)
{
// WWWインスタンスを作成する
WWW loader = new WWW(url);
// ダウンロードが終わるまで待つ
yield return loader;
// 結果を処理する
if (!string.IsNullOrEmpty(loader.error))
{
// エラーがあった場合
print("WWW Error");
}
else
{
// 正常にダウンロードを終えた場合
webt.text = loader.text;
}
}
//class名が違っていたら上書き
public class Player : MonoBehaviour {
//変数の宣言に追加
GameManager gm;
//Start内に2行書く
GameObject go = GameObject.Find ("GameObject");
gm = go.GetComponent(typeof(GameManager)) as GameManager;
//Updat内に追加
if (Input.GetMouseButton (0)) {
Vector3 pos = Input.mousePosition;
float x = transform.position.x -pos.x;
float y = transform.position.y - pos.y;
if(x > -50 && x < 50 && y > -50 && y < 50){
transform.localPosition = new Vector3 ((Random.value - 0.5f) * 300.0f, (Random.value -0.5f) * 300.0f, 0);
gm.addScore();
}
}
//Updateに足す
time -= Time.deltaTime;
if (time >= 0.0f) {
t.text = string.Format ("score:{0} time:{1:f1}", score, time);
} else {
t.text = string.Format ("score:{0} finished!", score);
}
//メソッドを2個追加
public void addScore(){
if (time > 0) {
score++;
}
}
public void restart(){
score = 0;
time = 20.0f;
}
プログラムが間違っていてビルドエラーが出ている可能性が高いです。
エディタ上でbuildしてみましょう。
{}の対応が間違っていないか、全角スペースが入っているかなど、確認してみましょう
classの大文字と小文字が違っている可能性があります。
エディタのbuildエラーが出ませんが、Unityでは読み込めない、という状況が確認されています。
unityの仕様(不具合)かなと思います。
BG(背景画像)の描画優先度を下げることで解決します。
BGのInspectorViewでOrder in Layerを-1にしてください
(テキストの手順にも追記しておきました)