來划拳吧!!

這次來做一個把資料傳遞到下一頁的app
於是做了這個划拳遊戲

因為划拳前要先猜拳,所以把勝負給傳遞到下一頁了

簡單的2個畫面

第一個畫面就是單純的猜拳

第二個畫面就是划拳頁面

action

  1. 猜拳(剪刀石頭布)
  2. 0.5按鈕
  3. UISegmentedControl

outlet

  1. 誰先開始
  2. 輪到誰
  3. 喊的數字
  4. 電腦出的拳
  5. 猜拳
    平手不會進入到下一頁
@IBAction func HandGame(_ sender: UIButton) {
let ImageRondon = Int.random(in: 0...2)
computerButton.text = computerImage[ImageRondon]
//sender.tag 0 = 剪刀
//sender.tag 1 = 石頭
//sender.tag 2 = 布
if ImageRondon == sender.tag {
print("平手")
} else {
if ImageRondon == 0 {
if sender.tag == 1 {
print("玩家贏了")
whofirst = "玩家先"
} else {
print("電腦贏了")
whofirst = "電腦先"
}
} else if ImageRondon == 1 {
if sender.tag == 0 {
print("電腦贏了")
whofirst = "電腦先"
} else {
print("玩家贏了")
whofirst = "玩家先"
}
} else {
if sender.tag == 0 {
print("玩家贏了")
whofirst = "玩家先"
} else {
print("電腦贏了")
whofirst = "電腦先"
}
}
performSegue(withIdentifier: "enterGaming", sender: "贏了")
}
}

@IBSegueAction func showGameVIew(_ coder: NSCoder) -> FiveTenFifteenViewController? {
let controller = FiveTenFifteenViewController(coder: coder)
controller?.whoWin = whofirst
return controller
}

2. 0.5按鈕
左邊按其中一個,另一個會隱藏掉

@IBAction func playGame(_ sender: UIButton) {
if sender.tag == 1 {
leftFiveButton.setTitle("", for: .normal)
leftFiveButton.isEnabled = false
leftNumber = 0
} else if sender.tag == 2 {
leftZeroButton.setTitle("", for: .normal)
leftZeroButton.isEnabled = false
leftNumber = 5
} else if sender.tag == 3 {
rightFiveButton.setTitle("", for: .normal)
rightFiveButton.isEnabled = false
RightNumber = 0
} else {
rightZeroButton.setTitle("", for: .normal)
rightZeroButton.isEnabled = false
RightNumber = 5
}
if leftNumber != nil && RightNumber != nil {
/* 出拳部分 */
if whoFirst.text == "換玩家" {
/*電腦只出拳*/
comPunch()
print("開始")
print(userStepper.selectedSegmentIndex)
minesLabel.text = "\(total[userStepper.selectedSegmentIndex])"
getTotal()
} else {
/*電腦只出拳 + 喊數字*/
comPunch()
comKeyRandom = Int.random(in: 0...total.count-1)
minesLabel.text = "\(total[comKeyRandom])"
getTotal()
}
/* 比對勝負 */
if minesLabel.text! == "\(allTotal!)" {
if whoFirst.text == "換玩家" {
alert(title: "恭喜", message: "贏囉!!", button: "確認")
} else {
alert(title: "太可惜了", message: "需要再努力", button: "確認")
}
} else {
if whoFirst.text == "換玩家" {
whoFirst.text = "換電腦"
} else {
whoFirst.text = "換玩家"
}
alert(title: "再次努力", message: "GOGO", button: "確認")
}
resetting()
}
}

附上Demo

玩得有點久…一直平手

詳情請到我的GitHub看

--

--