poker生成

using UnityEngine;
using System.Collections;
using System .Collections .Generic ;
public class controller : MonoBehaviour {
 public int[,]poker;
 public int[,]pingMing1;
 public int[,]pingMing2;
 public int[,]diZhu;
int current=0;
int max=0;
// Vector2中一个存花色,一个存数值;
 Dictionary <int ,Vector2 > dic;
void Start () {


}


void Awake(){
poker = new int[5,16]; 
diZhu = new int[5,18];  
pingMing1 = new int[5,17];
pingMing2 = new int[5,17];
InitPoker();
dizhu();
}

// Update is called once per frame
void Update () {

}
// 初始化poker数组并赋值;
public void InitPoker(){
for(int i =1;i<=4;i++){
 for(int j=1;j<=15;j++){
 poker [i,j]=j;
 
 }
}
}



// 生成花色随机数;
public int ColorRandom(){
 int index = (int)Random.Range (1,5);
 return index;
}

//生成牌点数随机数;
public int pokerRandom(){
int number = (int)Random.Range (3,16);
return number;
}


// 为地主和平民生成牌的点数,并加入地主和平民的数组中,已经生出的牌要从poker数组中清空;当再次生成牌时,要查看生成的牌是否已经发出;
public int[,] dizhu(){
for(int j=1;j<18;j++){
int i = ColorRandom();
int number =  pokerRandom();
bool Itsout = pokerIsOut( i,number);
if(Itsout){
diZhu [i,j]=number;
print ("number="+number);
poker [i,number]=0;
// print ("j="+j);
}
else 
--j;
}
return diZhu ;
}

//为平民1生成牌;
public int[,]pingming1(){
for(int j=1;j<18;j++){
int i = ColorRandom();
int number =  pokerRandom();
bool Itsout = pokerIsOut( i,number);
if(Itsout){
pingMing1 [i,j]=number;
poker [i,number]=0;
}
else 
j--;
}

return pingMing1 ;
}

// 为平民2生成牌;
public int[,]pingming2(){
for(int j=1;j<18;j++){
int i = ColorRandom();
int number =  pokerRandom();
bool Itsout = pokerIsOut( i,number);
if(Itsout){
pingMing2 [i,j]=number;
poker [i,number]=0;
}
else 
j--;
}
return pingMing2 ;
}
// 如果某张牌已经发出返回false,如果没有发出则返回true;
public bool pokerIsOut(int i,int j){
if(poker [i,j]==0)
return false;
else return true;
}

//牌中同一种花色进行排序
public int[,]NumberSort(int [,]someOnePoker){
     for(int i=1;i<5;i++){
for(int j=1;;j++){
    if(someOnePoker[i,j]==0)
       current = j;
      if(max<current)
      max = current;
      continue ;
 }
 }
 for(int i=1;i<5;i++){
int temp;
  for(int j=1;j<=max;j++){
if(someOnePoker[i,j]<someOnePoker[i,j+1]){
temp = someOnePoker[i,j];
someOnePoker[i,j]=someOnePoker[i,j+1];
someOnePoker[i,j+1]=temp;
}
  }
 }

 
return someOnePoker;

}

// 不同的花色之间进行排序;直接插入排序;
public void InsideColor_NumberSort(int[,]Number){
int temp=0;
for(int i=1;i<5;i++){
for(int j=1;j<=max;j++){
// if(Number[i,j]>Number [i+1,j])
// dic.Add (index,new Vector2 (i,Number[i,j]));
// else dic.Add (index,new Vector2 (i+1,Number [i+1,j]));
}
}


}








































}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值