2016-02-04 53 views
0

我正在创建一个快照游戏,玩家必须匹配两张卡片。我创建了两个阵列,一个用于英文卡片,一个用于西班牙卡片。该包装会生成随机卡片,但我无法获得相同的卡片匹配,当卡片匹配正确时,玩家获得1分。如何匹配两个阵列中的相同卡片

var cardNamesArray: [String] = ["sad", "sleepy","angry"] 
var cardNamesArray2: [String] = ["triste", "cansado","enfadado"] 

    //first card generate random number 
    let firstRandomNumber = Int (arc4random_uniform(3)) 
    let firstCardString:String = self.cardNamesArray[firstRandomNumber] 
    self.FirstCardImageView.image = UIImage(named: firstCardString) 

    //Second Card generate random number 
    let SecondRandomNumber = Int (arc4random_uniform(3)) 
    let SecondCardString:String = self.cardNamesArray2[SecondRandomNumber] 
    self.SecondCardImageView.image = UIImage(named: SecondCardString) 

我想匹配“悲”与“TRISTE”,但分数仍然相同

 if ["sad"] == ["triste"] { 

     print("match") 

     self.playerScore += 1 
     self.playerScoreLabel.text = String(self.playerScore) 

    } 
+2

由于Xcode是不是一个同声翻译,比较数字(阵列索引)'如果firstRandomNumber == secondRandomNumber' – vadian

+0

谢谢。这工作 – Miguel

回答

0

至少有两种不同的方式来做到这一点,取决于你是从随机数生成多远:

如果仍然有可用的随机数,你可以使用:

if firstRandomNumber == secondRandomNumber { 
    print("number match") 
} 

如果哟你不还是有随机数可用,但只是字符串,您可以使用indexOf找到相应的数组中的字符串:

if cardNamesArray.indexOf(firstCardString) == cardNamesArray2.indexOf(secondCardString) { 
    print("index match") 
} 
+0

谢谢你的工作。什么时候卡匹配,他们被清除,所以他们不会再次出现 – Miguel

相关问题