X-Git-Url: https://git.jsancho.org/?p=gacela.git;a=blobdiff_plain;f=examples%2F06-composition%2F06-composition.scm;fp=examples%2F06-composition%2F06-composition.scm;h=9d21e7d9161e7d81df35af73d42f75a3fb598e79;hp=0000000000000000000000000000000000000000;hb=03ddb47d9cb1f23902890d8f695039a0eeb52522;hpb=7fb1ff434787d12f8e4111a44dfc684a0b94eac3 diff --git a/examples/06-composition/06-composition.scm b/examples/06-composition/06-composition.scm new file mode 100644 index 0000000..9d21e7d --- /dev/null +++ b/examples/06-composition/06-composition.scm @@ -0,0 +1,37 @@ +#!/usr/bin/env guile +!# + +;;; Gacela, a GNU Guile extension for fast games development +;;; Copyright (C) 2017 by Javier Sancho Fernandez +;;; +;;; 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 this program. If not, see . + +(use-modules (gacela)) + +(define (tick) (* 3000000 (get-internal-real-time))) +(define (waggle) (* 200 (cos (* pi (tick))))) +(define (wiggle) (* 300 (sin (* pi (tick))))) + +(define left-right-homer + (move (image "homer.png") + wiggle 0)) + +(define up-down-marge + (move (image "marge.png") + 0 waggle)) + +(display-scene + (window ((resolution '(640 480))) + (over left-right-homer + up-down-marge)))