1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
#lang rhombus/static
import "world.rhm"
fun test(test_result :: Boolean, test_str :: String):
if test_result
| println("Passed " +& test_str)
| println("Failed " +& test_str)
fun reset_entity(entity :: world.Entity):
entity.x := 0
entity.y := 0
let wrld = world.World()
let chunk = world.Chunk(64, 64, 0, 0)
wrld.chunks.add(chunk)
let entity = world.Entity(0, 0, 0, chunk)
wrld.entities.add(entity)
reset_entity(entity)
test(wrld.entity_move(0, 1, 0), "move horizontal")
reset_entity(entity)
test(wrld.entity_move(0, 0, 1), "move vertical")
reset_entity(entity)
test(wrld.entity_move(0, 1, 1), "move diagonal")
reset_entity(entity)
test(!wrld.entity_move(0, 2, 0), "move diagonal")
reset_entity(entity)
test(!wrld.entity_move(0, 0, 0), "starting pos")
//world.entities
println(@str{Entity is @(entity.x) @(entity.y)})
|