点击 card 修改 card.isFaceUp 属性,当两个 card.content 相同时,将 card 隐藏 Signed-off-by: Ching <loooching@gmail.com>
30 lines
669 B
Swift
30 lines
669 B
Swift
//
|
|
// EmojiMemoryGame.swift
|
|
// Memorize
|
|
//
|
|
// Created by ching on 2023/2/12.
|
|
//
|
|
|
|
import SwiftUI
|
|
|
|
// viewmodel
|
|
class EmojiMemoryGame: ObservableObject{
|
|
static let emojis = ["🚌", "🚙", "🚗", "🚕", "🏎", "🚎", "🚓"]
|
|
|
|
static func createMemoryGame() -> MemoryGame<String> {
|
|
MemoryGame<String>(numberOfPairsOfCards: 5) { pairIndex in EmojiMemoryGame.emojis[pairIndex] }
|
|
}
|
|
|
|
@Published private var model: MemoryGame<String> = createMemoryGame()
|
|
|
|
var cards: [MemoryGame<String>.Card] {
|
|
return model.cards
|
|
}
|
|
|
|
// MARK: - Intent(s)
|
|
|
|
func choose(_ card: MemoryGame<String>.Card) {
|
|
model.choose(card)
|
|
}
|
|
}
|