spacetraders/model_ship_frame.go

350 lines
9.3 KiB
Go

/*
SpaceTraders API
SpaceTraders is an open-universe game and learning platform that offers a set of HTTP endpoints to control a fleet of ships and explore a multiplayer universe. The API is documented using [OpenAPI](https://github.com/SpaceTradersAPI/api-docs). You can send your first request right here in your browser to check the status of the game server. ```json http { \"method\": \"GET\", \"url\": \"https://api.spacetraders.io/v2\", } ``` Unlike a traditional game, SpaceTraders does not have a first-party client or app to play the game. Instead, you can use the API to build your own client, write a script to automate your ships, or try an app built by the community. We have a [Discord channel](https://discord.com/invite/jh6zurdWk5) where you can share your projects, ask questions, and get help from other players.
API version: 2.0.0
Contact: joel@spacetraders.io
*/
// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT.
package spacetraders
import (
"encoding/json"
)
// checks if the ShipFrame type satisfies the MappedNullable interface at compile time
var _ MappedNullable = &ShipFrame{}
// ShipFrame The frame of the ship. The frame determines the number of modules and mounting points of the ship, as well as base fuel capacity. As the condition of the frame takes more wear, the ship will become more sluggish and less maneuverable.
type ShipFrame struct {
Symbol string `json:"symbol"`
Name string `json:"name"`
Description string `json:"description"`
// Condition is a range of 0 to 100 where 0 is completely worn out and 100 is brand new.
Condition *int32 `json:"condition,omitempty"`
ModuleSlots int32 `json:"moduleSlots"`
MountingPoints int32 `json:"mountingPoints"`
FuelCapacity int32 `json:"fuelCapacity"`
Requirements ShipRequirements `json:"requirements"`
AdditionalProperties map[string]interface{}
}
type _ShipFrame ShipFrame
// NewShipFrame instantiates a new ShipFrame object
// This constructor will assign default values to properties that have it defined,
// and makes sure properties required by API are set, but the set of arguments
// will change when the set of required properties is changed
func NewShipFrame(symbol string, name string, description string, moduleSlots int32, mountingPoints int32, fuelCapacity int32, requirements ShipRequirements) *ShipFrame {
this := ShipFrame{}
this.Symbol = symbol
this.Name = name
this.Description = description
this.ModuleSlots = moduleSlots
this.MountingPoints = mountingPoints
this.FuelCapacity = fuelCapacity
this.Requirements = requirements
return &this
}
// NewShipFrameWithDefaults instantiates a new ShipFrame object
// This constructor will only assign default values to properties that have it defined,
// but it doesn't guarantee that properties required by API are set
func NewShipFrameWithDefaults() *ShipFrame {
this := ShipFrame{}
return &this
}
// GetSymbol returns the Symbol field value
func (o *ShipFrame) GetSymbol() string {
if o == nil {
var ret string
return ret
}
return o.Symbol
}
// GetSymbolOk returns a tuple with the Symbol field value
// and a boolean to check if the value has been set.
func (o *ShipFrame) GetSymbolOk() (*string, bool) {
if o == nil {
return nil, false
}
return &o.Symbol, true
}
// SetSymbol sets field value
func (o *ShipFrame) SetSymbol(v string) {
o.Symbol = v
}
// GetName returns the Name field value
func (o *ShipFrame) GetName() string {
if o == nil {
var ret string
return ret
}
return o.Name
}
// GetNameOk returns a tuple with the Name field value
// and a boolean to check if the value has been set.
func (o *ShipFrame) GetNameOk() (*string, bool) {
if o == nil {
return nil, false
}
return &o.Name, true
}
// SetName sets field value
func (o *ShipFrame) SetName(v string) {
o.Name = v
}
// GetDescription returns the Description field value
func (o *ShipFrame) GetDescription() string {
if o == nil {
var ret string
return ret
}
return o.Description
}
// GetDescriptionOk returns a tuple with the Description field value
// and a boolean to check if the value has been set.
func (o *ShipFrame) GetDescriptionOk() (*string, bool) {
if o == nil {
return nil, false
}
return &o.Description, true
}
// SetDescription sets field value
func (o *ShipFrame) SetDescription(v string) {
o.Description = v
}
// GetCondition returns the Condition field value if set, zero value otherwise.
func (o *ShipFrame) GetCondition() int32 {
if o == nil || isNil(o.Condition) {
var ret int32
return ret
}
return *o.Condition
}
// GetConditionOk returns a tuple with the Condition field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *ShipFrame) GetConditionOk() (*int32, bool) {
if o == nil || isNil(o.Condition) {
return nil, false
}
return o.Condition, true
}
// HasCondition returns a boolean if a field has been set.
func (o *ShipFrame) HasCondition() bool {
if o != nil && !isNil(o.Condition) {
return true
}
return false
}
// SetCondition gets a reference to the given int32 and assigns it to the Condition field.
func (o *ShipFrame) SetCondition(v int32) {
o.Condition = &v
}
// GetModuleSlots returns the ModuleSlots field value
func (o *ShipFrame) GetModuleSlots() int32 {
if o == nil {
var ret int32
return ret
}
return o.ModuleSlots
}
// GetModuleSlotsOk returns a tuple with the ModuleSlots field value
// and a boolean to check if the value has been set.
func (o *ShipFrame) GetModuleSlotsOk() (*int32, bool) {
if o == nil {
return nil, false
}
return &o.ModuleSlots, true
}
// SetModuleSlots sets field value
func (o *ShipFrame) SetModuleSlots(v int32) {
o.ModuleSlots = v
}
// GetMountingPoints returns the MountingPoints field value
func (o *ShipFrame) GetMountingPoints() int32 {
if o == nil {
var ret int32
return ret
}
return o.MountingPoints
}
// GetMountingPointsOk returns a tuple with the MountingPoints field value
// and a boolean to check if the value has been set.
func (o *ShipFrame) GetMountingPointsOk() (*int32, bool) {
if o == nil {
return nil, false
}
return &o.MountingPoints, true
}
// SetMountingPoints sets field value
func (o *ShipFrame) SetMountingPoints(v int32) {
o.MountingPoints = v
}
// GetFuelCapacity returns the FuelCapacity field value
func (o *ShipFrame) GetFuelCapacity() int32 {
if o == nil {
var ret int32
return ret
}
return o.FuelCapacity
}
// GetFuelCapacityOk returns a tuple with the FuelCapacity field value
// and a boolean to check if the value has been set.
func (o *ShipFrame) GetFuelCapacityOk() (*int32, bool) {
if o == nil {
return nil, false
}
return &o.FuelCapacity, true
}
// SetFuelCapacity sets field value
func (o *ShipFrame) SetFuelCapacity(v int32) {
o.FuelCapacity = v
}
// GetRequirements returns the Requirements field value
func (o *ShipFrame) GetRequirements() ShipRequirements {
if o == nil {
var ret ShipRequirements
return ret
}
return o.Requirements
}
// GetRequirementsOk returns a tuple with the Requirements field value
// and a boolean to check if the value has been set.
func (o *ShipFrame) GetRequirementsOk() (*ShipRequirements, bool) {
if o == nil {
return nil, false
}
return &o.Requirements, true
}
// SetRequirements sets field value
func (o *ShipFrame) SetRequirements(v ShipRequirements) {
o.Requirements = v
}
func (o ShipFrame) MarshalJSON() ([]byte, error) {
toSerialize,err := o.ToMap()
if err != nil {
return []byte{}, err
}
return json.Marshal(toSerialize)
}
func (o ShipFrame) ToMap() (map[string]interface{}, error) {
toSerialize := map[string]interface{}{}
toSerialize["symbol"] = o.Symbol
toSerialize["name"] = o.Name
toSerialize["description"] = o.Description
if !isNil(o.Condition) {
toSerialize["condition"] = o.Condition
}
toSerialize["moduleSlots"] = o.ModuleSlots
toSerialize["mountingPoints"] = o.MountingPoints
toSerialize["fuelCapacity"] = o.FuelCapacity
toSerialize["requirements"] = o.Requirements
for key, value := range o.AdditionalProperties {
toSerialize[key] = value
}
return toSerialize, nil
}
func (o *ShipFrame) UnmarshalJSON(bytes []byte) (err error) {
varShipFrame := _ShipFrame{}
if err = json.Unmarshal(bytes, &varShipFrame); err == nil {
*o = ShipFrame(varShipFrame)
}
additionalProperties := make(map[string]interface{})
if err = json.Unmarshal(bytes, &additionalProperties); err == nil {
delete(additionalProperties, "symbol")
delete(additionalProperties, "name")
delete(additionalProperties, "description")
delete(additionalProperties, "condition")
delete(additionalProperties, "moduleSlots")
delete(additionalProperties, "mountingPoints")
delete(additionalProperties, "fuelCapacity")
delete(additionalProperties, "requirements")
o.AdditionalProperties = additionalProperties
}
return err
}
type NullableShipFrame struct {
value *ShipFrame
isSet bool
}
func (v NullableShipFrame) Get() *ShipFrame {
return v.value
}
func (v *NullableShipFrame) Set(val *ShipFrame) {
v.value = val
v.isSet = true
}
func (v NullableShipFrame) IsSet() bool {
return v.isSet
}
func (v *NullableShipFrame) Unset() {
v.value = nil
v.isSet = false
}
func NewNullableShipFrame(val *ShipFrame) *NullableShipFrame {
return &NullableShipFrame{value: val, isSet: true}
}
func (v NullableShipFrame) MarshalJSON() ([]byte, error) {
return json.Marshal(v.value)
}
func (v *NullableShipFrame) UnmarshalJSON(src []byte) error {
v.isSet = true
return json.Unmarshal(src, &v.value)
}