mirror of
https://github.com/open-goal/jak-project
synced 2026-05-28 08:25:56 -04:00
7ce58f709f
* some jp support to fix some errors in the original game * music fade toggle * recognize `process-new` macros!! * strip casts in this macro * rename macro * fix cast typecheck * update source 1 * detect kernel stack case * less boilerplate * `manipy-spawn` special case * pretty printer improvements * revert dumb thing from earlier * use shell detection on `send-event` * fix some events * remove unused argument * detect `static-attack-info` and add `CondNoElse` to shell detect * better `attack-info` detect * support `process-spawn` in multi-lets * detect `rand-float-gen` pt 1 * detect as return value * detect in `countdown` and `dotimes` * oops this wasnt working * fancier `send-event`s * clang * update source!! * fix tests * fine jeez * uh okay * fix some accidental regressions * fix more regressions * regression fixes * fix big bug... * extra safety!
4221 lines
172 KiB
Common Lisp
4221 lines
172 KiB
Common Lisp
;;-*-Lisp-*-
|
|
(in-package goal)
|
|
|
|
;; name: task-control.gc
|
|
;; name in dgo: task-control
|
|
;; dgos: GAME, ENGINE
|
|
|
|
;; DECOMP BEGINS
|
|
|
|
(defun-debug task-status->string ((arg0 task-status))
|
|
(enum->string task-status arg0)
|
|
)
|
|
|
|
(defmethod get-task task-cstage ((obj task-cstage))
|
|
"Get the game task for this cstage"
|
|
(-> obj game-task)
|
|
)
|
|
|
|
(defmethod get-status task-cstage ((obj task-cstage))
|
|
"Get the status for this cstage"
|
|
(-> obj status)
|
|
)
|
|
|
|
(defmethod closed? task-cstage ((obj task-cstage))
|
|
"Is the closed flag set?"
|
|
(declare (inline))
|
|
|
|
(logtest? (-> obj flags) (task-flags closed))
|
|
)
|
|
|
|
(defmethod closed-by-default? task-cstage ((obj task-cstage))
|
|
"Is the closed-by-default flag set?"
|
|
(declare (inline))
|
|
|
|
(logtest? (-> obj flags) (task-flags closed-by-default))
|
|
)
|
|
|
|
(defmethod task-available? task-cstage ((obj task-cstage) (arg0 task-control))
|
|
"Is this task available to be the current task?"
|
|
(cond
|
|
((closed? obj)
|
|
;; we're already closed.
|
|
#f
|
|
)
|
|
((>= (the-as int (-> (get-entity-task-perm *game-info* (-> obj game-task)) user-uint8 0))
|
|
(the-as int (-> obj status))
|
|
)
|
|
;; the permanent entity for this task has stored that we have progresssed past
|
|
;; our status. Remember that we are closed, and return #f.
|
|
(logior! (-> obj flags) (task-flags closed))
|
|
#f
|
|
)
|
|
((task-complete? *game-info* (-> obj game-task))
|
|
;; the game-info thinks that we have completed this task already.
|
|
;; remember we are closed and return #f
|
|
(logior! (-> obj flags) (task-flags closed))
|
|
#f
|
|
)
|
|
(else
|
|
;; we aren't closed. Check the condition.
|
|
((-> obj condition) arg0)
|
|
)
|
|
)
|
|
)
|
|
|
|
(defmethod close-task! task-cstage ((obj task-cstage))
|
|
"Close this task!"
|
|
(if (= (-> obj game-task) (game-task none))
|
|
;; invalid task.
|
|
(return (the-as int #f))
|
|
)
|
|
|
|
;; flag as closed
|
|
(logior! (-> obj flags) (task-flags closed))
|
|
;; do we have an entity to update?
|
|
(when (logtest? (-> obj flags) (task-flags has-entity))
|
|
|
|
;; look up the permanent storage for the entity associated with our task
|
|
(let ((v1-9 (get-entity-task-perm *game-info* (-> obj game-task))))
|
|
;; we set a bit to indicate that we are storing a non-default status
|
|
(logior! (-> v1-9 status) (entity-perm-status user-set-from-cstage))
|
|
;; and store the actual status (only increment)
|
|
(if (< (-> v1-9 user-uint8 0) (the-as uint (-> obj status)))
|
|
(set! (-> v1-9 user-int8 0) (the-as int (-> obj status)))
|
|
)
|
|
)
|
|
)
|
|
0
|
|
)
|
|
|
|
(defmethod open-task! task-cstage ((obj task-cstage))
|
|
"Clear the closed flag."
|
|
(logclear! (-> obj flags) (task-flags closed))
|
|
0
|
|
)
|
|
|
|
;; a task-control containing no cstages
|
|
(define *null-task-control* (new 'static 'task-control
|
|
:current-stage -1
|
|
:stage
|
|
(new 'static 'boxed-array :type task-cstage :length 0 :allocated-length 0)
|
|
)
|
|
)
|
|
|
|
(defmethod current-task task-control ((obj task-control))
|
|
"Get the current task that is being played. If unknown returns the none task"
|
|
(cond
|
|
((= obj *null-task-control*)
|
|
(format 0 "ERROR<GMJ>: current-task received *null-task-control*~%")
|
|
(game-task none)
|
|
)
|
|
((= (-> obj current-stage) -1)
|
|
;; state unknown
|
|
(game-task none)
|
|
)
|
|
(else
|
|
;; look up the current cstage's task
|
|
(-> obj stage (-> obj current-stage) game-task)
|
|
)
|
|
)
|
|
)
|
|
|
|
(defmethod current-status task-control ((obj task-control))
|
|
"Get the status of the cstage that is being played.
|
|
Will return invalid if not possible"
|
|
(cond
|
|
((= obj *null-task-control*)
|
|
(format 0 "ERROR<GMJ>: current-status received self of *null-task-control*~%~%")
|
|
(task-status invalid)
|
|
)
|
|
((= (-> obj current-stage) -1)
|
|
(task-status invalid)
|
|
)
|
|
(else
|
|
(-> obj stage (-> obj current-stage) status)
|
|
)
|
|
)
|
|
)
|
|
|
|
(defmethod close-current! task-control ((obj task-control))
|
|
(cond
|
|
((= obj *null-task-control*)
|
|
(format 0 "ERROR<GMJ>: close-current! received self of *null-task-control*~%~%")
|
|
)
|
|
((= (-> obj current-stage) -1)
|
|
;; no current stage, do nothing
|
|
)
|
|
(else
|
|
(close-task! (-> obj stage (-> obj current-stage)))
|
|
)
|
|
)
|
|
;; attempt to update the current task
|
|
(first-any obj #t)
|
|
)
|
|
|
|
(defmethod close-status! task-control ((obj task-control) (arg0 task-status))
|
|
"Close the cstage that:
|
|
- is associated with the task for the current cstage
|
|
- is for the given status
|
|
"
|
|
(let ((a0-2 (current-task obj)))
|
|
;; iterate over all cstages
|
|
(dotimes (v1-1 (-> obj stage length))
|
|
(when (and (= a0-2 (-> obj stage v1-1 game-task)) (= arg0 (-> obj stage v1-1 status)))
|
|
;; found it! close and update current stage
|
|
(close-task! (-> obj stage v1-1))
|
|
(return (first-any obj #t))
|
|
)
|
|
)
|
|
;; nope, complain.
|
|
(format 0 "ERROR<GMJ>: close-status! received non-existent task-cstage(~S ~S)--returning #t.~%"
|
|
(game-task->string a0-2)
|
|
(task-status->string arg0)
|
|
)
|
|
)
|
|
(game-task none)
|
|
)
|
|
|
|
(defmethod first-any task-control ((obj task-control) (arg0 symbol))
|
|
"Iterate through tasks, finding an unclosed one to mark as current
|
|
If arg0 is #t, warn on receiving null-task-control"
|
|
|
|
;; check for null
|
|
(when (= obj *null-task-control*)
|
|
(if arg0
|
|
(format 0 "ERROR<GMJ>: first-any received self of *null-task-control*~%~%")
|
|
)
|
|
(return (game-task none))
|
|
)
|
|
|
|
;; iterate through all tasks
|
|
(dotimes (s5-0 (-> obj stage length))
|
|
(when (task-available? (-> obj stage s5-0) obj)
|
|
;; found an available task, set it.
|
|
(set! (-> obj current-stage) s5-0)
|
|
(return (-> obj stage s5-0 game-task))
|
|
)
|
|
)
|
|
;; none available.
|
|
(set! (-> obj current-stage) -1)
|
|
(game-task none)
|
|
)
|
|
|
|
(defmethod reset! task-control ((obj task-control) (reset-mode symbol) (arg1 symbol))
|
|
"Reset a task control. arg1 to warn on null, reset-mode 'game for a game reset"
|
|
|
|
(when (= obj *null-task-control*)
|
|
(if arg1
|
|
(format 0 "ERROR<GMJ>: reset! received self of *null-task-control*~%~%")
|
|
)
|
|
(return 0)
|
|
)
|
|
(dotimes (s4-0 (-> obj stage length))
|
|
;; do we open the task?
|
|
(if (or (= reset-mode 'game) ;; open every task on game reset
|
|
(not (closed-by-default? (-> obj stage s4-0))) ;; todo this flag?
|
|
)
|
|
(open-task! (-> obj stage s4-0))
|
|
)
|
|
|
|
;; call close-task! to send closed stuff to entities
|
|
(if (closed? (-> obj stage s4-0))
|
|
(close-task! (-> obj stage s4-0))
|
|
)
|
|
)
|
|
(the-as int #f)
|
|
)
|
|
|
|
|
|
(defmethod closed? task-control ((obj task-control) (arg0 game-task) (arg1 task-status))
|
|
"Is the given task/status cstage closed?"
|
|
|
|
(when (= obj *null-task-control*)
|
|
(format 0 "ERROR<GMJ>: closed? received self of *null-task-control*~%~%")
|
|
(return #f)
|
|
)
|
|
;; iterate all and check for match
|
|
(dotimes (v1-3 (-> obj stage length))
|
|
(when (and (= arg0 (-> obj stage v1-3 game-task))
|
|
(= arg1 (-> obj stage v1-3 status))
|
|
)
|
|
(return (closed? (-> obj stage v1-3)))
|
|
)
|
|
)
|
|
(format 0 "ERROR<GMJ>: closed? received non-existent task-cstage(~S ~S)--returning #t.~%"
|
|
(game-task->string arg0)
|
|
(task-status->string arg1)
|
|
)
|
|
#t
|
|
)
|
|
|
|
(defmethod exists? task-control ((obj task-control) (arg0 game-task) (arg1 task-status))
|
|
"Is there a cstage for the given task and status?"
|
|
(when (= obj *null-task-control*)
|
|
(format 0 "ERROR<GMJ>: exists? received self of *null-task-control*~%~%")
|
|
(return #f)
|
|
)
|
|
(dotimes (v1-3 (-> obj stage length))
|
|
(if (and (= arg0 (-> obj stage v1-3 game-task)) (= arg1 (-> obj stage v1-3 status)))
|
|
(return #t)
|
|
)
|
|
)
|
|
#f
|
|
)
|
|
|
|
(defmethod get-reminder task-control ((obj task-control) (arg0 int))
|
|
"Get the arg0th reminder. "
|
|
(when (= obj *null-task-control*)
|
|
(format 0 "ERROR<GMJ>: get-reminder received self of *null-task-control*~%~%")
|
|
(return 0)
|
|
)
|
|
(let ((v1-4 (get-entity-task-perm *game-info* (-> obj stage 0 game-task))))
|
|
(the-as int (-> v1-4 user-uint8 (+ arg0 1)))
|
|
)
|
|
)
|
|
|
|
(defmethod save-reminder task-control ((obj task-control) (arg0 int) (arg1 int))
|
|
"Set the arg1th reminder to arg0"
|
|
(when (= obj *null-task-control*)
|
|
(format 0 "ERROR<GMJ>: save-reminder received self of *null-task-control*~%~%")
|
|
(return 0)
|
|
)
|
|
(let ((v1-4 (get-entity-task-perm *game-info* (-> obj stage 0 game-task))))
|
|
;; remember that we have a change.
|
|
(logior! (-> v1-4 status) (entity-perm-status user-set-from-cstage))
|
|
(set! (-> v1-4 user-int8 (+ arg1 1)) arg0)
|
|
)
|
|
0
|
|
)
|
|
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
;; Task Control Definitions
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
|
|
;; tasks for assistant (note: keira)
|
|
(define *assistant-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-eggtop)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-eggtop)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-bike)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(or (closed? arg0 (game-task jungle-eggtop) (task-status need-reminder))
|
|
(and (closed? arg0 (game-task jungle-eggtop) (task-status need-introduction))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell))))
|
|
(+ (get-reminder arg0 1) 3)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-bike)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(or (closed? arg0 (game-task jungle-eggtop) (task-status need-reminder))
|
|
(and (closed? arg0 (game-task jungle-eggtop) (task-status need-introduction))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell))))
|
|
(+ (get-reminder arg0 1) 3)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-eggtop)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-bike)
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-bike)
|
|
:status (task-status need-reminder-a)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-bike)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:status (task-status unknown)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(task-closed? (game-task village4-button) (task-status need-reward-speech))
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-eggtop)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-bike)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
(define *assistant-village2-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-levitator)
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-levitator)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-levitator)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-levitator)
|
|
:status (task-status need-reminder-a)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-levitator)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell)))) 45)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-room)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-room)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-flutflut)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(and (task-closed? (game-task beach-flutflut) (task-status need-reminder))
|
|
(or (closed? arg0 (game-task sunken-room) (task-status need-reminder))
|
|
(and (closed? arg0 (game-task sunken-room) (task-status need-introduction))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell))))
|
|
(+ (get-reminder arg0 1) 3)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-flutflut)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(and (task-closed? (game-task beach-flutflut) (task-status need-reminder))
|
|
(or (closed? arg0 (game-task sunken-room) (task-status need-reminder))
|
|
(and (closed? arg0 (game-task sunken-room) (task-status need-introduction))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell))))
|
|
(+ (get-reminder arg0 1) 3)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-robbers)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(if (task-closed? (game-task beach-flutflut) (task-status need-reminder))
|
|
(or (closed? arg0 (game-task swamp-flutflut) (task-status need-reminder))
|
|
(and (closed? arg0 (game-task swamp-flutflut) (task-status need-introduction))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell))))
|
|
(+ (get-reminder arg0 1) 3)
|
|
)
|
|
)
|
|
)
|
|
(or (closed? arg0 (game-task sunken-room) (task-status need-reminder))
|
|
(and (closed? arg0 (game-task sunken-room) (task-status need-introduction))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell))))
|
|
(+ (get-reminder arg0 1) 3)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-robbers)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(if (task-closed? (game-task beach-flutflut) (task-status need-reminder))
|
|
(or (closed? arg0 (game-task swamp-flutflut) (task-status need-reminder))
|
|
(and (closed? arg0 (game-task swamp-flutflut) (task-status need-introduction))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell))))
|
|
(+ (get-reminder arg0 1) 3)
|
|
)
|
|
)
|
|
)
|
|
(or (closed? arg0 (game-task sunken-room) (task-status need-reminder))
|
|
(and (closed? arg0 (game-task sunken-room) (task-status need-introduction))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell))))
|
|
(+ (get-reminder arg0 1) 3)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-room)
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-room)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-flutflut)
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(task-closed? (game-task beach-flutflut) (task-status need-reminder))
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-flutflut)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(task-closed? (game-task beach-flutflut) (task-status need-reminder))
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-robbers)
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-robbers)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-room)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-robbers)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-flutflut)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-levitator)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
(define *gambler-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-race)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-race)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-gambler-money)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-gambler-money)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-race)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(closed? arg0 (game-task rolling-race) (task-status need-reward-speech))
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-gambler-money)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(closed? arg0 (game-task village2-gambler-money) (task-status need-reward-speech))
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-race)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(closed? arg0 (game-task rolling-race) (task-status need-reminder))
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-gambler-money)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(the-as
|
|
symbol
|
|
(and *target*
|
|
(>= (the-as float (send-event *target* 'query 'pickup (pickup-type money))) (-> *GAME-bank* money-task-inc))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-race)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(closed? arg0 (game-task rolling-race) (task-status need-introduction))
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-gambler-money)
|
|
:status (task-status need-reminder)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(closed? arg0 (game-task rolling-race) (task-status need-introduction))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
(define *geologist-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-moles)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-moles)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-geologist-money)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-geologist-money)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-moles)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(closed? arg0 (game-task rolling-moles) (task-status need-reward-speech))
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-geologist-money)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(closed? arg0 (game-task village2-geologist-money) (task-status need-reward-speech))
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-moles)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(closed? arg0 (game-task rolling-moles) (task-status need-reminder))
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-geologist-money)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(the-as
|
|
symbol
|
|
(and *target*
|
|
(>= (the-as float (send-event *target* 'query 'pickup (pickup-type money))) (-> *GAME-bank* money-task-inc))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-moles)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(closed? arg0 (game-task rolling-moles) (task-status need-introduction))
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-geologist-money)
|
|
:status (task-status need-reminder)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(closed? arg0 (game-task rolling-moles) (task-status need-introduction))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
(define *mayor-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-lurkerm)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-lurkerm)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-mayor-money)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-mayor-money)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-lurkerm)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(closed? arg0 (game-task jungle-lurkerm) (task-status need-reward-speech))
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-mayor-money)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(closed? arg0 (game-task village1-mayor-money) (task-status need-reward-speech))
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-lurkerm)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(closed? arg0 (game-task jungle-lurkerm) (task-status need-reminder))
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-mayor-money)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(the-as
|
|
symbol
|
|
(and *target*
|
|
(>= (the-as float (send-event *target* 'query 'pickup (pickup-type money))) (-> *GAME-bank* money-task-inc))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-lurkerm)
|
|
:status (task-status need-reminder-a)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(closed? arg0 (game-task jungle-lurkerm) (task-status need-introduction))
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-lurkerm)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(closed? arg0 (game-task jungle-lurkerm) (task-status need-introduction))
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-mayor-money)
|
|
:status (task-status need-reminder)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(closed? arg0 (game-task jungle-lurkerm) (task-status need-introduction))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
(define *sage-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task intro)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task intro)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task intro)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-ecorocks)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-ecorocks)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-cannon)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(or (closed? arg0 (game-task beach-ecorocks) (task-status need-reminder))
|
|
(and (closed? arg0 (game-task beach-ecorocks) (task-status need-introduction))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell))))
|
|
(+ (get-reminder arg0 1) 3)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-cannon)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(or (closed? arg0 (game-task beach-ecorocks) (task-status need-reminder))
|
|
(and (closed? arg0 (game-task beach-ecorocks) (task-status need-introduction))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell))))
|
|
(+ (get-reminder arg0 1) 3)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-ecorocks)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-cannon)
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-cannon)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:status (task-status unknown)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(task-closed? (game-task village4-button) (task-status need-reward-speech))
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-ecorocks)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-cannon)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
(define *sage-bluehut-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-plants)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-plants)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-arm)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(or (closed? arg0 (game-task rolling-plants) (task-status need-reminder))
|
|
(and (closed? arg0 (game-task rolling-plants) (task-status need-introduction))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell))))
|
|
(+ (get-reminder arg0 1) 3)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-arm)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(or (closed? arg0 (game-task rolling-plants) (task-status need-reminder))
|
|
(and (closed? arg0 (game-task rolling-plants) (task-status need-introduction))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell))))
|
|
(+ (get-reminder arg0 1) 3)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-plants)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-arm)
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-arm)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-plants)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-arm)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
(define *oracle-village1-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-oracle-money1)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-oracle-money1)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-oracle-money2)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-oracle-money2)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-oracle-money1)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(the-as
|
|
symbol
|
|
(and *target*
|
|
(>= (the-as float (send-event *target* 'query 'pickup (pickup-type money))) (-> *GAME-bank* money-oracle-inc))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-oracle-money1)
|
|
:status (task-status need-reminder)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-oracle-money1)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-oracle-money2)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(the-as
|
|
symbol
|
|
(and *target*
|
|
(>= (the-as float (send-event *target* 'query 'pickup (pickup-type money))) (-> *GAME-bank* money-oracle-inc))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-oracle-money2)
|
|
:status (task-status need-reminder)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-oracle-money2)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
(define *oracle-village2-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-oracle-money1)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-oracle-money1)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-oracle-money2)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-oracle-money2)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-oracle-money1)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(the-as
|
|
symbol
|
|
(and *target*
|
|
(>= (the-as float (send-event *target* 'query 'pickup (pickup-type money))) (-> *GAME-bank* money-oracle-inc))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-oracle-money1)
|
|
:status (task-status need-reminder)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-oracle-money1)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-oracle-money2)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(the-as
|
|
symbol
|
|
(and *target*
|
|
(>= (the-as float (send-event *target* 'query 'pickup (pickup-type money))) (-> *GAME-bank* money-oracle-inc))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-oracle-money2)
|
|
:status (task-status need-reminder)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-oracle-money2)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
(define *oracle-village3-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-oracle-money1)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-oracle-money1)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-oracle-money2)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-oracle-money2)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-oracle-money1)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(the-as
|
|
symbol
|
|
(and *target*
|
|
(>= (the-as float (send-event *target* 'query 'pickup (pickup-type money))) (-> *GAME-bank* money-oracle-inc))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-oracle-money1)
|
|
:status (task-status need-reminder)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-oracle-money1)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-oracle-money2)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(the-as
|
|
symbol
|
|
(and *target*
|
|
(>= (the-as float (send-event *target* 'query 'pickup (pickup-type money))) (-> *GAME-bank* money-oracle-inc))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-oracle-money2)
|
|
:status (task-status need-reminder)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-oracle-money2)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
(define *miners-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money1)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money1)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money2)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money2)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money3)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money3)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money4)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money4)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money1)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(the-as
|
|
symbol
|
|
(and *target*
|
|
(>= (the-as float (send-event *target* 'query 'pickup (pickup-type money))) (-> *GAME-bank* money-task-inc))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money2)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(the-as
|
|
symbol
|
|
(and *target*
|
|
(>= (the-as float (send-event *target* 'query 'pickup (pickup-type money))) (-> *GAME-bank* money-task-inc))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money3)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(the-as
|
|
symbol
|
|
(and *target*
|
|
(>= (the-as float (send-event *target* 'query 'pickup (pickup-type money))) (-> *GAME-bank* money-task-inc))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money4)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(the-as
|
|
symbol
|
|
(and *target*
|
|
(>= (the-as float (send-event *target* 'query 'pickup (pickup-type money))) (-> *GAME-bank* money-task-inc))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-gnawers)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(or (closed? arg0 (game-task village3-miner-money4) (task-status need-reminder))
|
|
(and (closed? arg0 (game-task village3-miner-money4) (task-status need-introduction))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell))))
|
|
(+ (get-reminder arg0 1) 3)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-gnawers)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(or (closed? arg0 (game-task village3-miner-money4) (task-status need-reminder))
|
|
(and (closed? arg0 (game-task village3-miner-money4) (task-status need-introduction))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell))))
|
|
(+ (get-reminder arg0 1) 3)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-eggtop)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(or (closed? arg0 (game-task cave-gnawers) (task-status need-reminder))
|
|
(and (closed? arg0 (game-task cave-gnawers) (task-status need-introduction))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell))))
|
|
(+ (get-reminder arg0 1) 3)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-eggtop)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(or (closed? arg0 (game-task cave-gnawers) (task-status need-reminder))
|
|
(and (closed? arg0 (game-task cave-gnawers) (task-status need-introduction))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell))))
|
|
(+ (get-reminder arg0 1) 3)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money1)
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money1)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money2)
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money2)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money3)
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money3)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money4)
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money4)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-gnawers)
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-gnawers)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-eggtop)
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-eggtop)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money1)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money2)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money3)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-miner-money4)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-gnawers)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-eggtop)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
(define *sage-villagec-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-button)
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-button)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-button)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-dark-crystals)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-dark-crystals)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-ram)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(or (closed? arg0 (game-task cave-dark-crystals) (task-status need-reminder))
|
|
(and (closed? arg0 (game-task cave-dark-crystals) (task-status need-introduction))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell))))
|
|
(+ (get-reminder arg0 1) 3)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-ram)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda ((arg0 task-control) (arg1 task-control))
|
|
(or (closed? arg0 (game-task cave-dark-crystals) (task-status need-reminder))
|
|
(and (closed? arg0 (game-task cave-dark-crystals) (task-status need-introduction))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell))))
|
|
(+ (get-reminder arg0 1) 3)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-dark-crystals)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-ram)
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-ram)
|
|
:status (task-status need-reminder-a)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-ram)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-dark-crystals)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-ram)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
(define *citb-greensage-tasks* (new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task citadel-sage-green)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task citadel-sage-green)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
(define *citb-bluesage-tasks* (new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task citadel-sage-blue)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task citadel-sage-blue)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
(define *citb-redsage-tasks* (new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task citadel-sage-red)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task citadel-sage-red)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
(define *citb-yellowsage-tasks* (new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task citadel-sage-yellow)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task citadel-sage-yellow)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
(define *task-controls*
|
|
(the-as (array task-control)
|
|
(new 'static 'boxed-array :type basic
|
|
'*null-task-control*
|
|
'*null-task-control*
|
|
'*assistant-tasks*
|
|
'*mayor-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-tower)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-tower)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-tower)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-tower)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-fishgame)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-fishgame)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-fishgame)
|
|
:status (task-status need-reminder-a)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-fishgame)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-fishgame)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-fishgame)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:status (task-status need-reminder)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-plant)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-plant)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-plant)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-plant)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-buzzer)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-buzzer)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-buzzer)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-buzzer)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-canyon-end)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-canyon-end)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-canyon-end)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-canyon-end)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-temple-door)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-temple-door)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-temple-door)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task jungle-temple-door)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-yakow)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-yakow)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-yakow)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-yakow)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-yakow)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
'*mayor-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-uncle-money)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-uncle-money)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-uncle-money)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(the-as
|
|
symbol
|
|
(and *target*
|
|
(>= (the-as float (send-event *target* 'query 'pickup (pickup-type money))) (-> *GAME-bank* money-task-inc))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-uncle-money)
|
|
:status (task-status need-reminder)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-uncle-money)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
'*oracle-village1-tasks*
|
|
'*oracle-village1-tasks*
|
|
'*sage-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-pelican)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-pelican)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-pelican)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-pelican)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-flutflut)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-flutflut)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-flutflut)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-flutflut)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-flutflut)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-seagull)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-seagull)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-seagull)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-seagull)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-cannon)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-cannon)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-cannon)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-cannon)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-buzzer)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-buzzer)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-buzzer)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-buzzer)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-gimmie)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-gimmie)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-gimmie)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-gimmie)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-sentinel)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-sentinel)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-sentinel)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task beach-sentinel)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-muse)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-muse)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-muse)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-muse)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-muse)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-boat)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-boat)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-boat)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-boat)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-warehouse)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-warehouse)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-warehouse)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-warehouse)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
'*sage-tasks*
|
|
'*assistant-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-buzzer)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-buzzer)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-buzzer)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-buzzer)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-bike-jump)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-bike-jump)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-bike-jump)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-bike-jump)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-eco-challenge)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-eco-challenge)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-eco-challenge)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task misty-eco-challenge)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
'*gambler-tasks*
|
|
'*geologist-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-warrior-money)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(and (not (task-closed? (game-task ogre-boss) (task-status need-reminder)))
|
|
(not (task-closed? (game-task village2-levitator) (task-status need-reward-speech)))
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-warrior-money)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(and (not (task-closed? (game-task ogre-boss) (task-status need-reminder)))
|
|
(not (task-closed? (game-task village2-levitator) (task-status need-reward-speech)))
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-warrior-money)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(the-as
|
|
symbol
|
|
(and *target*
|
|
(>= (the-as float (send-event *target* 'query 'pickup (pickup-type money))) (-> *GAME-bank* money-task-inc))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-warrior-money)
|
|
:status (task-status need-reminder)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-warrior-money)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
'*oracle-village2-tasks*
|
|
'*oracle-village2-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-billy)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-billy)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-billy)
|
|
:status (task-status need-reminder-a)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-billy)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-billy)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-billy)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
'*assistant-village2-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-battle)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-battle)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-battle)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-battle)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-tether-1)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-tether-1)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-tether-1)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-tether-1)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-tether-2)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-tether-2)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-tether-2)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-tether-2)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-tether-3)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-tether-3)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-tether-3)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-tether-3)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-tether-4)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-tether-4)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-tether-4)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-tether-4)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-buzzer)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-buzzer)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-buzzer)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task swamp-buzzer)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-platforms)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-platforms)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-platforms)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-platforms)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-pipe)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-pipe)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-pipe)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-pipe)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-slide)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-slide)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-slide)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-slide)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
'*assistant-village2-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-sharks)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-sharks)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-sharks)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-sharks)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-buzzer)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-buzzer)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-buzzer)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-buzzer)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-top-of-helix)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-top-of-helix)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-top-of-helix)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-top-of-helix)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-spinning-room)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-spinning-room)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-spinning-room)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task sunken-spinning-room)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
'*gambler-tasks*
|
|
'*assistant-village2-tasks*
|
|
'*geologist-tasks*
|
|
'*sage-bluehut-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-lake)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-lake)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-lake)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-lake)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-buzzer)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-buzzer)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-buzzer)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-buzzer)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-ring-chase-1)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-ring-chase-1)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-ring-chase-1)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-ring-chase-1)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-ring-chase-2)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-ring-chase-2)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-ring-chase-2)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task rolling-ring-chase-2)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
'*miners-tasks*
|
|
'*sage-villagec-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-fort)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-fort)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-fort)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-fort)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-ball)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-ball)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-ball)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-ball)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-bunnies)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-bunnies)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-bunnies)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-bunnies)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-buzzer)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-buzzer)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-buzzer)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-buzzer)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-bumpers)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-bumpers)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-bumpers)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-bumpers)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-cage)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-cage)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-cage)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task snow-cage)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task firecanyon-buzzer)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task firecanyon-buzzer)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task firecanyon-buzzer)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task firecanyon-buzzer)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task firecanyon-end)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task firecanyon-end)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task firecanyon-end)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task firecanyon-end)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
'*citb-greensage-tasks*
|
|
'*citb-bluesage-tasks*
|
|
'*citb-redsage-tasks*
|
|
'*citb-yellowsage-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-extra1)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-extra1)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-extra1)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-extra1)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-buzzer)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-buzzer)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-buzzer)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village1-buzzer)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-buzzer)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-buzzer)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-buzzer)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village2-buzzer)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-buzzer)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-buzzer)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-buzzer)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village3-buzzer)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
'*miners-tasks*
|
|
'*sage-villagec-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-dark-climb)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-dark-climb)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-dark-climb)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-dark-climb)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-robot-climb)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-robot-climb)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-robot-climb)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-robot-climb)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-swing-poles)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-swing-poles)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-swing-poles)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-swing-poles)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-spider-tunnel)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-spider-tunnel)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-spider-tunnel)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-spider-tunnel)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-platforms)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-platforms)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-platforms)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-platforms)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-buzzer)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-buzzer)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-buzzer)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task cave-buzzer)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task ogre-boss)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task ogre-boss)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task ogre-boss)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task ogre-boss)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task ogre-end)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task ogre-end)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task ogre-end)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task ogre-end)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task ogre-buzzer)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task ogre-buzzer)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task ogre-buzzer)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task ogre-buzzer)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task lavatube-end)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task lavatube-end)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task lavatube-end)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task lavatube-end)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task lavatube-buzzer)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task lavatube-buzzer)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task lavatube-buzzer)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task lavatube-buzzer)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task citadel-buzzer)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task citadel-buzzer)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task citadel-buzzer)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task citadel-buzzer)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task training-gimmie)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task training-gimmie)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task training-gimmie)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task training-gimmie)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task training-door)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task training-door)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task training-door)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task training-door)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task training-climb)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task training-climb)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task training-climb)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task training-climb)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task training-buzzer)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task training-buzzer)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task training-buzzer)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task training-buzzer)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
'*miners-tasks*
|
|
'*miners-tasks*
|
|
'*miners-tasks*
|
|
'*miners-tasks*
|
|
'*oracle-village3-tasks*
|
|
'*oracle-village3-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task firecanyon-assistant)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell)))) 20)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task firecanyon-assistant)
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
'*assistant-village2-tasks*
|
|
'*sage-bluehut-tasks*
|
|
'*sage-villagec-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task red-eggtop)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task red-eggtop)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task red-eggtop)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task red-eggtop)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task lavatube-balls)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task lavatube-balls)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task lavatube-balls)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task lavatube-balls)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task lavatube-start)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(>= (the int (the float (send-event *target* 'query 'pickup (pickup-type fuel-cell)))) 72)
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task lavatube-start)
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
'*sage-tasks*
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task ogre-secret)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task ogre-secret)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task ogre-secret)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task ogre-secret)
|
|
:status (task-status need-resolution)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village4-button)
|
|
:status (task-status unknown)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village4-button)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task village4-button)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task finalboss-movies)
|
|
:status (task-status unknown)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task finalboss-movies)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task finalboss-movies)
|
|
:status (task-status need-reminder-a)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task finalboss-movies)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task finalboss-movies)
|
|
:status (task-status need-reward-speech)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task plunger-lurker-hit)
|
|
:status (task-status unknown)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task plunger-lurker-hit)
|
|
:status (task-status need-hint)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task leaving-misty)
|
|
:status (task-status need-introduction)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:game-task (game-task leaving-misty)
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity closed-by-default)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
(new 'static 'task-control
|
|
:current-stage -1
|
|
:stage (new 'static 'boxed-array :type task-cstage
|
|
(new 'static 'task-cstage
|
|
:status (task-status unknown)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable
|
|
((arg0 task-control))
|
|
(task-closed? (game-task village4-button) (task-status need-reward-speech))
|
|
)
|
|
)
|
|
(new 'static 'task-cstage
|
|
:status (task-status need-reminder)
|
|
:flags (task-flags has-entity)
|
|
:condition (lambda :behavior process-taskable ((arg0 task-control)) #t)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
(defun task-control-reset ((arg0 symbol))
|
|
"Reset all task controls and set their current stage"
|
|
(let ((s5-0 *task-controls*))
|
|
(countdown (s4-0 (-> s5-0 length))
|
|
(reset! (-> s5-0 s4-0) arg0 #f)
|
|
(first-any (-> s5-0 s4-0) #f)
|
|
)
|
|
)
|
|
0
|
|
(none)
|
|
)
|
|
|
|
(defun get-task-control ((arg0 game-task))
|
|
"Get the task control for a given game-task"
|
|
(cond
|
|
((or (>= (the-as uint 1) (the-as uint arg0)) (>= (the-as uint arg0) (the-as uint 116)))
|
|
;; invalid game task
|
|
(format 0 "ERROR<GMJ>: get-task-control received invalid task ~D/~S~%" arg0 (game-task->string arg0))
|
|
*null-task-control*
|
|
)
|
|
(else
|
|
;; otherwise look up in table
|
|
(-> *task-controls* arg0)
|
|
)
|
|
)
|
|
)
|
|
|
|
(defun get-task-status ((arg0 game-task))
|
|
"Get the staus of a game-task"
|
|
(let ((gp-0 (get-task-control arg0)))
|
|
(when gp-0
|
|
(dotimes (s5-0 (-> gp-0 stage length))
|
|
(when (and (= arg0 (-> gp-0 stage s5-0 game-task)) (task-available? (-> gp-0 stage s5-0) gp-0))
|
|
(first-any gp-0 #t)
|
|
(return (the-as task-status (-> gp-0 stage s5-0 status)))
|
|
)
|
|
)
|
|
)
|
|
(first-any gp-0 #t)
|
|
)
|
|
(task-status invalid)
|
|
)
|
|
|
|
(defun close-specific-task! ((arg0 game-task) (arg1 task-status))
|
|
"Close a cstage for a game-task"
|
|
(let ((gp-0 (get-task-control arg0)))
|
|
(when gp-0
|
|
(dotimes (v1-1 (-> gp-0 stage length))
|
|
(when (and (= arg0 (-> gp-0 stage v1-1 game-task)) (= arg1 (-> gp-0 stage v1-1 status)))
|
|
(close-task! (-> gp-0 stage v1-1))
|
|
(return (first-any gp-0 #t))
|
|
)
|
|
)
|
|
(format
|
|
0
|
|
"ERROR<GMJ>: close-specific! received non-existent task-cstage(~S ~S)--returning #t.~%"
|
|
(game-task->string arg0)
|
|
(task-status->string arg1)
|
|
)
|
|
)
|
|
)
|
|
(game-task none)
|
|
)
|
|
|
|
(defun open-specific-task! ((arg0 game-task) (arg1 task-status))
|
|
"Open a cstage for a game-task"
|
|
(let ((gp-0 (get-task-control arg0)))
|
|
(when gp-0
|
|
(dotimes (v1-1 (-> gp-0 stage length))
|
|
(when (and (= arg0 (-> gp-0 stage v1-1 game-task)) (= arg1 (-> gp-0 stage v1-1 status)))
|
|
(open-task! (-> gp-0 stage v1-1))
|
|
(return (first-any gp-0 #t))
|
|
)
|
|
)
|
|
(format
|
|
0
|
|
"ERROR<GMJ>: open-specific! received non-existent task-cstage(~S ~S)--returning #t.~%"
|
|
(game-task->string arg0)
|
|
(task-status->string arg1)
|
|
)
|
|
)
|
|
)
|
|
(game-task none)
|
|
)
|
|
|
|
(defun task-closed? ((arg0 game-task) (arg1 task-status))
|
|
(closed? (get-task-control arg0) arg0 arg1)
|
|
)
|
|
|
|
(defun task-exists? ((arg0 game-task) (arg1 task-status))
|
|
(exists? (get-task-control arg0) arg0 arg1)
|
|
)
|
|
|
|
(defun task-known? ((arg0 game-task))
|
|
"Is there a cstage with a non-unknown status?"
|
|
(case (get-task-status arg0)
|
|
(((task-status need-reward-speech)
|
|
(task-status need-introduction)
|
|
(task-status need-reminder)
|
|
(task-status need-reminder-a)
|
|
(task-status need-resolution)
|
|
(task-status invalid)
|
|
)
|
|
#t
|
|
)
|
|
(else
|
|
#f
|
|
)
|
|
)
|
|
)
|
|
|
|
(defun sages-kidnapped? ()
|
|
(task-closed? (game-task village4-button) (task-status need-reward-speech))
|
|
)
|
|
|
|
|
|
;; replace symbols in task-controls with their value.
|
|
(let ((gp-0 *task-controls*))
|
|
(countdown (s5-0 (-> gp-0 length))
|
|
(when (and (-> gp-0 s5-0) (= (-> gp-0 s5-0 type) symbol))
|
|
;; found a symbol
|
|
(let ((s4-0 (-> (the-as symbol (-> gp-0 s5-0)) value)))
|
|
(cond
|
|
((and (nonzero? s4-0) (type-type? (rtype-of s4-0) task-control))
|
|
;; symbol holds a task-control, replace it
|
|
(set! (-> gp-0 s5-0) (the-as task-control s4-0))
|
|
)
|
|
(else
|
|
;; invalid symbol
|
|
(format 0 "ERROR<GMJ>: value of symbol ~A in task-controls is not a task-control~%")
|
|
(set! (-> gp-0 s5-0) (the-as task-control '*null-task-control*))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
(task-control-reset 'game)
|
|
|
|
|
|
|
|
|