cmd: create ship type
This commit is contained in:
+34
-5
@@ -9,12 +9,23 @@ const (
|
||||
|
||||
ErrStorageFailure int = 1000
|
||||
ErrGameStateInvalid int = 2000
|
||||
|
||||
ErrInputUnknownHostRace int = 3000
|
||||
ErrInputUnknownOpponentRace int = 3001
|
||||
)
|
||||
|
||||
func errorText(code int) string {
|
||||
const (
|
||||
ErrInputUnknownHostRace int = 3000 + iota
|
||||
ErrInputUnknownOpponentRace
|
||||
ErrInputEntityTypeNameInvalid
|
||||
ErrInputEntityTypeNameExists
|
||||
ErrInputShipTypeDriveValue
|
||||
ErrInputShipTypeWeaponsValue
|
||||
ErrInputShipTypeShieldsValue
|
||||
ErrInputShipTypeCargoValue
|
||||
ErrInputShipTypeArmamentValue
|
||||
ErrInputShipTypeWeaponsAndArmamentValue
|
||||
ErrInputShipTypeZeroValues
|
||||
)
|
||||
|
||||
func GenericErrorText(code int) string {
|
||||
switch code {
|
||||
case ErrDummy:
|
||||
return "Dummy"
|
||||
@@ -26,6 +37,24 @@ func errorText(code int) string {
|
||||
return "Host race name is unknown to this game"
|
||||
case ErrInputUnknownOpponentRace:
|
||||
return "Opponent race name is unknown to this game"
|
||||
case ErrInputEntityTypeNameInvalid:
|
||||
return "Name has invalid length or symbols"
|
||||
case ErrInputEntityTypeNameExists:
|
||||
return "Name already exists"
|
||||
case ErrInputShipTypeDriveValue:
|
||||
return "Invalid Drive value"
|
||||
case ErrInputShipTypeWeaponsValue:
|
||||
return "Invalid Weapons value"
|
||||
case ErrInputShipTypeShieldsValue:
|
||||
return "Invalid Shields value"
|
||||
case ErrInputShipTypeCargoValue:
|
||||
return "Invalid Cargo value"
|
||||
case ErrInputShipTypeArmamentValue:
|
||||
return "Invalid Armament value"
|
||||
case ErrInputShipTypeWeaponsAndArmamentValue:
|
||||
return "Invalid Armament or Weapons value"
|
||||
case ErrInputShipTypeZeroValues:
|
||||
return "Ship type values cannot be all zeros"
|
||||
default:
|
||||
return fmt.Sprintf("Undescribed error with code %d", code)
|
||||
}
|
||||
@@ -38,7 +67,7 @@ type GenericError struct {
|
||||
}
|
||||
|
||||
func (ge GenericError) Error() string {
|
||||
msg := errorText(ge.code)
|
||||
msg := GenericErrorText(ge.code)
|
||||
if ge.subject != "" {
|
||||
msg += ": " + ge.subject
|
||||
}
|
||||
|
||||
@@ -7,3 +7,39 @@ func NewHostRaceUnknownError(arg ...any) error {
|
||||
func NewOpponentRaceUnknownError(arg ...any) error {
|
||||
return newGenericError(ErrInputUnknownOpponentRace, arg...)
|
||||
}
|
||||
|
||||
func NewEntityTypeNameValidationError(arg ...any) error {
|
||||
return newGenericError(ErrInputEntityTypeNameInvalid, arg...)
|
||||
}
|
||||
|
||||
func NewEntityTypeNameExistsError(arg ...any) error {
|
||||
return newGenericError(ErrInputEntityTypeNameExists, arg...)
|
||||
}
|
||||
|
||||
func NewShipTypeDriveValueError(arg ...any) error {
|
||||
return newGenericError(ErrInputShipTypeDriveValue, arg...)
|
||||
}
|
||||
|
||||
func NewShipTypeWeaponsValueError(arg ...any) error {
|
||||
return newGenericError(ErrInputShipTypeWeaponsValue, arg...)
|
||||
}
|
||||
|
||||
func NewShipTypeShieldsValueError(arg ...any) error {
|
||||
return newGenericError(ErrInputShipTypeShieldsValue, arg...)
|
||||
}
|
||||
|
||||
func NewShipTypeCargoValueError(arg ...any) error {
|
||||
return newGenericError(ErrInputShipTypeCargoValue, arg...)
|
||||
}
|
||||
|
||||
func NewShipTypeArmamentValueError(arg ...any) error {
|
||||
return newGenericError(ErrInputShipTypeArmamentValue, arg...)
|
||||
}
|
||||
|
||||
func NewShipTypeArmamentAndWeaponsValueError(arg ...any) error {
|
||||
return newGenericError(ErrInputShipTypeWeaponsAndArmamentValue, arg...)
|
||||
}
|
||||
|
||||
func NewShipTypeShipTypeZeroValuesError(arg ...any) error {
|
||||
return newGenericError(ErrInputShipTypeZeroValues, arg...)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user