diff --git a/biomes.lisp b/biomes.lisp index 2382252..293d199 100644 --- a/biomes.lisp +++ b/biomes.lisp @@ -38,13 +38,13 @@ :name "grassland" :ground "tall elephant grass" :char #\; :col ':yellow - :features '((acacia 20) (boulder 100))) ;TODO + :features '((acacia 40) (boulder 150))) ;TODO (new-biome 'forest :name "forest" :ground "leaf litter and small shrubs" :char #\. :col ':green - :features '((miombo 5) (acacia 10))) ;TODO + :features '((miombo 10) (acacia 15))) ;TODO (new-biome 'stream :name "stream" @@ -62,6 +62,6 @@ :name "hill" :ground "hard, stony soil" :char #\m :col ':white - :features '((boulder 7))) ;TODO + :features '((boulder 10))) ;TODO ;;TODO desert diff --git a/biomes.lisp b/biomes.lisp index 2382252..293d199 100644 --- a/biomes.lisp +++ b/biomes.lisp @@ -38,13 +38,13 @@ :name "grassland" :ground "tall elephant grass" :char #\; :col ':yellow - :features '((acacia 20) (boulder 100))) ;TODO + :features '((acacia 40) (boulder 150))) ;TODO (new-biome 'forest :name "forest" :ground "leaf litter and small shrubs" :char #\. :col ':green - :features '((miombo 5) (acacia 10))) ;TODO + :features '((miombo 10) (acacia 15))) ;TODO (new-biome 'stream :name "stream" @@ -62,6 +62,6 @@ :name "hill" :ground "hard, stony soil" :char #\m :col ':white - :features '((boulder 7))) ;TODO + :features '((boulder 10))) ;TODO ;;TODO desert diff --git a/naledi.lisp b/naledi.lisp index c4cb5ba..54ad9ea 100644 --- a/naledi.lisp +++ b/naledi.lisp @@ -79,7 +79,7 @@ (progn (setf (.color-pair win) '(:white :black)) (add-char win #\X)) (if (patch-occupant p) - (progn ;FIXME throws an error + (progn (setf (.color-pair win) (list (.color (patch-occupant p)) :black)) diff --git a/biomes.lisp b/biomes.lisp index 2382252..293d199 100644 --- a/biomes.lisp +++ b/biomes.lisp @@ -38,13 +38,13 @@ :name "grassland" :ground "tall elephant grass" :char #\; :col ':yellow - :features '((acacia 20) (boulder 100))) ;TODO + :features '((acacia 40) (boulder 150))) ;TODO (new-biome 'forest :name "forest" :ground "leaf litter and small shrubs" :char #\. :col ':green - :features '((miombo 5) (acacia 10))) ;TODO + :features '((miombo 10) (acacia 15))) ;TODO (new-biome 'stream :name "stream" @@ -62,6 +62,6 @@ :name "hill" :ground "hard, stony soil" :char #\m :col ':white - :features '((boulder 7))) ;TODO + :features '((boulder 10))) ;TODO ;;TODO desert diff --git a/naledi.lisp b/naledi.lisp index c4cb5ba..54ad9ea 100644 --- a/naledi.lisp +++ b/naledi.lisp @@ -79,7 +79,7 @@ (progn (setf (.color-pair win) '(:white :black)) (add-char win #\X)) (if (patch-occupant p) - (progn ;FIXME throws an error + (progn (setf (.color-pair win) (list (.color (patch-occupant p)) :black)) diff --git a/world.lisp b/world.lisp index ad888c7..087cf5b 100644 --- a/world.lisp +++ b/world.lisp @@ -128,7 +128,7 @@ (let ((flist (biome-features (patch-biome patch)))) (dolist (f flist NIL) (when (chancep (second f)) - (return-from get-patch-feature (first f)))))) + (return-from get-patch-feature (get-item-type (first f))))))) (defun generate-biomes (size-factor world) ;;XXX The maps this produces don't look quite as expected, but for @@ -161,7 +161,8 @@ (if (probabilityp 75) dir (next-dir dir (random-elt '(T NIL))))) (patch (coord x0 y0 world) (neighbour patch dir world))) ((or (null patch) (eq (patch-biome patch) (get-biome 'stream)))) - (setf (patch-biome patch) (get-biome 'stream)))) + (setf (patch-biome patch) (get-biome 'stream)) + (setf (patch-occupant patch) NIL))) ;;TODO create animal herds