Skip to content
Snippets Groups Projects
Commit 84fbc29f authored by bionic85's avatar bionic85
Browse files

added embeded image features thingy

very cool
parent ce071dfe
No related branches found
No related tags found
No related merge requests found
using Microsoft.VisualBasic.Devices;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
......@@ -15,13 +18,20 @@ namespace PuzzlePlayer_Namespace
Game, // play the game
Result, // see te result and then restart
}
struct Card
{
string name; // for drawing the card, needs to be in format num_of_kind
int value; // value of the card
int value2; // some cards have two values
}
internal class BlackJack : Form
{
BJSTATE state;
int money;
int deploydMoney = 0;
const string DIR = @"..\..\..\Resources\BlackJack\";
FontFamily BJFont = FontFamily.GenericSansSerif;
int deployedMoney = 0;
readonly FontFamily BJFont = FontFamily.GenericSansSerif;
Size screen = Screen.PrimaryScreen.WorkingArea.Size;
......@@ -30,6 +40,8 @@ namespace PuzzlePlayer_Namespace
Panel GamePanel;
Panel ResultPanel;
List<Card> cards;
(int,string,Color)[] chipInfo = { (5,"5",Color.Gray), (25, "25", Color.Blue), (50, "50", Color.Green), (100, "100", Color.DarkCyan), (500, "500", Color.Purple), (1000, "1K", Color.Red), (5000, "5K", Color.Orange), (10000, "10K", Color.Gold) };
public object Int { get; private set; }
......@@ -56,11 +68,11 @@ namespace PuzzlePlayer_Namespace
//Setup
#region SetupPanel
SetupPanel = new Panel();
SetupPanel.Size = new Size(screen.Width/2,screen.Height);// /4
SetupPanel.Size = new Size(screen.Width/2,screen.Height);
SetupPanel.Location = new Point(screen.Width / 4, 0);
//DefaultPanel.BackColor = Color.Blue; //DEBUG
SetupPanel.Paint += DefaultPaint;
SetupPanel.Paint += Setup_Paint;
//money buttons
int goofyIndex = 0; //dw
......@@ -92,7 +104,7 @@ namespace PuzzlePlayer_Namespace
dealButton.BackColor = Color.DodgerBlue;
dealButton.Click += (object o, EventArgs e) =>
{
if (deploydMoney == 0)
if (deployedMoney == 0)
return;
SetupPanel.Hide();
GamePanel.Show();
......@@ -106,7 +118,13 @@ namespace PuzzlePlayer_Namespace
//Game
#region GamePanel
GamePanel = new Panel();
GamePanel.BackColor = Color.AliceBlue; //DEBUG
GamePanel.Paint += Game_Paint;
GamePanel.Size = new Size((int)(screen.Width / 1.5), screen.Height);
GamePanel.Location = new Point((screen.Width - GamePanel.Size.Width)/2, 0);
GamePanel.BackColor = Color.Red; //DEBUG
GamePanel.Hide(); //Hide until the game state is reached
Controls.Add(GamePanel);
#endregion
......@@ -128,7 +146,7 @@ namespace PuzzlePlayer_Namespace
if(money >= chip.Item1)
{
deploydMoney += chip.Item1;
deployedMoney += chip.Item1;
money -= chip.Item1;
}
Invalidate(true);
......@@ -142,34 +160,37 @@ namespace PuzzlePlayer_Namespace
Font moneyFont = new Font(BJFont, screen.Width/50, FontStyle.Bold);
g.DrawString("Money: " + money.ToString(), moneyFont, Brushes.Black, new PointF(0,0));
/*
switch(state) // paint according to the current state
{
case BJSTATE.Setup:
//Setup_Paint(g);
break;
case BJSTATE.Game:
Game_Paint(g);
//Game_Paint(g);
break;
case BJSTATE.Result:
Result_Paint(g);
//Result_Paint(g);
break;
}
}*/
}
private void DefaultPaint(object sender, PaintEventArgs e)
private void Setup_Paint(object sender, PaintEventArgs e)
{
Graphics g = e.Graphics;
// draw deployd money
// Might update this to butiful chipss
string s = "Deployd Money: " + deploydMoney.ToString();
string s = "Deployd Money: " + deployedMoney.ToString();
Font deplMoneyFont = new Font(BJFont, SetupPanel.Width / 20, FontStyle.Bold);
SizeF pf = g.MeasureString(s, deplMoneyFont);
PointF p = new PointF(SetupPanel.Width / 2 - pf.Width / 2, SetupPanel.Height / 2);
g.DrawString(s, deplMoneyFont, Brushes.Black, p);
}
private void Game_Paint(Graphics g)
private void Game_Paint(object sender, PaintEventArgs e)
{
Graphics g = e.Graphics;
DrawCard(g, new Point(0, 0), 200, "9_of_spades");
}
private void Result_Paint(Graphics g)
......@@ -204,8 +225,8 @@ namespace PuzzlePlayer_Namespace
private void DrawCard(Graphics g, Point pos, int width, string cardName) //cardName needs to be in format: num_of_kind
{
Image img = Image.FromFile(DIR + "cards/" + cardName + ".png"); //img is 500x726
g.DrawImage(img, pos.X,pos.Y,width, (float)(width*1.4));
Image img = SettingForm.GetEmbeddedImage("BlackJack.cards." + cardName + ".png");
g.DrawImage(img, pos.X, pos.Y, width, (float)(width * 1.4)); //img is 500x726
}
}
}
......@@ -96,10 +96,10 @@ namespace PuzzlePlayer_Namespace
// Add a button for each puzzle type
for (int i = 0; i < puzzleForms.Count; i++)
{
string image = "../../..//Resources/" + $"{puzzleForms[i].puzzleType}";
string image = puzzleForms[i].puzzleType;
Image normalImage = Image.FromFile(image + ".jpg");
Image grayImage = Image.FromFile(image + "Gray.jpg");
Image normalImage = SettingForm.GetEmbeddedImage(image + ".jpg"); // Image.FromFile(image + ".jpg");
Image grayImage = SettingForm.GetEmbeddedImage(image + "Gray.jpg");
// Set the name of the button
RoundedButton button = new RoundedButton
......@@ -172,7 +172,7 @@ namespace PuzzlePlayer_Namespace
blackJackButton.Margin = new Padding(10);
blackJackButton.Height = 345;
blackJackButton.Width = 345;
blackJackButton.Image = Image.FromFile("../../..//Resources/bj.jpg");
blackJackButton.Image = SettingForm.GetEmbeddedImage("bj.jpg");
blackJackButton.FlatStyle = FlatStyle.Flat;
blackJackButton.Font = SettingForm.mainFont;
blackJackButton.Click += (object o, EventArgs e) => {
......
......@@ -9,4 +9,128 @@
<ImplicitUsings>disable</ImplicitUsings>
</PropertyGroup>
<ItemGroup>
<None Remove="Resources\Binary.jpg" />
<None Remove="Resources\BinaryGray.jpg" />
<None Remove="Resources\bj.jpg" />
<None Remove="Resources\BlackJack\cards\10_of_clubs.png" />
<None Remove="Resources\BlackJack\cards\10_of_diamonds.png" />
<None Remove="Resources\BlackJack\cards\10_of_hearts.png" />
<None Remove="Resources\BlackJack\cards\10_of_spades.png" />
<None Remove="Resources\BlackJack\cards\2_of_clubs.png" />
<None Remove="Resources\BlackJack\cards\2_of_diamonds.png" />
<None Remove="Resources\BlackJack\cards\2_of_hearts.png" />
<None Remove="Resources\BlackJack\cards\2_of_spades.png" />
<None Remove="Resources\BlackJack\cards\3_of_clubs.png" />
<None Remove="Resources\BlackJack\cards\3_of_diamonds.png" />
<None Remove="Resources\BlackJack\cards\3_of_hearts.png" />
<None Remove="Resources\BlackJack\cards\3_of_spades.png" />
<None Remove="Resources\BlackJack\cards\4_of_clubs.png" />
<None Remove="Resources\BlackJack\cards\4_of_diamonds.png" />
<None Remove="Resources\BlackJack\cards\4_of_hearts.png" />
<None Remove="Resources\BlackJack\cards\4_of_spades.png" />
<None Remove="Resources\BlackJack\cards\5_of_clubs.png" />
<None Remove="Resources\BlackJack\cards\5_of_diamonds.png" />
<None Remove="Resources\BlackJack\cards\5_of_hearts.png" />
<None Remove="Resources\BlackJack\cards\5_of_spades.png" />
<None Remove="Resources\BlackJack\cards\6_of_clubs.png" />
<None Remove="Resources\BlackJack\cards\6_of_diamonds.png" />
<None Remove="Resources\BlackJack\cards\6_of_hearts.png" />
<None Remove="Resources\BlackJack\cards\6_of_spades.png" />
<None Remove="Resources\BlackJack\cards\7_of_clubs.png" />
<None Remove="Resources\BlackJack\cards\7_of_diamonds.png" />
<None Remove="Resources\BlackJack\cards\7_of_hearts.png" />
<None Remove="Resources\BlackJack\cards\7_of_spades.png" />
<None Remove="Resources\BlackJack\cards\8_of_clubs.png" />
<None Remove="Resources\BlackJack\cards\8_of_diamonds.png" />
<None Remove="Resources\BlackJack\cards\8_of_hearts.png" />
<None Remove="Resources\BlackJack\cards\8_of_spades.png" />
<None Remove="Resources\BlackJack\cards\9_of_clubs.png" />
<None Remove="Resources\BlackJack\cards\9_of_diamonds.png" />
<None Remove="Resources\BlackJack\cards\9_of_hearts.png" />
<None Remove="Resources\BlackJack\cards\9_of_spades.png" />
<None Remove="Resources\BlackJack\cards\ace_of_clubs.png" />
<None Remove="Resources\BlackJack\cards\ace_of_diamonds.png" />
<None Remove="Resources\BlackJack\cards\ace_of_hearts.png" />
<None Remove="Resources\BlackJack\cards\ace_of_spades.png" />
<None Remove="Resources\BlackJack\cards\jack_of_clubs.png" />
<None Remove="Resources\BlackJack\cards\jack_of_diamonds.png" />
<None Remove="Resources\BlackJack\cards\jack_of_hearts.png" />
<None Remove="Resources\BlackJack\cards\jack_of_spades.png" />
<None Remove="Resources\BlackJack\cards\king_of_clubs.png" />
<None Remove="Resources\BlackJack\cards\king_of_diamonds.png" />
<None Remove="Resources\BlackJack\cards\king_of_hearts.png" />
<None Remove="Resources\BlackJack\cards\king_of_spades.png" />
<None Remove="Resources\BlackJack\cards\queen_of_clubs.png" />
<None Remove="Resources\BlackJack\cards\queen_of_diamonds.png" />
<None Remove="Resources\BlackJack\cards\queen_of_hearts.png" />
<None Remove="Resources\BlackJack\cards\queen_of_spades.png" />
<None Remove="Resources\Maze.jpg" />
<None Remove="Resources\MazeGray.jpg" />
<None Remove="Resources\Sudoku.jpg" />
<None Remove="Resources\SudokuGray.jpg" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Resources\Binary.jpg" />
<EmbeddedResource Include="Resources\BinaryGray.jpg" />
<EmbeddedResource Include="Resources\bj.jpg" />
<EmbeddedResource Include="Resources\BlackJack\cards\10_of_clubs.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\10_of_diamonds.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\10_of_hearts.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\10_of_spades.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\2_of_clubs.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\2_of_diamonds.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\2_of_hearts.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\2_of_spades.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\3_of_clubs.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\3_of_diamonds.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\3_of_hearts.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\3_of_spades.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\4_of_clubs.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\4_of_diamonds.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\4_of_hearts.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\4_of_spades.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\5_of_clubs.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\5_of_diamonds.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\5_of_hearts.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\5_of_spades.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\6_of_clubs.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\6_of_diamonds.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\6_of_hearts.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\6_of_spades.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\7_of_clubs.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\7_of_diamonds.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\7_of_hearts.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\7_of_spades.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\8_of_clubs.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\8_of_diamonds.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\8_of_hearts.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\8_of_spades.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\9_of_clubs.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\9_of_diamonds.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\9_of_hearts.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\9_of_spades.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\ace_of_clubs.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\ace_of_diamonds.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\ace_of_hearts.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\ace_of_spades.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\jack_of_clubs.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\jack_of_diamonds.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\jack_of_hearts.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\jack_of_spades.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\king_of_clubs.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\king_of_diamonds.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\king_of_hearts.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\king_of_spades.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\queen_of_clubs.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\queen_of_diamonds.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\queen_of_hearts.png" />
<EmbeddedResource Include="Resources\BlackJack\cards\queen_of_spades.png" />
<EmbeddedResource Include="Resources\Maze.jpg" />
<EmbeddedResource Include="Resources\MazeGray.jpg" />
<EmbeddedResource Include="Resources\Sudoku.jpg" />
<EmbeddedResource Include="Resources\SudokuGray.jpg" />
</ItemGroup>
</Project>
\ No newline at end of file
......@@ -2,6 +2,8 @@
using System.Collections.Generic;
using System.Diagnostics;
using System.Drawing;
using System.IO;
using System.Reflection;
using System.Windows.Forms;
namespace PuzzlePlayer_Namespace
......@@ -222,5 +224,14 @@ namespace PuzzlePlayer_Namespace
}
}
}
public static Image GetEmbeddedImage(string imageWithExtention)
{
string imagePath = "PuzzlePlayer_Namespace.Resources." + imageWithExtention;
Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(imagePath);
Image img = Image.FromStream(stream);
stream.Dispose();
return img;
}
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment