ランダム

4方向で縦横ペアになるランダム


using UnityEngine;
using System.Collections;

public class RandomTest : MonoBehaviour {

  Vector3[] card = {
       Vector3.up,
       Vector3.down,
       Vector3.right,
       Vector3.left,};
   
   Vector3 direct1,direct2; 
   
   void Start () {
       int r = Random.Range(0,4);
       direct1=card[r];
       direct2=card[(r+2)%4];
       
       if(Random.value < 0.5)
           direct2 *= -1;
       
       print(string.Format("結果が必ず縦横のペアになる - 第一候補:{0}  第二候補:{1}",direct1,direct2));
   }
}


コイントス


      if(Random.value > 0.5){
           print ("CoinUp");
       }else{
           print ("CoinDown");
       }


配列内の要素をランダムに交互に入れ替える


void ShufflePeices ()
  {
       int[] peiceIndex = new int[shuffleGridNum*shuffleGridNum];
       
       //順番に数字を並べる。あふれた分は-1にセット 
       for (int i = 0; i < peiceIndex.Length; i++) {
           if( i < myPeices.Length){
               peiceIndex[i] = i;
           }else{
               peiceIndex[i] = -1;
           }
       }
       
       //配列内の要素をランダムに交互入れ替える処理 
       //この処理は参考にするべき。lengthに-1してランダムの最小値に+1することで値が重複する可能性を無くせる 
       //(i=2,rnd=2みたいな状況を無くせる)結果的に入れ替えしない状況が発生しない 
       for (int i = 0; i < peiceIndex.Length-1; i++) {
           int rnd = Random.Range(i+1,peiceIndex.Length);
           
           //交互に中身を入れ替える 
           int temp = peiceIndex[rnd];
           peiceIndex[rnd] = peiceIndex[i];
           peiceIndex[i] = temp;
       }        
   }

メニュー



  • 最終更新:2014-06-13 12:03:06

このWIKIを編集するにはパスワード入力が必要です

認証パスワード