up3
Build and deploy / Build (push) Has been cancelled
Build and deploy / Update Contributors (push) Has been cancelled
Build and deploy / Deploy (push) Has been cancelled
Build and deploy / Build (push) Has been cancelled
Build and deploy / Update Contributors (push) Has been cancelled
Build and deploy / Deploy (push) Has been cancelled
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
package entity
|
||||
|
||||
import (
|
||||
"github.com/df-mc/dragonfly/server/world"
|
||||
"github.com/go-gl/mathgl/mgl64"
|
||||
)
|
||||
|
||||
// Eyed represents an entity that has eyes.
|
||||
type Eyed interface {
|
||||
// EyeHeight returns the offset from their base position that the eyes of an entity are found at.
|
||||
EyeHeight() float64
|
||||
}
|
||||
|
||||
// EyePosition returns the position of the eyes of the entity if the entity implements entity.Eyed, or the
|
||||
// actual position if it doesn't.
|
||||
func EyePosition(e world.Entity) mgl64.Vec3 {
|
||||
pos := e.Position()
|
||||
if eyed, ok := e.(Eyed); ok {
|
||||
pos[1] += eyed.EyeHeight()
|
||||
}
|
||||
return pos
|
||||
}
|
||||
Reference in New Issue
Block a user