diagnostic tool fixes

This commit is contained in:
2024-04-22 13:52:17 +03:00
parent 4f18b6db18
commit dc2e6ea2b5
20 changed files with 178 additions and 160 deletions

View File

@ -13,7 +13,7 @@ var maxRoomSize = 22
var maxrooms = 100
var fges = map[int]types.RectFill{
1: types.RectFill{
1: {
Top: gamemap.NewWall,
Bottom: gamemap.NewWall,
Left: gamemap.NewWall,
@ -25,7 +25,7 @@ var fges = map[int]types.RectFill{
Body: gamemap.NewFloor,
},
2: types.RectFill{
2: {
Top: gamemap.NewWaterTile,
Bottom: gamemap.NewWaterTile,
Left: gamemap.NewWaterTile,
@ -53,7 +53,14 @@ func GetRandomRoomList(rng *util.RNG, l *gamemap.Level, maxRooms, minRoomSize, m
var newRoom = gamemap.Room{}
if !prefabUsed || rng.Range(0, 5) > 3 {
if prefabUsed && rng.Range(0, 5) <= 3 {
newRoom = gamemap.NewRandomRectRoom(
rng,
rng.Range(minRoomSize, maxRoomSize),
rng.Range(minRoomSize, maxRoomSize),
fillage,
)
} else {
//if prefabUsed {
//prefab
prefabUsed = true
@ -67,20 +74,14 @@ func GetRandomRoomList(rng *util.RNG, l *gamemap.Level, maxRooms, minRoomSize, m
Mobs: r.Mobs,
Connectors: make([]types.Coords,0),
}
for _, coord := range r.Connectors {
newRoom.Connectors = append(newRoom.Connectors, coord)
}
} else {
newRoom = gamemap.NewRandomRectRoom(
rng,
rng.Range(minRoomSize, maxRoomSize),
rng.Range(minRoomSize, maxRoomSize),
fillage,
)
newRoom.Connectors = append(newRoom.Connectors, r.Connectors...)
// for _, coord := range r.Connectors {
// newRoom.Connectors = append(newRoom.Connectors, coord)
// }
}
where := types.Coords{
rng.Range(1, l.W-2-newRoom.W),
rng.Range(1, l.H-2-newRoom.H),
X: rng.Range(1, l.W-2-newRoom.W),
Y: rng.Range(1, l.H-2-newRoom.H),
}
newRoom.MoveToCoords(where)
@ -172,7 +173,7 @@ func DigHTunnel(l *gamemap.Level, x1, x2, y int) {
finish = x1
}
for i := start; i <= finish; i++ {
if l.InBounds(types.Coords{i, y}) {
if l.InBounds(types.Coords{X: i, Y: y}) {
l.MakePassByXY(i, y, gamemap.NewFloor())
//l.Tiles[i][y] = gamemap.NewFloor()
}
@ -189,7 +190,7 @@ func DigVTunnel(l *gamemap.Level, y1, y2, x int) {
finish = y1
}
for i := start; i <= finish; i++ {
if l.InBounds(types.Coords{x, i}) {
if l.InBounds(types.Coords{X: x, Y: i}) {
l.MakePassByXY(x, i, gamemap.NewFloor())
}
}