1
1
mirror of https://github.com/OpenDiablo2/OpenDiablo2 synced 2024-10-31 16:27:18 -04:00
OpenDiablo2/d2render/animated_entity_test.go
nicholas-eden 9a8e16c411 Pause npcs at each target location for a random time (#245)
Loop through neutral animation a random number of repetitions before moving on.  Only run the skill animation once, it is not designed for looping.
2019-12-06 23:58:36 -05:00

72 lines
1.4 KiB
Go

package d2render
import (
"github.com/stretchr/testify/assert"
"testing"
)
func TestAngleToDirection_16Directions(t *testing.T) {
numberOfDirections := 16
angle := 45.0
for i := 0; i < numberOfDirections; i++ {
assert.Equal(t, i, angleToDirection(angle, numberOfDirections))
angle += 22.5
}
angle = 50.0
for i := 0; i < numberOfDirections; i++ {
assert.Equal(t, i, angleToDirection(angle, numberOfDirections))
angle += 22.5
}
angle = 40.0
for i := 0; i < numberOfDirections; i++ {
assert.Equal(t, i, angleToDirection(angle, numberOfDirections))
angle += 22.5
}
}
func TestAngleToDirection_8Directions(t *testing.T) {
numberOfDirections := 8
angle := 45.0
for i := 0; i < numberOfDirections; i++ {
assert.Equal(t, i, angleToDirection(angle, numberOfDirections))
angle += 45
}
angle = 50.0
for i := 0; i < numberOfDirections; i++ {
assert.Equal(t, i, angleToDirection(angle, numberOfDirections))
angle += 45
}
angle = 40.0
for i := 0; i < numberOfDirections; i++ {
assert.Equal(t, i, angleToDirection(angle, numberOfDirections))
angle += 45
}
}
func TestAngleToDirection_1Direction(t *testing.T) {
angle := 0.0
for i := 0; i < 120; i++ {
assert.Equal(t, 0, angleToDirection(angle, 1))
angle += 3
}
}
func TestAngleToDirection_0Directions(t *testing.T) {
angle := 0.0
for i := 0; i < 120; i++ {
assert.Equal(t, 0, angleToDirection(angle, 0))
angle += 3
}
}