### YamlMime:ManagedReference
items:
- uid: TinyLife.World.RoofType
  commentId: T:TinyLife.World.RoofType
  id: RoofType
  parent: TinyLife.World
  children:
  - TinyLife.World.RoofType.#ctor(System.String,System.Int32,TinyLife.Utilities.ColorScheme,TinyLife.World.RoofStyle,MLEM.Textures.TextureRegion,MLEM.Textures.TextureRegion)
  - TinyLife.World.RoofType.Colors
  - TinyLife.World.RoofType.Draw(Microsoft.Xna.Framework.GameTime,Microsoft.Xna.Framework.Graphics.SpriteBatch,TinyLife.World.Map,Microsoft.Xna.Framework.Rectangle,MLEM.Misc.Direction2,System.Int32,TinyLife.World.Wallpaper,System.Single)
  - TinyLife.World.RoofType.DrawUi(Microsoft.Xna.Framework.Graphics.SpriteBatch,MLEM.Ui.Elements.Element,System.Int32,System.Single)
  - TinyLife.World.RoofType.GetPrice(Microsoft.Xna.Framework.Rectangle)
  - TinyLife.World.RoofType.Icon
  - TinyLife.World.RoofType.ModernFlat
  - TinyLife.World.RoofType.Name
  - TinyLife.World.RoofType.Price
  - TinyLife.World.RoofType.Register(TinyLife.World.RoofType)
  - TinyLife.World.RoofType.RoundedShingles
  - TinyLife.World.RoofType.SquareShingles
  - TinyLife.World.RoofType.Style
  - TinyLife.World.RoofType.Texture
  - TinyLife.World.RoofType.Thatch
  - TinyLife.World.RoofType.Types
  langs:
  - csharp
  - vb
  name: RoofType
  nameWithType: RoofType
  fullName: TinyLife.World.RoofType
  type: Class
  source:
    remote:
      path: TinyLife/World/Roof.cs
      branch: master
      repo: https://git.ellpeck.de/Ellpeck/TinyLife
    id: RoofType
    path: World/Roof.cs
    startLine: 26
  assemblies:
  - Tiny Life
  namespace: TinyLife.World
  summary: "\nA roof type stores settings and configurations for <xref href=\"TinyLife.World.Roof\" data-throw-if-not-resolved=\"false\"></xref> instances.\nTo register a new roof type, use <xref href=\"TinyLife.World.RoofType.Register(TinyLife.World.RoofType)\" data-throw-if-not-resolved=\"false\"></xref>.\n"
  example: []
  syntax:
    content: >-
      [JsonConverter(typeof(RoofType.Converter))]

      public class RoofType
    content.vb: >-
      <JsonConverter(GetType(RoofType.Converter))>

      Public Class RoofType
  inheritance:
  - System.Object
  inheritedMembers:
  - System.Object.Equals(System.Object)
  - System.Object.Equals(System.Object,System.Object)
  - System.Object.GetHashCode
  - System.Object.GetType
  - System.Object.MemberwiseClone
  - System.Object.ReferenceEquals(System.Object,System.Object)
  - System.Object.ToString
  extensionMethods:
  - TinyLife.World.RoofType.TinyLife.Utilities.Extensions.JsonCopy``1
  modifiers.csharp:
  - public
  - class
  modifiers.vb:
  - Public
  - Class
- uid: TinyLife.World.RoofType.Types
  commentId: F:TinyLife.World.RoofType.Types
  id: Types
  parent: TinyLife.World.RoofType
  langs:
  - csharp
  - vb
  name: Types
  nameWithType: RoofType.Types
  fullName: TinyLife.World.RoofType.Types
  type: Field
  source:
    remote:
      path: TinyLife/World/Roof.cs
      branch: master
      repo: https://git.ellpeck.de/Ellpeck/TinyLife
    id: Types
    path: World/Roof.cs
    startLine: 33
  assemblies:
  - Tiny Life
  namespace: TinyLife.World
  summary: "\nA registry of all of the <xref href=\"TinyLife.World.RoofType\" data-throw-if-not-resolved=\"false\"></xref> instances that are currently registered\n"
  example: []
  syntax:
    content: public static readonly IDictionary<string, RoofType> Types
    return:
      type: System.Collections.Generic.IDictionary{System.String,TinyLife.World.RoofType}
    content.vb: Public Shared ReadOnly Types As IDictionary(Of String, RoofType)
  modifiers.csharp:
  - public
  - static
  - readonly
  modifiers.vb:
  - Public
  - Shared
  - ReadOnly
- uid: TinyLife.World.RoofType.ModernFlat
  commentId: F:TinyLife.World.RoofType.ModernFlat
  id: ModernFlat
  parent: TinyLife.World.RoofType
  langs:
  - csharp
  - vb
  name: ModernFlat
  nameWithType: RoofType.ModernFlat
  fullName: TinyLife.World.RoofType.ModernFlat
  type: Field
  source:
    remote:
      path: TinyLife/World/Roof.cs
      branch: master
      repo: https://git.ellpeck.de/Ellpeck/TinyLife
    id: ModernFlat
    path: World/Roof.cs
    startLine: 36
  assemblies:
  - Tiny Life
  namespace: TinyLife.World
  syntax:
    content: public static readonly RoofType ModernFlat
    return:
      type: TinyLife.World.RoofType
    content.vb: Public Shared ReadOnly ModernFlat As RoofType
  modifiers.csharp:
  - public
  - static
  - readonly
  modifiers.vb:
  - Public
  - Shared
  - ReadOnly
- uid: TinyLife.World.RoofType.SquareShingles
  commentId: F:TinyLife.World.RoofType.SquareShingles
  id: SquareShingles
  parent: TinyLife.World.RoofType
  langs:
  - csharp
  - vb
  name: SquareShingles
  nameWithType: RoofType.SquareShingles
  fullName: TinyLife.World.RoofType.SquareShingles
  type: Field
  source:
    remote:
      path: TinyLife/World/Roof.cs
      branch: master
      repo: https://git.ellpeck.de/Ellpeck/TinyLife
    id: SquareShingles
    path: World/Roof.cs
    startLine: 37
  assemblies:
  - Tiny Life
  namespace: TinyLife.World
  syntax:
    content: public static readonly RoofType SquareShingles
    return:
      type: TinyLife.World.RoofType
    content.vb: Public Shared ReadOnly SquareShingles As RoofType
  modifiers.csharp:
  - public
  - static
  - readonly
  modifiers.vb:
  - Public
  - Shared
  - ReadOnly
- uid: TinyLife.World.RoofType.Thatch
  commentId: F:TinyLife.World.RoofType.Thatch
  id: Thatch
  parent: TinyLife.World.RoofType
  langs:
  - csharp
  - vb
  name: Thatch
  nameWithType: RoofType.Thatch
  fullName: TinyLife.World.RoofType.Thatch
  type: Field
  source:
    remote:
      path: TinyLife/World/Roof.cs
      branch: master
      repo: https://git.ellpeck.de/Ellpeck/TinyLife
    id: Thatch
    path: World/Roof.cs
    startLine: 38
  assemblies:
  - Tiny Life
  namespace: TinyLife.World
  syntax:
    content: public static readonly RoofType Thatch
    return:
      type: TinyLife.World.RoofType
    content.vb: Public Shared ReadOnly Thatch As RoofType
  modifiers.csharp:
  - public
  - static
  - readonly
  modifiers.vb:
  - Public
  - Shared
  - ReadOnly
- uid: TinyLife.World.RoofType.RoundedShingles
  commentId: F:TinyLife.World.RoofType.RoundedShingles
  id: RoundedShingles
  parent: TinyLife.World.RoofType
  langs:
  - csharp
  - vb
  name: RoundedShingles
  nameWithType: RoofType.RoundedShingles
  fullName: TinyLife.World.RoofType.RoundedShingles
  type: Field
  source:
    remote:
      path: TinyLife/World/Roof.cs
      branch: master
      repo: https://git.ellpeck.de/Ellpeck/TinyLife
    id: RoundedShingles
    path: World/Roof.cs
    startLine: 39
  assemblies:
  - Tiny Life
  namespace: TinyLife.World
  syntax:
    content: public static readonly RoofType RoundedShingles
    return:
      type: TinyLife.World.RoofType
    content.vb: Public Shared ReadOnly RoundedShingles As RoofType
  modifiers.csharp:
  - public
  - static
  - readonly
  modifiers.vb:
  - Public
  - Shared
  - ReadOnly
- uid: TinyLife.World.RoofType.Name
  commentId: F:TinyLife.World.RoofType.Name
  id: Name
  parent: TinyLife.World.RoofType
  langs:
  - csharp
  - vb
  name: Name
  nameWithType: RoofType.Name
  fullName: TinyLife.World.RoofType.Name
  type: Field
  source:
    remote:
      path: TinyLife/World/Roof.cs
      branch: master
      repo: https://git.ellpeck.de/Ellpeck/TinyLife
    id: Name
    path: World/Roof.cs
    startLine: 45
  assemblies:
  - Tiny Life
  namespace: TinyLife.World
  summary: "\nThe name of this roof type, which is used to store it to disk\n"
  example: []
  syntax:
    content: public readonly string Name
    return:
      type: System.String
    content.vb: Public ReadOnly Name As String
  modifiers.csharp:
  - public
  - readonly
  modifiers.vb:
  - Public
  - ReadOnly
- uid: TinyLife.World.RoofType.Price
  commentId: F:TinyLife.World.RoofType.Price
  id: Price
  parent: TinyLife.World.RoofType
  langs:
  - csharp
  - vb
  name: Price
  nameWithType: RoofType.Price
  fullName: TinyLife.World.RoofType.Price
  type: Field
  source:
    remote:
      path: TinyLife/World/Roof.cs
      branch: master
      repo: https://git.ellpeck.de/Ellpeck/TinyLife
    id: Price
    path: World/Roof.cs
    startLine: 49
  assemblies:
  - Tiny Life
  namespace: TinyLife.World
  summary: "\nThe price of a 1x1 rectangle of this roof type\n"
  example: []
  syntax:
    content: public readonly int Price
    return:
      type: System.Int32
    content.vb: Public ReadOnly Price As Integer
  modifiers.csharp:
  - public
  - readonly
  modifiers.vb:
  - Public
  - ReadOnly
- uid: TinyLife.World.RoofType.Colors
  commentId: F:TinyLife.World.RoofType.Colors
  id: Colors
  parent: TinyLife.World.RoofType
  langs:
  - csharp
  - vb
  name: Colors
  nameWithType: RoofType.Colors
  fullName: TinyLife.World.RoofType.Colors
  type: Field
  source:
    remote:
      path: TinyLife/World/Roof.cs
      branch: master
      repo: https://git.ellpeck.de/Ellpeck/TinyLife
    id: Colors
    path: World/Roof.cs
    startLine: 53
  assemblies:
  - Tiny Life
  namespace: TinyLife.World
  summary: "\nThe color scheme that this roof type can have\n"
  example: []
  syntax:
    content: public readonly ColorScheme Colors
    return:
      type: TinyLife.Utilities.ColorScheme
    content.vb: Public ReadOnly Colors As ColorScheme
  modifiers.csharp:
  - public
  - readonly
  modifiers.vb:
  - Public
  - ReadOnly
- uid: TinyLife.World.RoofType.Texture
  commentId: F:TinyLife.World.RoofType.Texture
  id: Texture
  parent: TinyLife.World.RoofType
  langs:
  - csharp
  - vb
  name: Texture
  nameWithType: RoofType.Texture
  fullName: TinyLife.World.RoofType.Texture
  type: Field
  source:
    remote:
      path: TinyLife/World/Roof.cs
      branch: master
      repo: https://git.ellpeck.de/Ellpeck/TinyLife
    id: Texture
    path: World/Roof.cs
    startLine: 58
  assemblies:
  - Tiny Life
  namespace: TinyLife.World
  summary: "\nThe texture that this roof type has.\nFor <xref href=\"TinyLife.World.RoofStyle.Gable\" data-throw-if-not-resolved=\"false\"></xref> roofs, this should be the leftmost texture of the texture set. \n"
  example: []
  syntax:
    content: public readonly TextureRegion Texture
    return:
      type: MLEM.Textures.TextureRegion
    content.vb: Public ReadOnly Texture As TextureRegion
  modifiers.csharp:
  - public
  - readonly
  modifiers.vb:
  - Public
  - ReadOnly
- uid: TinyLife.World.RoofType.Style
  commentId: F:TinyLife.World.RoofType.Style
  id: Style
  parent: TinyLife.World.RoofType
  langs:
  - csharp
  - vb
  name: Style
  nameWithType: RoofType.Style
  fullName: TinyLife.World.RoofType.Style
  type: Field
  source:
    remote:
      path: TinyLife/World/Roof.cs
      branch: master
      repo: https://git.ellpeck.de/Ellpeck/TinyLife
    id: Style
    path: World/Roof.cs
    startLine: 63
  assemblies:
  - Tiny Life
  namespace: TinyLife.World
  summary: "\nThe <xref href=\"TinyLife.World.RoofStyle\" data-throw-if-not-resolved=\"false\"></xref> that this roof has.\nIf <xref href=\"TinyLife.World.RoofType.Draw(Microsoft.Xna.Framework.GameTime%2cMicrosoft.Xna.Framework.Graphics.SpriteBatch%2cTinyLife.World.Map%2cMicrosoft.Xna.Framework.Rectangle%2cMLEM.Misc.Direction2%2cSystem.Int32%2cTinyLife.World.Wallpaper%2cSystem.Single)\" data-throw-if-not-resolved=\"false\"></xref> has completely custom behavior, the roof style is ignored, but can be set to <xref href=\"TinyLife.World.RoofStyle.Custom\" data-throw-if-not-resolved=\"false\"></xref> to signal this behavior to other mods.\n"
  example: []
  syntax:
    content: public readonly RoofStyle Style
    return:
      type: TinyLife.World.RoofStyle
    content.vb: Public ReadOnly Style As RoofStyle
  modifiers.csharp:
  - public
  - readonly
  modifiers.vb:
  - Public
  - ReadOnly
- uid: TinyLife.World.RoofType.Icon
  commentId: F:TinyLife.World.RoofType.Icon
  id: Icon
  parent: TinyLife.World.RoofType
  langs:
  - csharp
  - vb
  name: Icon
  nameWithType: RoofType.Icon
  fullName: TinyLife.World.RoofType.Icon
  type: Field
  source:
    remote:
      path: TinyLife/World/Roof.cs
      branch: master
      repo: https://git.ellpeck.de/Ellpeck/TinyLife
    id: Icon
    path: World/Roof.cs
    startLine: 68
  assemblies:
  - Tiny Life
  namespace: TinyLife.World
  summary: "\nThe build mode icon for this object, which represents the category / theme / mod that it comes from.\nIf this value is nonnull, the icon will be displayed in the corner of the build mode button for this object.\n"
  example: []
  syntax:
    content: public readonly TextureRegion Icon
    return:
      type: MLEM.Textures.TextureRegion
    content.vb: Public ReadOnly Icon As TextureRegion
  modifiers.csharp:
  - public
  - readonly
  modifiers.vb:
  - Public
  - ReadOnly
- uid: TinyLife.World.RoofType.#ctor(System.String,System.Int32,TinyLife.Utilities.ColorScheme,TinyLife.World.RoofStyle,MLEM.Textures.TextureRegion,MLEM.Textures.TextureRegion)
  commentId: M:TinyLife.World.RoofType.#ctor(System.String,System.Int32,TinyLife.Utilities.ColorScheme,TinyLife.World.RoofStyle,MLEM.Textures.TextureRegion,MLEM.Textures.TextureRegion)
  id: '#ctor(System.String,System.Int32,TinyLife.Utilities.ColorScheme,TinyLife.World.RoofStyle,MLEM.Textures.TextureRegion,MLEM.Textures.TextureRegion)'
  parent: TinyLife.World.RoofType
  langs:
  - csharp
  - vb
  name: RoofType(String, Int32, ColorScheme, RoofStyle, TextureRegion, TextureRegion)
  nameWithType: RoofType.RoofType(String, Int32, ColorScheme, RoofStyle, TextureRegion, TextureRegion)
  fullName: TinyLife.World.RoofType.RoofType(System.String, System.Int32, TinyLife.Utilities.ColorScheme, TinyLife.World.RoofStyle, MLEM.Textures.TextureRegion, MLEM.Textures.TextureRegion)
  type: Constructor
  source:
    remote:
      path: TinyLife/World/Roof.cs
      branch: master
      repo: https://git.ellpeck.de/Ellpeck/TinyLife
    id: .ctor
    path: World/Roof.cs
    startLine: 79
  assemblies:
  - Tiny Life
  namespace: TinyLife.World
  summary: "\nCreates a new roof type with the given settings\n"
  example: []
  syntax:
    content: public RoofType(string name, int price, ColorScheme colors, RoofStyle style, TextureRegion texture, TextureRegion icon = null)
    parameters:
    - id: name
      type: System.String
      description: The name that this roof type should have
    - id: price
      type: System.Int32
      description: The price for a 1x1 area of this roof type
    - id: colors
      type: TinyLife.Utilities.ColorScheme
      description: The color scheme that this roof type can have
    - id: style
      type: TinyLife.World.RoofStyle
      description: The <xref href="TinyLife.World.RoofStyle" data-throw-if-not-resolved="false"></xref> that this roof has
    - id: texture
      type: MLEM.Textures.TextureRegion
      description: The texture that this roof should be drawn with
    - id: icon
      type: MLEM.Textures.TextureRegion
      description: The icon that this roof should have in build mode
    content.vb: Public Sub New(name As String, price As Integer, colors As ColorScheme, style As RoofStyle, texture As TextureRegion, icon As TextureRegion = Nothing)
  overload: TinyLife.World.RoofType.#ctor*
  modifiers.csharp:
  - public
  modifiers.vb:
  - Public
- uid: TinyLife.World.RoofType.DrawUi(Microsoft.Xna.Framework.Graphics.SpriteBatch,MLEM.Ui.Elements.Element,System.Int32,System.Single)
  commentId: M:TinyLife.World.RoofType.DrawUi(Microsoft.Xna.Framework.Graphics.SpriteBatch,MLEM.Ui.Elements.Element,System.Int32,System.Single)
  id: DrawUi(Microsoft.Xna.Framework.Graphics.SpriteBatch,MLEM.Ui.Elements.Element,System.Int32,System.Single)
  parent: TinyLife.World.RoofType
  langs:
  - csharp
  - vb
  name: DrawUi(SpriteBatch, Element, Int32, Single)
  nameWithType: RoofType.DrawUi(SpriteBatch, Element, Int32, Single)
  fullName: TinyLife.World.RoofType.DrawUi(Microsoft.Xna.Framework.Graphics.SpriteBatch, MLEM.Ui.Elements.Element, System.Int32, System.Single)
  type: Method
  source:
    remote:
      path: TinyLife/World/Roof.cs
      branch: master
      repo: https://git.ellpeck.de/Ellpeck/TinyLife
    id: DrawUi
    path: World/Roof.cs
    startLine: 95
  assemblies:
  - Tiny Life
  namespace: TinyLife.World
  summary: "\nDraws a <xref href=\"TinyLife.World.Roof\" data-throw-if-not-resolved=\"false\"></xref> in ui space, only drawing a 1x1 area of it\n"
  example: []
  syntax:
    content: public virtual void DrawUi(SpriteBatch batch, Element element, int colorIndex, float drawScale)
    parameters:
    - id: batch
      type: Microsoft.Xna.Framework.Graphics.SpriteBatch
      description: The sprite batch to use for drawing
    - id: element
      type: MLEM.Ui.Elements.Element
      description: The element to draw the roof on
    - id: colorIndex
      type: System.Int32
      description: The color index in <xref href="TinyLife.Utilities.ColorScheme.WarmDark" data-throw-if-not-resolved="false"></xref>
    - id: drawScale
      type: System.Single
      description: The scale to draw the roof with
    content.vb: Public Overridable Sub DrawUi(batch As SpriteBatch, element As Element, colorIndex As Integer, drawScale As Single)
  overload: TinyLife.World.RoofType.DrawUi*
  modifiers.csharp:
  - public
  - virtual
  modifiers.vb:
  - Public
  - Overridable
- uid: TinyLife.World.RoofType.Draw(Microsoft.Xna.Framework.GameTime,Microsoft.Xna.Framework.Graphics.SpriteBatch,TinyLife.World.Map,Microsoft.Xna.Framework.Rectangle,MLEM.Misc.Direction2,System.Int32,TinyLife.World.Wallpaper,System.Single)
  commentId: M:TinyLife.World.RoofType.Draw(Microsoft.Xna.Framework.GameTime,Microsoft.Xna.Framework.Graphics.SpriteBatch,TinyLife.World.Map,Microsoft.Xna.Framework.Rectangle,MLEM.Misc.Direction2,System.Int32,TinyLife.World.Wallpaper,System.Single)
  id: Draw(Microsoft.Xna.Framework.GameTime,Microsoft.Xna.Framework.Graphics.SpriteBatch,TinyLife.World.Map,Microsoft.Xna.Framework.Rectangle,MLEM.Misc.Direction2,System.Int32,TinyLife.World.Wallpaper,System.Single)
  parent: TinyLife.World.RoofType
  langs:
  - csharp
  - vb
  name: Draw(GameTime, SpriteBatch, Map, Rectangle, Direction2, Int32, Wallpaper, Single)
  nameWithType: RoofType.Draw(GameTime, SpriteBatch, Map, Rectangle, Direction2, Int32, Wallpaper, Single)
  fullName: TinyLife.World.RoofType.Draw(Microsoft.Xna.Framework.GameTime, Microsoft.Xna.Framework.Graphics.SpriteBatch, TinyLife.World.Map, Microsoft.Xna.Framework.Rectangle, MLEM.Misc.Direction2, System.Int32, TinyLife.World.Wallpaper, System.Single)
  type: Method
  source:
    remote:
      path: TinyLife/World/Roof.cs
      branch: master
      repo: https://git.ellpeck.de/Ellpeck/TinyLife
    id: Draw
    path: World/Roof.cs
    startLine: 114
  assemblies:
  - Tiny Life
  namespace: TinyLife.World
  summary: "\nDraws the given <xref href=\"TinyLife.World.Roof\" data-throw-if-not-resolved=\"false\"></xref> in world space\n"
  example: []
  syntax:
    content: public virtual void Draw(GameTime time, SpriteBatch batch, Map map, Rectangle area, Direction2 rotation, int colorIndex, Wallpaper wallpaper, float depthOffset = 0F)
    parameters:
    - id: time
      type: Microsoft.Xna.Framework.GameTime
      description: The game&apos;s current time
    - id: batch
      type: Microsoft.Xna.Framework.Graphics.SpriteBatch
      description: The sprite batch to use for drawing
    - id: map
      type: TinyLife.World.Map
      description: The map to draw on
    - id: area
      type: Microsoft.Xna.Framework.Rectangle
      description: The area the roof covers
    - id: rotation
      type: MLEM.Misc.Direction2
      description: The roof&apos;s rotation
    - id: colorIndex
      type: System.Int32
      description: The color index in <xref href="TinyLife.Utilities.ColorScheme.WarmDark" data-throw-if-not-resolved="false"></xref>
    - id: wallpaper
      type: TinyLife.World.Wallpaper
      description: The wallpaper applied to the roof
    - id: depthOffset
      type: System.Single
      description: The value that should be added to the depth of this roof
    content.vb: Public Overridable Sub Draw(time As GameTime, batch As SpriteBatch, map As Map, area As Rectangle, rotation As Direction2, colorIndex As Integer, wallpaper As Wallpaper, depthOffset As Single = 0F)
  overload: TinyLife.World.RoofType.Draw*
  modifiers.csharp:
  - public
  - virtual
  modifiers.vb:
  - Public
  - Overridable
- uid: TinyLife.World.RoofType.GetPrice(Microsoft.Xna.Framework.Rectangle)
  commentId: M:TinyLife.World.RoofType.GetPrice(Microsoft.Xna.Framework.Rectangle)
  id: GetPrice(Microsoft.Xna.Framework.Rectangle)
  parent: TinyLife.World.RoofType
  langs:
  - csharp
  - vb
  name: GetPrice(Rectangle)
  nameWithType: RoofType.GetPrice(Rectangle)
  fullName: TinyLife.World.RoofType.GetPrice(Microsoft.Xna.Framework.Rectangle)
  type: Method
  source:
    remote:
      path: TinyLife/World/Roof.cs
      branch: master
      repo: https://git.ellpeck.de/Ellpeck/TinyLife
    id: GetPrice
    path: World/Roof.cs
    startLine: 187
  assemblies:
  - Tiny Life
  namespace: TinyLife.World
  summary: "\nReturns the price of this roof type for the given area.\nThis returns <xref href=\"TinyLife.World.RoofType.Price\" data-throw-if-not-resolved=\"false\"></xref>, multiplied by the area&apos;s size.\n"
  example: []
  syntax:
    content: public virtual int GetPrice(Rectangle area)
    parameters:
    - id: area
      type: Microsoft.Xna.Framework.Rectangle
      description: The area of roofing to get the price for
    return:
      type: System.Int32
      description: The price of the area
    content.vb: Public Overridable Function GetPrice(area As Rectangle) As Integer
  overload: TinyLife.World.RoofType.GetPrice*
  modifiers.csharp:
  - public
  - virtual
  modifiers.vb:
  - Public
  - Overridable
- uid: TinyLife.World.RoofType.Register(TinyLife.World.RoofType)
  commentId: M:TinyLife.World.RoofType.Register(TinyLife.World.RoofType)
  id: Register(TinyLife.World.RoofType)
  parent: TinyLife.World.RoofType
  langs:
  - csharp
  - vb
  name: Register(RoofType)
  nameWithType: RoofType.Register(RoofType)
  fullName: TinyLife.World.RoofType.Register(TinyLife.World.RoofType)
  type: Method
  source:
    remote:
      path: TinyLife/World/Roof.cs
      branch: master
      repo: https://git.ellpeck.de/Ellpeck/TinyLife
    id: Register
    path: World/Roof.cs
    startLine: 196
  assemblies:
  - Tiny Life
  namespace: TinyLife.World
  summary: "\nRegisters a new roof type with the given settings into the <xref href=\"TinyLife.World.RoofType.Types\" data-throw-if-not-resolved=\"false\"></xref> registry\n"
  example: []
  syntax:
    content: public static RoofType Register(RoofType type)
    parameters:
    - id: type
      type: TinyLife.World.RoofType
      description: The roof type to register
    return:
      type: TinyLife.World.RoofType
      description: The roof type passed, for chaining
    content.vb: Public Shared Function Register(type As RoofType) As RoofType
  overload: TinyLife.World.RoofType.Register*
  modifiers.csharp:
  - public
  - static
  modifiers.vb:
  - Public
  - Shared
references:
- uid: TinyLife.World.Roof
  commentId: T:TinyLife.World.Roof
  parent: TinyLife.World
  name: Roof
  nameWithType: Roof
  fullName: TinyLife.World.Roof
- uid: TinyLife.World.RoofType.Register(TinyLife.World.RoofType)
  commentId: M:TinyLife.World.RoofType.Register(TinyLife.World.RoofType)
  isExternal: true
- uid: TinyLife.World
  commentId: N:TinyLife.World
  name: TinyLife.World
  nameWithType: TinyLife.World
  fullName: TinyLife.World
- uid: System.Object
  commentId: T:System.Object
  parent: System
  isExternal: true
  name: Object
  nameWithType: Object
  fullName: System.Object
- uid: System.Object.Equals(System.Object)
  commentId: M:System.Object.Equals(System.Object)
  parent: System.Object
  isExternal: true
  name: Equals(Object)
  nameWithType: Object.Equals(Object)
  fullName: System.Object.Equals(System.Object)
  spec.csharp:
  - uid: System.Object.Equals(System.Object)
    name: Equals
    nameWithType: Object.Equals
    fullName: System.Object.Equals
    isExternal: true
  - name: (
    nameWithType: (
    fullName: (
  - uid: System.Object
    name: Object
    nameWithType: Object
    fullName: System.Object
    isExternal: true
  - name: )
    nameWithType: )
    fullName: )
  spec.vb:
  - uid: System.Object.Equals(System.Object)
    name: Equals
    nameWithType: Object.Equals
    fullName: System.Object.Equals
    isExternal: true
  - name: (
    nameWithType: (
    fullName: (
  - uid: System.Object
    name: Object
    nameWithType: Object
    fullName: System.Object
    isExternal: true
  - name: )
    nameWithType: )
    fullName: )
- uid: System.Object.Equals(System.Object,System.Object)
  commentId: M:System.Object.Equals(System.Object,System.Object)
  parent: System.Object
  isExternal: true
  name: Equals(Object, Object)
  nameWithType: Object.Equals(Object, Object)
  fullName: System.Object.Equals(System.Object, System.Object)
  spec.csharp:
  - uid: System.Object.Equals(System.Object,System.Object)
    name: Equals
    nameWithType: Object.Equals
    fullName: System.Object.Equals
    isExternal: true
  - name: (
    nameWithType: (
    fullName: (
  - uid: System.Object
    name: Object
    nameWithType: Object
    fullName: System.Object
    isExternal: true
  - name: ', '
    nameWithType: ', '
    fullName: ', '
  - uid: System.Object
    name: Object
    nameWithType: Object
    fullName: System.Object
    isExternal: true
  - name: )
    nameWithType: )
    fullName: )
  spec.vb:
  - uid: System.Object.Equals(System.Object,System.Object)
    name: Equals
    nameWithType: Object.Equals
    fullName: System.Object.Equals
    isExternal: true
  - name: (
    nameWithType: (
    fullName: (
  - uid: System.Object
    name: Object
    nameWithType: Object
    fullName: System.Object
    isExternal: true
  - name: ', '
    nameWithType: ', '
    fullName: ', '
  - uid: System.Object
    name: Object
    nameWithType: Object
    fullName: System.Object
    isExternal: true
  - name: )
    nameWithType: )
    fullName: )
- uid: System.Object.GetHashCode
  commentId: M:System.Object.GetHashCode
  parent: System.Object
  isExternal: true
  name: GetHashCode()
  nameWithType: Object.GetHashCode()
  fullName: System.Object.GetHashCode()
  spec.csharp:
  - uid: System.Object.GetHashCode
    name: GetHashCode
    nameWithType: Object.GetHashCode
    fullName: System.Object.GetHashCode
    isExternal: true
  - name: (
    nameWithType: (
    fullName: (
  - name: )
    nameWithType: )
    fullName: )
  spec.vb:
  - uid: System.Object.GetHashCode
    name: GetHashCode
    nameWithType: Object.GetHashCode
    fullName: System.Object.GetHashCode
    isExternal: true
  - name: (
    nameWithType: (
    fullName: (
  - name: )
    nameWithType: )
    fullName: )
- uid: System.Object.GetType
  commentId: M:System.Object.GetType
  parent: System.Object
  isExternal: true
  name: GetType()
  nameWithType: Object.GetType()
  fullName: System.Object.GetType()
  spec.csharp:
  - uid: System.Object.GetType
    name: GetType
    nameWithType: Object.GetType
    fullName: System.Object.GetType
    isExternal: true
  - name: (
    nameWithType: (
    fullName: (
  - name: )
    nameWithType: )
    fullName: )
  spec.vb:
  - uid: System.Object.GetType
    name: GetType
    nameWithType: Object.GetType
    fullName: System.Object.GetType
    isExternal: true
  - name: (
    nameWithType: (
    fullName: (
  - name: )
    nameWithType: )
    fullName: )
- uid: System.Object.MemberwiseClone
  commentId: M:System.Object.MemberwiseClone
  parent: System.Object
  isExternal: true
  name: MemberwiseClone()
  nameWithType: Object.MemberwiseClone()
  fullName: System.Object.MemberwiseClone()
  spec.csharp:
  - uid: System.Object.MemberwiseClone
    name: MemberwiseClone
    nameWithType: Object.MemberwiseClone
    fullName: System.Object.MemberwiseClone
    isExternal: true
  - name: (
    nameWithType: (
    fullName: (
  - name: )
    nameWithType: )
    fullName: )
  spec.vb:
  - uid: System.Object.MemberwiseClone
    name: MemberwiseClone
    nameWithType: Object.MemberwiseClone
    fullName: System.Object.MemberwiseClone
    isExternal: true
  - name: (
    nameWithType: (
    fullName: (
  - name: )
    nameWithType: )
    fullName: )
- uid: System.Object.ReferenceEquals(System.Object,System.Object)
  commentId: M:System.Object.ReferenceEquals(System.Object,System.Object)
  parent: System.Object
  isExternal: true
  name: ReferenceEquals(Object, Object)
  nameWithType: Object.ReferenceEquals(Object, Object)
  fullName: System.Object.ReferenceEquals(System.Object, System.Object)
  spec.csharp:
  - uid: System.Object.ReferenceEquals(System.Object,System.Object)
    name: ReferenceEquals
    nameWithType: Object.ReferenceEquals
    fullName: System.Object.ReferenceEquals
    isExternal: true
  - name: (
    nameWithType: (
    fullName: (
  - uid: System.Object
    name: Object
    nameWithType: Object
    fullName: System.Object
    isExternal: true
  - name: ', '
    nameWithType: ', '
    fullName: ', '
  - uid: System.Object
    name: Object
    nameWithType: Object
    fullName: System.Object
    isExternal: true
  - name: )
    nameWithType: )
    fullName: )
  spec.vb:
  - uid: System.Object.ReferenceEquals(System.Object,System.Object)
    name: ReferenceEquals
    nameWithType: Object.ReferenceEquals
    fullName: System.Object.ReferenceEquals
    isExternal: true
  - name: (
    nameWithType: (
    fullName: (
  - uid: System.Object
    name: Object
    nameWithType: Object
    fullName: System.Object
    isExternal: true
  - name: ', '
    nameWithType: ', '
    fullName: ', '
  - uid: System.Object
    name: Object
    nameWithType: Object
    fullName: System.Object
    isExternal: true
  - name: )
    nameWithType: )
    fullName: )
- uid: System.Object.ToString
  commentId: M:System.Object.ToString
  parent: System.Object
  isExternal: true
  name: ToString()
  nameWithType: Object.ToString()
  fullName: System.Object.ToString()
  spec.csharp:
  - uid: System.Object.ToString
    name: ToString
    nameWithType: Object.ToString
    fullName: System.Object.ToString
    isExternal: true
  - name: (
    nameWithType: (
    fullName: (
  - name: )
    nameWithType: )
    fullName: )
  spec.vb:
  - uid: System.Object.ToString
    name: ToString
    nameWithType: Object.ToString
    fullName: System.Object.ToString
    isExternal: true
  - name: (
    nameWithType: (
    fullName: (
  - name: )
    nameWithType: )
    fullName: )
- uid: TinyLife.World.RoofType.TinyLife.Utilities.Extensions.JsonCopy``1
  commentId: M:TinyLife.Utilities.Extensions.JsonCopy``1(``0)
  parent: TinyLife.Utilities.Extensions
  definition: TinyLife.Utilities.Extensions.JsonCopy``1(``0)
  name: JsonCopy<RoofType>()
  nameWithType: Extensions.JsonCopy<RoofType>()
  fullName: TinyLife.Utilities.Extensions.JsonCopy<TinyLife.World.RoofType>()
  nameWithType.vb: Extensions.JsonCopy(Of RoofType)()
  fullName.vb: TinyLife.Utilities.Extensions.JsonCopy(Of TinyLife.World.RoofType)()
  name.vb: JsonCopy(Of RoofType)()
  spec.csharp:
  - uid: TinyLife.Utilities.Extensions.JsonCopy``1
    name: JsonCopy<RoofType>
    nameWithType: Extensions.JsonCopy<RoofType>
    fullName: TinyLife.Utilities.Extensions.JsonCopy<TinyLife.World.RoofType>
  - name: (
    nameWithType: (
    fullName: (
  - name: )
    nameWithType: )
    fullName: )
  spec.vb:
  - uid: TinyLife.Utilities.Extensions.JsonCopy``1
    name: JsonCopy(Of RoofType)
    nameWithType: Extensions.JsonCopy(Of RoofType)
    fullName: TinyLife.Utilities.Extensions.JsonCopy(Of TinyLife.World.RoofType)
  - name: (
    nameWithType: (
    fullName: (
  - name: )
    nameWithType: )
    fullName: )
- uid: System
  commentId: N:System
  isExternal: true
  name: System
  nameWithType: System
  fullName: System
- uid: TinyLife.Utilities.Extensions.JsonCopy``1(``0)
  commentId: M:TinyLife.Utilities.Extensions.JsonCopy``1(``0)
  name: JsonCopy<T>(T)
  nameWithType: Extensions.JsonCopy<T>(T)
  fullName: TinyLife.Utilities.Extensions.JsonCopy<T>(T)
  nameWithType.vb: Extensions.JsonCopy(Of T)(T)
  fullName.vb: TinyLife.Utilities.Extensions.JsonCopy(Of T)(T)
  name.vb: JsonCopy(Of T)(T)
  spec.csharp:
  - uid: TinyLife.Utilities.Extensions.JsonCopy``1(``0)
    name: JsonCopy<T>
    nameWithType: Extensions.JsonCopy<T>
    fullName: TinyLife.Utilities.Extensions.JsonCopy<T>
  - name: (
    nameWithType: (
    fullName: (
  - name: T
    nameWithType: T
    fullName: T
  - name: )
    nameWithType: )
    fullName: )
  spec.vb:
  - uid: TinyLife.Utilities.Extensions.JsonCopy``1(``0)
    name: JsonCopy(Of T)
    nameWithType: Extensions.JsonCopy(Of T)
    fullName: TinyLife.Utilities.Extensions.JsonCopy(Of T)
  - name: (
    nameWithType: (
    fullName: (
  - name: T
    nameWithType: T
    fullName: T
  - name: )
    nameWithType: )
    fullName: )
- uid: TinyLife.Utilities.Extensions
  commentId: T:TinyLife.Utilities.Extensions
  parent: TinyLife.Utilities
  name: Extensions
  nameWithType: Extensions
  fullName: TinyLife.Utilities.Extensions
- uid: TinyLife.Utilities
  commentId: N:TinyLife.Utilities
  name: TinyLife.Utilities
  nameWithType: TinyLife.Utilities
  fullName: TinyLife.Utilities
- uid: TinyLife.World.RoofType
  commentId: T:TinyLife.World.RoofType
  parent: TinyLife.World
  name: RoofType
  nameWithType: RoofType
  fullName: TinyLife.World.RoofType
- uid: System.Collections.Generic.IDictionary{System.String,TinyLife.World.RoofType}
  commentId: T:System.Collections.Generic.IDictionary{System.String,TinyLife.World.RoofType}
  parent: System.Collections.Generic
  definition: System.Collections.Generic.IDictionary`2
  name: IDictionary<String, RoofType>
  nameWithType: IDictionary<String, RoofType>
  fullName: System.Collections.Generic.IDictionary<System.String, TinyLife.World.RoofType>
  nameWithType.vb: IDictionary(Of String, RoofType)
  fullName.vb: System.Collections.Generic.IDictionary(Of System.String, TinyLife.World.RoofType)
  name.vb: IDictionary(Of String, RoofType)
  spec.csharp:
  - uid: System.Collections.Generic.IDictionary`2
    name: IDictionary
    nameWithType: IDictionary
    fullName: System.Collections.Generic.IDictionary
    isExternal: true
  - name: <
    nameWithType: <
    fullName: <
  - uid: System.String
    name: String
    nameWithType: String
    fullName: System.String
    isExternal: true
  - name: ', '
    nameWithType: ', '
    fullName: ', '
  - uid: TinyLife.World.RoofType
    name: RoofType
    nameWithType: RoofType
    fullName: TinyLife.World.RoofType
  - name: '>'
    nameWithType: '>'
    fullName: '>'
  spec.vb:
  - uid: System.Collections.Generic.IDictionary`2
    name: IDictionary
    nameWithType: IDictionary
    fullName: System.Collections.Generic.IDictionary
    isExternal: true
  - name: '(Of '
    nameWithType: '(Of '
    fullName: '(Of '
  - uid: System.String
    name: String
    nameWithType: String
    fullName: System.String
    isExternal: true
  - name: ', '
    nameWithType: ', '
    fullName: ', '
  - uid: TinyLife.World.RoofType
    name: RoofType
    nameWithType: RoofType
    fullName: TinyLife.World.RoofType
  - name: )
    nameWithType: )
    fullName: )
- uid: System.Collections.Generic.IDictionary`2
  commentId: T:System.Collections.Generic.IDictionary`2
  isExternal: true
  name: IDictionary<TKey, TValue>
  nameWithType: IDictionary<TKey, TValue>
  fullName: System.Collections.Generic.IDictionary<TKey, TValue>
  nameWithType.vb: IDictionary(Of TKey, TValue)
  fullName.vb: System.Collections.Generic.IDictionary(Of TKey, TValue)
  name.vb: IDictionary(Of TKey, TValue)
  spec.csharp:
  - uid: System.Collections.Generic.IDictionary`2
    name: IDictionary
    nameWithType: IDictionary
    fullName: System.Collections.Generic.IDictionary
    isExternal: true
  - name: <
    nameWithType: <
    fullName: <
  - name: TKey
    nameWithType: TKey
    fullName: TKey
  - name: ', '
    nameWithType: ', '
    fullName: ', '
  - name: TValue
    nameWithType: TValue
    fullName: TValue
  - name: '>'
    nameWithType: '>'
    fullName: '>'
  spec.vb:
  - uid: System.Collections.Generic.IDictionary`2
    name: IDictionary
    nameWithType: IDictionary
    fullName: System.Collections.Generic.IDictionary
    isExternal: true
  - name: '(Of '
    nameWithType: '(Of '
    fullName: '(Of '
  - name: TKey
    nameWithType: TKey
    fullName: TKey
  - name: ', '
    nameWithType: ', '
    fullName: ', '
  - name: TValue
    nameWithType: TValue
    fullName: TValue
  - name: )
    nameWithType: )
    fullName: )
- uid: System.Collections.Generic
  commentId: N:System.Collections.Generic
  isExternal: true
  name: System.Collections.Generic
  nameWithType: System.Collections.Generic
  fullName: System.Collections.Generic
- uid: System.String
  commentId: T:System.String
  parent: System
  isExternal: true
  name: String
  nameWithType: String
  fullName: System.String
- uid: System.Int32
  commentId: T:System.Int32
  parent: System
  isExternal: true
  name: Int32
  nameWithType: Int32
  fullName: System.Int32
- uid: TinyLife.Utilities.ColorScheme
  commentId: T:TinyLife.Utilities.ColorScheme
  parent: TinyLife.Utilities
  name: ColorScheme
  nameWithType: ColorScheme
  fullName: TinyLife.Utilities.ColorScheme
- uid: TinyLife.World.RoofStyle.Gable
  commentId: F:TinyLife.World.RoofStyle.Gable
  isExternal: true
- uid: MLEM.Textures.TextureRegion
  commentId: T:MLEM.Textures.TextureRegion
  parent: MLEM.Textures
  isExternal: true
  name: TextureRegion
  nameWithType: TextureRegion
  fullName: MLEM.Textures.TextureRegion
- uid: MLEM.Textures
  commentId: N:MLEM.Textures
  isExternal: true
  name: MLEM.Textures
  nameWithType: MLEM.Textures
  fullName: MLEM.Textures
- uid: TinyLife.World.RoofStyle
  commentId: T:TinyLife.World.RoofStyle
  parent: TinyLife.World
  name: RoofStyle
  nameWithType: RoofStyle
  fullName: TinyLife.World.RoofStyle
- uid: TinyLife.World.RoofType.Draw(Microsoft.Xna.Framework.GameTime,Microsoft.Xna.Framework.Graphics.SpriteBatch,TinyLife.World.Map,Microsoft.Xna.Framework.Rectangle,MLEM.Misc.Direction2,System.Int32,TinyLife.World.Wallpaper,System.Single)
  commentId: M:TinyLife.World.RoofType.Draw(Microsoft.Xna.Framework.GameTime,Microsoft.Xna.Framework.Graphics.SpriteBatch,TinyLife.World.Map,Microsoft.Xna.Framework.Rectangle,MLEM.Misc.Direction2,System.Int32,TinyLife.World.Wallpaper,System.Single)
  isExternal: true
- uid: TinyLife.World.RoofStyle.Custom
  commentId: F:TinyLife.World.RoofStyle.Custom
  isExternal: true
- uid: TinyLife.World.RoofType.#ctor*
  commentId: Overload:TinyLife.World.RoofType.#ctor
  name: RoofType
  nameWithType: RoofType.RoofType
  fullName: TinyLife.World.RoofType.RoofType
- uid: TinyLife.Utilities.ColorScheme.WarmDark
  commentId: F:TinyLife.Utilities.ColorScheme.WarmDark
  isExternal: true
- uid: TinyLife.World.RoofType.DrawUi*
  commentId: Overload:TinyLife.World.RoofType.DrawUi
  name: DrawUi
  nameWithType: RoofType.DrawUi
  fullName: TinyLife.World.RoofType.DrawUi
- uid: Microsoft.Xna.Framework.Graphics.SpriteBatch
  commentId: T:Microsoft.Xna.Framework.Graphics.SpriteBatch
  parent: Microsoft.Xna.Framework.Graphics
  isExternal: true
  name: SpriteBatch
  nameWithType: SpriteBatch
  fullName: Microsoft.Xna.Framework.Graphics.SpriteBatch
- uid: MLEM.Ui.Elements.Element
  commentId: T:MLEM.Ui.Elements.Element
  parent: MLEM.Ui.Elements
  isExternal: true
  name: Element
  nameWithType: Element
  fullName: MLEM.Ui.Elements.Element
- uid: System.Single
  commentId: T:System.Single
  parent: System
  isExternal: true
  name: Single
  nameWithType: Single
  fullName: System.Single
- uid: Microsoft.Xna.Framework.Graphics
  commentId: N:Microsoft.Xna.Framework.Graphics
  isExternal: true
  name: Microsoft.Xna.Framework.Graphics
  nameWithType: Microsoft.Xna.Framework.Graphics
  fullName: Microsoft.Xna.Framework.Graphics
- uid: MLEM.Ui.Elements
  commentId: N:MLEM.Ui.Elements
  isExternal: true
  name: MLEM.Ui.Elements
  nameWithType: MLEM.Ui.Elements
  fullName: MLEM.Ui.Elements
- uid: TinyLife.World.RoofType.Draw*
  commentId: Overload:TinyLife.World.RoofType.Draw
  name: Draw
  nameWithType: RoofType.Draw
  fullName: TinyLife.World.RoofType.Draw
- uid: Microsoft.Xna.Framework.GameTime
  commentId: T:Microsoft.Xna.Framework.GameTime
  parent: Microsoft.Xna.Framework
  isExternal: true
  name: GameTime
  nameWithType: GameTime
  fullName: Microsoft.Xna.Framework.GameTime
- uid: TinyLife.World.Map
  commentId: T:TinyLife.World.Map
  parent: TinyLife.World
  name: Map
  nameWithType: Map
  fullName: TinyLife.World.Map
- uid: Microsoft.Xna.Framework.Rectangle
  commentId: T:Microsoft.Xna.Framework.Rectangle
  parent: Microsoft.Xna.Framework
  isExternal: true
  name: Rectangle
  nameWithType: Rectangle
  fullName: Microsoft.Xna.Framework.Rectangle
- uid: MLEM.Misc.Direction2
  commentId: T:MLEM.Misc.Direction2
  parent: MLEM.Misc
  isExternal: true
  name: Direction2
  nameWithType: Direction2
  fullName: MLEM.Misc.Direction2
- uid: TinyLife.World.Wallpaper
  commentId: T:TinyLife.World.Wallpaper
  parent: TinyLife.World
  name: Wallpaper
  nameWithType: Wallpaper
  fullName: TinyLife.World.Wallpaper
- uid: Microsoft.Xna.Framework
  commentId: N:Microsoft.Xna.Framework
  isExternal: true
  name: Microsoft.Xna.Framework
  nameWithType: Microsoft.Xna.Framework
  fullName: Microsoft.Xna.Framework
- uid: MLEM.Misc
  commentId: N:MLEM.Misc
  isExternal: true
  name: MLEM.Misc
  nameWithType: MLEM.Misc
  fullName: MLEM.Misc
- uid: TinyLife.World.RoofType.Price
  commentId: F:TinyLife.World.RoofType.Price
  isExternal: true
- uid: TinyLife.World.RoofType.GetPrice*
  commentId: Overload:TinyLife.World.RoofType.GetPrice
  name: GetPrice
  nameWithType: RoofType.GetPrice
  fullName: TinyLife.World.RoofType.GetPrice
- uid: TinyLife.World.RoofType.Types
  commentId: F:TinyLife.World.RoofType.Types
  isExternal: true
- uid: TinyLife.World.RoofType.Register*
  commentId: Overload:TinyLife.World.RoofType.Register
  name: Register
  nameWithType: RoofType.Register
  fullName: TinyLife.World.RoofType.Register
