battleship-cli/game.go

89 lines
1.9 KiB
Go
Raw Normal View History

package main
import (
"fmt"
"math/rand/v2"
"os"
)
func game() {
clear()
// PLAYER1_REAL_MATRIX := [][]string{
// {"x", "x", "x", "x", "x", "x"},
// {"x", "x", "x", "x", "x", "x"},
// {"x", "x", "x", "x", "x", "x"},
// {"x", "x", "x", "x", "x", "x"},
// {"x", "x", "x", "x", "x", "x"},
// {"x", "x", "x", "x", "x", "x"},
// }
// Holy hell this is a MUCH better way to initialize matrixes
PLAYER1_REAL_MATRIX := make([][]string, 5)
for i := 0; i < 5; i++ {
PLAYER1_REAL_MATRIX[i] = make([]string, 5)
}
PLAYER1_HIDDEN_MATRIX := PLAYER1_REAL_MATRIX
// PLAYER2_REAL_MATRIX := [][]string{
// {"x", "x", "x", "x", "x", "x"},
// {"x", "x", "x", "x", "x", "x"},
// {"x", "x", "x", "x", "x", "x"},
// {"x", "x", "x", "x", "x", "x"},
// {"x", "x", "x", "x", "x", "x"},
// {"x", "x", "x", "x", "x", "x"},
// }
//
// PLAYER2_HIDDEN_MATRIX := PLAYER2_REAL_MATRIX
// Forget it, I'm just going to implement a single player for now
// for {
//
// fmt.Scanln()
// }
fmt.Println("Player 1 (You):")
fillMatrix(PLAYER1_REAL_MATRIX)
showMatrix(PLAYER1_REAL_MATRIX)
fmt.Println()
showMatrix(PLAYER1_HIDDEN_MATRIX)
os.Exit(0)
}
// func gameStatus(player1 [][]string, player2 [][]string) {
// fmt.Println("Player 1 (You):")
// fillMatrix(PLAYER1_REAL_MATRIX)
// showMatrix(PLAYER1_REAL_MATRIX)
// fmt.Println()
// showMatrix(PLAYER1_HIDDEN_MATRIX)
// fmt.Printf("\n\n")
// fmt.Println("Player 2:")
// fillMatrix(PLAYER2_REAL_MATRIX)
// showMatrix(PLAYER2_REAL_MATRIX)
// fmt.Println()
// showMatrix(PLAYER2_HIDDEN_MATRIX)
//
// }
func showMatrix(mat [][]string) {
for i := 0; i < len(mat); i++ {
for _, v := range mat[i] {
fmt.Printf("%v ", v)
}
fmt.Println()
}
}
func fillMatrix(mat [][]string) {
for i := 0; i < len(mat); i++ {
for i1 := range mat[i] {
shipChance := rand.IntN(2-0) + 0
if shipChance == 1 {
mat[i][i1] = "S"
} else {
mat[i][i1] = "_"
}
}
}
}