;;; Starling Game Engine ;;; Copyright © 2018, 2019 David Thompson ;;; ;;; This program is free software: you can redistribute it and/or ;;; modify it under the terms of the GNU General Public License as ;;; published by the Free Software Foundation, either version 3 of the ;;; License, or (at your option) any later version. ;;; ;;; This program is distributed in the hope that it will be useful, ;;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ;;; General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;; along with Starling. If not, see . ;;; Commentary: ;; ;; 2D game nodes. ;; ;;; Code: (define-module (starling node-2d) #:use-module (chickadee math bezier) #:use-module (chickadee math easings) #:use-module (chickadee math matrix) #:use-module (chickadee math rect) #:use-module (chickadee math vector) #:use-module (chickadee graphics 9-patch) #:use-module (chickadee graphics blend) #:use-module (chickadee graphics color) #:use-module (chickadee graphics engine) #:use-module (chickadee graphics font) #:use-module (chickadee graphics framebuffer) #:use-module (chickadee graphics particles) #:use-module (chickadee graphics path) #:use-module (chickadee graphics sprite) #:use-module (chickadee graphics texture) #:use-module (chickadee graphics tile-map) #:use-module (chickadee graphics viewport) #:use-module (chickadee scripting) #:use-module (ice-9 match) #:use-module (oop goops) #:use-module (rnrs base) #:use-module (starling asset) #:use-module (starling node) #:use-module (starling scene) #:use-module (starling system) #:export ( target offset position resolution viewport point-within-camera-viewport? window-space->camera-space cameras first-camera origin origin-x origin-y position position-x position-y rotation scale scale-x scale-y skew skew-x skew-y local-matrix world-matrix width height default-width default-height bounding-box on-child-resize dirty! resize move-by move-to teleport rotate-by rotate-to scale-by scale-to follow-bezier-path pick texture source-rect blend-mode tint atlas index frames frame-duration animations frame-duration current-animation start-time change-animation <9-patch> top-margin bottom-margin left-margin right-margin batch painter