Merge branch 'dev' of https://codefirst.iut.uca.fr/git/Binome/Swift_Ark into LanguageApp
commit
faa5fc77a1
@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"filename" : "Perceval.jpg",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 493 KiB |
@ -0,0 +1,92 @@
|
|||||||
|
//
|
||||||
|
// ItemCollectionParty.swift
|
||||||
|
// ArkitDoushiQi
|
||||||
|
//
|
||||||
|
// Created by Louis DUFOUR on 31/05/2024.
|
||||||
|
//
|
||||||
|
|
||||||
|
import SwiftUI
|
||||||
|
|
||||||
|
struct ItemCollectionParty: View {
|
||||||
|
var party: Party
|
||||||
|
|
||||||
|
var body: some View {
|
||||||
|
VStack {
|
||||||
|
HStack {
|
||||||
|
Text(party.date)
|
||||||
|
.font(.headline)
|
||||||
|
.foregroundColor(.gray)
|
||||||
|
Spacer()
|
||||||
|
}
|
||||||
|
.padding(.bottom, 5)
|
||||||
|
|
||||||
|
GeometryReader { geometry in
|
||||||
|
HStack(spacing: 10) {
|
||||||
|
HStack {
|
||||||
|
Image(party.player1Image)
|
||||||
|
.resizable()
|
||||||
|
.aspectRatio(contentMode: .fill)
|
||||||
|
.frame(width: geometry.size.width * 0.15, height: geometry.size.width * 0.15)
|
||||||
|
.clipShape(Circle())
|
||||||
|
.overlay(Circle().stroke(Color.purple, lineWidth: 2))
|
||||||
|
|
||||||
|
VStack(alignment: .leading) {
|
||||||
|
Text(party.player1Name)
|
||||||
|
.fontWeight(.bold)
|
||||||
|
.foregroundColor(.purple)
|
||||||
|
.lineLimit(1)
|
||||||
|
.minimumScaleFactor(0.5)
|
||||||
|
.frame(maxWidth: geometry.size.width * 0.25, alignment: .leading)
|
||||||
|
|
||||||
|
Text("\(party.player1Score)")
|
||||||
|
.font(.largeTitle)
|
||||||
|
.fontWeight(.bold)
|
||||||
|
.foregroundColor(.green) // Gagnant en vert
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Text("vs")
|
||||||
|
.font(.headline)
|
||||||
|
.foregroundColor(.gray)
|
||||||
|
|
||||||
|
HStack {
|
||||||
|
VStack(alignment: .trailing) {
|
||||||
|
Text(party.player2Name)
|
||||||
|
.fontWeight(.bold)
|
||||||
|
.foregroundColor(.purple)
|
||||||
|
.lineLimit(1)
|
||||||
|
.minimumScaleFactor(0.5)
|
||||||
|
.frame(maxWidth: geometry.size.width * 0.25, alignment: .trailing)
|
||||||
|
|
||||||
|
Text("\(party.player2Score)")
|
||||||
|
.font(.largeTitle)
|
||||||
|
.fontWeight(.bold)
|
||||||
|
.foregroundColor(.red) // Perdant en rouge
|
||||||
|
}
|
||||||
|
|
||||||
|
Image(party.player2Image)
|
||||||
|
.resizable()
|
||||||
|
.aspectRatio(contentMode: .fill)
|
||||||
|
.frame(width: geometry.size.width * 0.15, height: geometry.size.width * 0.15)
|
||||||
|
.clipShape(Circle())
|
||||||
|
.overlay(Circle().stroke(Color.purple, lineWidth: 2))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.padding()
|
||||||
|
.background(Color.white)
|
||||||
|
.cornerRadius(15)
|
||||||
|
.shadow(radius: 3) // Réduction de l'ombre pour un effet plus léger
|
||||||
|
}
|
||||||
|
.frame(height: 120) // Ajustez la hauteur en fonction de votre contenu
|
||||||
|
}
|
||||||
|
.padding(.horizontal)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
struct ItemCollectionParty_Previews: PreviewProvider {
|
||||||
|
static var previews: some View {
|
||||||
|
ItemCollectionParty(party: Party(player1Name: "L'invaincu du samedi", player1Score: 2, player1Image: "Perceval", player2Name: "Le gars du dimanche", player2Score: 1, player2Image: "Perceval", date: "Samedi soir"))
|
||||||
|
.previewLayout(.sizeThatFits)
|
||||||
|
.padding()
|
||||||
|
}
|
||||||
|
}
|
@ -1,33 +0,0 @@
|
|||||||
//
|
|
||||||
// DetailGameHistory.swift
|
|
||||||
// ArkitDoushiQi
|
|
||||||
//
|
|
||||||
// Created by Enzo JOLYS on 22/05/2024.
|
|
||||||
//
|
|
||||||
|
|
||||||
import SwiftUI
|
|
||||||
import DouShouQiModel
|
|
||||||
|
|
||||||
struct HistoryGameDetail: View {
|
|
||||||
|
|
||||||
let game:Game
|
|
||||||
|
|
||||||
var body: some View {
|
|
||||||
ZStack(){
|
|
||||||
Color.red
|
|
||||||
Color.gray
|
|
||||||
HStack(){
|
|
||||||
Text(game.players[.player1]?.name ?? "Inconnu")
|
|
||||||
Text(" VS ")
|
|
||||||
Text(game.players[.player2]?.name ?? "Inconnu")
|
|
||||||
Spacer()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
struct HistoryGameDetail_Previews: PreviewProvider {
|
|
||||||
static var previews: some View {
|
|
||||||
HistoryGameDetail(game: try! Game(withRules: VerySimpleRules(), andPlayer1: Player(withName: "Joueur 1 ", andId: .player1)!, andPlayer2: Player(withName: "Joueur 2 ", andId: .player2)!))
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,24 +0,0 @@
|
|||||||
//
|
|
||||||
// EnteteHistory.swift
|
|
||||||
// ArkitDoushiQi
|
|
||||||
//
|
|
||||||
// Created by Enzo JOLYS on 22/05/2024.
|
|
||||||
//
|
|
||||||
|
|
||||||
import SwiftUI
|
|
||||||
|
|
||||||
struct HistoryHeader: View {
|
|
||||||
var body: some View {
|
|
||||||
HStack(){
|
|
||||||
Spacer()
|
|
||||||
Text("Historique !")
|
|
||||||
Spacer()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
struct HistoryHeader_Previews: PreviewProvider {
|
|
||||||
static var previews: some View {
|
|
||||||
HistoryHeader()
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,31 +0,0 @@
|
|||||||
//
|
|
||||||
// History.swift
|
|
||||||
// ArkitDoushiQi
|
|
||||||
//
|
|
||||||
// Created by Enzo JOLYS on 22/05/2024.
|
|
||||||
//
|
|
||||||
|
|
||||||
import SwiftUI
|
|
||||||
import DouShouQiModel
|
|
||||||
|
|
||||||
struct HistoryView: View {
|
|
||||||
|
|
||||||
var listGame:[Game] = try! [Game(withRules: VerySimpleRules(), andPlayer1: Player(withName: "Player 1 ", andId: .player1)!, andPlayer2: Player(withName: "Player 2 ", andId: .player2)!)]
|
|
||||||
|
|
||||||
var body: some View {
|
|
||||||
VStack(){
|
|
||||||
HistoryHeader()
|
|
||||||
NavigationStack {
|
|
||||||
List(listGame, id: \.board){ game in
|
|
||||||
HistoryGameDetail(game: game)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
struct HistoryView_Previews: PreviewProvider {
|
|
||||||
static var previews: some View {
|
|
||||||
HistoryView()
|
|
||||||
}
|
|
||||||
}
|
|
@ -0,0 +1,34 @@
|
|||||||
|
//
|
||||||
|
// PartyEnregistery.swift
|
||||||
|
// ArkitDoushiQi
|
||||||
|
//
|
||||||
|
// Created by Louis DUFOUR on 31/05/2024.
|
||||||
|
//
|
||||||
|
|
||||||
|
import SwiftUI
|
||||||
|
|
||||||
|
import SwiftUI
|
||||||
|
|
||||||
|
struct PartyListView: View {
|
||||||
|
let parties: [Party] = [
|
||||||
|
Party(player1Name: "L'invaincu du samedi", player1Score: 2, player1Image: "Perceval", player2Name: "Le gars du dimanche", player2Score: 1, player2Image: "Perceval", date: "Samedi soir"),
|
||||||
|
Party(player1Name: "Le champion du vendredi", player1Score: 3, player1Image: "Perceval", player2Name: "Le perdant du lundi", player2Score: 0, player2Image: "Perceval", date: "Vendredi soir")
|
||||||
|
// Ajoutez plus de parties ici
|
||||||
|
]
|
||||||
|
|
||||||
|
var body: some View {
|
||||||
|
NavigationView {
|
||||||
|
List(parties) { party in
|
||||||
|
ItemCollectionParty(party: party)
|
||||||
|
.padding(.vertical, 5)
|
||||||
|
}
|
||||||
|
.navigationTitle("Liste des Parties")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
struct PartyListView_Previews: PreviewProvider {
|
||||||
|
static var previews: some View {
|
||||||
|
PartyListView()
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,19 @@
|
|||||||
|
//
|
||||||
|
// Stub.swift
|
||||||
|
// ArkitDoushiQi
|
||||||
|
//
|
||||||
|
// Created by Louis DUFOUR on 31/05/2024.
|
||||||
|
//
|
||||||
|
|
||||||
|
import SwiftUI
|
||||||
|
|
||||||
|
struct Party: Identifiable {
|
||||||
|
let id = UUID()
|
||||||
|
let player1Name: String
|
||||||
|
let player1Score: Int
|
||||||
|
let player1Image: String
|
||||||
|
let player2Name: String
|
||||||
|
let player2Score: Int
|
||||||
|
let player2Image: String
|
||||||
|
let date: String
|
||||||
|
}
|
Loading…
Reference in new issue