2017-09-12 10 views
1

ランダムな絵文字が上隅に表示され、別の絵文字がページに表示されるゲームを構築しています。プレイヤーは、時間がなくなり、ページの絵文字が、彼が失うことになるコーナーの絵として現われる前に、絵文字を打つべきです。私は絵文字をボタンとして作らなければならないことを知り、イメージの配列を作成しました。しかし、どのようにして私の配列からランダムに呼び出されるように両方の絵文字をリンクすることができますか?スウィフト3時間前にヒットしたゲームを作成する

class ViewController: UIViewController { 
    @IBOutlet var myButton: UIButton! 

    var timer:Timer? 

    @IBAction func pressed(_ sender: Any) { 
     let imageArray:[UIImage] = [UIImage(named: "1.png")!, 
            UIImage(named: "2.png")!, 
            UIImage(named: "3.png")!, 
            UIImage(named: "4.png")!, 
            UIImage(named: "5.png")!, 
            UIImage(named: "6.png")!, 
            UIImage(named: "7.png")!, 
            UIImage(named: "8.png")!, 
            UIImage(named: "9.png")!, 
            UIImage(named: "10.png")!] 
     let myButton = UIButton(type: .custom) 

     let imageArray:UIImage = myButton.image(for: UIControlState.normal)! as UIImage 

     // let myButton = UIButton(type: UIButtonType.custom) as UIButton 
     myButton.setImage(UIImage(named: "10.png"), for: .normal) 

     // button.frame = CGRectMake(100, 100, 100, 100) 

     myButton.addTarget(self, action: "btnTouched:", for:.touchUpInside) 
     self.view.addSubview(myButton) 
     print ("hi") 
    } 

    func randomValueBetween(min: Int , max: Int) -> Int { 
     var a = min 
     var b = max 
     if a > b { 
      swap(&a, &b) 
     } 
     return Int(arc4random_uniform(UInt32(b - a + 1))) + a 
    } 
} 
+1

なぜSpriteKitを使用せず、uibuttonではなくspriteとしてur emojisを追加しますか? – OverD

+0

違いは何ですか?申し訳ありませんが、これは私の最初のプロジェクトです – nabusaadah

+0

SpriteKitは一般的にゲーム開発のために、UIKit – OverD

答えて

0

私が正しくあなたを理解していた場合、あなたはランダム絵文字のあなたの10枚の画像のうちの一つの画像を表示する必要がある、とあなたが現在トラブルの画像が画面上に表示される作成を持っている:

は、ここに私のコードです。その場合は、画像を表示する必要があるときはいつでもimageArray[Int(arc4random_uniform(10))]に電話する必要があります。

+0

よりもはるかにゲームに適しています。タイマーと接続してゲームを終了します。私はタイマーを追加しましたが、どのように時計の画像とリンクすることができました – nabusaadah

+0

私はこのコードを試しました。 imageArray [int(arc4random_uniform(10))] print( "hi")..しかし、何も実行していないのにまだ画像が表示されず、クリックすると出力 "hi"に表示されるので、 – nabusaadah