|
|
@ -1640,7 +1640,7 @@
|
|
|
|
(print "ai attempting to buy")
|
|
|
|
(print "ai attempting to buy")
|
|
|
|
(let* ((net-worth (player-net-worth player))
|
|
|
|
(let* ((net-worth (player-net-worth player))
|
|
|
|
(pct-complete (pct-complete net-worth game))
|
|
|
|
(pct-complete (pct-complete net-worth game))
|
|
|
|
(room (if (< pct-complete 0.7)
|
|
|
|
(room (if (< pct-complete 0.55)
|
|
|
|
1000000 ;; basically infinite
|
|
|
|
1000000 ;; basically infinite
|
|
|
|
(+ (- (game-setting 'max-debt game) (player-debt player)) (round-down-1000 (player-cash player)))))
|
|
|
|
(+ (- (game-setting 'max-debt game) (player-debt player)) (round-down-1000 (player-cash player)))))
|
|
|
|
(crops (map (lambda (card)
|
|
|
|
(crops (map (lambda (card)
|
|
|
@ -1648,8 +1648,12 @@
|
|
|
|
(player-otbs player))))
|
|
|
|
(player-otbs player))))
|
|
|
|
(print (conc "room: " room))
|
|
|
|
(print (conc "room: " room))
|
|
|
|
(print (conc "crops: " crops))
|
|
|
|
(print (conc "crops: " crops))
|
|
|
|
|
|
|
|
(print (conc "pct complete: " pct-complete))
|
|
|
|
(let ((to-buy
|
|
|
|
(let ((to-buy
|
|
|
|
(cond ((and (member 'cows crops) (>= room 5000))
|
|
|
|
(cond ((and (member 'cows crops) (>= room 5000)
|
|
|
|
|
|
|
|
(< (- (player-asset 'cows player)
|
|
|
|
|
|
|
|
(fold + 0 (map cdr (player-ridges player))))
|
|
|
|
|
|
|
|
20))
|
|
|
|
'(cows 10 5000))
|
|
|
|
'(cows 10 5000))
|
|
|
|
((and (member 'fruit crops) (>= room 25000))
|
|
|
|
((and (member 'fruit crops) (>= room 25000))
|
|
|
|
'(fruit 5 25000))
|
|
|
|
'(fruit 5 25000))
|
|
|
@ -1724,7 +1728,8 @@
|
|
|
|
(not (player-processing-turn player)))
|
|
|
|
(not (player-processing-turn player)))
|
|
|
|
(begin (set! (player-processing-turn player) #t)
|
|
|
|
(begin (set! (player-processing-turn player) #t)
|
|
|
|
;; time to buy
|
|
|
|
;; time to buy
|
|
|
|
(when (and (>= (player-space player) 9) (<= (player-space player) 14))
|
|
|
|
(when (and (>= (player-space player) 9) (<= (player-space player) 14)
|
|
|
|
|
|
|
|
(< (player-debt player) 125000))
|
|
|
|
(let loop ((cont (ai-buy player game)))
|
|
|
|
(let loop ((cont (ai-buy player game)))
|
|
|
|
(when cont (loop (ai-buy player game)))))
|
|
|
|
(when cont (loop (ai-buy player game)))))
|
|
|
|
(let ((res (process-message player game "roll" '((type . "roll")))))
|
|
|
|
(let ((res (process-message player game "roll" '((type . "roll")))))
|
|
|
|