nodes

package
v0.0.0-...-1d09ed4 Latest Latest
Warning

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

Go to latest
Published: Aug 30, 2019 License: MIT Imports: 14 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Alignment

type Alignment int
const (
	AlignmentFixed Alignment = iota
	AlignmentBottomLeft
	AlignmentCenterLeft
	AlignmentTopLeft
	AlignmentBottomCenter
	AlignmentCenter
	AlignmentTopCenter
	AlignmentBottomRight
	AlignmentCenterRight
	AlignmentTopRight
)

type Animation

type Animation struct {
	BaseNode
	// contains filtered or unexported fields
}

func NewAnimation

func NewAnimation(name string) *Animation

func (*Animation) Add

func (a *Animation) Add(startValue, endValue, startTime, duration float64, animFn func(v float64))

func (*Animation) OnEnd

func (a *Animation) OnEnd(fn func())

func (*Animation) Start

func (a *Animation) Start()

func (*Animation) Update

func (a *Animation) Update(dt float64)

type BaseNode

type BaseNode struct {
	Self Node
	Name string
	// contains filtered or unexported fields
}

func NewBaseNode

func NewBaseNode(name string) *BaseNode

func (*BaseNode) AddChild

func (b *BaseNode) AddChild(child Node)

func (*BaseNode) ChildChanged

func (b *BaseNode) ChildChanged()

func (*BaseNode) Children

func (b *BaseNode) Children() []Node

func (*BaseNode) Contains

func (b *BaseNode) Contains(point pixel.Vec) bool

func (*BaseNode) CopyFrom

func (b *BaseNode) CopyFrom(from Node)

func (*BaseNode) GetExtraOffset

func (b *BaseNode) GetExtraOffset() pixel.Vec

func (*BaseNode) GetLastMat

func (b *BaseNode) GetLastMat() pixel.Matrix

func (*BaseNode) GetName

func (b *BaseNode) GetName() string

func (*BaseNode) GetOrigin

func (b *BaseNode) GetOrigin() pixel.Vec

func (*BaseNode) GetPos

func (b *BaseNode) GetPos() pixel.Vec

func (*BaseNode) GetRot

func (b *BaseNode) GetRot() float64

func (*BaseNode) GetRotPoint

func (b *BaseNode) GetRotPoint() pixel.Vec

func (*BaseNode) GetScale

func (b *BaseNode) GetScale() pixel.Vec

func (*BaseNode) GetStyles

func (b *BaseNode) GetStyles() *Styles

func (*BaseNode) GlobalToLocalPos

func (b *BaseNode) GlobalToLocalPos(global pixel.Vec) pixel.Vec

func (*BaseNode) Hide

func (b *BaseNode) Hide()

func (*BaseNode) Initialized

func (b *BaseNode) Initialized() bool

func (*BaseNode) IsShown

func (b *BaseNode) IsShown() bool

func (*BaseNode) Iterate

func (b *BaseNode) Iterate(fn func(n Node))

func (*BaseNode) LocalToGlobalPos

func (b *BaseNode) LocalToGlobalPos(local pixel.Vec) pixel.Vec

func (*BaseNode) Locked

func (b *BaseNode) Locked() bool

func (*BaseNode) Parent

func (b *BaseNode) Parent() Node

func (*BaseNode) Pause

func (b *BaseNode) Pause()

func (*BaseNode) PosLocked

func (b *BaseNode) PosLocked() bool

func (*BaseNode) RemoveChild

func (b *BaseNode) RemoveChild(child Node)

func (*BaseNode) RemoveChildren

func (b *BaseNode) RemoveChildren()

func (*BaseNode) SetActive

func (b *BaseNode) SetActive(active bool)

func (*BaseNode) SetExtraOffset

func (b *BaseNode) SetExtraOffset(extra pixel.Vec)

func (*BaseNode) SetLastMat

func (b *BaseNode) SetLastMat(mat pixel.Matrix)

func (*BaseNode) SetLocked

func (b *BaseNode) SetLocked(locked bool)

func (*BaseNode) SetName

func (b *BaseNode) SetName(name string)

func (*BaseNode) SetOrigin

func (b *BaseNode) SetOrigin(origin pixel.Vec)

func (*BaseNode) SetParent

func (b *BaseNode) SetParent(p Node)

func (*BaseNode) SetPausable

func (b *BaseNode) SetPausable(pausable bool)

func (*BaseNode) SetPos

func (b *BaseNode) SetPos(p pixel.Vec)

func (*BaseNode) SetPosLocked

func (b *BaseNode) SetPosLocked(locked bool)

func (*BaseNode) SetRot

func (b *BaseNode) SetRot(rot float64)

func (*BaseNode) SetRotPoint

func (b *BaseNode) SetRotPoint(rotpoint pixel.Vec)

func (*BaseNode) SetScale

func (b *BaseNode) SetScale(scale pixel.Vec)

func (*BaseNode) SetSize

func (b *BaseNode) SetSize(size pixel.Vec)

func (*BaseNode) SetStyles

func (b *BaseNode) SetStyles(styles *Styles)

func (*BaseNode) SetZIndex

func (b *BaseNode) SetZIndex(z int)

func (*BaseNode) Show

func (b *BaseNode) Show()

func (*BaseNode) SortChildren

func (b *BaseNode) SortChildren()

func (*BaseNode) Unpause

func (b *BaseNode) Unpause()

func (*BaseNode) UpdateFromTheme

func (b *BaseNode) UpdateFromTheme(theme *Theme)

func (*BaseNode) ZIndex

func (b *BaseNode) ZIndex() int

type BorderBox

type BorderBox struct {
	Canvas
}

func NewBorderBox

func NewBorderBox(name string, w, h float64) *BorderBox

func (*BorderBox) KeepOnScreen

func (b *BorderBox) KeepOnScreen()

func (*BorderBox) SetSize

func (b *BorderBox) SetSize(size pixel.Vec)

func (*BorderBox) SetStyles

func (b *BorderBox) SetStyles(styles *Styles)

type Canvas

type Canvas struct {
	BaseNode
	// contains filtered or unexported fields
}

func NewCanvas

func NewCanvas(name string, w, h float64) *Canvas

func (*Canvas) Canvas

func (c *Canvas) Canvas() *pixelgl.Canvas

func (*Canvas) Clear

func (c *Canvas) Clear(col color.Color)

func (*Canvas) Contains

func (c *Canvas) Contains(point pixel.Vec) bool

func (*Canvas) Draw

func (c *Canvas) Draw(win pixel.Target, mat pixel.Matrix)

func (*Canvas) DrawLine

func (c *Canvas) DrawLine(p1, p2 pixel.Vec, col color.Color)

func (*Canvas) DrawRect

func (c *Canvas) DrawRect(p1, p2 pixel.Vec, col color.Color)

func (*Canvas) FillRect

func (c *Canvas) FillRect(p1, p2 pixel.Vec, col color.Color)

func (*Canvas) GetCanvas

func (c *Canvas) GetCanvas() *pixelgl.Canvas

func (*Canvas) SetFragmentShader

func (c *Canvas) SetFragmentShader(src string)

func (*Canvas) SetSize

func (c *Canvas) SetSize(size pixel.Vec)

func (*Canvas) SetUniform

func (c *Canvas) SetUniform(name string, value interface{})

func (*Canvas) Size

func (c *Canvas) Size() pixel.Vec

type Drawable

type Drawable interface {
	Draw(win pixel.Target, mat pixel.Matrix)
}

type EventManager

type EventManager struct {
	// contains filtered or unexported fields
}

func Events

func Events() *EventManager

func (*EventManager) Clicked

func (e *EventManager) Clicked(button pixelgl.Button, node Node) bool

Clicked checks for mouse clicks inside of the given node

func (*EventManager) IsButtonHandled

func (e *EventManager) IsButtonHandled(b pixelgl.Button) bool

func (*EventManager) IsFocused

func (e *EventManager) IsFocused(node Node) bool

IsFocused can be used by a Node to check whether it has the input focus and can use keyboard inputs. Special case nil: in this case every Node implicitly has the input focus.

func (*EventManager) IsMouseScrollHandled

func (e *EventManager) IsMouseScrollHandled() bool

func (*EventManager) JustPressed

func (e *EventManager) JustPressed(button pixelgl.Button) bool

func (*EventManager) JustPressedButtons

func (e *EventManager) JustPressedButtons(buttons ...pixelgl.Button) []pixelgl.Button

func (*EventManager) JustReleased

func (e *EventManager) JustReleased(button pixelgl.Button) bool

func (*EventManager) LocalMousePosition

func (e *EventManager) LocalMousePosition(node Node) pixel.Vec

func (*EventManager) MouseHovering

func (e *EventManager) MouseHovering(node Node) bool

func (*EventManager) MousePosition

func (e *EventManager) MousePosition() pixel.Vec

func (*EventManager) MousePreviousPosition

func (e *EventManager) MousePreviousPosition() pixel.Vec

func (*EventManager) MouseScroll

func (e *EventManager) MouseScroll() pixel.Vec

func (*EventManager) Pressed

func (e *EventManager) Pressed(button pixelgl.Button) bool

func (*EventManager) Repeated

func (e *EventManager) Repeated(button pixelgl.Button) bool

func (*EventManager) SetButtonHandled

func (e *EventManager) SetButtonHandled(b pixelgl.Button)

func (*EventManager) SetButtonUnhandled

func (e *EventManager) SetButtonUnhandled(b pixelgl.Button)

func (*EventManager) SetFocus

func (e *EventManager) SetFocus(node Node)

SetFocus is used to set the currently focused Node. Pass nil to implicitly give every Node the input focus.

func (*EventManager) Typed

func (e *EventManager) Typed() string

type FontServiceStruct

type FontServiceStruct struct {
	// contains filtered or unexported fields
}
var FontService *FontServiceStruct

func (*FontServiceStruct) AddAtlas

func (f *FontServiceStruct) AddAtlas(name string, face font.Face, runeSets ...[]rune)

func (*FontServiceStruct) Get

func (f *FontServiceStruct) Get(name string) *text.Atlas

func (*FontServiceStruct) Has

func (f *FontServiceStruct) Has(name string) bool

type HorizontalAlignment

type HorizontalAlignment int
const (
	HAlignmentLeft HorizontalAlignment = iota
	HAlignmentCenter
	HAlignmentRight
)

type Initializable

type Initializable interface {
	Init()
}

type Mountable

type Mountable interface {
	Mount()
	Unmount()
}

type Node

type Node interface {
	GetLastMat() pixel.Matrix
	SetLastMat(mat pixel.Matrix)
	Initialized() bool
	Parent() Node
	SetParent(p Node)
	SetName(name string)
	GetName() string
	SetOrigin(origin pixel.Vec)
	GetOrigin() pixel.Vec
	GetPos() pixel.Vec
	LocalToGlobalPos(local pixel.Vec) pixel.Vec
	GlobalToLocalPos(global pixel.Vec) pixel.Vec
	SetPos(pos pixel.Vec)
	SetRot(rot float64)
	GetRot() float64
	SetScale(scale pixel.Vec)
	GetScale() pixel.Vec
	SetRotPoint(rotpoint pixel.Vec)
	GetRotPoint() pixel.Vec
	ZIndex() int
	SetZIndex(z int)
	GetExtraOffset() pixel.Vec
	Show()
	Hide()
	IsShown() bool
	AddChild(child Node)
	Children() []Node
	SortChildren()
	RemoveChild(child Node)
	RemoveChildren()
	ChildChanged()
	SetStyles(styles *Styles)
	GetStyles() *Styles
	SetSize(size pixel.Vec)
	Contains(point pixel.Vec) bool

	UpdateFromTheme(theme *Theme)
	SetPausable(pausable bool)
	Pause()
	Unpause()
	SetLocked(locked bool)
	Locked() bool
	Iterate(fn func(n Node))
	CopyFrom(from Node)
	SetPosLocked(locked bool)
	PosLocked() bool
	// contains filtered or unexported methods
}

type SceneManagerStruct

type SceneManagerStruct struct {
	// contains filtered or unexported fields
}

func SceneManager

func SceneManager() *SceneManagerStruct

func (*SceneManagerStruct) CenterPos

func (s *SceneManagerStruct) CenterPos() pixel.Vec

func (*SceneManagerStruct) KeepOnScreen

func (s *SceneManagerStruct) KeepOnScreen(n Node, r pixel.Rect) pixel.Vec

func (*SceneManagerStruct) NeedsRedraw

func (s *SceneManagerStruct) NeedsRedraw() bool

func (*SceneManagerStruct) Pause

func (s *SceneManagerStruct) Pause()

func (*SceneManagerStruct) Redraw

func (s *SceneManagerStruct) Redraw()

func (*SceneManagerStruct) Root

func (s *SceneManagerStruct) Root() Node

func (*SceneManagerStruct) Run

func (s *SceneManagerStruct) Run(mat pixel.Matrix)

func (*SceneManagerStruct) SetClearColor

func (s *SceneManagerStruct) SetClearColor(color color.Color)

func (*SceneManagerStruct) SetRoot

func (s *SceneManagerStruct) SetRoot(root Node)

func (*SceneManagerStruct) SetTheme

func (s *SceneManagerStruct) SetTheme(theme *Theme)

func (*SceneManagerStruct) SetWin

func (s *SceneManagerStruct) SetWin(win *pixelgl.Window)

func (*SceneManagerStruct) Theme

func (s *SceneManagerStruct) Theme() *Theme

func (*SceneManagerStruct) Unpause

func (s *SceneManagerStruct) Unpause()

func (*SceneManagerStruct) Win

func (s *SceneManagerStruct) Win() *pixelgl.Window

type Sizer

type Sizer interface {
	Size() pixel.Vec
}

type Sprite

type Sprite struct {
	BaseNode
	// contains filtered or unexported fields
}

func NewSprite

func NewSprite(name string, pic pixel.Picture) *Sprite

func (*Sprite) Bounds

func (s *Sprite) Bounds() pixel.Rect

func (*Sprite) Contains

func (s *Sprite) Contains(point pixel.Vec) bool

func (*Sprite) Draw

func (s *Sprite) Draw(win pixel.Target, mat pixel.Matrix)

func (*Sprite) Init

func (s *Sprite) Init()

func (*Sprite) Set

func (s *Sprite) Set(pic pixel.Picture)

func (*Sprite) SetBounds

func (s *Sprite) SetBounds(bounds pixel.Rect)

func (*Sprite) Size

func (s *Sprite) Size() pixel.Vec

type SpriteSheet

type SpriteSheet struct {
	// contains filtered or unexported fields
}

func NewSpriteSheet

func NewSpriteSheet(spritesheet pixel.Picture, dx int, dy int) *SpriteSheet

func (*SpriteSheet) Info

func (spr *SpriteSheet) Info() SpriteSheetInfo

func (*SpriteSheet) Length

func (spr *SpriteSheet) Length() int

func (*SpriteSheet) NewSprite

func (spr *SpriteSheet) NewSprite(idx int) *Sprite

type SpriteSheetInfo

type SpriteSheetInfo struct {
	MaxX, MaxY, MaxIdx int
}

func (*SpriteSheetInfo) Idx

func (i *SpriteSheetInfo) Idx(x, y int) int

type Styles

type Styles struct {
	Border struct {
		Width float64
		Color color.Color
	}
	Background struct {
		Color color.Color
	}
	Foreground struct {
		Color color.Color
	}
	Text struct {
		Color   color.Color
		Atlas   string
		OffsetY float64
	}
	Sound struct {
		Click string
	}
	Padding       float64
	RoundToPixels bool
}

func DefaultStyles

func DefaultStyles() *Styles

func (*Styles) Clone

func (s *Styles) Clone() *Styles

type SubScene

type SubScene struct {
	Canvas
	// contains filtered or unexported fields
}

func NewSubScene

func NewSubScene(name string, w, h float64) *SubScene

func (*SubScene) Draw

func (s *SubScene) Draw(win pixel.Target, mat pixel.Matrix)

func (*SubScene) SetRoot

func (s *SubScene) SetRoot(root Node)

func (*SubScene) SetSize

func (s *SubScene) SetSize(size pixel.Vec)

func (*SubScene) Update

func (s *SubScene) Update(dt float64)

type Theme

type Theme struct {
	Button struct {
		Enabled, Disabled, Hover, Pressed *Styles
	}
	Text     *Styles
	Slider   *Styles
	Grid     *Styles
	InputBox *Styles
}

func DefaultTheme

func DefaultTheme() *Theme

type TileInfo

type TileInfo struct {
	// contains filtered or unexported fields
}

type TileMapLayer

type TileMapLayer struct {
	BaseNode
	// contains filtered or unexported fields
}

func NewTileMapLayer

func NewTileMapLayer(name string, pic pixel.Picture, dx, dy int) *TileMapLayer

func TileMapsFromTmx

func TileMapsFromTmx(tmx *tiled.Map) ([]*TileMapLayer, error)

func (*TileMapLayer) AddTile

func (t *TileMapLayer) AddTile(x, y float64, idx int)

func (*TileMapLayer) AddTileGrid

func (t *TileMapLayer) AddTileGrid(x, y, idx int)

func (*TileMapLayer) Draw

func (t *TileMapLayer) Draw(win pixel.Target, mat pixel.Matrix)

func (*TileMapLayer) SpriteSheet

func (t *TileMapLayer) SpriteSheet() *SpriteSheet

type Updateable

type Updateable interface {
	Update(dt float64)
}

type VerticalAlignment

type VerticalAlignment int
const (
	VAlignmentTop VerticalAlignment = iota
	VAlignmentCenter
	VAlignmentBottom
)

Jump to

Keyboard shortcuts

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