;;-*-Lisp-*- (in-package goal) ;; definition of type process-focusable (deftype process-focusable (process-drawable) ((root-override collide-shape :offset 128) (focus-status focus-status :offset-assert 200) ) :heap-base #x50 :method-count-assert 27 :size-assert #xcc :flag-assert #x1b005000cc (:methods (get-trans (_type_ int) vector 20) (get-quat (_type_ int) quaternion 21) (get-transv (_type_) vector 22) (time-to-apex-or-ground (_type_ int) int 23) (get-water-height (_type_) meters 24) (get-notice-time (_type_) time-frame 25) (get-inv-mass (_type_) float 26) ) ) ;; definition for method 3 of type process-focusable (defmethod inspect process-focusable ((obj process-focusable)) (when (not obj) (set! obj obj) (goto cfg-4) ) (let ((t9-0 (method-of-type process-drawable inspect))) (t9-0 obj) ) (format #t "~2Tfocus-status: ~D~%" (-> obj focus-status)) (label cfg-4) obj ) ;; definition for method 20 of type process-focusable ;; WARN: Return type mismatch structure vs vector. (defmethod get-trans process-focusable ((obj process-focusable) (arg0 int)) "@returns the `trans` [[vector]] from the process's `root` (typically either a [[trsqv]] or a [[collide-shape]])" (let ((gp-0 (-> obj root-override))) (the-as vector (cond ((zero? arg0) (-> gp-0 trans) ) ((and (= arg0 1) (type? gp-0 collide-shape-moving)) (-> (the-as collide-shape-moving gp-0) gspot-pos) ) ((and (or (= arg0 2) (= arg0 3)) (type? gp-0 collide-shape)) (-> gp-0 root-prim prim-core) ) (else (-> gp-0 trans) ) ) ) ) ) ;; definition for method 22 of type process-focusable (defmethod get-transv process-focusable ((obj process-focusable)) (-> obj root-override transv) ) ;; definition for method 21 of type process-focusable (defmethod get-quat process-focusable ((obj process-focusable) (arg0 int)) (-> obj root-override quat) ) ;; definition for method 23 of type process-focusable (defmethod time-to-apex-or-ground process-focusable ((obj process-focusable) (arg0 int)) 0 ) ;; definition for method 24 of type process-focusable ;; WARN: Return type mismatch int vs meters. (defmethod get-water-height process-focusable ((obj process-focusable)) (the-as meters 0) ) ;; definition for method 26 of type process-focusable (defmethod get-inv-mass process-focusable ((obj process-focusable)) 0.0 ) ;; definition for method 25 of type process-focusable ;; WARN: Return type mismatch int vs time-frame. (defmethod get-notice-time process-focusable ((obj process-focusable)) (the-as time-frame 0) ) ;; failed to figure out what this is: 0