Résolution de conflict lié à la branche test

master
Baptiste ARNAUD 5 years ago
commit 5ada085f5a

@ -1,8 +1,4 @@
Mono-utilisateur: Mono-utilisateur:
- Multilangue
- Changer les thèmes et les couleurs (en option) V => pour l'instant thème blanc et noir - Changer les thèmes et les couleurs (en option) V => pour l'instant thème blanc et noir
- Option pour mettre/enlever le pas de 10 - Option pour mettre/enlever le pas de 10
- gérer les différents pas pour les différents deck (multiples, etc...)
- Largeur carte pour millième V
- Génération fraction -> toutes celles qui ont un chiffre au numérateur et/ou au dénominateur unique + les fractions ayant un numérateur et un dénominateur entre 1 et 25 puis si non suffisant, entre 1 et 50
- Bluetooth - Bluetooth

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="10" android:versionName="4.0" package="com.uca.thegameextreme" android:installLocation="auto"> <manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="12" android:versionName="4.2" package="com.uca.thegameextreme" android:installLocation="auto">
<uses-sdk android:minSdkVersion="21" android:targetSdkVersion="28" /> <uses-sdk android:minSdkVersion="21" android:targetSdkVersion="28" />
<application android:icon="@drawable/TrierImageB" android:label="OrderStacks"></application> <application android:icon="@drawable/TrierImageB" android:label="OrderStacks"></application>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

@ -5746,58 +5746,58 @@ namespace TheGameExtreme.Droid
public const int abc_vector_test = 2131165273; public const int abc_vector_test = 2131165273;
// aapt resource value: 0x7F07005A // aapt resource value: 0x7F07005A
public const int Apple = 2131165274; public const int ArrowSettingsBack = 2131165274;
// aapt resource value: 0x7F07005B // aapt resource value: 0x7F07005B
public const int ArrowSettingsBack = 2131165275; public const int avd_hide_password = 2131165275;
// aapt resource value: 0x7F07005C // aapt resource value: 0x7F07005C
public const int avd_hide_password = 2131165276; public const int avd_show_password = 2131165276;
// aapt resource value: 0x7F07005D // aapt resource value: 0x7F07005D
public const int avd_show_password = 2131165277; public const int design_bottom_navigation_item_background = 2131165277;
// aapt resource value: 0x7F07005E // aapt resource value: 0x7F07005E
public const int design_bottom_navigation_item_background = 2131165278; public const int design_fab_background = 2131165278;
// aapt resource value: 0x7F07005F // aapt resource value: 0x7F07005F
public const int design_fab_background = 2131165279; public const int design_ic_visibility = 2131165279;
// aapt resource value: 0x7F070060 // aapt resource value: 0x7F070060
public const int design_ic_visibility = 2131165280; public const int design_ic_visibility_off = 2131165280;
// aapt resource value: 0x7F070061 // aapt resource value: 0x7F070061
public const int design_ic_visibility_off = 2131165281; public const int design_password_eye = 2131165281;
// aapt resource value: 0x7F070062 // aapt resource value: 0x7F070062
public const int design_password_eye = 2131165282; public const int design_snackbar_background = 2131165282;
// aapt resource value: 0x7F070063 // aapt resource value: 0x7F070063
public const int design_snackbar_background = 2131165283; public const int EngrenageV1 = 2131165283;
// aapt resource value: 0x7F070064 // aapt resource value: 0x7F070064
public const int Engrenage = 2131165284; public const int HomeIcon = 2131165284;
// aapt resource value: 0x7F070065 // aapt resource value: 0x7F070065
public const int EngrenageV1 = 2131165285; public const int ic_mtrl_chip_checked_black = 2131165285;
// aapt resource value: 0x7F070066 // aapt resource value: 0x7F070066
public const int HomeIcon = 2131165286; public const int ic_mtrl_chip_checked_circle = 2131165286;
// aapt resource value: 0x7F07006A
public const int IconPique = 2131165290;
// aapt resource value: 0x7F070067 // aapt resource value: 0x7F070067
public const int ic_mtrl_chip_checked_black = 2131165287; public const int ic_mtrl_chip_close_circle = 2131165287;
// aapt resource value: 0x7F070068 // aapt resource value: 0x7F070068
public const int ic_mtrl_chip_checked_circle = 2131165288; public const int imagesRules = 2131165288;
// aapt resource value: 0x7F070069 // aapt resource value: 0x7F070069
public const int ic_mtrl_chip_close_circle = 2131165289; public const int mtrl_snackbar_background = 2131165289;
// aapt resource value: 0x7F07006A
public const int mtrl_tabs_default_indicator = 2131165290;
// aapt resource value: 0x7F07006B // aapt resource value: 0x7F07006B
public const int imagesRules = 2131165291; public const int navigation_empty_icon = 2131165291;
// aapt resource value: 0x7F07006C // aapt resource value: 0x7F07006C
public const int LuneSombreTheme = 2131165292; public const int LuneSombreTheme = 2131165292;

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 153 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 104 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

@ -44,7 +44,7 @@
<AndroidUseSharedRuntime>false</AndroidUseSharedRuntime> <AndroidUseSharedRuntime>false</AndroidUseSharedRuntime>
<EmbedAssembliesIntoApk>true</EmbedAssembliesIntoApk> <EmbedAssembliesIntoApk>true</EmbedAssembliesIntoApk>
<MandroidI18n /> <MandroidI18n />
<AndroidSupportedAbis /> <AndroidSupportedAbis>armeabi-v7a;arm64-v8a;x86_64;x86</AndroidSupportedAbis>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<Reference Include="Mono.Android" /> <Reference Include="Mono.Android" />
@ -81,12 +81,6 @@
<None Include="Properties\AndroidManifest.xml" /> <None Include="Properties\AndroidManifest.xml" />
<AndroidResource Include="Resources\drawable\FontStyle\IndieFlower.ttf" /> <AndroidResource Include="Resources\drawable\FontStyle\IndieFlower.ttf" />
<AndroidResource Include="Resources\drawable\FontStyle\LicenceFont.pdf" /> <AndroidResource Include="Resources\drawable\FontStyle\LicenceFont.pdf" />
<AndroidResource Include="Resources\drawable\IconPique.ico">
<SubType>
</SubType>
<Generator>
</Generator>
</AndroidResource>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<AndroidResource Include="Resources\layout\Tabbar.xml" /> <AndroidResource Include="Resources\layout\Tabbar.xml" />
@ -105,15 +99,6 @@
<AndroidResource Include="Resources\mipmap-xxhdpi\launcher_foreground.png" /> <AndroidResource Include="Resources\mipmap-xxhdpi\launcher_foreground.png" />
<AndroidResource Include="Resources\mipmap-xxxhdpi\icon.png" /> <AndroidResource Include="Resources\mipmap-xxxhdpi\icon.png" />
<AndroidResource Include="Resources\mipmap-xxxhdpi\launcher_foreground.png" /> <AndroidResource Include="Resources\mipmap-xxxhdpi\launcher_foreground.png" />
<AndroidResource Include="Resources\drawable\Apple.png">
<SubType>
</SubType>
<Generator>
</Generator>
</AndroidResource>
</ItemGroup>
<ItemGroup>
<AndroidResource Include="Resources\drawable\Engrenage.jpeg" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ProjectReference Include="..\TheGameExtreme\TheGameExtreme.csproj"> <ProjectReference Include="..\TheGameExtreme\TheGameExtreme.csproj">
@ -130,27 +115,15 @@
<ItemGroup> <ItemGroup>
<AndroidResource Include="Resources\drawable\EngrenageV1.png" /> <AndroidResource Include="Resources\drawable\EngrenageV1.png" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<AndroidResource Include="Resources\drawable\rulesImg.png" />
</ItemGroup>
<ItemGroup>
<AndroidResource Include="Resources\drawable\rules.png" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<AndroidResource Include="Resources\drawable\imagesRules.png" /> <AndroidResource Include="Resources\drawable\imagesRules.png" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<AndroidResource Include="Resources\drawable\ArrowSettingsBack.png" /> <AndroidResource Include="Resources\drawable\ArrowSettingsBack.png" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<AndroidResource Include="Resources\drawable\UsersExiticon.png" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<AndroidResource Include="Resources\drawable\HomeIcon.png" /> <AndroidResource Include="Resources\drawable\HomeIcon.png" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<AndroidResource Include="Resources\TrierImageB.png" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<AndroidResource Include="Resources\drawable\TrierImageB.png"> <AndroidResource Include="Resources\drawable\TrierImageB.png">
<Generator>MSBuild:UpdateGeneratedFiles</Generator> <Generator>MSBuild:UpdateGeneratedFiles</Generator>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

@ -1,115 +1,247 @@
{ {
"images": [ "images": [
{ {
"scale": "2x", "filename": "Icon-Small-40-3.png",
"size": "20x20", "size": "20x20",
"idiom": "iphone", "scale": "2x",
"filename": "Icon40.png" "idiom": "iphone"
}, },
{ {
"scale": "3x", "filename": "Icon-Notification@3x-1.png",
"size": "20x20", "size": "20x20",
"idiom": "iphone", "scale": "3x",
"filename": "Icon60.png" "idiom": "iphone"
}, },
{ {
"filename": "Icon-Small@2x-2.png",
"size": "29x29",
"scale": "2x", "scale": "2x",
"idiom": "iphone"
},
{
"filename": "Icon-Small@3x-1.png",
"size": "29x29", "size": "29x29",
"idiom": "iphone", "scale": "3x",
"filename": "Icon58.png" "idiom": "iphone"
}, },
{ {
"filename": "Icon-Small-40@2x-2.png",
"size": "40x40",
"scale": "2x",
"idiom": "iphone"
},
{
"filename": "Icon-60@2x-2.png",
"size": "40x40",
"scale": "3x", "scale": "3x",
"idiom": "iphone"
},
{
"filename": "Icon-60@2x.png",
"size": "60x60",
"scale": "2x",
"idiom": "iphone"
},
{
"filename": "Icon-60@3x-1.png",
"size": "60x60",
"scale": "3x",
"idiom": "iphone"
},
{
"filename": "Icon-Notification-1.png",
"size": "20x20",
"scale": "1x",
"idiom": "ipad"
},
{
"filename": "Icon-Small-40.png",
"size": "20x20",
"scale": "2x",
"idiom": "ipad"
},
{
"filename": "Icon-Small-1.png",
"size": "29x29", "size": "29x29",
"idiom": "iphone", "scale": "1x",
"filename": "Icon87.png" "idiom": "ipad"
}, },
{ {
"filename": "Icon-Small@2x.png",
"size": "29x29",
"scale": "2x", "scale": "2x",
"idiom": "ipad"
},
{
"filename": "Icon-Small-40-1.png",
"size": "40x40", "size": "40x40",
"idiom": "iphone", "scale": "1x",
"filename": "Icon80.png" "idiom": "ipad"
}, },
{ {
"scale": "3x", "filename": "Icon-Small-40@2x.png",
"size": "40x40", "size": "40x40",
"idiom": "iphone", "scale": "2x",
"filename": "Icon120.png" "idiom": "ipad"
},
{
"filename": "Icon-83.5@2x-1.png",
"size": "83.5x83.5",
"scale": "2x",
"idiom": "ipad"
}, },
{ {
"filename": "Icon-76-1.png",
"size": "76x76",
"scale": "1x",
"idiom": "ipad"
},
{
"filename": "Icon-76@2x-1.png",
"size": "76x76",
"scale": "2x", "scale": "2x",
"idiom": "ipad"
},
{
"filename": "iTunesArtwork@2x-1.png",
"size": "1024x1024",
"scale": "1x",
"idiom": "ios-marketing"
},
{
"size": "60x60", "size": "60x60",
"idiom": "iphone", "scale": "2x",
"filename": "Icon120.png" "idiom": "car"
}, },
{ {
"scale": "3x",
"size": "60x60", "size": "60x60",
"idiom": "iphone", "scale": "3x",
"filename": "Icon180.png" "idiom": "car"
}, },
{ {
"scale": "1x", "role": "notificationCenter",
"size": "20x20", "size": "24x24",
"idiom": "ipad", "subtype": "38mm",
"filename": "Icon20.png" "scale": "2x",
"idiom": "watch"
}, },
{ {
"role": "notificationCenter",
"size": "27.5x27.5",
"subtype": "42mm",
"scale": "2x", "scale": "2x",
"size": "20x20", "idiom": "watch"
"idiom": "ipad",
"filename": "Icon40.png"
}, },
{ {
"scale": "1x", "role": "companionSettings",
"size": "29x29", "size": "29x29",
"idiom": "ipad", "scale": "2x",
"filename": "Icon29.png" "idiom": "watch"
}, },
{ {
"scale": "2x", "role": "companionSettings",
"size": "29x29", "size": "29x29",
"idiom": "ipad", "scale": "3x",
"filename": "Icon58.png" "idiom": "watch"
}, },
{ {
"scale": "1x", "role": "appLauncher",
"size": "40x40", "size": "40x40",
"idiom": "ipad", "subtype": "38mm",
"filename": "Icon40.png" "scale": "2x",
"idiom": "watch"
}, },
{ {
"role": "appLauncher",
"size": "44x44",
"subtype": "40mm",
"scale": "2x", "scale": "2x",
"size": "40x40", "idiom": "watch"
"idiom": "ipad", },
"filename": "Icon80.png" {
"role": "appLauncher",
"size": "50x50",
"subtype": "44mm",
"scale": "2x",
"idiom": "watch"
},
{
"role": "quickLook",
"size": "86x86",
"subtype": "38mm",
"scale": "2x",
"idiom": "watch"
},
{
"role": "quickLook",
"size": "98x98",
"subtype": "42mm",
"scale": "2x",
"idiom": "watch"
},
{
"role": "quickLook",
"size": "108x108",
"subtype": "44mm",
"scale": "2x",
"idiom": "watch"
}, },
{ {
"size": "1024x1024",
"scale": "1x", "scale": "1x",
"size": "76x76", "idiom": "watch-marketing"
"idiom": "ipad",
"filename": "Icon76.png"
}, },
{ {
"size": "16x16",
"scale": "1x",
"idiom": "mac"
},
{
"size": "16x16",
"scale": "2x", "scale": "2x",
"size": "76x76", "idiom": "mac"
"idiom": "ipad",
"filename": "Icon152.png"
}, },
{ {
"size": "32x32",
"scale": "1x",
"idiom": "mac"
},
{
"size": "32x32",
"scale": "2x", "scale": "2x",
"size": "83.5x83.5", "idiom": "mac"
"idiom": "ipad",
"filename": "Icon167.png"
}, },
{ {
"size": "128x128",
"scale": "1x", "scale": "1x",
"size": "1024x1024", "idiom": "mac"
"idiom": "ios-marketing", },
"filename": "Icon1024.png" {
"size": "128x128",
"scale": "2x",
"idiom": "mac"
},
{
"size": "256x256",
"scale": "1x",
"idiom": "mac"
},
{
"size": "256x256",
"scale": "2x",
"idiom": "mac"
},
{
"size": "512x512",
"scale": "1x",
"idiom": "mac"
},
{
"size": "512x512",
"scale": "2x",
"idiom": "mac"
} }
], ],
"properties": {},
"info": { "info": {
"version": 1, "version": 1,
"author": "xcode" "author": "xcode"

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 569 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 854 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 845 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 104 KiB

@ -19,11 +19,6 @@
<string>UIInterfaceOrientationLandscapeLeft</string> <string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string> <string>UIInterfaceOrientationLandscapeRight</string>
</array> </array>
<key>UIBackgroundModes</key>
<array>
<string>bluetooth-central</string>
<string>bluetooth-peripheral</string>
</array>
<key>NSBluetoothPeripheralUsageDescription</key> <key>NSBluetoothPeripheralUsageDescription</key>
<string>YOUR CUSTOM MESSAGE</string> <string>YOUR CUSTOM MESSAGE</string>
<key>NSBluetoothAlwaysUsageDescription</key> <key>NSBluetoothAlwaysUsageDescription</key>
@ -31,9 +26,7 @@
<key>MinimumOSVersion</key> <key>MinimumOSVersion</key>
<string>8.0</string> <string>8.0</string>
<key>CFBundleDisplayName</key> <key>CFBundleDisplayName</key>
<string>TheGameExtreme</string> <string>OrderStacks</string>
<key>CFBundleIdentifier</key>
<string>com.uca.TheGameExtreme</string>
<key>CFBundleVersion</key> <key>CFBundleVersion</key>
<string>1.0</string> <string>1.0</string>
<key>UILaunchStoryboardName</key> <key>UILaunchStoryboardName</key>
@ -42,5 +35,9 @@
<string>Assets.xcassets/AppIcon.appiconset</string> <string>Assets.xcassets/AppIcon.appiconset</string>
<key>CFBundleName</key> <key>CFBundleName</key>
<string>OrderStacks</string> <string>OrderStacks</string>
<key>CFBundleIdentifier</key>
<string>fr.iut.clermont.orderstacks</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
</dict> </dict>
</plist> </plist>

@ -27,6 +27,7 @@
<MtouchArch>x86_64</MtouchArch> <MtouchArch>x86_64</MtouchArch>
<MtouchLink>None</MtouchLink> <MtouchLink>None</MtouchLink>
<MtouchDebug>true</MtouchDebug> <MtouchDebug>true</MtouchDebug>
<CodesignKey>iPhone Distribution</CodesignKey>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhoneSimulator' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhoneSimulator' ">
<DebugType>none</DebugType> <DebugType>none</DebugType>
@ -36,7 +37,8 @@
<WarningLevel>4</WarningLevel> <WarningLevel>4</WarningLevel>
<MtouchLink>None</MtouchLink> <MtouchLink>None</MtouchLink>
<MtouchArch>x86_64</MtouchArch> <MtouchArch>x86_64</MtouchArch>
<CodesignKey>iPhone Developer</CodesignKey> <CodesignKey>iPhone Distribution</CodesignKey>
<CodesignProvision>orderstacks</CodesignProvision>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhone' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhone' ">
<DebugSymbols>true</DebugSymbols> <DebugSymbols>true</DebugSymbols>
@ -58,8 +60,9 @@
<ErrorReport>prompt</ErrorReport> <ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel> <WarningLevel>4</WarningLevel>
<MtouchArch>ARM64</MtouchArch> <MtouchArch>ARM64</MtouchArch>
<CodesignKey>iPhone Developer</CodesignKey> <CodesignKey>iPhone Distribution</CodesignKey>
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements> <CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
<CodesignProvision>orderstacks</CodesignProvision>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(RunConfiguration)' == 'Default' "> <PropertyGroup Condition=" '$(RunConfiguration)' == 'Default' ">
<AppExtensionDebugBundleId /> <AppExtensionDebugBundleId />
@ -76,55 +79,68 @@
<BundleResource Include="Resources\FontStyle\IndieFlower.ttf" /> <BundleResource Include="Resources\FontStyle\IndieFlower.ttf" />
<BundleResource Include="Resources\FontStyle\ENSOTYPE License &amp; FAQ - DO READ THIS!.pdf" /> <BundleResource Include="Resources\FontStyle\ENSOTYPE License &amp; FAQ - DO READ THIS!.pdf" />
<BundleResource Include="Resources\FontStyle\Ruhaniyat DEMO.otf" /> <BundleResource Include="Resources\FontStyle\Ruhaniyat DEMO.otf" />
<BundleResource Include="Resources\Apple.png"> <BundleResource Include="Resources\EngrenageV1.png" />
<LogicalName>TheGameExtreme.iOS.Resources.Apple.png</LogicalName> <BundleResource Include="Resources\imagesRules.png" />
</BundleResource> <BundleResource Include="Resources\TrierImageB.ico" />
<BundleResource Include="Resources\IconPique.ico" /> <BundleResource Include="TrierImageB.ico" />
<BundleResource Include="Resources\IconPique60ptmax.ico" />
<BundleResource Include="IconPique.ico" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<InterfaceDefinition Include="Resources\LaunchScreen.storyboard" /> <InterfaceDefinition Include="Resources\LaunchScreen.storyboard" />
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Contents.json"> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Contents.json">
<Visible>false</Visible> <Visible>false</Visible>
</ImageAsset> </ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon1024.png"> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small-40-3.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Notification%403x-1.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small%402x-2.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small%403x-1.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small-40%402x-2.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-60%402x-2.png">
<Visible>false</Visible> <Visible>false</Visible>
</ImageAsset> </ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon180.png"> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-60%402x.png">
<Visible>false</Visible> <Visible>false</Visible>
</ImageAsset> </ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon167.png"> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-60%403x-1.png">
<Visible>false</Visible> <Visible>false</Visible>
</ImageAsset> </ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon152.png"> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Notification-1.png">
<Visible>false</Visible> <Visible>false</Visible>
</ImageAsset> </ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon120.png"> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small-40.png">
<Visible>false</Visible> <Visible>false</Visible>
</ImageAsset> </ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon87.png"> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small-1.png">
<Visible>false</Visible> <Visible>false</Visible>
</ImageAsset> </ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon80.png"> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small%402x.png">
<Visible>false</Visible> <Visible>false</Visible>
</ImageAsset> </ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon76.png"> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small-40-1.png">
<Visible>false</Visible> <Visible>false</Visible>
</ImageAsset> </ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon60.png"> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small-40%402x.png">
<Visible>false</Visible> <Visible>false</Visible>
</ImageAsset> </ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon58.png"> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-76-1.png">
<Visible>false</Visible> <Visible>false</Visible>
</ImageAsset> </ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon40.png"> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-76%402x-1.png">
<Visible>false</Visible> <Visible>false</Visible>
</ImageAsset> </ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon29.png"> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-83.5%402x-1.png">
<Visible>false</Visible> <Visible>false</Visible>
</ImageAsset> </ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon20.png"> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\iTunesArtwork%402x-1.png">
<Visible>false</Visible> <Visible>false</Visible>
</ImageAsset> </ImageAsset>
</ItemGroup> </ItemGroup>
@ -159,26 +175,16 @@
<Name>TheGameExtreme</Name> <Name>TheGameExtreme</Name>
</ProjectReference> </ProjectReference>
</ItemGroup> </ItemGroup>
<ItemGroup>
<BundleResource Include="Resources\Engrenage.jpeg" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<BundleResource Include="Resources\FontStyle\SIL Open Font License.txt" /> <BundleResource Include="Resources\FontStyle\SIL Open Font License.txt" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<BundleResource Include="Resources\rulesImg.png" />
</ItemGroup>
<ItemGroup>
<BundleResource Include="Resources\rules.png" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<BundleResource Include="Resources\ArrowSettingsBack.png" /> <BundleResource Include="Resources\ArrowSettingsBack.png" />
<BundleResource Include="Resources\UsersExiticon.png" />
<BundleResource Include="Resources\HomeIcon.png" /> <BundleResource Include="Resources\HomeIcon.png" />
<BundleResource Include="Resources\TrierImage.ico" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<BundleResource Include="Resources\TrierImageB.ico" /> <ITunesArtwork Include="iTunesArtwork" />
<ITunesArtwork Include="iTunesArtwork%402x" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<BundleResource Include="Resources\SoleilThemes.png" /> <BundleResource Include="Resources\SoleilThemes.png" />

@ -0,0 +1,195 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">iPhoneSimulator</Platform>
<ProductVersion>8.0.30703</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{37A0EC21-60A9-43D2-8B43-3851E1CB7932}</ProjectGuid>
<ProjectTypeGuids>{FEACFBD2-3405-455C-9665-78FE426C6842};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<TemplateGuid>{6143fdea-f3c2-4a09-aafa-6e230626515e}</TemplateGuid>
<OutputType>Exe</OutputType>
<RootNamespace>TheGameExtreme.iOS</RootNamespace>
<IPhoneResourcePrefix>Resources</IPhoneResourcePrefix>
<AssemblyName>TheGameExtreme.iOS</AssemblyName>
<MtouchEnableSGenConc>true</MtouchEnableSGenConc>
<MtouchHttpClientHandler>NSUrlSessionHandler</MtouchHttpClientHandler>
<ApplicationIcon>Resources\IconPique60ptmax.ico</ApplicationIcon>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhoneSimulator' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\iPhoneSimulator\Debug</OutputPath>
<DefineConstants>DEBUG</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<MtouchArch>x86_64</MtouchArch>
<MtouchLink>None</MtouchLink>
<MtouchDebug>true</MtouchDebug>
<CodesignKey>iPhone Distribution</CodesignKey>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhoneSimulator' ">
<DebugType>none</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\iPhoneSimulator\Release</OutputPath>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<MtouchLink>None</MtouchLink>
<MtouchArch>x86_64</MtouchArch>
<CodesignKey>iPhone Distribution</CodesignKey>
<CodesignProvision>orderstacks</CodesignProvision>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhone' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\iPhone\Debug</OutputPath>
<DefineConstants>DEBUG</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<MtouchArch>ARM64</MtouchArch>
<CodesignKey>iPhone Developer</CodesignKey>
<MtouchDebug>true</MtouchDebug>
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' ">
<DebugType>none</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\iPhone\Release</OutputPath>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<MtouchArch>ARM64</MtouchArch>
<CodesignKey>iPhone Distribution</CodesignKey>
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
<CodesignProvision>orderstacks</CodesignProvision>
</PropertyGroup>
<PropertyGroup Condition=" '$(RunConfiguration)' == 'Default' ">
<AppExtensionDebugBundleId />
</PropertyGroup>
<PropertyGroup>
<ApplicationIcon>TrierImageB.ico</ApplicationIcon>
</PropertyGroup>
<ItemGroup>
<Compile Include="Main.cs" />
<Compile Include="AppDelegate.cs" />
<None Include="Entitlements.plist" />
<None Include="Info.plist" />
<Compile Include="Properties\AssemblyInfo.cs" />
<BundleResource Include="Resources\FontStyle\IndieFlower.ttf" />
<BundleResource Include="Resources\FontStyle\ENSOTYPE License &amp; FAQ - DO READ THIS!.pdf" />
<BundleResource Include="Resources\FontStyle\Ruhaniyat DEMO.otf" />
<BundleResource Include="Resources\EngrenageV1.png" />
<BundleResource Include="Resources\imagesRules.png" />
<BundleResource Include="Resources\TrierImageB.ico" />
<BundleResource Include="TrierImageB.ico" />
</ItemGroup>
<ItemGroup>
<InterfaceDefinition Include="Resources\LaunchScreen.storyboard" />
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Contents.json">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small-40-3.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Notification%403x-1.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small%402x-2.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small%403x-1.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small-40%402x-2.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-60%402x-2.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-60%402x.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-60%403x-1.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Notification-1.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small-40.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small-1.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small%402x.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small-40-1.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-Small-40%402x.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-76-1.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-76%402x-1.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-83.5%402x-1.png">
<Visible>false</Visible>
</ImageAsset>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\iTunesArtwork%402x-1.png">
<Visible>false</Visible>
</ImageAsset>
</ItemGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Xml" />
<Reference Include="System.Core" />
<Reference Include="Xamarin.iOS" />
<Reference Include="System.Numerics" />
<Reference Include="System.Numerics.Vectors" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="MvvmCross.Plugin.BLE">
<Version>2.1.1</Version>
</PackageReference>
<PackageReference Include="Rg.Plugins.Popup">
<Version>1.2.0.223</Version>
</PackageReference>
<PackageReference Include="Xamarin.Forms" Version="4.2.0.709249" />
<PackageReference Include="Xamarin.Essentials" Version="1.2.0" />
<PackageReference Include="SkiaSharp.Views.Forms">
<Version>1.68.0</Version>
</PackageReference>
<PackageReference Include="TouchTracking.Forms">
<Version>1.1.0</Version>
</PackageReference>
</ItemGroup>
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.CSharp.targets" />
<ItemGroup>
<ProjectReference Include="..\TheGameExtreme\TheGameExtreme.csproj">
<Project>{8DE6C881-FF77-4CC4-B8C4-CDEDD9AB13B3}</Project>
<Name>TheGameExtreme</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<BundleResource Include="Resources\FontStyle\SIL Open Font License.txt" />
</ItemGroup>
<ItemGroup>
<BundleResource Include="Resources\ArrowSettingsBack.png" />
<BundleResource Include="Resources\HomeIcon.png" />
</ItemGroup>
<ItemGroup>
<<<<<<< HEAD:TheGameExtreme.iOS/TheGameExtreme.iOS.csproj
<BundleResource Include="Resources\SoleilThemes.png" />
<BundleResource Include="Resources\LuneSombreTheme.png" />
<Content Include="TrierImageB.ico" />
=======
<ITunesArtwork Include="iTunesArtwork" />
<ITunesArtwork Include="iTunesArtwork%402x" />
>>>>>>> 3badad823975148fed6467984295274bc7006685:TheGameExtreme.iOS/OrderStacks.csproj
</ItemGroup>
</Project>

@ -5,7 +5,7 @@ using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following // General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information // set of attributes. Change these attribute values to modify the information
// associated with an assembly. // associated with an assembly.
[assembly: AssemblyTitle("TheGameExtreme.iOS")] [assembly: AssemblyTitle("OrderStacks.iOS")]
[assembly: AssemblyDescription("")] [assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")] [assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")] [assembly: AssemblyCompany("")]

@ -1,34 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="com.uca.thegameextreme" android:installLocation="auto">
<uses-sdk android:minSdkVersion="21" android:targetSdkVersion="28" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<application android:label="TheGameExtreme.Android" android:icon="@drawable/IconPique.jpg" android:name="android.app.Application" android:allowBackup="true" android:debuggable="true">
<activity android:configChanges="orientation|screenSize" android:label="TheGameExtreme" android:screenOrientation="landscape" android:theme="@style/MainTheme" android:name="md5c076201c8182e8540d3c086a8691f158.MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<service android:name="md5dcb6eccdc824e0677ffae8ccdde42930.KeepAliveService" />
<receiver android:enabled="true" android:exported="false" android:label="Essentials Battery Broadcast Receiver" android:name="md5d630c3d3bfb5f5558520331566132d97.BatteryBroadcastReceiver" />
<receiver android:enabled="true" android:exported="false" android:label="Essentials Energy Saver Broadcast Receiver" android:name="md5d630c3d3bfb5f5558520331566132d97.EnergySaverBroadcastReceiver" />
<receiver android:enabled="true" android:exported="false" android:label="Essentials Connectivity Broadcast Receiver" android:name="md5d630c3d3bfb5f5558520331566132d97.ConnectivityBroadcastReceiver" />
<provider android:authorities="com.uca.thegameextreme.fileProvider" android:exported="false" android:grantUriPermissions="true" android:name="xamarin.essentials.fileProvider">
<meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/xamarin_essentials_fileprovider_file_paths" />
</provider>
<receiver android:enabled="true" android:exported="false" android:name="md51558244f76c53b6aeda52c8a337f2c37.PowerSaveModeBroadcastReceiver" />
<provider android:name="mono.MonoRuntimeProvider" android:exported="false" android:initOrder="1999999999" android:authorities="com.uca.thegameextreme.mono.MonoRuntimeProvider.__mono_init__" />
<!--suppress ExportedReceiver-->
<receiver android:name="mono.android.Seppuku">
<intent-filter>
<action android:name="mono.android.intent.action.SEPPUKU" />
<category android:name="mono.android.intent.category.SEPPUKU.com.uca.thegameextreme" />
</intent-filter>
</receiver>
</application>
</manifest>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 153 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 104 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 131 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 205 KiB

After

Width:  |  Height:  |  Size: 360 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB

@ -4,13 +4,13 @@ VisualStudioVersion = 16.0.29326.143
MinimumVisualStudioVersion = 10.0.40219.1 MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TheGameExtreme.Android", "TheGameExtreme.Android\TheGameExtreme.Android.csproj", "{DD6C4FD6-058C-41F9-824F-84DABA5DD444}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TheGameExtreme.Android", "TheGameExtreme.Android\TheGameExtreme.Android.csproj", "{DD6C4FD6-058C-41F9-824F-84DABA5DD444}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TheGameExtreme.iOS", "TheGameExtreme.iOS\TheGameExtreme.iOS.csproj", "{37A0EC21-60A9-43D2-8B43-3851E1CB7932}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OrderStacks", "TheGameExtreme.iOS\OrderStacks.csproj", "{37A0EC21-60A9-43D2-8B43-3851E1CB7932}"
EndProject EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TheGameExtreme", "TheGameExtreme\TheGameExtreme.csproj", "{8DE6C881-FF77-4CC4-B8C4-CDEDD9AB13B3}" Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TheGameExtreme", "TheGameExtreme\TheGameExtreme.csproj", "{8DE6C881-FF77-4CC4-B8C4-CDEDD9AB13B3}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestUnitaire", "TestUnitaire\TestUnitaire.csproj", "{DAB0A3A0-CD99-4819-A813-01F10D77BAB1}" Project("{9344BDBB-3E7F-41FC-A0DD-8665D75EE146}") = "TestUnitaire", "TestUnitaire\TestUnitaire.csproj", "{A515F99D-F215-4709-BB23-19DB078CE5AE}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnitTestProjectGame", "UnitTestProjectGame\UnitTestProjectGame.csproj", "{4092C852-D253-42F7-A800-E618C99C349E}" Project("{9344BDBB-3E7F-41FC-A0DD-8665D75EE146}") = "UnitTestProjectGame", "UnitTestProjectGame\UnitTestProjectGame.csproj", "{28570838-9C77-49B4-9343-B9460C4DF6EA}"
EndProject EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
@ -59,30 +59,30 @@ Global
{8DE6C881-FF77-4CC4-B8C4-CDEDD9AB13B3}.Release|iPhone.Build.0 = Release|Any CPU {8DE6C881-FF77-4CC4-B8C4-CDEDD9AB13B3}.Release|iPhone.Build.0 = Release|Any CPU
{8DE6C881-FF77-4CC4-B8C4-CDEDD9AB13B3}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU {8DE6C881-FF77-4CC4-B8C4-CDEDD9AB13B3}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{8DE6C881-FF77-4CC4-B8C4-CDEDD9AB13B3}.Release|iPhoneSimulator.Build.0 = Release|Any CPU {8DE6C881-FF77-4CC4-B8C4-CDEDD9AB13B3}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{DAB0A3A0-CD99-4819-A813-01F10D77BAB1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {A515F99D-F215-4709-BB23-19DB078CE5AE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{DAB0A3A0-CD99-4819-A813-01F10D77BAB1}.Debug|Any CPU.Build.0 = Debug|Any CPU {A515F99D-F215-4709-BB23-19DB078CE5AE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{DAB0A3A0-CD99-4819-A813-01F10D77BAB1}.Debug|iPhone.ActiveCfg = Debug|Any CPU {A515F99D-F215-4709-BB23-19DB078CE5AE}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{DAB0A3A0-CD99-4819-A813-01F10D77BAB1}.Debug|iPhone.Build.0 = Debug|Any CPU {A515F99D-F215-4709-BB23-19DB078CE5AE}.Debug|iPhone.Build.0 = Debug|Any CPU
{DAB0A3A0-CD99-4819-A813-01F10D77BAB1}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU {A515F99D-F215-4709-BB23-19DB078CE5AE}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{DAB0A3A0-CD99-4819-A813-01F10D77BAB1}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU {A515F99D-F215-4709-BB23-19DB078CE5AE}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{DAB0A3A0-CD99-4819-A813-01F10D77BAB1}.Release|Any CPU.ActiveCfg = Release|Any CPU {A515F99D-F215-4709-BB23-19DB078CE5AE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{DAB0A3A0-CD99-4819-A813-01F10D77BAB1}.Release|Any CPU.Build.0 = Release|Any CPU {A515F99D-F215-4709-BB23-19DB078CE5AE}.Release|Any CPU.Build.0 = Release|Any CPU
{DAB0A3A0-CD99-4819-A813-01F10D77BAB1}.Release|iPhone.ActiveCfg = Release|Any CPU {A515F99D-F215-4709-BB23-19DB078CE5AE}.Release|iPhone.ActiveCfg = Release|Any CPU
{DAB0A3A0-CD99-4819-A813-01F10D77BAB1}.Release|iPhone.Build.0 = Release|Any CPU {A515F99D-F215-4709-BB23-19DB078CE5AE}.Release|iPhone.Build.0 = Release|Any CPU
{DAB0A3A0-CD99-4819-A813-01F10D77BAB1}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU {A515F99D-F215-4709-BB23-19DB078CE5AE}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{DAB0A3A0-CD99-4819-A813-01F10D77BAB1}.Release|iPhoneSimulator.Build.0 = Release|Any CPU {A515F99D-F215-4709-BB23-19DB078CE5AE}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{4092C852-D253-42F7-A800-E618C99C349E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {28570838-9C77-49B4-9343-B9460C4DF6EA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4092C852-D253-42F7-A800-E618C99C349E}.Debug|Any CPU.Build.0 = Debug|Any CPU {28570838-9C77-49B4-9343-B9460C4DF6EA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4092C852-D253-42F7-A800-E618C99C349E}.Debug|iPhone.ActiveCfg = Debug|Any CPU {28570838-9C77-49B4-9343-B9460C4DF6EA}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{4092C852-D253-42F7-A800-E618C99C349E}.Debug|iPhone.Build.0 = Debug|Any CPU {28570838-9C77-49B4-9343-B9460C4DF6EA}.Debug|iPhone.Build.0 = Debug|Any CPU
{4092C852-D253-42F7-A800-E618C99C349E}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU {28570838-9C77-49B4-9343-B9460C4DF6EA}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{4092C852-D253-42F7-A800-E618C99C349E}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU {28570838-9C77-49B4-9343-B9460C4DF6EA}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{4092C852-D253-42F7-A800-E618C99C349E}.Release|Any CPU.ActiveCfg = Release|Any CPU {28570838-9C77-49B4-9343-B9460C4DF6EA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4092C852-D253-42F7-A800-E618C99C349E}.Release|Any CPU.Build.0 = Release|Any CPU {28570838-9C77-49B4-9343-B9460C4DF6EA}.Release|Any CPU.Build.0 = Release|Any CPU
{4092C852-D253-42F7-A800-E618C99C349E}.Release|iPhone.ActiveCfg = Release|Any CPU {28570838-9C77-49B4-9343-B9460C4DF6EA}.Release|iPhone.ActiveCfg = Release|Any CPU
{4092C852-D253-42F7-A800-E618C99C349E}.Release|iPhone.Build.0 = Release|Any CPU {28570838-9C77-49B4-9343-B9460C4DF6EA}.Release|iPhone.Build.0 = Release|Any CPU
{4092C852-D253-42F7-A800-E618C99C349E}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU {28570838-9C77-49B4-9343-B9460C4DF6EA}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{4092C852-D253-42F7-A800-E618C99C349E}.Release|iPhoneSimulator.Build.0 = Release|Any CPU {28570838-9C77-49B4-9343-B9460C4DF6EA}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
EndGlobalSection EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE

@ -1,57 +1,44 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// Ce code a été généré par un outil. // This code was generated by a tool.
// Version du runtime :4.0.30319.42000 // Runtime Version:4.0.30319.42000
// //
// Les modifications apportées à ce fichier peuvent provoquer un comportement incorrect et seront perdues si // Changes to this file may cause incorrect behavior and will be lost if
// le code est régénéré. // the code is regenerated.
// </auto-generated> // </auto-generated>
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
namespace TheGameExtreme.Resx { namespace TheGameExtreme.Resx {
using System; using System;
using System.Reflection;
/// <summary> [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
/// Une classe de ressource fortement typée destinée, entre autres, à la consultation des chaînes localisées. [System.Diagnostics.DebuggerNonUserCodeAttribute()]
/// </summary> [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
// Cette classe a été générée automatiquement par la classe StronglyTypedResourceBuilder
// à l'aide d'un outil, tel que ResGen ou Visual Studio.
// Pour ajouter ou supprimer un membre, modifiez votre fichier .ResX, puis réexécutez ResGen
// avec l'option /str ou régénérez votre projet VS.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
public class AppResources { public class AppResources {
private static global::System.Resources.ResourceManager resourceMan; private static System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture; private static System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal AppResources() { internal AppResources() {
} }
/// <summary> [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
/// Retourne l'instance ResourceManager mise en cache utilisée par cette classe. public static System.Resources.ResourceManager ResourceManager {
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
public static global::System.Resources.ResourceManager ResourceManager {
get { get {
if (object.ReferenceEquals(resourceMan, null)) { if (object.Equals(null, resourceMan)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("TheGameExtreme.Resx.AppResources", typeof(AppResources).Assembly); System.Resources.ResourceManager temp = new System.Resources.ResourceManager("TheGameExtreme.Resx.AppResources", typeof(AppResources).Assembly);
resourceMan = temp; resourceMan = temp;
} }
return resourceMan; return resourceMan;
} }
} }
/// <summary> [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
/// Remplace la propriété CurrentUICulture du thread actuel pour toutes public static System.Globalization.CultureInfo Culture {
/// les recherches de ressources à l'aide de cette classe de ressource fortement typée.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
public static global::System.Globalization.CultureInfo Culture {
get { get {
return resourceCulture; return resourceCulture;
} }
@ -60,171 +47,114 @@ namespace TheGameExtreme.Resx {
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Pile ascendante.
/// </summary>
public static string StrAcendingStack { public static string StrAcendingStack {
get { get {
return ResourceManager.GetString("StrAcendingStack", resourceCulture); return ResourceManager.GetString("StrAcendingStack", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Jouer.
/// </summary>
public static string StrBtnPlay { public static string StrBtnPlay {
get { get {
return ResourceManager.GetString("StrBtnPlay", resourceCulture); return ResourceManager.GetString("StrBtnPlay", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à La pile n&apos;est pas disponnible.
/// </summary>
public static string StrCantGetStack { public static string StrCantGetStack {
get { get {
return ResourceManager.GetString("StrCantGetStack", resourceCulture); return ResourceManager.GetString("StrCantGetStack", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à La carte n&apos;existe pas .
/// </summary>
public static string StrCardDoesntExist { public static string StrCardDoesntExist {
get { get {
return ResourceManager.GetString("StrCardDoesntExist", resourceCulture); return ResourceManager.GetString("StrCardDoesntExist", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Vous devez jouer au minimum deux cartes par tour.
/// </summary>
public static string StrCardPlayedLessThanTwo { public static string StrCardPlayedLessThanTwo {
get { get {
return ResourceManager.GetString("StrCardPlayedLessThanTwo", resourceCulture); return ResourceManager.GetString("StrCardPlayedLessThanTwo", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Fermer.
/// </summary>
public static string StrCloseWind { public static string StrCloseWind {
get { get {
return ResourceManager.GetString("StrCloseWind", resourceCulture); return ResourceManager.GetString("StrCloseWind", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Pile descendante.
/// </summary>
public static string StrDownStack { public static string StrDownStack {
get { get {
return ResourceManager.GetString("StrDownStack", resourceCulture); return ResourceManager.GetString("StrDownStack", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Fin de tour.
/// </summary>
public static string StrEndTurn { public static string StrEndTurn {
get { get {
return ResourceManager.GetString("StrEndTurn", resourceCulture); return ResourceManager.GetString("StrEndTurn", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Entrez votre pseudo.
/// </summary>
public static string StrEnterPseudo { public static string StrEnterPseudo {
get { get {
return ResourceManager.GetString("StrEnterPseudo", resourceCulture); return ResourceManager.GetString("StrEnterPseudo", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à La partie est terminée.
/// </summary>
public static string String3 { public static string String3 {
get { get {
return ResourceManager.GetString("String3", resourceCulture); return ResourceManager.GetString("String3", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Bravo vous avez gagné!.
/// </summary>
public static string String4 { public static string String4 {
get { get {
return ResourceManager.GetString("String4", resourceCulture); return ResourceManager.GetString("String4", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Jeu en local.
/// </summary>
public static string StrLocalGame { public static string StrLocalGame {
get { get {
return ResourceManager.GetString("StrLocalGame", resourceCulture); return ResourceManager.GetString("StrLocalGame", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à .
/// </summary>
public static string StrLose { public static string StrLose {
get { get {
return ResourceManager.GetString("StrLose", resourceCulture); return ResourceManager.GetString("StrLose", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Multijoueur.
/// </summary>
public static string StrMultiplayer { public static string StrMultiplayer {
get { get {
return ResourceManager.GetString("StrMultiplayer", resourceCulture); return ResourceManager.GetString("StrMultiplayer", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Nombre de cartes :.
/// </summary>
public static string StrNbCards { public static string StrNbCards {
get { get {
return ResourceManager.GetString("StrNbCards", resourceCulture); return ResourceManager.GetString("StrNbCards", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Nombre de joueurs :.
/// </summary>
public static string StrNbPlayers { public static string StrNbPlayers {
get { get {
return ResourceManager.GetString("StrNbPlayers", resourceCulture); return ResourceManager.GetString("StrNbPlayers", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Nombre de pile en jeu :.
/// </summary>
public static string StrNbStacksInGame { public static string StrNbStacksInGame {
get { get {
return ResourceManager.GetString("StrNbStacksInGame", resourceCulture); return ResourceManager.GetString("StrNbStacksInGame", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Veuillez choisir un nombre de joueur ainsi que leur(s) nom(s).
/// </summary>
public static string StrPlayerSelections { public static string StrPlayerSelections {
get { get {
return ResourceManager.GetString("StrPlayerSelections", resourceCulture); return ResourceManager.GetString("StrPlayerSelections", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Entrez votre pseudo :.
/// </summary>
public static string StrPseudoGM { public static string StrPseudoGM {
get { get {
return ResourceManager.GetString("StrPseudoGM", resourceCulture); return ResourceManager.GetString("StrPseudoGM", resourceCulture);
@ -248,117 +178,78 @@ namespace TheGameExtreme.Resx {
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à OrderStacks.
/// </summary>
public static string StrTitle { public static string StrTitle {
get { get {
return ResourceManager.GetString("StrTitle", resourceCulture); return ResourceManager.GetString("StrTitle", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Règles.
/// </summary>
public static string StrTitleRules { public static string StrTitleRules {
get { get {
return ResourceManager.GetString("StrTitleRules", resourceCulture); return ResourceManager.GetString("StrTitleRules", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Jouer avec des valeurs :.
/// </summary>
public static string StrValueType { public static string StrValueType {
get { get {
return ResourceManager.GetString("StrValueType", resourceCulture); return ResourceManager.GetString("StrValueType", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Félicitation vous avez gagné.
/// </summary>
public static string StrWin { public static string StrWin {
get { get {
return ResourceManager.GetString("StrWin", resourceCulture); return ResourceManager.GetString("StrWin", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à La carte choisie ne rentre pas dans la pile.
/// </summary>
public static string StrWrongStack { public static string StrWrongStack {
get { get {
return ResourceManager.GetString("StrWrongStack", resourceCulture); return ResourceManager.GetString("StrWrongStack", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Fractionnées.
/// </summary>
public static string TypeValuefractionated { public static string TypeValuefractionated {
get { get {
return ResourceManager.GetString("TypeValuefractionated", resourceCulture); return ResourceManager.GetString("TypeValuefractionated", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Centièmes.
/// </summary>
public static string TypeValuehundredth { public static string TypeValuehundredth {
get { get {
return ResourceManager.GetString("TypeValuehundredth", resourceCulture); return ResourceManager.GetString("TypeValuehundredth", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Relatives.
/// </summary>
public static string TypeValueRelative { public static string TypeValueRelative {
get { get {
return ResourceManager.GetString("TypeValueRelative", resourceCulture); return ResourceManager.GetString("TypeValueRelative", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Dizièmes.
/// </summary>
public static string TypeValueTens { public static string TypeValueTens {
get { get {
return ResourceManager.GetString("TypeValueTens", resourceCulture); return ResourceManager.GetString("TypeValueTens", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Millièmes.
/// </summary>
public static string TypeValuethousandth { public static string TypeValuethousandth {
get { get {
return ResourceManager.GetString("TypeValuethousandth", resourceCulture); return ResourceManager.GetString("TypeValuethousandth", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Entière.
/// </summary>
public static string TypeValueWhole { public static string TypeValueWhole {
get { get {
return ResourceManager.GetString("TypeValueWhole", resourceCulture); return ResourceManager.GetString("TypeValueWhole", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Thème clair :.
/// </summary>
public static string WhiteTheme { public static string WhiteTheme {
get { get {
return ResourceManager.GetString("WhiteTheme", resourceCulture); return ResourceManager.GetString("WhiteTheme", resourceCulture);
} }
} }
/// <summary>
/// Recherche une chaîne localisée semblable à Erreur pseudo :.
/// </summary>
public static string WrongPseudo { public static string WrongPseudo {
get { get {
return ResourceManager.GetString("WrongPseudo", resourceCulture); return ResourceManager.GetString("WrongPseudo", resourceCulture);

@ -0,0 +1,262 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace TheGameExtreme.Resx {
using System;
using System.Reflection;
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
public class AppResources {
private static System.Resources.ResourceManager resourceMan;
private static System.Globalization.CultureInfo resourceCulture;
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal AppResources() {
}
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
public static System.Resources.ResourceManager ResourceManager {
get {
if (object.Equals(null, resourceMan)) {
System.Resources.ResourceManager temp = new System.Resources.ResourceManager("TheGameExtreme.Resx.AppResources", typeof(AppResources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
public static System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set {
resourceCulture = value;
}
}
public static string StrAcendingStack {
get {
return ResourceManager.GetString("StrAcendingStack", resourceCulture);
}
}
public static string StrBtnPlay {
get {
return ResourceManager.GetString("StrBtnPlay", resourceCulture);
}
}
public static string StrCantGetStack {
get {
return ResourceManager.GetString("StrCantGetStack", resourceCulture);
}
}
public static string StrCardDoesntExist {
get {
return ResourceManager.GetString("StrCardDoesntExist", resourceCulture);
}
}
public static string StrCardPlayedLessThanTwo {
get {
return ResourceManager.GetString("StrCardPlayedLessThanTwo", resourceCulture);
}
}
public static string StrCloseWind {
get {
return ResourceManager.GetString("StrCloseWind", resourceCulture);
}
}
public static string StrDownStack {
get {
return ResourceManager.GetString("StrDownStack", resourceCulture);
}
}
public static string StrEndTurn {
get {
return ResourceManager.GetString("StrEndTurn", resourceCulture);
}
}
public static string StrEnterPseudo {
get {
return ResourceManager.GetString("StrEnterPseudo", resourceCulture);
}
}
public static string String3 {
get {
return ResourceManager.GetString("String3", resourceCulture);
}
}
public static string String4 {
get {
return ResourceManager.GetString("String4", resourceCulture);
}
}
public static string StrLocalGame {
get {
return ResourceManager.GetString("StrLocalGame", resourceCulture);
}
}
public static string StrLose {
get {
return ResourceManager.GetString("StrLose", resourceCulture);
}
}
public static string StrMultiplayer {
get {
return ResourceManager.GetString("StrMultiplayer", resourceCulture);
}
}
public static string StrNbCards {
get {
return ResourceManager.GetString("StrNbCards", resourceCulture);
}
}
public static string StrNbPlayers {
get {
return ResourceManager.GetString("StrNbPlayers", resourceCulture);
}
}
public static string StrNbStacksInGame {
get {
return ResourceManager.GetString("StrNbStacksInGame", resourceCulture);
}
}
public static string StrPlayerSelections {
get {
return ResourceManager.GetString("StrPlayerSelections", resourceCulture);
}
}
public static string StrPseudoGM {
get {
return ResourceManager.GetString("StrPseudoGM", resourceCulture);
}
}
<<<<<<< HEAD
/// <summary>
/// Recherche une chaîne localisée semblable à - L&apos;objectif est de battre la machine seul et/ou en coopération.
///
/// - Afin d&apos;atteindre l&apos;objectif, les joueurs disposent de 4 piles (par defaut) : deux ascendantes(Verte) et deux descendantes(Rouge).
///
/// - Sur les piles ascendantes, le joueur doit bien entendu poser des cartes plus grandes et inversement sur les piles descendantes.
///
/// - Le but est de poser les 98 cartes du jeu sur les différentes piles à votre disposition.
/// (Pour ce faire confer les règles de tour de jeu ci-dessous)
/// [le reste de la chaîne a été tronqué]&quot;;.
/// </summary>
=======
>>>>>>> 3badad823975148fed6467984295274bc7006685
public static string StrRules {
get {
return ResourceManager.GetString("StrRules", resourceCulture);
}
}
public static string StrTitle {
get {
return ResourceManager.GetString("StrTitle", resourceCulture);
}
}
public static string StrTitleRules {
get {
return ResourceManager.GetString("StrTitleRules", resourceCulture);
}
}
public static string StrValueType {
get {
return ResourceManager.GetString("StrValueType", resourceCulture);
}
}
public static string StrWin {
get {
return ResourceManager.GetString("StrWin", resourceCulture);
}
}
public static string StrWrongStack {
get {
return ResourceManager.GetString("StrWrongStack", resourceCulture);
}
}
public static string TypeValuefractionated {
get {
return ResourceManager.GetString("TypeValuefractionated", resourceCulture);
}
}
public static string TypeValuehundredth {
get {
return ResourceManager.GetString("TypeValuehundredth", resourceCulture);
}
}
public static string TypeValueRelative {
get {
return ResourceManager.GetString("TypeValueRelative", resourceCulture);
}
}
public static string TypeValueTens {
get {
return ResourceManager.GetString("TypeValueTens", resourceCulture);
}
}
public static string TypeValuethousandth {
get {
return ResourceManager.GetString("TypeValuethousandth", resourceCulture);
}
}
public static string TypeValueWhole {
get {
return ResourceManager.GetString("TypeValueWhole", resourceCulture);
}
}
public static string WhiteTheme {
get {
return ResourceManager.GetString("WhiteTheme", resourceCulture);
}
}
public static string WrongPseudo {
get {
return ResourceManager.GetString("WrongPseudo", resourceCulture);
}
}
}
}

@ -166,7 +166,7 @@
<value>Nombre de joueurs :</value> <value>Nombre de joueurs :</value>
</data> </data>
<data name="StrNbStacksInGame" xml:space="preserve"> <data name="StrNbStacksInGame" xml:space="preserve">
<value>Nombre de pile en jeu :</value> <value>Nombre de piles en jeu :</value>
</data> </data>
<data name="StrPlayerSelections" xml:space="preserve"> <data name="StrPlayerSelections" xml:space="preserve">
<value> Veuillez choisir un nombre de joueur ainsi que leur(s) nom(s)</value> <value> Veuillez choisir un nombre de joueur ainsi que leur(s) nom(s)</value>
@ -177,36 +177,31 @@
<data name="StrRules" xml:space="preserve"> <data name="StrRules" xml:space="preserve">
<value> - L'objectif est de battre la machine seul et/ou en coopération. <value> - L'objectif est de battre la machine seul et/ou en coopération.
- Afin d'atteindre l'objectif, les joueurs disposent de 4 piles (par defaut) : deux ascendantes(Verte) et deux descendantes(Rouge). - Afin d'atteindre l'objectif, les joueurs disposent de 4 piles (par défaut): deux piles ascendantes vertes et deux piles descendantes rouges.
- Sur les piles ascendantes, le joueur doit bien entendu poser des cartes plus grandes et inversement sur les piles descendantes. - Sur les piles ascendantes, le joueur doit poser des cartes plus grandes et inversement sur les piles descendantes.
- Le but est de poser les 98 cartes du jeu sur les différentes piles à votre disposition. - Le but est de poser les 98 cartes du jeu sur les différentes piles à votre disposition.
(Pour ce faire confer les règles de tour de jeu ci-dessous)
- Pour jouer, il suffit de faire glisser une carte sur la pile que vous avez décidé. - Pour jouer, il suffit de faire glisser une carte sur la pile que vous avez décidé.
- Cette carte doit bien entendu être plus grande que celle déjà présente s'il s'agit d'une pile ascendante et plus petite si c'est l'inverse. - Cette carte doit être plus grande que celle déjà présente s'il s'agit d'une pile ascendante et plus petite si c'est l'inverse.
- Il y a deux cas particuliers à la règle du dessus. En effet, il est possible de poser une carte plus petite sur une pile ascendante à condition que ce soit une dizaine inférieur. De la même manière, si la carte est plus grande d'une dizaine, il est possible de la poser sur une pile descendante. - Il est possible de poser une carte plus petite sur une pile ascendante à condition que ce soit d''une dizaine inférieur. De la même manière, si la carte est plus grande d'une dizaine, il est possible de la poser sur une pile descendante.
- Ex: Sur une pile descendante, nous avons 68 =&gt; Nous pouvons alors poser 78 ou n'importe quels nombres plus petits que 68. - Ex : Sur une pile descendante, nous avons 68 =&gt; Nous pouvons alors poser 78.
Sur une pile ascendante, nous avons à nouveau 68 =&gt; Nous pouvons poser 58 ou n'importe quels nombres plus grands que 68. Sur une pile ascendante, nous avons à nouveau 68 =&gt; Nous pouvons poser 58.
- Chaque joueur doit jouer au minimum deux cartes par tour. - Chaque joueur doit jouer au minimum deux cartes par tour.
Il n'y a donc aucune limite maximale de carte à jouer par tour. Cependant, il est conseillé dans la plupart des cas de ne pas jouer toutes les cartes de sa main. Il n'y a donc aucune limite maximale de carte à jouer par tour. Cependant, il est conseillé dans la plupart des cas de ne pas jouer toutes les cartes en sa possessions.
- Une fois votre tour terminé, vous pouvez appuyez sur le boutton "Fin de tour" afin de passer au joueur suivant. - Une fois votre tour terminé, vous appuyez sur le boutton "Fin de tour" afin de passer au joueur suivant.
- La fin du jeu survient quand toutes les cartes sont jouées ou quand le joueur dont c'est le tour ne peut plus jouer. - La partie est finie quand toutes les cartes sont jouées ou quand le joueur dont c'est le tour ne peut plus jouer.
- Afin de préparer la partie, vous disposez d'un écran permettant de choisir le nombre de joueur et leur pseudo, le type de jeu auquels vous souhaitez jouer et enfin le nombre de piles pour jouer. - Afin de préparer la partie, vous disposez d'un écran permettant de choisir le nombre de joueur et leur pseudo, le type de jeu auquels vous souhaitez jouer et enfin le nombre de piles pour jouer.
- Le type de jeu permet de définir les cartes avec lesquelles vous allez jouer: relatif, décimal... - Le type de jeu permet de définir les valeurs présentent sur les cartes. Vous pouvez jouer avec des valeurs entières, relatives, décimales (1 chiffre), décimales (2 chiffres), décimales (3 chiffres) et avec des fractions décimales</value>
- le nombre de piles correspond au nombre de piles initial sur lesquelles vous pourrez poser des cartes.
La moitié des piles sont toujours ascendantes et l'autre moitié sont quant à elles toujours descendantes.
Par ailleurs, plus le nombre de piles est important plus le jeu est facile.</value>
</data> </data>
<data name="StrTitle" xml:space="preserve"> <data name="StrTitle" xml:space="preserve">
<value>OrderStacks</value> <value>OrderStacks</value>
@ -221,22 +216,22 @@
<value>Félicitation vous avez gagné</value> <value>Félicitation vous avez gagné</value>
</data> </data>
<data name="StrWrongStack" xml:space="preserve"> <data name="StrWrongStack" xml:space="preserve">
<value>La carte choisie ne rentre pas dans la pile</value> <value>La carte choisie ne convient pas</value>
</data> </data>
<data name="TypeValuefractionated" xml:space="preserve"> <data name="TypeValuefractionated" xml:space="preserve">
<value>Fractionnées</value> <value>Fractionnées</value>
</data> </data>
<data name="TypeValuehundredth" xml:space="preserve"> <data name="TypeValuehundredth" xml:space="preserve">
<value>Centièmes</value> <value>Décimales (2 chiffres)</value>
</data> </data>
<data name="TypeValueRelative" xml:space="preserve"> <data name="TypeValueRelative" xml:space="preserve">
<value>Relatives</value> <value>Relatives</value>
</data> </data>
<data name="TypeValueTens" xml:space="preserve"> <data name="TypeValueTens" xml:space="preserve">
<value>Dizièmes</value> <value>Décimales (1 chiffre)</value>
</data> </data>
<data name="TypeValuethousandth" xml:space="preserve"> <data name="TypeValuethousandth" xml:space="preserve">
<value>Millièmes</value> <value>Décimales (3 chiffres)</value>
</data> </data>
<data name="TypeValueWhole" xml:space="preserve"> <data name="TypeValueWhole" xml:space="preserve">
<value>Entière</value> <value>Entière</value>

@ -0,0 +1,269 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="StrAcendingStack" xml:space="preserve">
<value>Pile ascendante</value>
</data>
<data name="StrBtnPlay" xml:space="preserve">
<value>Jouer</value>
</data>
<data name="StrCantGetStack" xml:space="preserve">
<value>La pile n'est pas disponnible</value>
</data>
<data name="StrCardDoesntExist" xml:space="preserve">
<value>La carte n'existe pas </value>
</data>
<data name="StrCardPlayedLessThanTwo" xml:space="preserve">
<value>Vous devez jouer au minimum deux cartes par tour</value>
</data>
<data name="StrCloseWind" xml:space="preserve">
<value>Fermer</value>
</data>
<data name="StrDownStack" xml:space="preserve">
<value>Pile descendante</value>
</data>
<data name="StrEndTurn" xml:space="preserve">
<value>Fin de tour</value>
</data>
<data name="StrEnterPseudo" xml:space="preserve">
<value>Entrez votre pseudo</value>
</data>
<data name="String3" xml:space="preserve">
<value>La partie est terminée</value>
</data>
<data name="String4" xml:space="preserve">
<value>Bravo vous avez gagné!</value>
</data>
<data name="StrLocalGame" xml:space="preserve">
<value>Jeu en local</value>
</data>
<data name="StrLose" xml:space="preserve">
<value />
</data>
<data name="StrMultiplayer" xml:space="preserve">
<value>Multijoueur</value>
</data>
<data name="StrNbCards" xml:space="preserve">
<value>Nombre de cartes :</value>
</data>
<data name="StrNbPlayers" xml:space="preserve">
<value>Nombre de joueurs :</value>
</data>
<data name="StrNbStacksInGame" xml:space="preserve">
<value>Nombre de piles en jeu :</value>
</data>
<data name="StrPlayerSelections" xml:space="preserve">
<value> Veuillez choisir un nombre de joueur ainsi que leur(s) nom(s)</value>
</data>
<data name="StrPseudoGM" xml:space="preserve">
<value>Entrez votre pseudo :</value>
</data>
<data name="StrRules" xml:space="preserve">
<value> - L'objectif est de battre la machine seul et/ou en coopération.
<<<<<<< HEAD
- Afin d'atteindre l'objectif, les joueurs disposent de 4 piles (par defaut) : deux ascendantes(Verte) et deux descendantes(Rouge).
=======
- Afin d'atteindre l'objectif, les joueurs disposent de 4 piles (par défaut): deux piles ascendantes vertes et deux piles descendantes rouges.
>>>>>>> 3badad823975148fed6467984295274bc7006685
- Sur les piles ascendantes, le joueur doit poser des cartes plus grandes et inversement sur les piles descendantes.
- Le but est de poser les 98 cartes du jeu sur les différentes piles à votre disposition.
<<<<<<< HEAD
(Pour ce faire confer les règles de tour de jeu ci-dessous)
=======
>>>>>>> 3badad823975148fed6467984295274bc7006685
- Pour jouer, il suffit de faire glisser une carte sur la pile que vous avez décidé.
- Cette carte doit être plus grande que celle déjà présente s'il s'agit d'une pile ascendante et plus petite si c'est l'inverse.
- Il est possible de poser une carte plus petite sur une pile ascendante à condition que ce soit d''une dizaine inférieur. De la même manière, si la carte est plus grande d'une dizaine, il est possible de la poser sur une pile descendante.
<<<<<<< HEAD
- Ex: Sur une pile descendante, nous avons 68 =&gt; Nous pouvons alors poser 78 ou n'importe quels nombres plus petits que 68.
Sur une pile ascendante, nous avons à nouveau 68 =&gt; Nous pouvons poser 58 ou n'importe quels nombres plus grands que 68.
- Chaque joueur doit jouer au minimum deux cartes par tour.
Il n'y a donc aucune limite maximale de carte à jouer par tour. Cependant, il est conseillé dans la plupart des cas de ne pas jouer toutes les cartes de sa main.
=======
- Ex : Sur une pile descendante, nous avons 68 =&gt; Nous pouvons alors poser 78.
Sur une pile ascendante, nous avons à nouveau 68 =&gt; Nous pouvons poser 58.
- Chaque joueur doit jouer au minimum deux cartes par tour.
Il n'y a donc aucune limite maximale de carte à jouer par tour. Cependant, il est conseillé dans la plupart des cas de ne pas jouer toutes les cartes en sa possessions.
>>>>>>> 3badad823975148fed6467984295274bc7006685
- Une fois votre tour terminé, vous appuyez sur le boutton "Fin de tour" afin de passer au joueur suivant.
- La partie est finie quand toutes les cartes sont jouées ou quand le joueur dont c'est le tour ne peut plus jouer.
- Afin de préparer la partie, vous disposez d'un écran permettant de choisir le nombre de joueur et leur pseudo, le type de jeu auquels vous souhaitez jouer et enfin le nombre de piles pour jouer.
<<<<<<< HEAD
- Le type de jeu permet de définir les cartes avec lesquelles vous allez jouer: relatif, décimal...
- le nombre de piles correspond au nombre de piles initial sur lesquelles vous pourrez poser des cartes.
La moitié des piles sont toujours ascendantes et l'autre moitié sont quant à elles toujours descendantes.
Par ailleurs, plus le nombre de piles est important plus le jeu est facile.</value>
=======
- Le type de jeu permet de définir les valeurs présentent sur les cartes. Vous pouvez jouer avec des valeurs entières, relatives, décimales (1 chiffre), décimales (2 chiffres), décimales (3 chiffres) et avec des fractions décimales</value>
>>>>>>> 3badad823975148fed6467984295274bc7006685
</data>
<data name="StrTitle" xml:space="preserve">
<value>OrderStacks</value>
</data>
<data name="StrTitleRules" xml:space="preserve">
<value>Règles</value>
</data>
<data name="StrValueType" xml:space="preserve">
<value>Jouer avec des valeurs :</value>
</data>
<data name="StrWin" xml:space="preserve">
<value>Félicitation vous avez gagné</value>
</data>
<data name="StrWrongStack" xml:space="preserve">
<value>La carte choisie ne convient pas</value>
</data>
<data name="TypeValuefractionated" xml:space="preserve">
<value>Fractionnées</value>
</data>
<data name="TypeValuehundredth" xml:space="preserve">
<value>Décimales (2 chiffres)</value>
</data>
<data name="TypeValueRelative" xml:space="preserve">
<value>Relatives</value>
</data>
<data name="TypeValueTens" xml:space="preserve">
<value>Décimales (1 chiffre)</value>
</data>
<data name="TypeValuethousandth" xml:space="preserve">
<value>Décimales (3 chiffres)</value>
</data>
<data name="TypeValueWhole" xml:space="preserve">
<value>Entière</value>
</data>
<data name="WhiteTheme" xml:space="preserve">
<value>Thème clair :</value>
</data>
<data name="WrongPseudo" xml:space="preserve">
<value>Erreur pseudo :</value>
</data>
</root>

@ -14,6 +14,42 @@ namespace TheGameExtreme.model
} }
public bool isMultiple(Fraction fraction) public bool isMultiple(Fraction fraction)
{
if (fraction.Numerateur == 1)
{
if (fraction.Denominateur != 1
&& fraction.Denominateur != Denominateur
&& Denominateur % fraction.Denominateur == 0)
{
return true;
}
}
else if (fraction.Denominateur == 1)
{
if (fraction.Numerateur != 1
&& fraction.Numerateur != Numerateur
&& Numerateur % fraction.Numerateur == 0)
{
return true;
}
}
else if (fraction.Numerateur == Numerateur)
{
if (fraction.Denominateur != Denominateur
&& Denominateur % fraction.Denominateur == 0)
{
return true;
}
}
else if (fraction.Denominateur == Denominateur)
{
if (fraction.Numerateur != Numerateur
&& Numerateur % fraction.Numerateur == 0)
{
return true;
}
}
else
{ {
if (Numerateur % fraction.Numerateur == 0) if (Numerateur % fraction.Numerateur == 0)
{ {
@ -23,6 +59,7 @@ namespace TheGameExtreme.model
{ {
return true; return true;
} }
}
return false; return false;
} }

@ -13,8 +13,8 @@ namespace TheGameExtreme.model.deck
int borneMaxRandom = (int)(borneMax * 100); int borneMaxRandom = (int)(borneMax * 100);
while (deck.Count < nbCard && deck.Count < (borneMaxRandom - borneMinRandom)) while (deck.Count < nbCard && deck.Count < (borneMaxRandom - borneMinRandom))
{ {
decimal value = (decimal)(random.Next(borneMinRandom, borneMaxRandom)) / 100; int value = random.Next(borneMinRandom, borneMaxRandom);
InsertionDichotomique(deck, 0, deck.Count-1, new ClassicCard(value)); InsertionDichotomique(deck, 0, deck.Count-1, new FractionCard(new Fraction(value, 100)));
} }
} }
} }

@ -12,8 +12,8 @@ namespace TheGameExtreme.model.deck
int borneMaxRandom = (int)(borneMax * 10); int borneMaxRandom = (int)(borneMax * 10);
while (deck.Count < nbCard && deck.Count < (borneMaxRandom - borneMinRandom)) while (deck.Count < nbCard && deck.Count < (borneMaxRandom - borneMinRandom))
{ {
decimal value = (decimal)(random.Next(borneMinRandom, borneMaxRandom)) / 10; int value = random.Next(borneMinRandom, borneMaxRandom);
InsertionDichotomique(deck, 0, deck.Count-1, new ClassicCard(value)); InsertionDichotomique(deck, 0, deck.Count-1, new FractionCard(new Fraction(value, 10)));
} }
} }
} }

@ -13,8 +13,8 @@ namespace TheGameExtreme.model.deck
int borneMaxRandom = (int)(borneMax * 1000); int borneMaxRandom = (int)(borneMax * 1000);
while (deck.Count < nbCard && deck.Count < (borneMaxRandom - borneMinRandom)) while (deck.Count < nbCard && deck.Count < (borneMaxRandom - borneMinRandom))
{ {
decimal value = (decimal)(random.Next(borneMinRandom, borneMaxRandom)) / 1000; int value = random.Next(borneMinRandom, borneMaxRandom);
InsertionDichotomique(deck, 0, deck.Count-1, new ClassicCard(value)); InsertionDichotomique(deck, 0, deck.Count-1, new FractionCard(new Fraction(value, 1000)));
} }
} }
} }

@ -39,8 +39,12 @@ namespace TheGameExtreme.model.gameActions.classic
return true; return true;
} }
else else
{
TestEndGame(currentHand);
if (!end)
{ {
Message = ((JouerUneCarteClassic)gameActions[1]).ErrorMessage; Message = ((JouerUneCarteClassic)gameActions[1]).ErrorMessage;
}
return false; return false;
} }
} }

@ -39,8 +39,12 @@ namespace TheGameExtreme.model.gameActions.decimals
return true; return true;
} }
else else
{
TestEndGame(currentHand);
if (!end)
{ {
Message = ((JouerUneCarteDecimal)gameActions[1]).ErrorMessage; Message = ((JouerUneCarteDecimal)gameActions[1]).ErrorMessage;
}
return false; return false;
} }
} }

@ -39,8 +39,12 @@ namespace TheGameExtreme.model.gameActions.fraction
return true; return true;
} }
else else
{
TestEndGame(currentHand);
if (!end)
{ {
Message = ((JouerUneCarteFraction)gameActions[1]).ErrorMessage; Message = ((JouerUneCarteFraction)gameActions[1]).ErrorMessage;
}
return false; return false;
} }
} }

@ -6,6 +6,7 @@
<Color x:Key="BlackColor">black</Color> <Color x:Key="BlackColor">black</Color>
<Color x:Key="WhiteColor">white</Color> <Color x:Key="WhiteColor">white</Color>
<Color x:Key="SkyBlueColor">SkyBlue</Color> <Color x:Key="SkyBlueColor">SkyBlue</Color>
<Color x:Key="Gold">#ffe921</Color>
</ResourceDictionary> </ResourceDictionary>

@ -7,12 +7,11 @@
xmlns:resources="clr-namespace:TheGameExtreme.Resx" xmlns:resources="clr-namespace:TheGameExtreme.Resx"
x:Class="TheGameExtreme.view.GamePreparationPage"> x:Class="TheGameExtreme.view.GamePreparationPage">
<ScrollView>
<Grid <Grid
Margin="5,0,5,5"> Margin="5,5,5,5">
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="10*" /> <RowDefinition Height="20*" />
<RowDefinition Height="90*" /> <RowDefinition Height="80*" />
</Grid.RowDefinitions> </Grid.RowDefinitions>
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
@ -22,31 +21,26 @@
<StackLayout <StackLayout
Grid.Row="0" Grid.Row="0"
Grid.Column="0"> Grid.Column="0"
<ImageButton Source="ArrowSettingsBack.png" Orientation="Horizontal">
<ImageButton
Source="ArrowSettingsBack.png"
VerticalOptions="Start" VerticalOptions="Start"
HorizontalOptions="StartAndExpand" HorizontalOptions="StartAndExpand"
HeightRequest="40" HeightRequest="40"
WidthRequest="50" WidthRequest="50"
Clicked="Back" Clicked="Back"
BackgroundColor="Transparent" BackgroundColor="Transparent"/>
Margin="10,5,0,0"/>
</StackLayout>
<StackLayout
Grid.Row="0"
Grid.Column="1">
<Button <Button
Text="{x:Static resources:AppResources.StrBtnPlay}" Text="{x:Static resources:AppResources.StrBtnPlay}"
Clicked="Play" Clicked="Play"
VerticalOptions="Start"
HorizontalOptions="End" HorizontalOptions="End"
MinimumWidthRequest="30" MinimumWidthRequest="30"
WidthRequest="100" WidthRequest="100"
BackgroundColor="{DynamicResource SkyBlueColor}" BackgroundColor="{DynamicResource Gold}"
CornerRadius="10" CornerRadius="10"/>
Margin="0,5,10,0"/>
</StackLayout> </StackLayout>
@ -55,21 +49,26 @@
Grid.Row="1" Grid.Row="1"
Grid.Column="1"> Grid.Column="1">
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="5*" />
<RowDefinition Height="10*" /> <RowDefinition Height="10*" />
<RowDefinition Height="10*" /> <RowDefinition Height="5*" />
<RowDefinition Height="10*" />
<RowDefinition Height="10*" /> <RowDefinition Height="10*" />
</Grid.RowDefinitions> </Grid.RowDefinitions>
<StackLayout <StackLayout
Grid.Row="0" Grid.Row="0"
Margin="0,0,10,0" Grid.Column="0">
Orientation="Vertical"> <Label
<Label Text="{x:Static resources:AppResources.StrNbPlayers}" Text="{x:Static resources:AppResources.StrNbPlayers}"
TextColor="{DynamicResource WhiteColor}" TextColor="{DynamicResource WhiteColor}"
FontSize="16" FontSize="16"
VerticalTextAlignment="Center" VerticalTextAlignment="Center"
HorizontalTextAlignment="Center"/> HorizontalTextAlignment="Center"/>
</StackLayout>
<StackLayout
Grid.Row="1"
Grid.Column="0">
<Picker <Picker
x:Name="PlayerSelecter" x:Name="PlayerSelecter"
BackgroundColor="{DynamicResource SkyBlueColor}" BackgroundColor="{DynamicResource SkyBlueColor}"
@ -77,43 +76,46 @@
HorizontalOptions="Center" HorizontalOptions="Center"
VerticalOptions="Center" VerticalOptions="Center"
MinimumWidthRequest="30" MinimumWidthRequest="30"
WidthRequest="100" WidthRequest="100"/>
Margin="0,0,10,0"/>
</StackLayout> </StackLayout>
<StackLayout <StackLayout
Grid.Row="1" Grid.Row="2"
Margin="0,0,10,0"> Grid.Column="0">
<Label Text="{x:Static resources:AppResources.StrValueType}" <Label Text="{x:Static resources:AppResources.StrValueType}"
TextColor="{DynamicResource WhiteColor}" TextColor="{DynamicResource WhiteColor}"
FontSize="16" FontSize="16"
VerticalTextAlignment="Center" VerticalTextAlignment="Center"
HorizontalTextAlignment="Center"/> HorizontalTextAlignment="Center"/>
</StackLayout>
<StackLayout
Grid.Row="3"
Grid.Column="0">
<Picker <Picker
x:Name="SelectMode" x:Name="SelectMode"
BackgroundColor="{DynamicResource SkyBlueColor}" BackgroundColor="{DynamicResource SkyBlueColor}"
HorizontalOptions="Center" HorizontalOptions="Center"
VerticalOptions="Center" VerticalOptions="Center"
MinimumWidthRequest="30" MinimumWidthRequest="30"
WidthRequest="100" WidthRequest="110"/>
Margin="0,0,10,0"/>
</StackLayout> </StackLayout>
<StackLayout <StackLayout
Grid.Row="0" Grid.Row="0"
Grid.Column="2" Grid.Column="1">
Margin="0,0,20,0">
<Label Text="{x:Static resources:AppResources.StrNbStacksInGame}" <Label Text="{x:Static resources:AppResources.StrNbStacksInGame}"
TextColor="{DynamicResource WhiteColor}" TextColor="{DynamicResource WhiteColor}"
FontSize="16" FontSize="16"
VerticalTextAlignment="Center" VerticalTextAlignment="Center"
HorizontalTextAlignment="Center"/> HorizontalTextAlignment="Center"/>
</StackLayout>
<StackLayout
Grid.Row="1"
Grid.Column="1">
<Picker x:Name="SelectNbStack" <Picker x:Name="SelectNbStack"
BackgroundColor="{DynamicResource SkyBlueColor}" BackgroundColor="{DynamicResource SkyBlueColor}"
Margin="0,0,10,0"
MinimumWidthRequest="30" MinimumWidthRequest="30"
WidthRequest="100" WidthRequest="100"
HorizontalOptions="Center" HorizontalOptions="Center"
@ -121,18 +123,21 @@
</StackLayout> </StackLayout>
<StackLayout <StackLayout
Grid.Row="1" Grid.Row="2"
Grid.Column="2" Grid.Column="1">
Margin="0,0,20,0">
<Label Text="{x:Static resources:AppResources.StrNbCards}" <Label Text="{x:Static resources:AppResources.StrNbCards}"
TextColor="{DynamicResource WhiteColor}" TextColor="{DynamicResource WhiteColor}"
FontSize="16" FontSize="16"
VerticalTextAlignment="Center" VerticalTextAlignment="Center"
HorizontalTextAlignment="Center"/> HorizontalTextAlignment="Center"/>
<Picker x:Name="SelectNbCard" </StackLayout>
BackgroundColor="{DynamicResource SkyBlueColor}"
<StackLayout
Grid.Row="3"
Grid.Column="1">
<Picker
x:Name="SelectNbCard"
BackgroundColor="{DynamicResource SkyBlueColor}"
Margin="0,0,10,0" Margin="0,0,10,0"
MinimumWidthRequest="30" MinimumWidthRequest="30"
WidthRequest="100" WidthRequest="100"
@ -144,8 +149,7 @@
<ScrollView <ScrollView
Grid.Column="0" Grid.Column="0"
Grid.Row="1" Grid.Row="1">
Margin="10,0,0,0">
<StackLayout <StackLayout
x:Name="NameList"> x:Name="NameList">
@ -158,17 +162,16 @@
HorizontalTextAlignment="Center"/> HorizontalTextAlignment="Center"/>
<Entry <Entry
BackgroundColor="{DynamicResource SkyBlueColor}" BackgroundColor="{DynamicResource Gold}"
Placeholder="Pseudo" Placeholder="Pseudo"
HorizontalOptions="Center" HorizontalOptions="Center"
MinimumWidthRequest="50" MinimumWidthRequest="50"
WidthRequest="200" WidthRequest="200"
MaxLength="18"/> MaxLength="18"/>
</StackLayout>
</StackLayout>
</ScrollView> </ScrollView>
</Grid> </Grid>
</ScrollView>
</ContentPage> </ContentPage>

@ -43,6 +43,7 @@ namespace TheGameExtreme.view
IOGamePreparation.SaveParameterGamePreparationNbCards(SelectNbCard.SelectedIndex); IOGamePreparation.SaveParameterGamePreparationNbCards(SelectNbCard.SelectedIndex);
await Navigation.PopAsync(); await Navigation.PopAsync();
} }
protected override bool OnBackButtonPressed() protected override bool OnBackButtonPressed()
{ {
IOGamePreparation.SaveParamaterGamePreparationNbPlayers(PlayerSelecter.SelectedIndex); IOGamePreparation.SaveParamaterGamePreparationNbPlayers(PlayerSelecter.SelectedIndex);
@ -83,7 +84,7 @@ namespace TheGameExtreme.view
Entry e = new Entry Entry e = new Entry
{ {
Placeholder = "Pseudo", Placeholder = "Pseudo",
BackgroundColor = (Color)Application.Current.Resources["SkyBlueColor"], BackgroundColor = (Color)Application.Current.Resources["Gold"],
WidthRequest = 200, WidthRequest = 200,
MinimumWidthRequest = 50, MinimumWidthRequest = 50,
HorizontalOptions = LayoutOptions.Center, HorizontalOptions = LayoutOptions.Center,

@ -1,132 +0,0 @@
using System;
using System.Collections.Generic;
using TheGameExtreme.IO;
using TheGameExtreme.Resx;
using Xamarin.Forms;
namespace TheGameExtreme.view
{
public partial class GamePreparationPage : ContentPage
{
public List<int> listNbPlayer = new List<int> { 1, 2, 3, 4, 5 };
<<<<<<< HEAD
public List<string> listGameMode = new List<string> { "entières", "relatives", "dizaines", "centaines", "millièmes", "fractionnées" };
=======
public List<string> listGameMode = new List<string> { AppResources.TypeValueWhole, AppResources.TypeValueRelative, AppResources.TypeValueTens, AppResources.TypeValuehundredth, AppResources.TypeValuethousandth, AppResources.TypeValuefractionated };
>>>>>>> bluetoothtest
public List<int> listNbStack = new List<int> { 4, 6, 8 };
public List<int> listNbCard = new List<int> { 100, 80, 60, 40 };
public GamePreparationPage()
{
InitializeComponent();
NavigationPage.SetHasNavigationBar(this, false);
PlayerSelecter.ItemsSource = listNbPlayer;
LoadParameterNbPlayerGamePreparation();
SelectMode.ItemsSource = listGameMode;
LoadParameterGameModeValueGamePreparation();
SelectNbStack.ItemsSource = listNbStack;
LoadParameterNbStacksGamePreparation();
SelectNbCard.ItemsSource = listNbCard;
LoadParameterNbCardsGamePreparation();
}
private async void Back(object sender, EventArgs e)
{
IOGamePreparation.SaveParamaterGamePreparationNbPlayers(PlayerSelecter.SelectedIndex);
IOGamePreparation.SaveParameterGamePreparationGameModeValue(SelectMode.SelectedIndex);
IOGamePreparation.SaveParameterGamePreparationNbStacks(SelectNbStack.SelectedIndex);
IOGamePreparation.SaveParameterGamePreparationNbCards(SelectNbCard.SelectedIndex);
await Navigation.PopAsync();
}
protected override bool OnBackButtonPressed()
{
IOGamePreparation.SaveParamaterGamePreparationNbPlayers(PlayerSelecter.SelectedIndex);
IOGamePreparation.SaveParameterGamePreparationGameModeValue(SelectMode.SelectedIndex);
IOGamePreparation.SaveParameterGamePreparationNbStacks(SelectNbStack.SelectedIndex);
IOGamePreparation.SaveParameterGamePreparationNbCards(SelectNbCard.SelectedIndex);
return base.OnBackButtonPressed();
}
private async void Play(object sender, EventArgs args)
{
List<string> playersNames = new List<string>();
for (int i = 1; i < NameList.Children.Count; i++)
{
playersNames.Add(((Entry)NameList.Children[i]).Text);
if (string.IsNullOrWhiteSpace(playersNames[playersNames.Count - 1]))
{
await DisplayAlert("Erreur pseudo", AppResources.StrEnterPseudo, "OK");
return;
}
}
IOGamePreparation.SaveParamaterGamePreparationNbPlayers(PlayerSelecter.SelectedIndex);
IOGamePreparation.SaveParameterGamePreparationGameModeValue(SelectMode.SelectedIndex);
IOGamePreparation.SaveParameterGamePreparationNbStacks(SelectNbStack.SelectedIndex);
IOGamePreparation.SaveParameterGamePreparationNbCards(SelectNbCard.SelectedIndex);
await Navigation.PushAsync(new MainPage(playersNames, (int)SelectNbStack.SelectedItem, (int)SelectMode.SelectedIndex, (int)SelectNbCard.SelectedItem));
}
private void ChangedPseudo(object sender, EventArgs args)
{
while (NameList.Children.Count - 1 != (int)PlayerSelecter.SelectedItem)
{
if (NameList.Children.Count - 1 < (int)PlayerSelecter.SelectedItem)
{
Entry e = new Entry
{
Placeholder = "Pseudo",
BackgroundColor = (Color)Application.Current.Resources["SkyBlueColor"],
WidthRequest = 200,
MinimumWidthRequest = 50,
HorizontalOptions = LayoutOptions.Center,
MaxLength = 18
};
NameList.Children.Add(e);
}
else
{
NameList.Children.RemoveAt(NameList.Children.Count - 1);
}
}
}
public void LoadParameterNbPlayerGamePreparation()
{
int nbJoueurs = IOGamePreparation.LoadParameterGamePreparationNbPlayers();
PlayerSelecter.SelectedIndex = nbJoueurs;
}
public void LoadParameterGameModeValueGamePreparation()
{
int gameModeValue = IOGamePreparation.LoadParameterGamePreparationGameModeValue();
SelectMode.SelectedIndex = gameModeValue;
}
public void LoadParameterNbStacksGamePreparation()
{
int nbStackSer = IOGamePreparation.LoadParamaterGamePreparationNbStacks();
SelectNbStack.SelectedIndex = nbStackSer;
}
public void LoadParameterNbCardsGamePreparation()
{
int nbCards = IOGamePreparation.LoadParameterGamePreparationNbCards();
SelectNbCard.SelectedIndex = nbCards;
}
}
}

@ -1,200 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ContentPage
BackgroundColor="{DynamicResource BlackColor}"
xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="TheGameExtreme.view.GamePreparationPage">
<ScrollView>
<Grid
Margin="5,0,5,5">
<Grid.RowDefinitions>
<RowDefinition Height="10*" />
<RowDefinition Height="90*" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="50*" />
<ColumnDefinition Width="50*" />
</Grid.ColumnDefinitions>
<StackLayout
Grid.Row="0"
Grid.Column="0">
<ImageButton Source="ArrowSettingsBack.png"
VerticalOptions="Start"
HorizontalOptions="StartAndExpand"
HeightRequest="40"
WidthRequest="50"
Clicked="Back"
BackgroundColor="Transparent"
Margin="10,5,0,0"/>
</StackLayout>
<StackLayout
Grid.Row="0"
Grid.Column="1">
<Button
Text="Play"
Clicked="Play"
HorizontalOptions="End"
MinimumWidthRequest="30"
WidthRequest="100"
BackgroundColor="{DynamicResource SkyBlueColor}"
CornerRadius="10"
Margin="0,5,10,0"/>
</StackLayout>
<Grid
Grid.Row="1"
Grid.Column="1">
<Grid.RowDefinitions>
<RowDefinition Height="10*" />
<RowDefinition Height="10*" />
<RowDefinition Height="10*" />
<RowDefinition Height="10*" />
</Grid.RowDefinitions>
<StackLayout
Grid.Row="0"
Margin="0,0,10,0"
Orientation="Vertical">
<Label Text="Nombre de joueur : "
TextColor="{DynamicResource WhiteColor}"
FontSize="16"
VerticalTextAlignment="Center"
HorizontalTextAlignment="Center"/>
<Picker
x:Name="PlayerSelecter"
BackgroundColor="{DynamicResource SkyBlueColor}"
SelectedIndexChanged="ChangedPseudo"
HorizontalOptions="Center"
VerticalOptions="Center"
MinimumWidthRequest="30"
WidthRequest="100"
Margin="0,0,10,0"/>
</StackLayout>
<StackLayout
Grid.Row="1"
Margin="0,0,10,0">
<Label Text="Jouer avec des valeurs :"
TextColor="{DynamicResource WhiteColor}"
FontSize="16"
VerticalTextAlignment="Center"
HorizontalTextAlignment="Center"/>
<Picker
x:Name="SelectMode"
BackgroundColor="{DynamicResource SkyBlueColor}"
HorizontalOptions="Center"
VerticalOptions="Center"
MinimumWidthRequest="30"
WidthRequest="100"
Margin="0,0,10,0"/>
</StackLayout>
<StackLayout
Grid.Row="0"
Grid.Column="2"
Margin="0,0,20,0">
<Label Text="Nombre de pile en jeu :"
TextColor="{DynamicResource WhiteColor}"
FontSize="16"
VerticalTextAlignment="Center"
HorizontalTextAlignment="Center"/>
<Picker x:Name="SelectNbStack"
BackgroundColor="{DynamicResource SkyBlueColor}"
Margin="0,0,10,0"
MinimumWidthRequest="30"
WidthRequest="100"
HorizontalOptions="Center"
VerticalOptions="Center"/>
</StackLayout>
<StackLayout
Grid.Row="1"
Grid.Column="2"
Margin="0,0,20,0">
<Label Text="Nombre de cartes:"
TextColor="{DynamicResource WhiteColor}"
FontSize="16"
VerticalTextAlignment="Center"
HorizontalTextAlignment="Center"/>
<Picker x:Name="SelectNbCard"
BackgroundColor="{DynamicResource SkyBlueColor}"
Margin="0,0,10,0"
MinimumWidthRequest="30"
WidthRequest="100"
HorizontalOptions="Center"
VerticalOptions="Center"/>
</StackLayout>
</Grid>
<<<<<<< HEAD
<StackLayout
x:Name="NameList"
=======
<!--<StackLayout
Grid.Row="0"
Grid.Column="0"
Margin="50,30,50,0">
<Label Text="Nom des joueurs"
TextColor="{DynamicResource WhiteColor}"
FontSize="16"
VerticalTextAlignment="Center"
HorizontalTextAlignment="Center"/>
</StackLayout>-->
<ScrollView
>>>>>>> 0a2872694d54a6c5d0dc0475d2c05d9fc914ee7c
Grid.Column="0"
Grid.Row="1"
Margin="10,0,0,0">
<StackLayout
x:Name="NameList">
<Label
Text="Entrer vos pseudo ici:"
TextColor="{DynamicResource WhiteColor}"
FontSize="16"
VerticalTextAlignment="Center"
HorizontalTextAlignment="Center"/>
<Entry
BackgroundColor="{DynamicResource SkyBlueColor}"
Placeholder="Pseudo"
HorizontalOptions="Center"
MinimumWidthRequest="50"
<<<<<<< HEAD
WidthRequest="200"
MaxLength="18"/>
=======
WidthRequest="200"/>
</StackLayout>
>>>>>>> 0a2872694d54a6c5d0dc0475d2c05d9fc914ee7c
</ScrollView>
</Grid>
</ScrollView>
</ContentPage>

@ -28,10 +28,11 @@
<Label <Label
Text="{x:Static resources:AppResources.StrTitle}" Text="{x:Static resources:AppResources.StrTitle}"
TextColor="{DynamicResource WhiteColor}" TextColor="{DynamicResource WhiteColor}"
Grid.Row="0" Grid.Column="1" Grid.Row="0"
Grid.Column="1"
HorizontalTextAlignment="Center" HorizontalTextAlignment="Center"
FontSize="35" FontSize="45"
VerticalTextAlignment="Center" VerticalTextAlignment="Start"
FontFamily=""/> FontFamily=""/>
@ -103,6 +104,4 @@
</Grid> </Grid>
</StackLayout>
</ContentPage> </ContentPage>

@ -21,7 +21,7 @@ namespace TheGameExtreme.view
private async void OpenMultiPlayerMode(object sender, EventArgs args) private async void OpenMultiPlayerMode(object sender, EventArgs args)
{ {
await DisplayAlert("Mode en cours de développement", "Ce mode n'est pas encore implémenté !", "Fermer"); await DisplayAlert("Mode en cours de développement", null, "Fermer");
//await Navigation.PushAsync(new MultiPlayerMode()); //await Navigation.PushAsync(new MultiPlayerMode());
} }

@ -0,0 +1,175 @@
<?xml version="1.0" encoding="UTF-8"?>
<ContentPage
Title="THEGAME"
BackgroundColor="{DynamicResource BlackColor}"
xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:resources="clr-namespace:TheGameExtreme.Resx"
x:Class="TheGameExtreme.view.HomePage"
x:Name="homepageT">
<<<<<<< HEAD
<StackLayout BackgroundColor="Transparent">
<Grid x:Name="MainGrid">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="15*"/>
<ColumnDefinition Width="70*"/>
<ColumnDefinition Width="15*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="19*"/>
<RowDefinition Height="27*"/>
<RowDefinition Height="27*"/>
<RowDefinition Height="27*"/>
<RowDefinition Height="27*"/>
</Grid.RowDefinitions>
=======
<Grid
Margin="5,5,5,5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="15*"/>
<ColumnDefinition Width="70*"/>
<ColumnDefinition Width="15*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="31*"/>
<RowDefinition Height="23*"/>
<RowDefinition Height="23*"/>
<RowDefinition Height="23*"/>
</Grid.RowDefinitions>
>>>>>>> 3badad823975148fed6467984295274bc7006685
<Label
Text="{x:Static resources:AppResources.StrTitle}"
TextColor="{DynamicResource WhiteColor}"
Grid.Row="0"
Grid.Column="1"
HorizontalTextAlignment="Center"
FontSize="45"
VerticalTextAlignment="Start"
FontFamily=""/>
<<<<<<< HEAD
<Button
Text="{x:Static resources:AppResources.StrLocalGame}"
FontSize="18"
Grid.Row="2"
Grid.Column="1"
HorizontalOptions="Center"
WidthRequest="230"
HeightRequest="57"
VerticalOptions="Center"
Clicked="OpenGame"
CornerRadius="10"
BackgroundColor="{DynamicResource SkyBlueColor}"/>
<Button
Text="{x:Static resources:AppResources.StrMultiplayer}"
FontSize="18"
Grid.Row="3"
Grid.Column="1"
HorizontalOptions="Center"
VerticalOptions="Center"
HeightRequest="57"
WidthRequest="230"
Clicked="OpenMultiPlayerMode"
CornerRadius="10"
BackgroundColor="{DynamicResource SkyBlueColor}"/>
<Button Text="{x:Static resources:AppResources.StrTitleRules}"
FontSize="18"
Grid.Row="4"
Grid.Column="1"
HorizontalOptions="Center"
VerticalOptions="Center"
HeightRequest="57"
WidthRequest="230"
Clicked="Rules_Clicked"
CornerRadius="10"
BackgroundColor="{DynamicResource SkyBlueColor}"/>
<Image Source="TrierImageB.png"
Grid.Column="1"
Grid.Row="1"/>
<Grid Grid.Row="0" Grid.Column="2" x:Name="ButtonGrid">
<Grid.RowDefinitions>
<RowDefinition Height="2*"/>
<RowDefinition Height="6*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*" />
<ColumnDefinition Width="6*" />
</Grid.ColumnDefinitions>
<ImageButton
x:Name="imageButton"
Grid.Column="1"
Grid.Row="1"
VerticalOptions="End"
HorizontalOptions="Center"
Clicked="Theme_Clicked"
BorderColor="{DynamicResource SkyBlueColor}"
BackgroundColor="Transparent"/>
</Grid>
=======
<ImageButton
Source="EngrenageV1.png"
Grid.Row="0"
Grid.Column="2"
VerticalOptions="StartAndExpand"
HorizontalOptions="End"
HeightRequest="60"
WidthRequest="68"
Clicked="OpenSetting"
BackgroundColor="{DynamicResource BlackColor}"/>
<Button
Text="{x:Static resources:AppResources.StrLocalGame}"
FontSize="18"
Grid.Row="1"
Grid.Column="1"
HorizontalOptions="Center"
WidthRequest="230"
HeightRequest="57"
VerticalOptions="Center"
Clicked="OpenGame"
CornerRadius="10"
BackgroundColor="{DynamicResource SkyBlueColor}"/>
<Button
Text="{x:Static resources:AppResources.StrMultiplayer}"
FontSize="18"
Grid.Row="2"
Grid.Column="1"
HorizontalOptions="Center"
VerticalOptions="Center"
HeightRequest="57"
WidthRequest="230"
Clicked="OpenMultiPlayerMode"
CornerRadius="10"
BackgroundColor="{DynamicResource SkyBlueColor}"/>
>>>>>>> 3badad823975148fed6467984295274bc7006685
<ImageButton
Source="imagesRules.png"
Grid.Column="0"
Grid.Row="0"
HeightRequest="50"
WidthRequest="35"
VerticalOptions="StartAndExpand"
HorizontalOptions="Start"
Clicked="Rules_Clicked"
BackgroundColor="{DynamicResource BlackColor}"/>
</Grid>
</ContentPage>

@ -12,7 +12,8 @@
x:Class="TheGameExtreme.view.MainPage"> x:Class="TheGameExtreme.view.MainPage">
<Grid <Grid
x:Name="Display"> x:Name="Display"
Margin="10,10,10,10">
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="10*"/> <RowDefinition Height="10*"/>
<RowDefinition Height="90*"/> <RowDefinition Height="90*"/>
@ -33,7 +34,7 @@
Text="Pseudo" Text="Pseudo"
HorizontalTextAlignment="Center" HorizontalTextAlignment="Center"
VerticalTextAlignment="Center" VerticalTextAlignment="Center"
TextColor="{DynamicResource WhiteColor}" TextColor="{DynamicResource Gold}"
FontSize="28"/> FontSize="28"/>
</StackLayout> </StackLayout>
@ -64,7 +65,7 @@
Text="" Text=""
HorizontalOptions="End" HorizontalOptions="End"
VerticalOptions="Center" VerticalOptions="Center"
BackgroundColor="{DynamicResource SkyBlueColor}" BackgroundColor="{DynamicResource Gold}"
HeightRequest="35" HeightRequest="35"
Clicked="EndTurn"/> Clicked="EndTurn"/>
</StackLayout> </StackLayout>

@ -7,8 +7,6 @@ using SkiaSharp;
using SkiaSharp.Views.Forms; using SkiaSharp.Views.Forms;
using TouchTracking; using TouchTracking;
using Xamarin.Essentials; using Xamarin.Essentials;
using System.IO;
using System.Reflection;
using TheGameExtreme.Resx; using TheGameExtreme.Resx;
namespace TheGameExtreme.view namespace TheGameExtreme.view
@ -29,8 +27,6 @@ namespace TheGameExtreme.view
List<TouchManipulationCard> stackCollection = new List<TouchManipulationCard>(); List<TouchManipulationCard> stackCollection = new List<TouchManipulationCard>();
Dictionary<long, TouchManipulationCard> textDictionary = new Dictionary<long, TouchManipulationCard>(); Dictionary<long, TouchManipulationCard> textDictionary = new Dictionary<long, TouchManipulationCard>();
private SKCanvas canvas; private SKCanvas canvas;
private SKBitmap logo;
private SKPoint logoPoint;
/** /**
@ -60,22 +56,6 @@ namespace TheGameExtreme.view
InflateStack(); InflateStack();
InflateHand(); InflateHand();
string ressourceID;
if (DeviceDisplay.MainDisplayInfo.Height > 1500)
{
ressourceID = "TheGameExtreme.Media.TrierImageBMax.png";
}
else
{
ressourceID = "TheGameExtreme.Media.TrierImageBMin.png";
}
using (Stream stream = GetType().GetTypeInfo().Assembly.GetManifestResourceStream(ressourceID))
{
logo = SKBitmap.Decode(stream);
}
logoPoint = new SKPoint((float)DeviceDisplay.MainDisplayInfo.Width * 0.5f - logo.Width, (float)(DeviceDisplay.MainDisplayInfo.Height * 0.9) * 0.5f - logo.Height * 0.5f);
} }
@ -108,7 +88,7 @@ namespace TheGameExtreme.view
{ {
if (i < (stackCollection.Count * 0.5)) if (i < (stackCollection.Count * 0.5))
{ {
stackCollection[i].Paint(canvas, SKColors.Green); stackCollection[i].Paint(canvas, new SKColor(33, 255, 40));
} }
else else
{ {
@ -120,8 +100,6 @@ namespace TheGameExtreme.view
{ {
textPaint.Paint(canvas, SKColors.SkyBlue); textPaint.Paint(canvas, SKColors.SkyBlue);
} }
canvas.DrawBitmap(logo, logoPoint);
} }
@ -217,32 +195,39 @@ namespace TheGameExtreme.view
stackCollection.Clear(); stackCollection.Clear();
SKPaint textPaint = new SKPaint(); SKPaint textPaint = new SKPaint();
SKPoint position = new SKPoint((float)((DeviceDisplay.MainDisplayInfo.Width * 0.9) / (viewmodel.getListOrderedStacks().Count * 2)) + (float)(DeviceDisplay.MainDisplayInfo.Width * 0.01), (float)((DeviceDisplay.MainDisplayInfo.Height * 0.1) + (DeviceDisplay.MainDisplayInfo.Height * 0.9) * 0.01 + 2 * (0.05f * (float)DeviceDisplay.MainDisplayInfo.Width * textPaint.TextSize / textPaint.MeasureText("001")))); SKPoint position = new SKPoint((float)((DeviceDisplay.MainDisplayInfo.Width) / (viewmodel.getListOrderedStacks().Count * 2)), (float)((DeviceDisplay.MainDisplayInfo.Height * 0.1) + (DeviceDisplay.MainDisplayInfo.Height * 0.9) * 0.01 + 2 * (0.05f * (float)DeviceDisplay.MainDisplayInfo.Width * textPaint.TextSize / textPaint.MeasureText("001"))));
float inflateWidth; float inflateWidth;
if (indexMode == 4) if (indexMode == 4 || indexMode == 3)
{ {
inflateWidth = 0.01f * (float)DeviceDisplay.MainDisplayInfo.Width; inflateWidth = 0.03f * (float)DeviceDisplay.MainDisplayInfo.Width;
} }
else else
{ {
inflateWidth = 0.02f * (float)DeviceDisplay.MainDisplayInfo.Width; inflateWidth = 0.02f * (float)DeviceDisplay.MainDisplayInfo.Width;
} }
position.X -= inflateWidth;
for (int i = 0; i < viewmodel.getListOrderedStacks().Count; i++) for (int i = 0; i < viewmodel.getListOrderedStacks().Count; i++)
{ {
textPaint = new SKPaint(); textPaint = new SKPaint();
float textWidth; float textWidth;
if (indexMode == 5) if (indexMode == 3)
{ {
textWidth = textPaint.MeasureText("00"); textWidth = textPaint.MeasureText("000");
textPaint.TextSize = 0.05f * (float)DeviceDisplay.MainDisplayInfo.Width * textPaint.TextSize / textWidth; textPaint.TextSize = 0.04f * (float)DeviceDisplay.MainDisplayInfo.Width * textPaint.TextSize / textPaint.MeasureText("000");
}
else if (indexMode == 4)
{
textWidth = textPaint.MeasureText("0000");
textPaint.TextSize = 0.04f * (float)DeviceDisplay.MainDisplayInfo.Width * textPaint.TextSize / textPaint.MeasureText("0000");
} }
else else
{ {
textWidth = textPaint.MeasureText(viewmodel.getListOrderedStacks()[i].Peek().Value.ToString()); textWidth = textPaint.MeasureText("00");
textPaint.TextSize = 0.05f * (float)DeviceDisplay.MainDisplayInfo.Width * textPaint.TextSize / textWidth; textPaint.TextSize = 0.04f * (float)DeviceDisplay.MainDisplayInfo.Width * textPaint.TextSize / textPaint.MeasureText("00");
} }
position.X -= textWidth * 0.5f; position.X -= textWidth * 0.5f;
@ -253,7 +238,7 @@ namespace TheGameExtreme.view
InitialPoint = position InitialPoint = position
}); });
position.X += (float)((DeviceDisplay.MainDisplayInfo.Width * 0.9) / viewmodel.getListOrderedStacks().Count) + textWidth * 0.5f; position.X += (float)((DeviceDisplay.MainDisplayInfo.Width) / viewmodel.getListOrderedStacks().Count);
} }
} }
@ -264,32 +249,39 @@ namespace TheGameExtreme.view
private void InflateHand() private void InflateHand()
{ {
SKPaint textPaint = new SKPaint(); SKPaint textPaint = new SKPaint();
SKPoint position = new SKPoint((float)((DeviceDisplay.MainDisplayInfo.Width * 0.9) / (viewmodel.CurrentHand.Count * 2)) + (float)(DeviceDisplay.MainDisplayInfo.Width * 0.01), (float)((DeviceDisplay.MainDisplayInfo.Height * 0.9) - (DeviceDisplay.MainDisplayInfo.Height * 0.9) * 0.1 - 2 * (0.05f * (float)DeviceDisplay.MainDisplayInfo.Width * textPaint.TextSize / textPaint.MeasureText("001")))); SKPoint position = new SKPoint((float)((DeviceDisplay.MainDisplayInfo.Width) / (viewmodel.CurrentHand.Count * 2)), (float)((DeviceDisplay.MainDisplayInfo.Height * 0.9) - (DeviceDisplay.MainDisplayInfo.Height * 0.9) * 0.1 - 2 * (0.05f * (float)DeviceDisplay.MainDisplayInfo.Width * textPaint.TextSize / textPaint.MeasureText("001"))));
float inflateWidth; float inflateWidth;
if (indexMode == 4) if (indexMode == 4 || indexMode == 3)
{ {
inflateWidth = 0.01f * (float)DeviceDisplay.MainDisplayInfo.Width; inflateWidth = 0.03f * (float)DeviceDisplay.MainDisplayInfo.Width;
} }
else else
{ {
inflateWidth = 0.015f * (float)DeviceDisplay.MainDisplayInfo.Width; inflateWidth = 0.015f * (float)DeviceDisplay.MainDisplayInfo.Width;
} }
position.X -= inflateWidth;
for (int i = 0; i < viewmodel.CurrentHand.Count; i++) for (int i = 0; i < viewmodel.CurrentHand.Count; i++)
{ {
textPaint = new SKPaint(); textPaint = new SKPaint();
float textWidth; float textWidth;
if (indexMode == 5) if (indexMode == 3)
{ {
textWidth = textPaint.MeasureText("00"); textWidth = textPaint.MeasureText("000");
textPaint.TextSize = 0.05f * (float)DeviceDisplay.MainDisplayInfo.Width * textPaint.TextSize / textWidth; textPaint.TextSize = 0.048f * (float)DeviceDisplay.MainDisplayInfo.Width * textPaint.TextSize / textPaint.MeasureText("000");
}
else if (indexMode == 4)
{
textWidth = textPaint.MeasureText("0000");
textPaint.TextSize = 0.04f * (float)DeviceDisplay.MainDisplayInfo.Width * textPaint.TextSize / textPaint.MeasureText("0000");
} }
else else
{ {
textWidth = textPaint.MeasureText(viewmodel.CurrentHand[i].Value.ToString()); textWidth = textPaint.MeasureText("00");
textPaint.TextSize = 0.05f * (float)DeviceDisplay.MainDisplayInfo.Width * textPaint.TextSize / textWidth; textPaint.TextSize = 0.048f * (float)DeviceDisplay.MainDisplayInfo.Width * textPaint.TextSize / textPaint.MeasureText("00");
} }
position.X -= textWidth * 0.5f; position.X -= textWidth * 0.5f;
@ -300,7 +292,7 @@ namespace TheGameExtreme.view
InitialPoint = position InitialPoint = position
}); });
position.X += (float)((DeviceDisplay.MainDisplayInfo.Width * 0.9) / viewmodel.CurrentHand.Count) + textWidth * 0.5f; position.X += (float)((DeviceDisplay.MainDisplayInfo.Width) / viewmodel.CurrentHand.Count);
} }
} }
@ -316,7 +308,7 @@ namespace TheGameExtreme.view
Button retryButton = new Button(); Button retryButton = new Button();
retryButton.Text = "Retry"; retryButton.Text = "Retry";
retryButton.Clicked += Retry; retryButton.Clicked += Retry;
retryButton.BackgroundColor = (Color)Application.Current.Resources["SkyBlueColor"]; retryButton.BackgroundColor = (Color)Application.Current.Resources["Gold"];
gameOption.Children.Add(retryButton); gameOption.Children.Add(retryButton);
} }
@ -347,6 +339,8 @@ namespace TheGameExtreme.view
viewmodel.EndGame += OnEndGame; viewmodel.EndGame += OnEndGame;
viewmodel.AlertChanged += OnAlertChanged;
pseudo.SetBinding(Label.TextProperty, new Binding("Pseudo", source: viewmodel)); pseudo.SetBinding(Label.TextProperty, new Binding("Pseudo", source: viewmodel));
textCollection.Clear(); textCollection.Clear();
@ -358,8 +352,8 @@ namespace TheGameExtreme.view
gameOption.Children.Clear(); gameOption.Children.Clear();
Button button = new Button(); Button button = new Button();
button.Text = AppResources.StrEndTurn; button.Text = AppResources.StrEndTurn;
button.Clicked += Retry; button.Clicked += EndTurn;
button.BackgroundColor = (Color)Application.Current.Resources["SkyBlueColor"]; button.BackgroundColor = (Color)Application.Current.Resources["Gold"];
gameOption.Children.Add(button); gameOption.Children.Add(button);
} }

@ -33,7 +33,9 @@ namespace TheGameExtreme.view
this.textPaint = textPaint; this.textPaint = textPaint;
Value = value; Value = value;
this.width = width; this.width = width;
height = 2f * this.width; height = (0.2f * (float)DeviceDisplay.MainDisplayInfo.Height - textPaint.TextSize) * 0.5f;
display = Value.ToString();
if (Value.View.GetType() == typeof(FractionCard)) if (Value.View.GetType() == typeof(FractionCard))
{ {
@ -42,21 +44,20 @@ namespace TheGameExtreme.view
textPaint1.TextSize = textPaint.TextSize; textPaint1.TextSize = textPaint.TextSize;
textPaint2.TextSize = textPaint.TextSize; textPaint2.TextSize = textPaint.TextSize;
} }
//else
display = Value.ToString(); //{
if (!display.Contains(",") && !display.Contains(".") && !display.Contains("/")) if (!display.Contains(",") && !display.Contains(".") && !display.Contains("/"))
{ {
if (Value.Value.CompareTo(-10m) <= 0) if (Value.Value.CompareTo(-10m) <= 0)
{ {
this.width -= textPaint.MeasureText("0") * 0.5f; this.width -= textPaint.MeasureText("0") * 0.25f;
} }
if (Value.Value.CompareTo(0m) >= 0 && Value.Value.CompareTo(10) < 0) if (Value.Value.CompareTo(0m) >= 0 && Value.Value.CompareTo(10) < 0)
{ {
this.width += textPaint.MeasureText("0") * 0.5f; this.width += textPaint.MeasureText("0") * 0.5f;
} }
} }
//}
Matrix = SKMatrix.MakeIdentity(); Matrix = SKMatrix.MakeIdentity();
@ -85,11 +86,13 @@ namespace TheGameExtreme.view
textPaint.StrokeWidth = 5; textPaint.StrokeWidth = 5;
textPaint.Style = SKPaintStyle.Stroke; textPaint.Style = SKPaintStyle.Stroke;
SKRect card = new SKRect(); //SKRect card = new SKRect(0, 0, 100, 100);
SKRect card;
if (Value.View.GetType() == typeof(FractionCard)) if (Value.View.GetType() == typeof(FractionCard))
{ {
textPaint.MeasureText("00", ref card); card = new SKRect(-width, -height - textPaint.TextSize, width + textPaint.MeasureText("00"), height);
textPaint1.Color = color; textPaint1.Color = color;
textPaint1.StrokeWidth = 5; textPaint1.StrokeWidth = 5;
textPaint1.Style = SKPaintStyle.Stroke; textPaint1.Style = SKPaintStyle.Stroke;
@ -99,30 +102,15 @@ namespace TheGameExtreme.view
} }
else else
{ {
textPaint.MeasureText(display, ref card); card = new SKRect(-width, -height - textPaint.TextSize, width + textPaint.MeasureText(display), height);
} }
card.Inflate(width, height);
if (Value.View.GetType() == typeof(FractionCard)) if (Value.View.GetType() == typeof(FractionCard))
{ {
canvas.DrawRect(card, textPaint1); canvas.DrawRect(card, textPaint1);
if (((FractionCard)Value.View).Fraction.Numerateur < 10 && ((FractionCard)Value.View).Fraction.Numerateur > 0) canvas.DrawText(((FractionCard)Value.View).Fraction.Numerateur.ToString(), width * 0.5f - textPaint.MeasureText(((FractionCard)Value.View).Fraction.Numerateur.ToString()) * 0.5f, - textPaint.TextSize * 0.5f - height * 0.5f, textPaint);
{ canvas.DrawText("___", width * 0.5f - textPaint1.MeasureText("___") * 0.5f, -textPaint1.TextSize * 0.6f, textPaint1);
canvas.DrawText(((FractionCard)Value.View).Fraction.Numerateur.ToString(), textPaint.MeasureText(((FractionCard)Value.View).Fraction.Numerateur.ToString()) * 0.5f, -50, textPaint); canvas.DrawText(((FractionCard)Value.View).Fraction.Denominateur.ToString(), width * 0.5f - textPaint2.MeasureText(((FractionCard)Value.View).Fraction.Numerateur.ToString()) * 0.5f, height * 0.5f, textPaint2);
}
else
{
canvas.DrawText(((FractionCard)Value.View).Fraction.Numerateur.ToString(), 0, -50, textPaint);
}
canvas.DrawText("__", 0, -textPaint.TextSize * 0.4f, textPaint1);
if (((FractionCard)Value.View).Fraction.Denominateur < 10 && ((FractionCard)Value.View).Fraction.Denominateur > 0)
{
canvas.DrawText(((FractionCard)Value.View).Fraction.Denominateur.ToString(), textPaint.MeasureText(((FractionCard)Value.View).Fraction.Denominateur.ToString()) * 0.5f, 50, textPaint2);
}
else
{
canvas.DrawText(((FractionCard)Value.View).Fraction.Denominateur.ToString(), 0, 50, textPaint2);
}
} }
else else
{ {

Binary file not shown.

Binary file not shown.
Loading…
Cancel
Save