using System; using System.Windows.Forms;
namespace Shotgunna { public partial class Form1 : Form { int playerShots = 0; int computerShots = 0; Random random = new Random();
public Form1() { InitializeComponent(); }
private void PlayRound(int playerChoice) { // Slumpmässigt val för datorn (0 för load, 1 för shot, 2 för block) int computerChoice = random.Next(3);
// Kolla om spelaren har skott innan de kan skjuta if (playerChoice == 1 && playerShots == 0) { MessageBox.Show("Spelaren kan inte skjuta, de har inga skott kvar."); return; }
// Kolla om datorn har skott innan den kan skjuta if (computerChoice == 1 && computerShots == 0) { MessageBox.Show("Datorn kan inte skjuta, den har inga skott kvar."); return; }
// Utför valen och uppdatera antalet laddade skott (om spelaren laddar) if (playerChoice == 0) { playerShots++; UpdateShotsCounts(); }
if (computerChoice == 0) { computerShots++; UpdateShotsCounts(); }
// Skjuta mot ladda regeln (spelaren vinner om de skjuter) if (playerChoice == 1 && computerChoice == 0) { MessageBox.Show("Spelaren vinner genom att skjuta mot ladda!"); ResetGame(); } if (computerChoice == 1 && playerChoice == 0) { MessageBox.Show("Datorn vinner genom att skjuta mot ladda!"); ResetGame(); }
// Skjuta mot blocka (block) regeln if (playerChoice == 1 && computerChoice == 2) { MessageBox.Show("Spelaren förlorar ett skott genom att skjuta mot block!"); playerShots--; // Spelaren förlorar ett skott UpdateShotsCounts(); } if (computerChoice == 1 && playerChoice == 2) { MessageBox.Show("Datorn förlorar ett skott genom att skjuta mot block!"); computerShots--; // Datorn förlorar ett skott UpdateShotsCounts(); }
// Ladda mot blocka regeln (den som laddar får ett skott om den andra blockar) if (playerChoice == 0 && computerChoice == 2) { MessageBox.Show("Spelaren får ett skott eftersom datorn blockade."); playerShots++; UpdateShotsCounts(); } else if (computerChoice == 0 && playerChoice == 2) { MessageBox.Show("Datorn får ett skott eftersom spelaren blockade."); computerShots++; UpdateShotsCounts(); }
// Skjuta mot skjuta regeln (båda förlorar ett skott om de båda skjuter) if (playerChoice == 1 && computerChoice == 1) { MessageBox.Show("Båda förlorar ett skott genom att skjuta mot skjuta!"); playerShots--; computerShots--; UpdateShotsCounts(); }
// Kolla om någon vinner med "shotgun" (spelaren vinner om de har 3 skott och skjuter) if (playerShots >= 3 && playerChoice == 1) { MessageBox.Show("Spelaren vinner med shotgun!"); ResetGame(); } else if (computerShots >= 3 && computerChoice == 1) { MessageBox.Show("Datorn vinner med shotgun!"); ResetGame(); } }
private void ResetGame() { playerShots = 0; computerShots = 0; UpdateShotsCounts(); }
private void UpdateShotsCounts() { playerShotsLabel.Text = "Player Shots: " + playerShots; computerShotsLabel.Text = "Computer Shots: " + computerShots; }
private void ShootBtn_Click(object sender, EventArgs e) {
int playerChoice = 1; // Spelaren väljer "Shoot" PlayRound(playerChoice);
}
private void BlockBtn_Click(object sender, EventArgs e) { int playerChoice = 2; // Spelaren väljer "Block" PlayRound(playerChoice); }
private void ReloadBtn_Click(object sender, EventArgs e) { int playerChoice = 0; // Spelaren väljer "Reload" PlayRound(playerChoice); } } }