war.go raw

   1  package main
   2  
   3  import (
   4  	"fmt"
   5  	"github.com/l0k18/alieninvasion/pkg/war"
   6  	"github.com/l0k18/alieninvasion/pkg/world"
   7  	"os"
   8  	"strconv"
   9  )
  10  
  11  func result(err error) {
  12  	res := 0
  13  	if err != nil {
  14  		fmt.Println("Error:", err)
  15  		res = 1
  16  	}
  17  	fmt.Println("alieninvasion war simulator")
  18  	fmt.Printf("usage: %s <aliencount> <seed> <filename>\n", os.Args[0])
  19  	os.Exit(res)
  20  }
  21  
  22  func main() {
  23  
  24  	if len(os.Args) != 4 {
  25  		result(nil)
  26  	}
  27  
  28  	var aliens, seed int64
  29  	var err error
  30  
  31  	aliens, err = strconv.ParseInt(os.Args[1], 10, 64)
  32  	if err != nil {
  33  		result(err)
  34  	}
  35  
  36  	seed, err = strconv.ParseInt(os.Args[2], 10, 64)
  37  	if err != nil {
  38  		result(err)
  39  	}
  40  
  41  	w := world.New()
  42  	w.AddFromFile(os.Args[3])
  43  
  44  	war.War(w, aliens, seed)
  45  	// w.Print(os.Stdout)
  46  }
  47