プログラミング

シーンが変わってもスコアが初期化されないようにする。

public static int CurrentScore; スコア、ハイスコアの保持(unityC#): おじさんのプログラミングojisan-puroguramu.seesaa.net

#region(コードの可読性)

#regionについてregionとコードのテンプレート - Unity / VRゲーム開発日記@長崎icoc-dev.hatenablog.com コードの可読性 まずコードの可読性を最適化しよう | POSTD

bool変数を使って、ボタンの制限をかける。

オブジェクトを開いている干渉しないようにする。 画面上に複数のbuttonオブジェクトがある場合、何かを開いている時に他を押せないようにする。 public class Shop : MonoBehaviour { public bool ShopClicked; public void ShopButton(){ // buttonを押し…

動作を確認したい時

メソッドの確認、bool型の変数の状態の確認 void Update(){ print("GameOver.GameOverFlag =" +GameOver.GameOverFlag); if(Input.GetKeyDown(KeyCode.S)){ ReplayButton(); } } 2014/05/05追記 コンソールにprintで出力したい時、Update()に書く、printは一…

【C#】インクリメント、デクリメント

1つだけ足したり、1つだけ引くことはよくある 特別な書き方 x++; x--; //以下に等しい x = x + 1; x = x - 1; 例2 Score.instance.ScorePont++;

【Unity エラー】CS1612 : Mathf.Clamp

エラー内容 どうも一回要素を取り出してあげなければならないようだ。 Assets/Script/_Script_player2/PlayerManager.cs(20,35): error CS1612: Cannot modify a value type return value of `UnityEngine.Transform.position'. Consider storing the value …

foreach

int[] list = new int[]{1,2,3,4,5}; for (int i = 0, i < list.Length; i++){ } foreach(var item in list){ } www.youtube.com

【C#】デリゲートとは

複数のメソッドを渡すことができる デリゲートとは関数を入れられる変数である kan-kikuchi.hatenablog.com [C#] デリゲート(delegate)とはなんぞや – gomokulog 連載:C#入門 第17回 処理を委譲するdelegate 連載:C#入門 第13回 言語に内蔵されたイベント…

オブジェクトをインスタンスする。(Listについて)

インスタンスについて! public List<GameObject> heart; public GameObject myheart; public Sprite HeartOn; // Spawnは生成するというような意味 public void SpawnHeartFirst(int startCountHeart){ for(int i=startCountHeart;i<5;i++){ // オブジェクトを生成する</gameobject>…

【Unity】 Mathf まとめ

Mathf.Floor() //切り捨て Mathf.Ceil() //切り上げ Mathf.Round() //四捨五入 Mathf.FloorToInt() //切り捨て(Int型に変換) Mathf.CeilToInt() //切り上げ(Int型に変換) Mathf.RoundToInt() //四捨五入(Int型に変換) Mathf.Abs() //絶対値 Mathf.Sign…

C#の型「var」

varは使える。でも、動作が遅くなるのかな。連載! とことん C#: 第 10 回 型を書かなくても強い型付け! (var とジェネリック) in C#code.msdn.microsoft.com

Switchの使用例

Switch内のプロパティlevelに応じて、返す値(string)を変える。 public int ChildIndex; public void Ontap(){ CharacterName(ChildIndex); } public string CharacterName(int level){ switch (level) { case 0: return "His name is ooooo"; break; case 1…

アニメーションを使うとき

アニメーションのデータをUnityでは「Animation clip」と呼ぶ。 例えば、「走る」「考える」とか。 Animation Viewで編集することができる。名前を配列で管理して配列の番号で呼び出す。 private Animator anim; private string[] myAnimList = {"run","thin…

Random.Range

Random.Range常に回転させていとき、Time.deltaTimeを使って回転させることができる。 void Start () { angle = Random.Range(15,60); transform.Rotate(new Vector3(0, 0, Random.Range(0,360))); // 5から10秒後に消去する。 Destroy(gameObject, Random.R…

オブジェクトを生成する方法

GameObject型の変数に入れる場合は、GameObjectでキャストしてあげる。 GameObject obj = (GameObject)Instantiate(shot); obj.transform.localPosition = point; as GameObjectと書いてあげる GameObject obj = Instantiate(shot,new Vector3(point) as Gam…

リスト・配列を使うとき(要素数)

リスト・配列の使い方 表記の仕方 ChildList == 全体を表したいとき ChildList[ ] == リストの中の番号を指定したいとき //リストを使うとき書く using System.Collections.Generic; //リストの定義の仕方、インスペクタ上で設定することができる public List<ChildChance></childchance>…

DateTime.Now

現在の時刻を獲得する。 これとPlayerPrefsを使うことによって、経過時間を計算することができる。 //using Systemが必要 using System; C#プログラミングTips:日付と時刻の処理を知る //ストリング型として保存する。 void Start () { PlayerPrefs.SetStri…

【Unity】シングルトーン : 使用例 第一弾

シングルトーン使用例1 public class AudioManager : MonoBehaviour { public static AudioManager instance = null; void Awake(){ if (instance == null) { instance = this; } } } // 他のスクリプトで呼び出すとき AudioManager.instance.MusicBackgrou…