;;-*-Lisp-*- (in-package goal) ;; name: aligner-h.gc ;; name in dgo: aligner-h ;; dgos: GAME, ENGINE (deftype align-control (basic) ((flags uint32 :offset-assert 4) (process process-drawable :offset-assert 8) (frame-group art-joint-anim :offset-assert 12) (frame-num float :offset-assert 16) (matrix matrix 2 :inline :offset-assert 32) (transform transform 2 :inline :offset-assert 160) (delta transformq :inline :offset-assert 256) (last-speed meters :offset-assert 304) (align transformq :inline :offset 160) ) :method-count-assert 14 :size-assert #x134 :flag-assert #xe00000134 (:methods (new (symbol type process) _type_ :behavior process-drawable 0) (TODO-RENAME-9 (_type_) transformq 9) (TODO-RENAME-10 (_type_ int float float float) trsqv 10) (TODO-RENAME-11 (_type_ int vector int float float) none 11) ;; 3rd arg is unused (first-transform (_type_) transform 12) (snd-transform (_type_) transform 13) ) ) (defmethod new align-control ((allocation symbol) (type-to-make type) (proc process)) (let ((obj (object-new allocation type-to-make (the-as int (-> type-to-make size))))) (when (zero? obj) (go process-drawable-art-error "memory") (return (the align-control 0)) ) (set! (-> obj process) (the-as process-drawable proc)) obj ) )