canton

package
v0.6.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 5, 2024 License: GPL-3.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Turkey  godip.Nation = "Turkey"
	Britain godip.Nation = "Britain"
	China   godip.Nation = "China"
	Holland godip.Nation = "Holland"
	Japan   godip.Nation = "Japan"
	Russia  godip.Nation = "Russia"
	France  godip.Nation = "France"
)

Variables

View Source
var CantonVariant = common.Variant{
	Name:   "Canton",
	Graph:  func() godip.Graph { return CantonGraph() },
	Start:  CantonStart,
	Blank:  CantonBlank,
	Phase:  classical.NewPhase,
	Parser: classical.Parser,
	ExtraDominanceRules: map[godip.Province]common.DominanceRule{
		"tur": common.DominanceRule{
			Nation: Russia,
			Dependencies: map[godip.Province]godip.Nation{
				"mos": Russia,
				"sev": Russia,
				"per": godip.Neutral,
				"afg": godip.Neutral,
			},
		},
		"amu": common.DominanceRule{
			Nation: Russia,
			Dependencies: map[godip.Province]godip.Nation{
				"irk": Russia,
				"kha": Russia,
				"man": godip.Neutral,
			},
		},
		"mar": common.DominanceRule{
			Nation: Russia,
			Dependencies: map[godip.Province]godip.Nation{
				"kha": Russia,
				"man": godip.Neutral,
				"kor": godip.Neutral,
			},
		},
		"mon": common.DominanceRule{
			Nation: China,
			Dependencies: map[godip.Province]godip.Nation{
				"pek": China,
				"irk": Russia,
				"man": godip.Neutral,
			},
		},
		"sin": common.DominanceRule{
			Nation: China,
			Dependencies: map[godip.Province]godip.Nation{
				"pek": China,
				"tib": China,
				"afg": godip.Neutral,
			},
		},
		"yun": common.DominanceRule{
			Nation: China,
			Dependencies: map[godip.Province]godip.Nation{
				"chu": China,
				"tib": China,
				"han": France,
				"bur": godip.Neutral,
			},
		},
		"can": common.DominanceRule{
			Nation: China,
			Dependencies: map[godip.Province]godip.Nation{
				"sha": China,
				"chu": China,
				"hko": godip.Neutral,
				"han": France,
			},
		},
		"lao": common.DominanceRule{
			Nation: France,
			Dependencies: map[godip.Province]godip.Nation{
				"han": France,
				"hue": France,
				"sia": godip.Neutral,
				"bur": godip.Neutral,
			},
		},
	},
	Nations:           Nations,
	PhaseTypes:        classical.PhaseTypes,
	Seasons:           classical.Seasons,
	UnitTypes:         classical.UnitTypes,
	SoloWinner:        common.SCCountWinner(19),
	ProvinceLongNames: provinceLongNames,
	SVGMap: func() ([]byte, error) {
		return Asset("svg/cantonmap.svg")
	},
	SVGVersion: "12",
	SVGUnits: map[godip.UnitType]func() ([]byte, error){
		godip.Army: func() ([]byte, error) {
			return classical.Asset("svg/army.svg")
		},
		godip.Fleet: func() ([]byte, error) {
			return classical.Asset("svg/fleet.svg")
		},
	},
	CreatedBy:   "Paul Webb",
	Version:     "3",
	SoloSCCount: func(*state.State) int { return 19 },
	Description: "Asia at the beginning of the 20th century. It's fate is determined by Britain, China, France, Holland, Japan, Russia, and Turkey.",
	Rules: `First to 19 Supply Centers (SC) is the winner. 
Constantinople and Egypt have a canal (similar to Kiel in Classic). 
Four provinces have dual coasts: Damascus, Bulgaria, Siam and Canton.`,
}

Functions

func Asset

func Asset(name string) ([]byte, error)

Asset loads and returns the asset for the given name. It returns an error if the asset could not be found or could not be loaded.

func AssetDir

func AssetDir(name string) ([]string, error)

AssetDir returns the file names below a certain directory embedded in the file by go-bindata. For example if you run go-bindata on data/... and data contains the following hierarchy:

data/
  foo.txt
  img/
    a.png
    b.png

then AssetDir("data") would return []string{"foo.txt", "img"} AssetDir("data/img") would return []string{"a.png", "b.png"} AssetDir("foo.txt") and AssetDir("notexist") would return an error AssetDir("") will return []string{"data"}.

func AssetNames

func AssetNames() []string

AssetNames returns the names of the assets.

func CantonBlank

func CantonBlank(phase godip.Phase) *state.State

func CantonGraph

func CantonGraph() *graph.Graph

func CantonStart

func CantonStart() (result *state.State, err error)

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL