Ouvrir le menu principal

MacGeneration

Recherche

Initiation à Combine et SwiftUI #2 : le moteur de jeu

Florent Morin

mercredi 30 décembre 2020 à 10:00 • 0

Logiciels

La deuxième partie de cette série va vous permettre de découvrir Combine au travers du moteur de jeu que nous allons concevoir ensemble. Pour cela, nous allons nous appuyer sur les règles (basiques) du morpion. À la fin de cet article, vous aurez un moteur de jeu fonctionnel et les bases de la programmation avec Combine.

Une brève introduction a été faite dans le chapitre précédent. Il est fortement recommandé de télécharger le code source complet sur GitLab afin de comprendre en détail les concepts présentés dans l'article. Le fichier principalement concerné par le présent article est GameEngine.swift en complément du code principal du playground.

Initiation à Combine et SwiftUI
  1. Les bases
  2. Le moteur de jeu
  3. Le modèle de la vue (à venir)
  4. La vue en SwiftUI (à venir)

Rappel des règles du morpion

Nous sommes sur un plateau de neuf cases numérotées de 0 à 8. Chaque joueur joue à tour de rôle. Un joueur est représenté par un cercle, l’autre par une croix. Un joueur gagne s’il réussit à faire une ligne horizontale, verticale ou diagonale. La partie se termine quand un joueur gagne ou quand toutes les cases sont remplies.

Plateau de morpion

Découvrir le code avec le playground

Si vous utilisez Swift Playgrounds, vous pouvez cloner le code source via Working Copy

Soutenez MacGeneration sur Tipeee

Cet article est réservé aux membres du Club iGen


Rejoignez la plus grande communauté Apple francophone et soutenez le travail d'une rédaction indépendante. Le Club iGen, c'est:

  • des articles de qualité rien que pour vous
  • un podcast exclusif
  • pas de publicité
  • un site dédié !

MacGeneration a besoin de vous

Vous pouvez nous aider en vous abonnant ou en nous laissant un pourboire

Soutenez MacGeneration sur Tipeee

N'espérez pas acheter de SSD à bon prix chez Transcend : la société ne reçoit plus de mémoire flash

11:10

• 7


Tesla veut impressionner ses clients européens avec des démonstrations de sa conduite autonome (supervisée)

09:31

• 66


120 000 caméras connectées piratées pour obtenir des vidéos frivoles

08:52

• 48


ExpressVPN a enfin droit à une app Mac native

08:30

• 3


Le départ d'Alan Dye chez Meta : une bénédiction pour le design d’Apple ?

08:05

• 27


Apple efface déjà John Giannandrea de sa page des dirigeants

07:30

• 9


Chez Meta, Alan Dye va diriger un studio créatif pour inventer l’après-smartphone

06:30

• 15


Comparatif MacBook Air et MacBook Pro : faut-il vraiment passer au Pro ?

03/12/2025 à 23:55

• 22


N'attendez pas l'Apple Watch ! Voici la montre caméra !

03/12/2025 à 23:55

• 0


Apple met en ligne la Release Candidate d'iOS 26.2, iPadOS 26.2 et macOS 26.2

03/12/2025 à 22:25

• 12


Meta récupère Alan Dye, responsable des interfaces depuis 2010 et n°2 du design d’Apple

03/12/2025 à 21:30

• 55


Crucial disparaît d’un marché de la mémoire vive déjà très tendu

03/12/2025 à 21:00

• 21


Transformez votre Mac avec Microsoft Office 2021 à vie pour moins de 45 € 📍

03/12/2025 à 19:32

• 0


Après Evernote, Vimeo, WeTransfer ou AOL, Bending Spoons se paye la billetterie Eventbrite

03/12/2025 à 17:00

• 17


Plusieurs stations d'accueil pour Mac mini M4 et M2 (et Mac Studio) en promotion

03/12/2025 à 15:30

• 9


Promo : le MacBook Air M4 à 899 €, avec jusqu’à 180 € de cashback !

03/12/2025 à 13:47

• 5