commit e0342de4a8bde13d43d84230d2bea5b063537c45 Author: Davide Andreoli Date: Sat Oct 20 13:14:52 2007 +0000 Initial penguins module commit. Penguins is a module that display fancy penguins on you desktop. The module code is good enought, but the autotools stuff need some revision, it fails on dist, dist-check etc. If someone want to have a look at the autofoo stuff I will be very happy as I don't know well how to implement it correctly. Thanks in advice DaveMDS SVN revision: 32124 diff --git a/.cvsignore b/.cvsignore new file mode 100644 index 0000000..add4675 --- /dev/null +++ b/.cvsignore @@ -0,0 +1,27 @@ +.deps +.libs +Makefile +Makefile.in +aclocal.m4 +autom4te.cache +config.guess +config.h +config.h.in +config.log +config.rpath +config.status +config.sub +configure +depcomp +install-sh +libtool +m4 +missing +mkinstalldirs +ltmain.sh +stamp-h1 +*.lo +*.la +*.spec +*.tar.gz +module.desktop diff --git a/AUTHORS b/AUTHORS new file mode 100644 index 0000000..cdc00cc --- /dev/null +++ b/AUTHORS @@ -0,0 +1 @@ +Dave Andreoli diff --git a/COPYING b/COPYING new file mode 100644 index 0000000..1ddb163 --- /dev/null +++ b/COPYING @@ -0,0 +1,28 @@ +Copyright (C) 2007 Davide Andreoli and various contributors (see AUTHORS) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies of the Software and its Copyright notices. In addition publicly +documented acknowledgment must be given that this software has been used if no +source code of this software is made available publicly. This includes +acknowledgments in either Copyright notices, Manuals, Publicity and Marketing +documents or any documentation provided with any product containing this +software. This License does not apply to any software that links to the +libraries provided by this software (statically or dynamically), but only to +the software provided. + +Please see the COPYING.PLAIN for a plain-english explanation of this notice +and it's intent. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/COPYING-PLAIN b/COPYING-PLAIN new file mode 100644 index 0000000..b8e40d7 --- /dev/null +++ b/COPYING-PLAIN @@ -0,0 +1,33 @@ +Plain English Copyright Notice + +This file is not intended to be the actual License. The reason this file +exists is that we here are programmers and engineers. We aren't lawyers. We +provide licenses that we THINK say the right things, but we have our own +intentions at heart. This is a plain-english explanation of what those +intentions are, and if you follow them you will be within the "spirit" of +the license. + +The intent is for us to enjoy writing software that is useful to us (the +AUTHORS) and allow others to use it freely and also benefit from the work we +put into making it. We don't want to restrict others using it. They should +not *HAVE* to make the source code of the applications they write that +simply link to these libraries (be that statically or dynamically), or for +them to be limited as to what license they choose to use (be it open, closed +or anything else). But we would like to know you are using these libraries. +We simply would like to know that it has been useful to someone. This is why +we ask for acknowledgement of some sort. + +You can do what you want with the source of this software - it doesn't +matter. We still have it here for ourselves and it is open and free to use +and download and play with. It can't be taken away. We don't really mind what +you do with the source to your software. We would simply like to know that +you are using it - especially if it makes it to a commerical product. If you +simply e-mail all the AUTHORS (see COPYING and AUTHORS files) telling us, and +then make sure you include a paragraph or page in the manual for the product +with the copyright notice and state that you used this software, we will be +very happy. If you want to contribute back modifications and fixes you may have +made we will welcome those too with open arms (generally). If you want help +with changes needed, ports needed or features to be added, arrangements can +be easily made with some dialogue. + +Christopher Michael diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000..e69de29 diff --git a/INSTALL b/INSTALL new file mode 100644 index 0000000..8919fc2 --- /dev/null +++ b/INSTALL @@ -0,0 +1,11 @@ +COMPILING and INSTALLING: + +If you got a official release tar archive do: + ./autogen.sh + +Then to compile: + make + +To install: + make install + diff --git a/Makefile.am b/Makefile.am new file mode 100644 index 0000000..970624e --- /dev/null +++ b/Makefile.am @@ -0,0 +1,31 @@ +SUBDIRS = po themes + +MAINTAINERCLEANFILES = Makefile.in aclocal.m4 ABOUT-NLS config.h.in \ + config.guess config.rpath config.sub configure depcomp ltmain.sh \ + install-sh missing mkinstalldirs m4 + +# data files for the module +filesdir = $(datadir) +files_DATA = \ +module.desktop \ +e-module-penguins.edj + +EXTRA_DIST = $(files_DATA) e_modules-penguins.spec + +# the module .so file +INCLUDES = -I. \ + -I$(top_srcdir) \ + -I$(includedir) \ + @e_cflags@ +pkgdir = $(datadir)/$(MODULE_ARCH) +pkg_LTLIBRARIES = module.la +module_la_SOURCES = e_mod_main.c \ + e_mod_main.h \ + e_mod_config.c \ + e_mod_config.h +module_la_LIBADD = @e_libs@ +module_la_LDFLAGS = -module -avoid-version +module_la_DEPENDENCIES = $(top_builddir)/config.h + +uninstall: + rm -rf $(datadir) diff --git a/NEWS b/NEWS new file mode 100644 index 0000000..e69de29 diff --git a/README b/README new file mode 100644 index 0000000..6df30dc --- /dev/null +++ b/README @@ -0,0 +1 @@ +penguins is a module that display fancy penguins on your desktop diff --git a/autogen.sh b/autogen.sh new file mode 100755 index 0000000..ec44b20 --- /dev/null +++ b/autogen.sh @@ -0,0 +1,28 @@ +#!/bin/sh + +rm -rf autom4te.cache +rm -f aclocal.m4 ltmain.sh + +touch README + +echo "Running autopoint..." ; autopoint -f || : +echo "Running aclocal..." ; aclocal $ACLOCAL_FLAGS || exit 1 +echo "Running autoheader..." ; autoheader || exit 1 +echo "Running autoconf..." ; autoconf || exit 1 +echo "Running libtoolize..." ; (libtoolize --copy --automake || glibtoolize --automake) || exit 1 +echo "Running automake..." ; automake --add-missing --copy --gnu || exit 1 +echo "Generating gettext penguins.pot template"; \ +xgettext \ +--output penguins.pot \ +--output-dir=po \ +--language=C \ +--add-location \ +--keyword=D_ \ +--sort-by-file \ +--copyright-holder="TODO" \ +--foreign-user \ +`find . -name "*.[ch]" -print` || exit 1 + +if [ -z "$NOCONFIGURE" ]; then + ./configure "$@" +fi diff --git a/configure.in b/configure.in new file mode 100644 index 0000000..5b88bf9 --- /dev/null +++ b/configure.in @@ -0,0 +1,131 @@ +dnl Process this file with autoconf to produce a configure script. + +# get rid of that stupid cache mechanism +rm -f config.cache + +AC_INIT(configure.in) +AC_CANONICAL_BUILD +AC_CANONICAL_HOST + +AM_INIT_AUTOMAKE(penguins, 0.0.1) +AM_CONFIG_HEADER(config.h) +AC_ISC_POSIX +AC_PROG_CC +AM_PROG_CC_STDC +AC_HEADER_STDC +AC_C_CONST +AM_ENABLE_SHARED +AM_PROG_LIBTOOL + +ALL_LINGUAS="it" +AC_SUBST(ALL_LINGUAS) + +AM_GNU_GETTEXT([external]) +AM_GNU_GETTEXT_VERSION(0.14) + +MODULE_ARCH="$host_os-$host_cpu" +AC_SUBST(MODULE_ARCH) +AC_DEFINE_UNQUOTED(MODULE_ARCH, "$MODULE_ARCH", "Module architecture") + +if test "x${bindir}" = 'x${exec_prefix}/bin'; then + if test "x${exec_prefix}" = "xNONE"; then + if test "x${prefix}" = "xNONE"; then + bindir="${ac_default_prefix}/bin"; + else + bindir="${prefix}/bin"; + fi + else + if test "x${prefix}" = "xNONE"; then + bindir="${ac_default_prefix}/bin"; + else + bindir="${prefix}/bin"; + fi + fi +fi + +if test "x${libdir}" = 'x${exec_prefix}/lib'; then + if test "x${exec_prefix}" = "xNONE"; then + if test "x${prefix}" = "xNONE"; then + libdir="${ac_default_prefix}/lib"; + else + libdir="${prefix}/lib"; + fi + else + if test "x${prefix}" = "xNONE"; then + libdir="${ac_default_prefix}/lib"; + else + libdir="${prefix}/lib"; + fi + fi +fi + +dnl Set PACKAGE_BIN_DIR in config.h. +if test "x${bindir}" = 'xNONE'; then + if test "x${prefix}" = "xNONE"; then + AC_DEFINE_UNQUOTED(PACKAGE_BIN_DIR, "${ac_default_prefix}/bin", "Package installed binaries destination") + else + AC_DEFINE_UNQUOTED(PACKAGE_BIN_DIR, "${prefix}/bin", "Package installed binaries destination") + fi +else + AC_DEFINE_UNQUOTED(PACKAGE_BIN_DIR, "${bindir}", "Package installed binaries destination") +fi + +dnl Set PACKAGE_LIB_DIR in config.h. +if test "x${libdir}" = 'xNONE'; then + if test "x${prefix}" = "xNONE"; then + AC_DEFINE_UNQUOTED(PACKAGE_LIB_DIR, "${ac_default_prefix}/lib", "Package installed libraries destination") + else + AC_DEFINE_UNQUOTED(PACKAGE_LIB_DIR, "${prefix}/lib", "Package installed libraries destination") + fi +else + AC_DEFINE_UNQUOTED(PACKAGE_LIB_DIR, "${libdir}", "Package installed libraries destination") +fi + +dnl Set PACKAGE_DATA_DIR in config.h. +if test "x${prefix}" = "xNONE"; then + AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${HOME}/.e/e/modules/${PACKAGE}", "Package installed data destination") + datadir="${HOME}/.e/e/modules/${PACKAGE}" +else + AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${libdir}/enlightenment/modules/${PACKAGE}", "Package installed data destination") + datadir="${libdir}/enlightenment/modules/${PACKAGE}" +fi + +AC_PREFIX_DEFAULT(${HOME}/.e/e) +if test "x$prefix" = "xNONE"; then + datarootdir=${ac_default_prefix} +else + datarootdir=${prefix}/share +fi +localedir=${datarootdir}/locale +AC_SUBST(LOCALEDIR, "${localedir}") +AC_DEFINE_UNQUOTED(LOCALEDIR, "${localedir}", [Module Locale Directory]) + +#AC_CHECK_LIB(dl, dlopen, dlopen_libs=-ldl) +#AC_SUBST(dlopen_libs) + +AC_ARG_WITH(enlightenment-config, +[ --with-enlightenment-config=E_CONFIG use enlightenment-config specified ], +[ + E_CONFIG=$withval; + echo "using "$E_CONFIG" for enlightenment-config"; +],[ + PROG="enlightenment-config"; + AC_PATH_PROG(E_CONFIG, $PROG, "", $PATH) +]) +e_cflags=`$E_CONFIG --cflags` +e_libs=`$E_CONFIG --libs` +e_modules=`$E_CONFIG --module-dir` +AC_SUBST(e_cflags) +AC_SUBST(e_libs) +AC_SUBST(e_modules) + +AC_OUTPUT([ +Makefile +e_modules-penguins.spec +po/Makefile +themes/Makefile +themes/default/Makefile +themes/lemmings/Makefile +],[ +]) + diff --git a/e-module-penguins.edj b/e-module-penguins.edj new file mode 100644 index 0000000..d91f3df Binary files /dev/null and b/e-module-penguins.edj differ diff --git a/e_mod_config.c b/e_mod_config.c new file mode 100644 index 0000000..2161d55 --- /dev/null +++ b/e_mod_config.c @@ -0,0 +1,182 @@ +#include +#include "e_mod_main.h" +#include "e_mod_config.h" +#include "config.h" + + +struct _E_Config_Dialog_Data +{ + double zoom; + int penguins_count; + char *theme; + int alpha; +}; + +/* Protos */ +static void *_create_data(E_Config_Dialog *cfd); +static void _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata); +static Evas_Object *_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata); +static int _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata); +static void _fill_data(Population *pop, E_Config_Dialog_Data *cfdata); +static void _ilist_cb_selected(void *data); + +void +_config_penguin_module(E_Container *con, Population *pop) +{ + E_Config_Dialog *cfd; + E_Config_Dialog_View *v; + char buf[4096]; + + v = E_NEW(E_Config_Dialog_View, 1); + + if (v) + { + v->create_cfdata = _create_data; + v->free_cfdata = _free_data; + v->basic.apply_cfdata = _basic_apply_data; + v->basic.create_widgets = _basic_create_widgets; + + snprintf(buf, sizeof(buf), "%s/module.edj", e_module_dir_get(pop->module)); + cfd = e_config_dialog_new(con, D_("Penguins Module"), "Penguins", "_e_modules_penguins_config_dialog", buf, 0, v, pop); + pop->config_dialog = cfd; + } +} + +static void +_fill_data(Population *pop, E_Config_Dialog_Data *cfdata) +{ + cfdata->penguins_count = pop->conf->penguins_count; + cfdata->zoom = pop->conf->zoom; + cfdata->alpha = pop->conf->alpha; + cfdata->theme = strdup(pop->conf->theme);//TOFO FREE old cfdata->theme +} + +static void * +_create_data(E_Config_Dialog *cfd) +{ + E_Config_Dialog_Data *cfdata; + Population *pop; + + pop = cfd->data; + cfdata = E_NEW(E_Config_Dialog_Data, 1); + + _fill_data(pop, cfdata); + return cfdata; +} + +static void +_free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata) +{ + Population *pop; + + pop = cfd->data; + pop->config_dialog = NULL; + free(cfdata); + cfdata = NULL; +} + +static Evas_Object * +_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata) +{ + Evas_Object *o, *of, *ob, *ol, *oi; + E_Radio_Group *rg; + Population *pop; + + pop = cfd->data; + o = e_widget_list_add(evas, 0, 0); + + of = e_widget_framelist_add(evas, D_("Population Settings"), 0); + + ob = e_widget_label_add(evas, D_("Number of penguins:")); + e_widget_framelist_object_append(of, ob); + ob = e_widget_slider_add(evas, 1, 0, D_("%1.0f"), 1, 50, 1, 0, NULL, &(cfdata->penguins_count), 200); + e_widget_framelist_object_append(of, ob); + + ob = e_widget_label_add(evas, D_("Zoom factor:")); + e_widget_framelist_object_append(of, ob); + ob = e_widget_slider_add(evas, 1, 0, D_("%1.1f X"), 0.2, 3, 0.2, 0, &(cfdata->zoom), NULL, 200); + e_widget_framelist_object_append(of, ob); + + ob = e_widget_label_add(evas, D_("Transparency:")); + e_widget_framelist_object_append(of, ob); + ob = e_widget_slider_add(evas, 1, 0, D_("%1.0f"), 50, 255, 1, 0, NULL, &(cfdata->alpha), 200); + e_widget_framelist_object_append(of, ob); + + + + + + //Lista + ob = e_widget_label_add(evas, D_("Select population:")); + e_widget_framelist_object_append(of, ob); + ol = e_widget_ilist_add(evas, 24, 24, &(cfdata->theme)); + + e_widget_ilist_clear(ol); + e_widget_ilist_go(ol); + + Evas_List *l; + int count; + l = pop->themes; + count = 0; + while (l) + { + char * theme; + char * name; + Evas_Object *oi; + theme = l->data; + name = edje_file_data_get (theme, "PopulationName"); + if (name) + { + oi = edje_object_add(evas); + e_util_edje_icon_set(oi, "enlightenment/shelf_position_left"); + edje_object_file_set(oi, theme, "icon"); + printf("TEMA: %s (%s)\n", name, cfdata->theme); + e_widget_ilist_append(ol, oi, name, + _ilist_cb_selected, theme, theme); + if (strcmp(theme,cfdata->theme) == 0) + { + e_widget_ilist_selected_set(ol, count); + } + count++; + } + l = evas_list_next(l); + } + e_widget_ilist_go(ol); + e_widget_min_size_set(ol, 155, 250); + e_widget_framelist_object_append(of, ol); + e_widget_list_object_append(o, of, 1, 1, 0.5); + + return o; +} +static void +_ilist_cb_selected(void *data) +{ + E_Config_Dialog_Data *cfdata; + char *th; + th = data; + //cfdata = data; + //if (!cfdata) return; + + printf("CB %s\n",th); + +} +static int +_basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata) +{ + Population *pop; + + pop = cfd->data; + e_border_button_bindings_ungrab_all(); + + pop->conf->penguins_count = cfdata->penguins_count; + pop->conf->zoom = cfdata->zoom; + pop->conf->alpha = cfdata->alpha; + + pop->conf->theme = strdup(cfdata->theme);//TODO FREE old pop->conf->theme + + e_config_save_queue(); + e_border_button_bindings_grab_all(); + + _penguins_cb_config_updated(pop); + return 1; +} diff --git a/e_mod_config.h b/e_mod_config.h new file mode 100644 index 0000000..8235b58 --- /dev/null +++ b/e_mod_config.h @@ -0,0 +1,8 @@ +#ifdef E_TYPEDEFS +#else +# ifndef E_MOD_CONFIG_H +# define E_MOD_CONFIG_H +# include "e_mod_main.h" +void _config_penguin_module(E_Container *con, Population *pop); +# endif +#endif diff --git a/e_mod_main.c b/e_mod_main.c new file mode 100644 index 0000000..59c25a5 --- /dev/null +++ b/e_mod_main.c @@ -0,0 +1,902 @@ +#include +#include "config.h" +#include "e_mod_main.h" +#include "e_mod_config.h" + +#define CLIMBER_PROB 4 // 4 Means: one climber every 5 - 1 Means: all climber - !!Don't set to 0 +#define FLOATER_PROB 2 +#define MAX_FALLER_HEIGHT 300 + +#define FLYER_PROB 1000 // every n animation cicle +#define CUSTOM_PROB 600 // every n animation cicle + +//_RAND is true 1 time every prob +#define _RAND(prob) ( ( random() % prob ) == 0 ) + +/* module private routines */ +static int _is_inside_any_win(Population *pop, int x, int y, int ret_value); +static Population *_population_init(E_Module *m); +static void _population_shutdown(Population *pop); +static int _cb_animator(void *data); +static void _population_load(Population *pop); +static void _theme_load(Population *pop); +static void _start_walking_at(Penguin *tux, int at_y); +static void _start_climbing_at(Penguin *tux, int at_x); +static void _start_falling_at(Penguin *tux, int at_x); +static void _start_flying_at(Penguin *tux, int at_y); +static void _start_splatting_at(Penguin *tux, int at_y); +static void _start_custom_at(Penguin *tux, int at_y); +//static void _win_shape_change(void *data, E_Container_Shape *es, E_Container_Shape_Change ch); +static void _reborn(Penguin *tux); + +/* public module routines. all modules must have these */ +EAPI E_Module_Api e_modapi = { + E_MODULE_API_VERSION, + "Penguins" +}; + +EAPI void * +e_modapi_init(E_Module *m) +{ + Population *pop; + + /* Set up module's message catalogue */ + bindtextdomain(PACKAGE, LOCALEDIR); + bind_textdomain_codeset(PACKAGE, "UTF-8"); + + pop = _population_init(m); + return pop; +} + +EAPI int +e_modapi_shutdown(E_Module *m) +{ + Population *pop; + + pop = m->data; + if (pop) + { + if (pop->config_dialog) + { + e_object_del(E_OBJECT(pop->config_dialog)); + pop->config_dialog = NULL; + } + _population_shutdown(pop); + } + return 1; +} + +EAPI int +e_modapi_save(E_Module *m) +{ + Population *pop; + + pop = m->data; + if (!pop) + return 1; + e_config_domain_save("module.penguins", pop->conf_edd, pop->conf); + return 1; +} + +EAPI int +e_modapi_about(E_Module *m) +{ + e_module_dialog_show(m, D_("Enlightenment Penguins Module"), + D_ + ("This is a module to display fancy penguins on your desktop.
and you can choose the population you like")); + return 1; +} + +EAPI int +e_modapi_config(E_Module *m) +{ + Population *pop; + E_Container *con; + Evas_List *l; + + pop = m->data; + if (!pop) + return 0; + if (!pop->cons) + return 0; + con = e_container_current_get(e_manager_current_get()); + for (l = pop->cons; l; l = l->next) + { + E_Container *c; + + c = l->data; + if (c == con) + { + _config_penguin_module(con, pop); + break; + } + } + return 1; +} + +/* module private routines */ +static Population * +_population_init(E_Module *m) +{ + Population *pop; + Evas_List *managers, *l, *l2, *l3; + + pop = calloc(1, sizeof(Population)); + if (!pop) + return NULL; + + pop->module = m; + pop->conf_edd = E_CONFIG_DD_NEW("Penguins_Config", Config); +#undef T +#undef D +#define T Config +#define D pop->conf_edd + E_CONFIG_VAL(D, T, zoom, DOUBLE); + E_CONFIG_VAL(D, T, penguins_count, INT); + E_CONFIG_VAL(D, T, theme, STR); + E_CONFIG_VAL(D, T, alpha, INT); + + pop->conf = e_config_domain_load("module.penguins", pop->conf_edd); + if (!pop->conf) + { + pop->conf = E_NEW(Config, 1); + + pop->conf->zoom = 1; + pop->conf->penguins_count = 3; + pop->conf->alpha = 200; + pop->conf->theme = PACKAGE_DATA_DIR"/themes/default.edj"; + } + + managers = e_manager_list(); + for (l = managers; l; l = l->next) + { + E_Manager *man; + + man = l->data; + + for (l2 = man->containers; l2; l2 = l2->next) + { + E_Container *con; + con = l2->data; + printf("E_container: '%s' [x:%d y:%d w:%d h:%d]\n", + con->name, con->x, con->y, con->w, con->h); + pop->cons = evas_list_append(pop->cons, con); + pop->canvas = con->bg_evas; + //e_container_shape_change_callback_add(con, _win_shape_change, NULL); + for (l3 = e_container_shape_list_get(con); l3; l3 = l3->next) + { + E_Container_Shape *es; + int x, y, w, h; + es = l3->data; + if (es->visible) + { + e_container_shape_geometry_get(es, &x, &y, &w, &h); + printf("E_shape: [%d] x:%d y:%d w:%d h:%d\n", es->visible,x, y, w, h); + } + } + } + } + + evas_output_viewport_get(pop->canvas, NULL, NULL, &pop->width, &pop->height); + + printf("Get themes list\n"); + Ecore_List *files; + char *filename; + char *name; + char buf[4096]; + + files = ecore_file_ls(PACKAGE_DATA_DIR"/themes"); + while ((filename = ecore_list_next(files))) + { + if (ecore_str_has_suffix(filename, ".edj")) + { + snprintf(buf,sizeof(buf),"%s/%s",PACKAGE_DATA_DIR"/themes",filename); + name = edje_file_data_get (buf, "PopulationName"); + if (name) + { + printf("THEME FILE: %s (%s)\n",filename,name); + pop->themes = evas_list_append(pop->themes,strdup(buf)); + } + } + } + ecore_list_destroy(files); + + _theme_load(pop); + _population_load(pop); + + pop->animator = ecore_animator_add(_cb_animator, pop); + //srand(ecore_time_get()); TODO we need it? + return pop; +} + +Evas_Bool +_action_free(Evas_Hash *hash, const char *key, void *data, void *fdata) +{ + Action *a; + a = data; + printf("Free Action '%s' :(\n",a->name); + E_FREE(a->name); + E_FREE (a); + return 1; +} +static void +_population_free(Population *pop) +{ + while (pop->penguins) + { + Penguin *tux; + printf("Free TUX :(\n"); + tux = pop->penguins->data; + evas_object_del(tux->obj); + pop->penguins = evas_list_remove_list(pop->penguins, pop->penguins); + E_FREE(tux); + tux = NULL; + } + while (pop->customs) + { + Custom_Action *cus; + printf("Free Custom :(\n"); + cus = pop->customs->data; + E_FREE(cus->name); + E_FREE(cus->left_program_name); + E_FREE(cus->right_program_name); + + pop->customs = evas_list_remove_list(pop->customs, pop->customs); + E_FREE(cus); + cus = NULL; + } + + evas_hash_foreach(pop->actions, _action_free, NULL); + evas_hash_free(pop->actions); + pop->actions = NULL; +} + +/* static void +_real_population_shutdown(Population *pop) +{ + +} */ + +static void +_population_shutdown(Population *pop) +{ + printf("KILL 'EM ALL\n"); + + while (pop->cons) + { + E_Container *con; + + con = pop->cons->data; + pop->cons = evas_list_remove_list(pop->cons, pop->cons); + } + + _population_free(pop); + + + if (pop->animator) + ecore_animator_del(pop->animator); + + while (pop->themes) + { + printf("Free Theme '%s' :(\n",pop->themes->data); + pop->themes = evas_list_remove_list(pop->themes, pop->themes); + } + + //E_FREE(pop->conf->theme); //TODO Why can't free?? + E_FREE(pop->conf); + E_CONFIG_DD_FREE(pop->conf_edd); + + + E_FREE(pop); + pop = NULL; +} + +void +_penguins_cb_config_updated(void *data) +{ + Population *pop; + + pop = (Population *)data; + if (!pop) + return; + + _population_free(pop); + + _theme_load(pop); + _population_load(pop); +} +static Action* +_load_action(Population *pop, char *filename, char *name, int id) +{ + Action *act; + char *data; + int w, h, speed; + + data = edje_file_data_get (filename, name); + if (!data) + return NULL; + + act = calloc(1, sizeof(Action)); + if (!act) + return NULL; + + act->name = strdup(name); + sscanf(data, "%d %d %d", &act->w, &act->h, &act->speed); + + act->w = act->w * pop->conf->zoom; + act->h = act->h * pop->conf->zoom; + act->id = id; + //TODO ZOOM ALSO THE SPEED ??? + + pop->actions = evas_hash_add(pop->actions, name, act); + + return act; +} +static Custom_Action* +_load_custom_action(Population *pop, char *filename, char *name) +{ + Custom_Action *c; + char *data; + int w, h, speed; + char buf[25]; + + data = edje_file_data_get (filename, name); + if (!data) + return NULL; + + c = calloc(1, sizeof(Custom_Action)); + if (!c) + return NULL; + + c->name = strdup(name); + sscanf(data, "%d %d %d %d %d %d", + &c->w, &c->h, &c->h_speed, &c->v_speed, &c->r_min, &c->r_max); + + c->w = c->w * pop->conf->zoom; + c->h = c->h * pop->conf->zoom; + + snprintf(buf, sizeof(buf), "start_custom_%d_left", pop->custom_num+1); + c->left_program_name = strdup(buf); + snprintf(buf, sizeof(buf), "start_custom_%d_right", pop->custom_num+1); + c->right_program_name = strdup(buf); + + pop->customs = evas_list_append(pop->customs, c); + pop->custom_num++; + + return c; +} +Evas_Bool hash_fn(Evas_Hash *hash, const char *key, void *data, void *fdata) +{ + Action *a = data; + printf("ACTIONS: name:'%s' w:%d h:%d speed:%d\n",key,a->w,a->h,a->speed); + return 1; +} + +static void +_theme_load(Population *pop) +{ + char *name; + Action *act; + char buf[15]; + int i; + + pop->actions = NULL; + pop->customs = NULL; + pop->custom_num = 0; + + if (!pop->conf->theme) + pop->conf->theme = PACKAGE_DATA_DIR "/default.edj"; + + + name = edje_file_data_get (pop->conf->theme, "PopulationName"); + if (!name) + return; + + printf("*** LOAD THEME %s (%s)\n", name, pop->conf->theme); + + // load standard actions + _load_action(pop, pop->conf->theme, "Walker", ID_WALKER); + + _load_action(pop, pop->conf->theme, "Faller", ID_FALLER); + _load_action(pop, pop->conf->theme, "Climber", ID_CLIMBER); + _load_action(pop, pop->conf->theme, "Floater", ID_FLOATER); + //_load_action(pop, pop->conf->theme, "Bomber"); + _load_action(pop, pop->conf->theme, "Splatter", ID_SPLATTER); + _load_action(pop, pop->conf->theme, "Flyer", ID_FLYER); + + // load custom actions + i = 2; + snprintf(buf, sizeof(buf), "Custom_1"); + while(_load_custom_action(pop, pop->conf->theme, buf)) + snprintf(buf, sizeof(buf), "Custom_%d", i++); + + evas_hash_foreach(pop->actions, hash_fn, NULL); + Evas_List *l; + for ( l = pop->customs; l; l = l->next ) + { + Custom_Action *c = l->data; + printf("CUSTOMS: name:'%s' w:%d h:%d h_speed:%d v_speed:%d\n", + c->name, c->w, c->h, c->h_speed, c->v_speed); + } +} +static void +_population_load(Population *pop) +{ + Evas_Object *o; + Evas_Coord xx, yy, ww, hh; + int i; + Penguin *tux; + + evas_output_viewport_get(pop->canvas, &xx, &yy, &ww, &hh); + + //Create edje + printf("\n *** LOAD %d ANIMS ***\n",pop->conf->penguins_count); + + + for (i = 0; i < pop->conf->penguins_count; i++) + { + Evas_Coord tx, ty; + + tux = malloc(sizeof(Penguin)); + + o = edje_object_add(pop->canvas); + edje_object_file_set(o, pop->conf->theme, "anims"); + + tux->action = evas_hash_find(pop->actions,"Faller"); + + evas_object_image_alpha_set(o, 0.5); + evas_object_color_set(o, pop->conf->alpha, pop->conf->alpha, + pop->conf->alpha,pop->conf->alpha); + evas_object_pass_events_set(o, 1); + + tux->obj = o; + tux->pop = pop; + + + pop->penguins = evas_list_append(pop->penguins, tux); + evas_object_show(o); + + _reborn(tux); + } +} + +static void +_reborn(Penguin *tux) +{ + printf("Reborn :)\n"); + tux->reverse = random() % (2); + tux->x = random() % (tux->pop->width); + tux->y = 0; + tux->custom = 0; + evas_object_move(tux->obj, (int)tux->x, (int)tux->y); + _start_falling_at(tux, tux->x); + evas_object_resize(tux->obj, tux->action->w, tux->action->h); + evas_object_image_fill_set(tux->obj, 0, 0, tux->action->w, tux->action->h); +} + +static int +_cb_animator(void *data) +{ + Population *pop; + Evas_List *l; + double d; + int ran; + + pop = data; + for (l=pop->penguins; l ;l=l->next) + { + Penguin *tux; + int touch; + tux = l->data; + + // ****** CUSTOM ACTIONS ******** + if (tux->custom) + { + tux->x += ((double)tux->custom->h_speed / 100); + tux->y += ((double)tux->custom->v_speed / 100); + } + // ****** FALLER ******** + else if (tux->action->id == ID_FALLER) + { + tux->y += ((double)tux->action->speed / 100); + if (touch = _is_inside_any_win(pop, + (int)tux->x+(tux->action->w/2), + (int)tux->y + tux->action->h, + _RET_TOP_VALUE)) + { + if (( (int)tux->y - tux->faller_h) > MAX_FALLER_HEIGHT) + _start_splatting_at(tux, touch); + else + _start_walking_at(tux, touch); + } + else if(( (int)tux->y + tux->action->h ) > pop->height) + { + if (( (int)tux->y - tux->faller_h) > MAX_FALLER_HEIGHT) + _start_splatting_at(tux, pop->height); + else + _start_walking_at(tux, pop->height); + } + + } + // ****** FLOATER ******** + else if (tux->action->id == ID_FLOATER) + { + tux->y += ((double)tux->action->speed / 100); + if (touch = _is_inside_any_win(pop, + (int)tux->x+(tux->action->w/2), + (int)tux->y + tux->action->h, + _RET_TOP_VALUE) + ) + _start_walking_at(tux, touch); + else if(( (int)tux->y + tux->action->h ) > pop->height) + _start_walking_at(tux, pop->height); + + } + // ****** WALKER ******** + else if (tux->action->id == ID_WALKER) + { + // random flyer + if (_RAND(FLYER_PROB)){ + _start_flying_at(tux,tux->y); + } + // random custom + else if (_RAND(CUSTOM_PROB)){ + _start_custom_at(tux,tux->y+tux->action->h); + } + // left + else if (tux->reverse) + { + tux->x -= ((double)tux->action->speed / 100); + if ((touch = _is_inside_any_win(pop, (int)tux->x , (int)tux->y, _RET_RIGHT_VALUE)) || + tux->x < 0) + { + if (_RAND(CLIMBER_PROB)) + _start_climbing_at(tux, touch); + else + { + edje_object_signal_emit(tux->obj, "start_walking_right", "epenguins"); + tux->reverse = FALSE; + } + } + if ((tux->y + tux->action->h) < pop->height) + if (!_is_inside_any_win(pop, (int)tux->x+(tux->action->w/2) , (int)tux->y+tux->action->h+1, _RET_NONE_VALUE)) + _start_falling_at(tux, (int)tux->x+(tux->action->w/2)); + } + // right + else + { + tux->x += ((double)tux->action->speed / 100); + if ((touch = _is_inside_any_win(pop, (int)tux->x + tux->action->w, (int)tux->y, _RET_LEFT_VALUE)) || + (tux->x + tux->action->w) > pop->width) + { + if (_RAND(CLIMBER_PROB)) + { + if (touch) + _start_climbing_at(tux, touch); + else + _start_climbing_at(tux, pop->width); + } + else + { + edje_object_signal_emit(tux->obj, "start_walking_left", "epenguins"); + tux->reverse = TRUE; + } + } + if ((tux->y + tux->action->h) < pop->height) + if (!_is_inside_any_win(pop, (int)tux->x+(tux->action->w/2), (int)tux->y+tux->action->h+1, _RET_NONE_VALUE)) + _start_falling_at(tux, (int)tux->x+(tux->action->w/2)); + } + + } + // ****** FLYER ******** + else if (tux->action->id == ID_FLYER) + { + tux->y -= ((double)tux->action->speed / 100); + tux->x += (random() % 3) - 1; + if (tux->y < 0){ + tux->reverse = !tux->reverse; + _start_falling_at(tux, (int)tux->x); + } + } + // ****** CLIMBER ******** + else if (tux->action->id == ID_CLIMBER) + { + tux->y -= ((double)tux->action->speed / 100); + // left + if (tux->reverse) + { + if (!_is_inside_any_win(pop, + (int)tux->x-1, + (int)tux->y+(tux->action->h/2), + _RET_NONE_VALUE)) + { + if (tux->x > 0) + { + tux->x-=(tux->action->w/2)+1; + _start_walking_at(tux, (int)tux->y+(tux->action->h/2)); + } + } + } + // right + else + { + if (!_is_inside_any_win(pop, + (int)tux->x+tux->action->w+1, + (int)tux->y+(tux->action->h/2), + _RET_NONE_VALUE)) + { + if ((tux->x+tux->action->w) < pop->width) + { + tux->x+=(tux->action->w/2)+1; + _start_walking_at(tux, (int)tux->y+(tux->action->h/2)); + } + } + } + if (tux->y < 0){ + tux->reverse = !tux->reverse; + _start_falling_at(tux, (int)tux->x); + } + + } + + // printf("Place tux at x:%d y:%d w:%d h:%d\n",tux->x, tux->y,tux->action->w, tux->action->h); + evas_object_move(tux->obj, (int)tux->x, (int)tux->y); + + } + return 1; +} + +static int +_is_inside_any_win(Population *pop, int x, int y, int ret_value) +{ + Evas_List *l; + E_Container *con; + + con = e_container_current_get(e_manager_current_get()); + + for (l = e_container_shape_list_get(con); l; l = l->next) + { + E_Container_Shape *es; + int sx, sy, sw, sh; + es = l->data; + if (es->visible) + { + e_container_shape_geometry_get(es, &sx, &sy, &sw, &sh); + //printf("E_shape: [%d] x:%d y:%d w:%d h:%d\n", es->visible,sx, sy, sw, sh); + if ( ((x > sx) && (x < (sx+sw))) && + ((y > sy) && (y < (sy+sh))) ) + { + switch (ret_value) + { + case _RET_NONE_VALUE: + return 1; + break; + case _RET_RIGHT_VALUE: + return sx+sw; + break; + case _RET_BOTTOM_VALUE: + return sy+sh; + break; + case _RET_TOP_VALUE: + return sy; + break; + case _RET_LEFT_VALUE: + return sx; + break; + default: + return 1; + } + + } + } + } + + return 0; +} + +static void +_start_walking_at(Penguin *tux, int at_y) +{ + printf("Start walking...at %d\n",at_y); + tux->action = evas_hash_find(tux->pop->actions, "Walker"); + + tux->y = at_y - tux->action->h; + evas_object_resize(tux->obj, tux->action->w, tux->action->h); + + if (tux->reverse) + edje_object_signal_emit(tux->obj, "start_walking_left", "epenguins"); + else + edje_object_signal_emit(tux->obj, "start_walking_right", "epenguins"); +} +static void +_start_climbing_at(Penguin *tux, int at_x) +{ + //printf("Start climbing...at: %d\n",at_x); + tux->action = evas_hash_find(tux->pop->actions, "Climber"); + evas_object_resize(tux->obj, tux->action->w, tux->action->h); + + if (tux->reverse) + { + tux->x = at_x; + edje_object_signal_emit(tux->obj, "start_climbing_left", "epenguins"); + } + else + { + tux->x = at_x - tux->action->w; + edje_object_signal_emit(tux->obj, "start_climbing_right", "epenguins"); + } + +} +static void +_start_falling_at(Penguin *tux, int at_x) +{ + if (_RAND(FLOATER_PROB)) + { + //printf("Start floating...\n"); + tux->action = evas_hash_find(tux->pop->actions, "Floater"); + evas_object_resize(tux->obj, tux->action->w, tux->action->h); + + if (tux->reverse) + { + tux->x = (double)(at_x - tux->action->w); + edje_object_signal_emit(tux->obj, "start_floating_left", "epenguins"); + } + else + { + tux->x = (double)at_x; + edje_object_signal_emit(tux->obj, "start_floating_right", "epenguins"); + } + } + else + { + //printf("Start falling...\n"); + tux->action = evas_hash_find(tux->pop->actions, "Faller"); + evas_object_resize(tux->obj, tux->action->w, tux->action->h); + + if (tux->reverse) + { + tux->x = (double)(at_x - tux->action->w); + edje_object_signal_emit(tux->obj, "start_falling_left", "epenguins"); + } + else + { + tux->x = (double)at_x; + edje_object_signal_emit(tux->obj, "start_falling_right", "epenguins"); + } + } + tux->faller_h = (int)tux->y; +} + +static void +_start_flying_at(Penguin *tux, int at_y) +{ + tux->action = evas_hash_find(tux->pop->actions, "Flyer"); + evas_object_resize(tux->obj, tux->action->w, tux->action->h); + tux->y = at_y - tux->action->h; + if (tux->reverse) + edje_object_signal_emit(tux->obj, "start_flying_left", "epenguins"); + else + edje_object_signal_emit(tux->obj, "start_flying_right", "epenguins"); +} + +static void +_cb_splatter_end (void *data, Evas_Object *o, const char *emi, const char *src) +{ + _reborn((Penguin*)data); + edje_object_signal_callback_del(o,"splatting_done","edje",_cb_splatter_end); +} + +static void +_start_splatting_at(Penguin *tux, int at_y) +{ + // printf("Start splatting...\n"); + evas_object_hide(tux->obj); + tux->action = evas_hash_find(tux->pop->actions, "Splatter"); + evas_object_resize(tux->obj, tux->action->w, tux->action->h); + evas_object_image_fill_set(tux->obj,0,0, tux->action->w, tux->action->h); + tux->y = at_y - tux->action->h; + if (tux->reverse) + edje_object_signal_emit(tux->obj, "start_splatting_left", "epenguins"); + else + edje_object_signal_emit(tux->obj, "start_splatting_right", "epenguins"); + + + edje_object_signal_callback_add(tux->obj,"splatting_done","edje",_cb_splatter_end, tux); + evas_object_resize(tux->obj, tux->action->w, tux->action->h); + evas_object_image_fill_set(tux->obj,0,0, tux->action->w, tux->action->h); + evas_object_move(tux->obj,(int)tux->x,(int)tux->y); + evas_object_show(tux->obj); +} + + +static void +_cb_custom_end (void *data, Evas_Object *o, const char *emi, const char *src) +{ + Penguin* tux = data; + // printf("CUSTOM END.\n"); + if (tux->r_count > 0) + { + if (tux->reverse) + edje_object_signal_emit(tux->obj, tux->custom->left_program_name, "epenguins"); + else + edje_object_signal_emit(tux->obj, tux->custom->right_program_name, "epenguins"); + tux->r_count--; + } + else + { + edje_object_signal_callback_del(o,"custom_done","edje",_cb_custom_end); + _start_walking_at(tux,tux->y+tux->custom->h); + tux->custom = NULL; + } +} + + +static void +_start_custom_at(Penguin *tux, int at_y) +{ + int ran; + char buf[25]; + + if (tux->pop->custom_num < 1) + return; + + ran = random() % (tux->pop->custom_num); + tux->custom = evas_list_nth(tux->pop->customs, ran); + if (!tux->custom) + return; + + evas_object_resize(tux->obj, tux->custom->w, tux->custom->h); + tux->y = at_y - tux->custom->h; + + if ( tux->custom->r_min == tux->custom->r_max) + tux->r_count = tux->custom->r_min; + else + tux->r_count = tux->custom->r_min + + (random() % (tux->custom->r_max - tux->custom->r_min + 1)); + tux->r_count --; + if (tux->reverse) + edje_object_signal_emit(tux->obj, tux->custom->left_program_name, "epenguins"); + else + edje_object_signal_emit(tux->obj, tux->custom->right_program_name, "epenguins"); + + + + printf("START Custom Action n %d (%s) repeat: %d\n", ran, tux->custom->left_program_name,tux->r_count); + + edje_object_signal_callback_add(tux->obj,"custom_done","edje",_cb_custom_end, tux); + +} +/* static void +_win_shape_change(void *data, E_Container_Shape *es, E_Container_Shape_Change ch) +{ + //printf("Shape changed\n"); + int x, y, w, h; + + switch (ch) + { + case E_CONTAINER_SHAPE_ADD: + + break; + case E_CONTAINER_SHAPE_DEL: + + + break; + case E_CONTAINER_SHAPE_SHOW: + + break; + case E_CONTAINER_SHAPE_HIDE: + + break; + case E_CONTAINER_SHAPE_MOVE: + + break; + case E_CONTAINER_SHAPE_RESIZE: + + break; + case E_CONTAINER_SHAPE_RECTS: + + break; + default: + break; + } +} */ diff --git a/e_mod_main.h b/e_mod_main.h new file mode 100644 index 0000000..3fcee92 --- /dev/null +++ b/e_mod_main.h @@ -0,0 +1,92 @@ +#define D_(str) dgettext(PACKAGE, str) + +#ifndef E_MOD_MAIN_H +#define E_MOD_MAIN_H + +#define _RET_NONE_VALUE 0 +#define _RET_BOTTOM_VALUE 1 +#define _RET_TOP_VALUE 2 +#define _RET_LEFT_VALUE 3 +#define _RET_RIGHT_VALUE 4 + +#define ID_WALKER 1 +#define ID_FALLER 2 +#define ID_CLIMBER 3 +#define ID_FLOATER 4 +#define ID_SPLATTER 5 +#define ID_FLYER 6 + +typedef struct _Config Config; +typedef struct _Population Population; +typedef struct _Penguin Penguin; +typedef struct _Action Action; +typedef struct _Custom_Action Custom_Action; + +struct _Config +{ + double zoom; + int penguins_count; + char *theme; + int alpha; +}; + +struct _Population +{ + E_Module *module; + Evas_List *cons; + Evas *canvas; + Ecore_Animator *animator; + Evas_List *penguins; + Evas_Hash *actions; + Evas_List *customs; + int custom_num; + Evas_List *themes; + + E_Config_DD *conf_edd; + Config *conf; + Evas_Coord width, height; + E_Config_Dialog *config_dialog; + +}; + +struct _Action +{ + char *name; + int id; + Evas_Coord w,h; + int speed; +}; +struct _Custom_Action +{ + char *name; + Evas_Coord w,h; + int h_speed; + int v_speed; + int r_min; + int r_max; + char *left_program_name; + char *right_program_name; +}; +struct _Penguin +{ + Evas_Object *obj; + int reverse; + double x, y; + int faller_h; + int r_count; + Action *action; + Custom_Action *custom; + Population *pop; +}; + +EAPI extern E_Module_Api e_modapi; + +EAPI void *e_modapi_init(E_Module *m); +EAPI int e_modapi_shutdown(E_Module *m); +EAPI int e_modapi_save(E_Module *m); +EAPI int e_modapi_about(E_Module *m); +EAPI int e_modapi_config(E_Module *m); + +void _penguins_cb_config_updated(void *data); + +#endif diff --git a/e_modules-penguins.spec.in b/e_modules-penguins.spec.in new file mode 100644 index 0000000..4b53a99 --- /dev/null +++ b/e_modules-penguins.spec.in @@ -0,0 +1,50 @@ +%define module_name penguins + +Summary: %{module_name} module for the Enlightenment window manager +Name: e_modules-%{module_name} +Version: @VERSION@ +Release: 0.%(date '+%Y%m%d') +License: BSD +Group: User Interface/Desktops +URL: http://www.enlightenment.org/ +Source: ftp://ftp.enlightenment.org/pub/enlightenment/%{module_name}-%{version}.tar.gz +Packager: %{?_packager:%{_packager}}%{!?_packager:Michael Jennings } +Vendor: %{?_vendorinfo:%{_vendorinfo}}%{!?_vendorinfo:The Enlightenment Project (http://www.enlightenment.org/)} +Distribution: %{?_distribution:%{_distribution}}%{!?_distribution:%{_vendor}} +BuildRequires: ecore-devel, evas-devel, esmart-devel, edje-bin +BuildRequires: edje-devel, eet-devel, enlightenment-devel >= 0.16.999 +Requires: enlightenment >= 0.16.999 +BuildRoot: %{_tmppath}/%{name}-%{version}-root + +%description +%{module_name} module for the Enlightenment window manager. + +%prep +%setup -q -n %{module_name}-%{version} + +%build +%{configure} +%{__make} %{?_smp_mflags} %{?mflags} + +%install +%{__make} %{?mflags_install} DESTDIR=$RPM_BUILD_ROOT install +%{find_lang} %{module_name} || true > %{module_name}.lang + +%clean +test "x$RPM_BUILD_ROOT" != "x/" && rm -rf $RPM_BUILD_ROOT + +%post +/sbin/ldconfig + +%postun +/sbin/ldconfig + +%files -f %{module_name}.lang +%defattr(-, root, root) +%doc AUTHORS ChangeLog COPYING* INSTALL NEWS README +%if "%{module_name}" == "emu" +%{_bindir}/%{module_name}* +%endif +%{_libdir}/enlightenment/modules/%{module_name}* + +%changelog diff --git a/module.desktop b/module.desktop new file mode 100644 index 0000000..a48c59d --- /dev/null +++ b/module.desktop @@ -0,0 +1,5 @@ +[Desktop Entry] +Type=Link +Name=Penguins +Icon=e-module-penguins +Comment=Penguins Module
Module to display fancy penguins
walking around your desktop diff --git a/po/Makefile.am b/po/Makefile.am new file mode 100644 index 0000000..f4914c6 --- /dev/null +++ b/po/Makefile.am @@ -0,0 +1,30 @@ +MAINTAINERCLEANFILES = Makefile.in $(PACKAGE).pot boldquot.sed insert-header.sin \ + en@boldquot.header en@quot.header Makefile.in.in Makevars.template quot.sed \ + remove-potcdate.sin Rules-quot + +MSGFMT = msgfmt + +localedir = @LOCALEDIR@ +locale_DATA = $(addsuffix .mo,$(ALL_LINGUAS)) + +EXTRA_DIST = $(PACKAGE).pot $(addsuffix .po,$(ALL_LINGUAS)) + +%.mo : %.po + $(MSGFMT) -f -o $@ $< + +install-localeDATA: +uninstall-localeDATA: +install-data-local: + for L in $(ALL_LINGUAS); do \ + $(mkinstalldirs) $(DESTDIR)$(localedir)/$$L/LC_MESSAGES; \ + $(INSTALL_DATA) \ + $$L.mo $(DESTDIR)$(localedir)/$$L/LC_MESSAGES/$(PACKAGE).mo; \ + done + +uninstall: + for L in $(ALL_LINGUAS); do \ + rm -f $(DESTDIR)$(localedir)/$$L/LC_MESSAGES/$(PACKAGE).mo; \ + done + +clean-local: + rm -f *.mo diff --git a/po/it.po b/po/it.po new file mode 100644 index 0000000..deff87f --- /dev/null +++ b/po/it.po @@ -0,0 +1,61 @@ +# Italian translation for penguins module. +# This file is put in the public domain. +# DaveMDS , 2007. +# +msgid "" +msgstr "" +"Project-Id-Version: Penguins\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2007-10-20 12:44+0200\n" +"PO-Revision-Date: 2007-10-20 13:50+0200\n" +"Last-Translator: DaveMDS \n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: e_mod_config.c:40 +msgid "Penguins Module" +msgstr "Modulo dei pinguini" + +#: e_mod_config.c:88 +msgid "Population Settings" +msgstr "Impostazioni della popolazione" + +#: e_mod_config.c:90 +msgid "Number of penguins:" +msgstr "Numero di pinguini" + +#: e_mod_config.c:92 e_mod_config.c:102 +#, c-format +msgid "%1.0f" +msgstr "%1.0f" + +#: e_mod_config.c:95 +msgid "Zoom factor:" +msgstr "Ingrandimento:" + +#: e_mod_config.c:97 +#, c-format +msgid "%1.1f X" +msgstr "%1.1f X" + +#: e_mod_config.c:100 +msgid "Transparency:" +msgstr "Trasparenza:" + +#: e_mod_config.c:110 +msgid "Select population:" +msgstr "Seleziona il tipo di popolazione:" + +#: e_mod_main.c:84 +msgid "Enlightenment Penguins Module" +msgstr "Modulo dei pinguini per Enlightenment" + +#: e_mod_main.c:86 +msgid "" +"This is a module to display fancy penguins on your desktop.
and you can " +"choose the population you like" +msgstr "" +"Questo modulo riempie il vostro desktop di simpatici pinguini.
" +"Se preferite potete anche scegliere popolazioni diverse dai pinguini." diff --git a/themes/Makefile.am b/themes/Makefile.am new file mode 100644 index 0000000..9a3b825 --- /dev/null +++ b/themes/Makefile.am @@ -0,0 +1,2 @@ +MAINTAINERCLEANFILES = Makefile.in +SUBDIRS = default lemmings diff --git a/themes/default/Makefile.am b/themes/default/Makefile.am new file mode 100644 index 0000000..197024c --- /dev/null +++ b/themes/default/Makefile.am @@ -0,0 +1,22 @@ +THEME = default +EDC = $(THEME).edc +EDJ = $(THEME).edj +SUFFIXES = .edc .edj +MAINTAINERCLEANFILES = Makefile.in +CLEANFILES = $(EDJ) + +pkgdatadir = $(datadir) +themedir = $(pkgdatadir)/themes +theme_DATA = $(EDJ) + +all: $(EDJ) + +.edc.edj: + edje_cc -v -id $(top_srcdir)/themes/$(THEME) -fd $(top_srcdir)/themes/$(THEME) $< $@ + +EXTRA_DIST = \ +default.edc \ +Makefile + +dist-hook: + rm -rf `find $(distdir) -name CVS` diff --git a/themes/default/bomber0.png b/themes/default/bomber0.png new file mode 100644 index 0000000..313a5f3 Binary files /dev/null and b/themes/default/bomber0.png differ diff --git a/themes/default/bomber1.png b/themes/default/bomber1.png new file mode 100644 index 0000000..16acd4a Binary files /dev/null and b/themes/default/bomber1.png differ diff --git a/themes/default/bomber10.png b/themes/default/bomber10.png new file mode 100644 index 0000000..7ef20d6 Binary files /dev/null and b/themes/default/bomber10.png differ diff --git a/themes/default/bomber11.png b/themes/default/bomber11.png new file mode 100644 index 0000000..65e45c1 Binary files /dev/null and b/themes/default/bomber11.png differ diff --git a/themes/default/bomber12.png b/themes/default/bomber12.png new file mode 100644 index 0000000..0b4617a Binary files /dev/null and b/themes/default/bomber12.png differ diff --git a/themes/default/bomber13.png b/themes/default/bomber13.png new file mode 100644 index 0000000..965c114 Binary files /dev/null and b/themes/default/bomber13.png differ diff --git a/themes/default/bomber14.png b/themes/default/bomber14.png new file mode 100644 index 0000000..956b324 Binary files /dev/null and b/themes/default/bomber14.png differ diff --git a/themes/default/bomber15.png b/themes/default/bomber15.png new file mode 100644 index 0000000..882ad3e Binary files /dev/null and b/themes/default/bomber15.png differ diff --git a/themes/default/bomber2.png b/themes/default/bomber2.png new file mode 100644 index 0000000..f1c5a0d Binary files /dev/null and b/themes/default/bomber2.png differ diff --git a/themes/default/bomber3.png b/themes/default/bomber3.png new file mode 100644 index 0000000..46558af Binary files /dev/null and b/themes/default/bomber3.png differ diff --git a/themes/default/bomber4.png b/themes/default/bomber4.png new file mode 100644 index 0000000..c5a45b5 Binary files /dev/null and b/themes/default/bomber4.png differ diff --git a/themes/default/bomber5.png b/themes/default/bomber5.png new file mode 100644 index 0000000..5a70a15 Binary files /dev/null and b/themes/default/bomber5.png differ diff --git a/themes/default/bomber6.png b/themes/default/bomber6.png new file mode 100644 index 0000000..053c7da Binary files /dev/null and b/themes/default/bomber6.png differ diff --git a/themes/default/bomber7.png b/themes/default/bomber7.png new file mode 100644 index 0000000..4905fcf Binary files /dev/null and b/themes/default/bomber7.png differ diff --git a/themes/default/bomber8.png b/themes/default/bomber8.png new file mode 100644 index 0000000..ce4ce04 Binary files /dev/null and b/themes/default/bomber8.png differ diff --git a/themes/default/bomber9.png b/themes/default/bomber9.png new file mode 100644 index 0000000..dc66f39 Binary files /dev/null and b/themes/default/bomber9.png differ diff --git a/themes/default/climber.png b/themes/default/climber.png new file mode 100644 index 0000000..7be9f7a Binary files /dev/null and b/themes/default/climber.png differ diff --git a/themes/default/climber0a.png b/themes/default/climber0a.png new file mode 100644 index 0000000..17372ec Binary files /dev/null and b/themes/default/climber0a.png differ diff --git a/themes/default/climber0b.png b/themes/default/climber0b.png new file mode 100644 index 0000000..9a7ff85 Binary files /dev/null and b/themes/default/climber0b.png differ diff --git a/themes/default/climber1a.png b/themes/default/climber1a.png new file mode 100644 index 0000000..527e30c Binary files /dev/null and b/themes/default/climber1a.png differ diff --git a/themes/default/climber1b.png b/themes/default/climber1b.png new file mode 100644 index 0000000..c6b92aa Binary files /dev/null and b/themes/default/climber1b.png differ diff --git a/themes/default/climber2a.png b/themes/default/climber2a.png new file mode 100644 index 0000000..7cfe51f Binary files /dev/null and b/themes/default/climber2a.png differ diff --git a/themes/default/climber2b.png b/themes/default/climber2b.png new file mode 100644 index 0000000..7099aae Binary files /dev/null and b/themes/default/climber2b.png differ diff --git a/themes/default/climber3a.png b/themes/default/climber3a.png new file mode 100644 index 0000000..aeb7f60 Binary files /dev/null and b/themes/default/climber3a.png differ diff --git a/themes/default/climber3b.png b/themes/default/climber3b.png new file mode 100644 index 0000000..288d99b Binary files /dev/null and b/themes/default/climber3b.png differ diff --git a/themes/default/climber4a.png b/themes/default/climber4a.png new file mode 100644 index 0000000..a62bbc5 Binary files /dev/null and b/themes/default/climber4a.png differ diff --git a/themes/default/climber4b.png b/themes/default/climber4b.png new file mode 100644 index 0000000..4017ace Binary files /dev/null and b/themes/default/climber4b.png differ diff --git a/themes/default/climber5a.png b/themes/default/climber5a.png new file mode 100644 index 0000000..193fc60 Binary files /dev/null and b/themes/default/climber5a.png differ diff --git a/themes/default/climber5b.png b/themes/default/climber5b.png new file mode 100644 index 0000000..3ece75f Binary files /dev/null and b/themes/default/climber5b.png differ diff --git a/themes/default/climber6a.png b/themes/default/climber6a.png new file mode 100644 index 0000000..49501c8 Binary files /dev/null and b/themes/default/climber6a.png differ diff --git a/themes/default/climber6b.png b/themes/default/climber6b.png new file mode 100644 index 0000000..b5e72e6 Binary files /dev/null and b/themes/default/climber6b.png differ diff --git a/themes/default/climber7a.png b/themes/default/climber7a.png new file mode 100644 index 0000000..17f2481 Binary files /dev/null and b/themes/default/climber7a.png differ diff --git a/themes/default/climber7b.png b/themes/default/climber7b.png new file mode 100644 index 0000000..154bcc0 Binary files /dev/null and b/themes/default/climber7b.png differ diff --git a/themes/default/default.edc b/themes/default/default.edc new file mode 100644 index 0000000..a24ac38 --- /dev/null +++ b/themes/default/default.edc @@ -0,0 +1,879 @@ +#define FRAME LOSSY 90 +images +{ + image: "icon.png" FRAME; + + image: "walker0a.png" FRAME; + image: "walker0b.png" FRAME; + image: "walker1a.png" FRAME; + image: "walker1b.png" FRAME; + image: "walker2a.png" FRAME; + image: "walker2b.png" FRAME; + image: "walker3a.png" FRAME; + image: "walker3b.png" FRAME; + image: "walker4a.png" FRAME; + image: "walker4b.png" FRAME; + image: "walker5a.png" FRAME; + image: "walker5b.png" FRAME; + image: "walker6a.png" FRAME; + image: "walker6b.png" FRAME; + image: "walker7a.png" FRAME; + image: "walker7b.png" FRAME; + + image: "faller0.png" FRAME; + image: "faller1.png" FRAME; + image: "faller2.png" FRAME; + image: "faller3.png" FRAME; + image: "faller4.png" FRAME; + image: "faller5.png" FRAME; + image: "faller6.png" FRAME; + image: "faller7.png" FRAME; + + image: "floater0.png" FRAME; + image: "floater1.png" FRAME; + image: "floater2.png" FRAME; + image: "floater3.png" FRAME; + image: "floater4.png" FRAME; + image: "floater5.png" FRAME; + image: "floater6.png" FRAME; + image: "floater7.png" FRAME; + + image: "climber0a.png" FRAME; + image: "climber1a.png" FRAME; + image: "climber2a.png" FRAME; + image: "climber3a.png" FRAME; + image: "climber4a.png" FRAME; + image: "climber5a.png" FRAME; + image: "climber6a.png" FRAME; + image: "climber7a.png" FRAME; + image: "climber0b.png" FRAME; + image: "climber1b.png" FRAME; + image: "climber2b.png" FRAME; + image: "climber3b.png" FRAME; + image: "climber4b.png" FRAME; + image: "climber5b.png" FRAME; + image: "climber6b.png" FRAME; + image: "climber7b.png" FRAME; + + image: "bomber0.png" FRAME; + image: "bomber1.png" FRAME; + image: "bomber2.png" FRAME; + image: "bomber3.png" FRAME; + image: "bomber4.png" FRAME; + image: "bomber5.png" FRAME; + image: "bomber6.png" FRAME; + image: "bomber7.png" FRAME; + image: "bomber8.png" FRAME; + image: "bomber9.png" FRAME; + image: "bomber10.png" FRAME; + image: "bomber11.png" FRAME; + image: "bomber12.png" FRAME; + image: "bomber13.png" FRAME; + image: "bomber14.png" FRAME; + image: "bomber15.png" FRAME; + + image: "splatter0.png" FRAME; + image: "splatter1.png" FRAME; + image: "splatter2.png" FRAME; + image: "splatter3.png" FRAME; + image: "splatter4.png" FRAME; + image: "splatter5.png" FRAME; + image: "splatter6.png" FRAME; + image: "splatter7.png" FRAME; + image: "splatter8.png" FRAME; + image: "splatter9.png" FRAME; + image: "splatter10.png" FRAME; + image: "splatter11.png" FRAME; + + image: "flyer0.png" FRAME; + image: "flyer1.png" FRAME; + image: "flyer2.png" FRAME; + image: "flyer3.png" FRAME; + image: "flyer4.png" FRAME; + image: "flyer5.png" FRAME; + image: "flyer6.png" FRAME; + image: "flyer7.png" FRAME; + + image: "digger0.png" FRAME; + image: "digger1.png" FRAME; + image: "digger2.png" FRAME; + image: "digger3.png" FRAME; + image: "digger4.png" FRAME; + image: "digger5.png" FRAME; + image: "digger6.png" FRAME; + image: "digger7.png" FRAME; + image: "digger8.png" FRAME; + image: "digger9.png" FRAME; + image: "digger10.png" FRAME; + image: "digger11.png" FRAME; + image: "digger12.png" FRAME; + image: "digger13.png" FRAME; + + image: "reader0.png" FRAME; + image: "reader1.png" FRAME; + image: "reader2.png" FRAME; + image: "reader3.png" FRAME; + image: "reader4.png" FRAME; + image: "reader5.png" FRAME; + image: "reader6.png" FRAME; + image: "reader7.png" FRAME; + image: "reader8.png" FRAME; + image: "reader9.png" FRAME; + image: "reader10.png" FRAME; + image: "reader11.png" FRAME; +} +data +{ + + item: "PopulationName" "Default penguins"; + + /************************************************************** + * Standard actions definitions. + * All this action MUST be defined + * + * Example + * item: "" "width height speed"; + * width: the width of the animation in pixel at zoom 1.0 + * height: the height of the animation in pixel at zoom 1.0 + * speed: the speed of the movement (not the frame rate) + * acceptable value are from 10 to 1000 + *************************************************************/ + item: "Faller" "30 30 600"; //600 + item: "Floater" "30 30 300"; //600 + item: "Walker" "30 30 150"; //90 + item: "Climber" "30 30 150"; + //item: "Bomber" "30 30 0"; + item: "Splatter" "30 30 0"; + item: "Flyer" "30 30 200"; + + /************************************************************** + * Custom actions definitions. + * Here you can define your own animation, how many you need. + * For each custom action defined you MUST also declare at least + * two program: 'start_custom_x_left' and 'start_custom_x_left' + * See the programs part in this file for details. + * + * Example + * item: "name" "width height h_speed v_speed r_min r_max"; + * + * name: + * The name must be 'Custom_x', where x is a progressive + * number starting a 1. + * In fact: Custom_1, Custom_2, .. , Custom_n + * + * width,height: the size of the animation in pixel at zoom 1.0x + * + * h_speed,v_speed: + * the speed of the movement on the 2 axis + * acceptable value are from 10 to 1000 + * + * r_min,r_max: + * The minimum and maximum number of times + * to repeat the animation. The anim will be looped a + * random number of times ranging from r_min to r_max. + * If r_min = r_max the animation is played exactly that + * number of times. + * Don't set this to 0 (it doesn't make sense) + *************************************************************/ + item: "Custom_1" "30 30 0 0 2 5"; //digger + item: "Custom_2" "30 30 0 0 10 15"; //reader + // item: "Custom_2" "30 30 202 202"; + // item: "Custom_3" "30 30 203 203"; +} +collections +{ + group + { + name: "icon"; + parts + { + part + { + name: "icon_"; + type: IMAGE; + mouse_events: 0; + description + { + state: "default" 0.0; + color: 255 255 255 255; + rel1 + { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 + { + relative: 1.0 1.0; + offset: 0 0; + } + image { + normal: "icon.png"; + } + } + } + } + } + group + { + name: "anims"; + parts + { + part + { + name: "penguins"; + type: IMAGE; + mouse_events: 0; + description + { + state: "default" 0.0; + color: 255 255 255 255; + rel1 + { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 + { + relative: 1.0 1.0; + offset: 0 0; + } + image { + normal: "walker1a.png"; + } + } + description + { + state: "walker" 0.0; + image { + normal: "walker0a.png"; + tween: "walker1a.png"; + tween: "walker2a.png"; + tween: "walker3a.png"; + tween: "walker4a.png"; + tween: "walker5a.png"; + tween: "walker6a.png"; + tween: "walker7a.png"; + } + } + description + { + state: "walker" 1.0; + image { + normal: "walker0b.png"; + tween: "walker1b.png"; + tween: "walker2b.png"; + tween: "walker3b.png"; + tween: "walker4b.png"; + tween: "walker5b.png"; + tween: "walker6b.png"; + tween: "walker7b.png"; + } + } + description + { + state: "faller" 0.0; + image { + normal: "faller0.png"; + tween: "faller1.png"; + tween: "faller2.png"; + tween: "faller3.png"; + tween: "faller4.png"; + tween: "faller5.png"; + tween: "faller6.png"; + tween: "faller7.png"; + } + } + description + { + state: "faller" 1.0; + image { + normal: "faller0.png"; + tween: "faller1.png"; + tween: "faller2.png"; + tween: "faller3.png"; + tween: "faller4.png"; + tween: "faller5.png"; + tween: "faller6.png"; + tween: "faller7.png"; + } + } + description + { + state: "floater" 0.0; + image { + normal: "floater0.png"; + tween: "floater1.png"; + tween: "floater2.png"; + tween: "floater3.png"; + tween: "floater4.png"; + tween: "floater5.png"; + tween: "floater6.png"; + tween: "floater7.png"; + } + } + description + { + state: "floater" 1.0; + image { + normal: "floater0.png"; + tween: "floater1.png"; + tween: "floater2.png"; + tween: "floater3.png"; + tween: "floater4.png"; + tween: "floater5.png"; + tween: "floater6.png"; + tween: "floater7.png"; + } + } + description + { + state: "climber" 0.0; + image { + normal: "climber0a.png"; + tween: "climber1a.png"; + tween: "climber2a.png"; + tween: "climber3a.png"; + tween: "climber4a.png"; + tween: "climber5a.png"; + tween: "climber6a.png"; + tween: "climber7a.png"; + } + } + description + { + state: "climber" 1.0; + image { + normal: "climber0b.png"; + tween: "climber1b.png"; + tween: "climber2b.png"; + tween: "climber3b.png"; + tween: "climber4b.png"; + tween: "climber5b.png"; + tween: "climber6b.png"; + tween: "climber7b.png"; + } + } + description + { + state: "bomber" 0.0; + image { + normal: "bomber0.png"; + tween: "bomber1.png"; + tween: "bomber2.png"; + tween: "bomber3.png"; + tween: "bomber4.png"; + tween: "bomber5.png"; + tween: "bomber6.png"; + tween: "bomber7.png"; + tween: "bomber8.png"; + tween: "bomber9.png"; + tween: "bomber10.png"; + tween: "bomber11.png"; + tween: "bomber12.png"; + tween: "bomber13.png"; + tween: "bomber14.png"; + tween: "bomber15.png"; + + } + } + description + { + state: "bomber" 1.0; + image { + normal: "bomber0.png"; + tween: "bomber1.png"; + tween: "bomber2.png"; + tween: "bomber3.png"; + tween: "bomber4.png"; + tween: "bomber5.png"; + tween: "bomber6.png"; + tween: "bomber7.png"; + tween: "bomber8.png"; + tween: "bomber9.png"; + tween: "bomber10.png"; + tween: "bomber11.png"; + tween: "bomber12.png"; + tween: "bomber13.png"; + tween: "bomber14.png"; + tween: "bomber15.png"; + } + } + description + { + state: "splatter" 0.0; + image { + normal: "splatter11.png"; + tween: "splatter0.png"; + tween: "splatter1.png"; + tween: "splatter2.png"; + tween: "splatter3.png"; + tween: "splatter4.png"; + tween: "splatter5.png"; + tween: "splatter6.png"; + tween: "splatter7.png"; + tween: "splatter8.png"; + tween: "splatter9.png"; + tween: "splatter10.png"; + } + } + description + { + state: "splatter" 1.0; + image { + normal: "splatter11.png"; + tween: "splatter0.png"; + tween: "splatter1.png"; + tween: "splatter2.png"; + tween: "splatter3.png"; + tween: "splatter4.png"; + tween: "splatter5.png"; + tween: "splatter6.png"; + tween: "splatter7.png"; + tween: "splatter8.png"; + tween: "splatter9.png"; + tween: "splatter10.png"; + } + } + description + { + state: "flyer" 0.0; + image { + normal: "flyer0.png"; + tween: "flyer1.png"; + tween: "flyer2.png"; + tween: "flyer3.png"; + tween: "flyer4.png"; + tween: "flyer5.png"; + tween: "flyer6.png"; + tween: "flyer7.png"; + + } + } + description + { + state: "flyer" 1.0; + image { + normal: "flyer0.png"; + tween: "flyer1.png"; + tween: "flyer2.png"; + tween: "flyer3.png"; + tween: "flyer4.png"; + tween: "flyer5.png"; + tween: "flyer6.png"; + tween: "flyer7.png"; + } + } + description + { + state: "custom_1" 0.0; + image { + normal: "digger0.png"; + tween: "digger1.png"; + tween: "digger2.png"; + tween: "digger3.png"; + tween: "digger4.png"; + tween: "digger5.png"; + tween: "digger6.png"; + tween: "digger7.png"; + tween: "digger8.png"; + tween: "digger9.png"; + tween: "digger10.png"; + tween: "digger11.png"; + tween: "digger12.png"; + tween: "digger13.png"; + } + } + description + { + state: "custom_1" 1.0; + image { + normal: "digger0.png"; + tween: "digger1.png"; + tween: "digger2.png"; + tween: "digger3.png"; + tween: "digger4.png"; + tween: "digger5.png"; + tween: "digger6.png"; + tween: "digger7.png"; + tween: "digger8.png"; + tween: "digger9.png"; + tween: "digger10.png"; + tween: "digger11.png"; + tween: "digger12.png"; + tween: "digger13.png"; + } + } + description + { + state: "reader" 0.0; + image { + normal: "reader0.png"; + tween: "reader1.png"; + tween: "reader2.png"; + tween: "reader3.png"; + tween: "reader4.png"; + tween: "reader5.png"; + tween: "reader6.png"; + tween: "reader7.png"; + tween: "reader8.png"; + tween: "reader9.png"; + tween: "reader10.png"; + tween: "reader11.png"; + + } + } + } + } + programs //**************************** + { + program + { + name: "stop_all"; + action: ACTION_STOP; + target: "falling_left"; + target: "falling_right"; + target: "walking_left"; + target: "walking_right"; + target: "climbing_left"; + target: "climbing_right"; + target: "floating_left"; + target: "floating_right"; + } + /**************************** + * Faller + ****************************/ + program + { + name: "start_falling_right"; + signal: "start_falling_right"; + source: "epenguins"; + action: STATE_SET "faller" 0.0; + transition: LINEAR 0; + target: "penguins"; + after: "stop_all"; + after: "falling_right"; + } + program + { + name: "falling_right"; + action: STATE_SET "faller" 0.0; + transition: LINEAR 0.5; + target: "penguins"; + after: "falling_right"; + } + program + { + name: "start_falling_left"; + signal: "start_falling_left"; + source: "epenguins"; + action: STATE_SET "faller" 1.0; + transition: LINEAR 0; + target: "penguins"; + after: "stop_all"; + after: "falling_left"; + } + program + { + name: "falling_left"; + action: STATE_SET "faller" 1.0; + transition: LINEAR 0.5; + target: "penguins"; + after: "falling_left"; + } + /**************************** + * Floater + ****************************/ + program + { + name: "start_floating_right"; + signal: "start_floating_right"; + source: "epenguins"; + action: STATE_SET "floater" 0.0; + transition: LINEAR 0; + target: "penguins"; + after: "stop_all"; + after: "floating_right"; + } + program + { + name: "floating_right"; + action: STATE_SET "floater" 0.0; + transition: LINEAR 0.25; + target: "penguins"; + after: "floating_right"; + } + program + { + name: "start_floating_left"; + signal: "start_floating_left"; + source: "epenguins"; + action: STATE_SET "floater" 1.0; + transition: LINEAR 0; + target: "penguins"; + after: "stop_all"; + after: "floating_left"; + } + program + { + name: "floating_left"; + action: STATE_SET "floater" 1.0; + transition: LINEAR 0.25; + target: "penguins"; + after: "floating_left"; + } + /**************************** + * Walker + ****************************/ + program + { + name: "start_walking_right"; + signal: "start_walking_right"; + source: "epenguins"; + action: STATE_SET "walker" 0.0; + transition: LINEAR 0; + target: "penguins"; + after: "stop_all"; + after: "walking_right"; + } + program + { + name: "walking_right"; + action: STATE_SET "walker" 0.0; + transition: LINEAR 0.8; + target: "penguins"; + after: "walking_right"; + } + program + { + name: "start_walking_left"; + signal: "start_walking_left"; + source: "epenguins"; + action: STATE_SET "walker" 1.0; + transition: LINEAR 0; + target: "penguins"; + after: "stop_all"; + after: "walking_left"; + } + program + { + name: "walking_left"; + action: STATE_SET "walker" 1.0; + transition: LINEAR 0.8; + target: "penguins"; + after: "walking_left"; + } + /**************************** + * Climber + ****************************/ + program + { + name: "start_climbing_right"; + signal: "start_climbing_right"; + source: "epenguins"; + action: STATE_SET "climber" 0.0; + transition: LINEAR 0; + target: "penguins"; + after: "stop_all"; + after: "climbing_right"; + } + program + { + name: "climbing_right"; + action: STATE_SET "climber" 0.0; + transition: LINEAR 1; + target: "penguins"; + after: "climbing_right"; + } + program + { + name: "start_climbing_left"; + signal: "start_climbing_left"; + source: "epenguins"; + action: STATE_SET "climber" 1.0; + transition: LINEAR 0; + target: "penguins"; + after: "stop_all"; + after: "climbing_left"; + } + program + { + name: "climbing_left"; + action: STATE_SET "climber" 1.0; + transition: LINEAR 1; + target: "penguins"; + after: "climbing_left"; + } + /**************************** + * Flyer + ****************************/ + program + { + name: "start_flying_right"; + signal: "start_flying_right"; + source: "epenguins"; + action: STATE_SET "flyer" 0.0; + transition: LINEAR 0; + target: "penguins"; + after: "stop_all"; + after: "flying_right"; + } + program + { + name: "flying_right"; + action: STATE_SET "flyer" 0.0; + transition: LINEAR 1; + target: "penguins"; + after: "flying_right"; + } + program + { + name: "start_flying_left"; + signal: "start_flying_left"; + source: "epenguins"; + action: STATE_SET "flyer" 1.0; + transition: LINEAR 0; + target: "penguins"; + after: "stop_all"; + after: "flying_left"; + } + program + { + name: "flying_left"; + action: STATE_SET "flyer" 1.0; + transition: LINEAR 1; + target: "penguins"; + after: "flying_left"; + } + /**************************** + * Bomber + ****************************/ + program + { + name: "start_bombing_right"; + signal: "start_bombing_right"; + source: "epenguins"; + action: STATE_SET "bomber" 0.0; + transition: LINEAR 0; + target: "penguins"; + after: "stop_all"; + after: "bombing_right"; + } + program + { + name: "bombing_right"; + action: STATE_SET "bomber" 0.0; + transition: LINEAR 1; + target: "penguins"; + after: "bombing_right"; + } + program + { + name: "start_bombing_left"; + signal: "start_bombing_left"; + source: "epenguins"; + action: STATE_SET "bomber" 1.0; + transition: LINEAR 0; + target: "penguins"; + after: "stop_all"; + after: "bombing_left"; + } + program + { + name: "bombing_left"; + action: STATE_SET "bomber" 1.0; + transition: LINEAR 1; + target: "penguins"; + after: "bombing_left"; + } + /**************************** + * Splatter + ****************************/ + program + { + name: "start_splatting_right"; + signal: "start_splatting_right"; + source: "epenguins"; + action: STATE_SET "splatter" 0.0; + transition: LINEAR 1; + target: "penguins"; + after: "stop_all"; + after: "splatting_done"; + } + program + { + name: "start_splatting_left"; + signal: "start_splatting_left"; + source: "epenguins"; + action: STATE_SET "splatter" 1.0; + transition: LINEAR 1; + target: "penguins"; + after: "stop_all"; + after: "splatting_done"; + } + program + { + name: "splatting_done"; + action: SIGNAL_EMIT "splatting_done" "edje"; + } + /***************************************** + * Customs programs + * Every teme must have this program set + *****************************************/ + program + { + name: "custom_done"; + action: SIGNAL_EMIT "custom_done" "edje"; + } + /**************************** + * Custom_1 - digger + ****************************/ + program + { + name: "start_custom_1_right"; + signal: "start_custom_1_right"; + source: "epenguins"; + action: STATE_SET "custom_1" 0.0; + transition: LINEAR 1; + target: "penguins"; + after: "stop_all"; + after: "custom_done"; + } + program + { + name: "start_custom_1_left"; + signal: "start_custom_1_left"; + source: "epenguins"; + action: STATE_SET "custom_1" 1.0; + transition: LINEAR 1; + target: "penguins"; + after: "stop_all"; + after: "custom_done"; + } + /**************************** + * Custom_2 - reader + ****************************/ + program + { + name: "start_custom_2_right"; + signal: "start_custom_2_right"; + source: "epenguins"; + action: STATE_SET "reader" 0.0; + transition: LINEAR 1; + target: "penguins"; + after: "stop_all"; + after: "custom_done"; + } + program + { + name: "start_custom_2_left"; + signal: "start_custom_2_left"; + source: "epenguins"; + action: STATE_SET "reader" 0.0; + transition: LINEAR 1; + target: "penguins"; + after: "stop_all"; + after: "custom_done"; + } + } + } +} diff --git a/themes/default/digger.png b/themes/default/digger.png new file mode 100644 index 0000000..08f1751 Binary files /dev/null and b/themes/default/digger.png differ diff --git a/themes/default/digger0.png b/themes/default/digger0.png new file mode 100644 index 0000000..695430c Binary files /dev/null and b/themes/default/digger0.png differ diff --git a/themes/default/digger1.png b/themes/default/digger1.png new file mode 100644 index 0000000..7efddc9 Binary files /dev/null and b/themes/default/digger1.png differ diff --git a/themes/default/digger10.png b/themes/default/digger10.png new file mode 100644 index 0000000..4aa1b91 Binary files /dev/null and b/themes/default/digger10.png differ diff --git a/themes/default/digger11.png b/themes/default/digger11.png new file mode 100644 index 0000000..19cc51f Binary files /dev/null and b/themes/default/digger11.png differ diff --git a/themes/default/digger12.png b/themes/default/digger12.png new file mode 100644 index 0000000..a867ca2 Binary files /dev/null and b/themes/default/digger12.png differ diff --git a/themes/default/digger13.png b/themes/default/digger13.png new file mode 100644 index 0000000..19f635d Binary files /dev/null and b/themes/default/digger13.png differ diff --git a/themes/default/digger2.png b/themes/default/digger2.png new file mode 100644 index 0000000..7070a8b Binary files /dev/null and b/themes/default/digger2.png differ diff --git a/themes/default/digger3.png b/themes/default/digger3.png new file mode 100644 index 0000000..f1d398e Binary files /dev/null and b/themes/default/digger3.png differ diff --git a/themes/default/digger4.png b/themes/default/digger4.png new file mode 100644 index 0000000..00d15b7 Binary files /dev/null and b/themes/default/digger4.png differ diff --git a/themes/default/digger5.png b/themes/default/digger5.png new file mode 100644 index 0000000..dcdc44d Binary files /dev/null and b/themes/default/digger5.png differ diff --git a/themes/default/digger6.png b/themes/default/digger6.png new file mode 100644 index 0000000..e068e73 Binary files /dev/null and b/themes/default/digger6.png differ diff --git a/themes/default/digger7.png b/themes/default/digger7.png new file mode 100644 index 0000000..a701263 Binary files /dev/null and b/themes/default/digger7.png differ diff --git a/themes/default/digger8.png b/themes/default/digger8.png new file mode 100644 index 0000000..3e189d9 Binary files /dev/null and b/themes/default/digger8.png differ diff --git a/themes/default/digger9.png b/themes/default/digger9.png new file mode 100644 index 0000000..19430e2 Binary files /dev/null and b/themes/default/digger9.png differ diff --git a/themes/default/faller.png b/themes/default/faller.png new file mode 100644 index 0000000..e51a3d8 Binary files /dev/null and b/themes/default/faller.png differ diff --git a/themes/default/faller0.png b/themes/default/faller0.png new file mode 100644 index 0000000..d2c27c7 Binary files /dev/null and b/themes/default/faller0.png differ diff --git a/themes/default/faller1.png b/themes/default/faller1.png new file mode 100644 index 0000000..864b556 Binary files /dev/null and b/themes/default/faller1.png differ diff --git a/themes/default/faller2.png b/themes/default/faller2.png new file mode 100644 index 0000000..40721a0 Binary files /dev/null and b/themes/default/faller2.png differ diff --git a/themes/default/faller3.png b/themes/default/faller3.png new file mode 100644 index 0000000..39e0c21 Binary files /dev/null and b/themes/default/faller3.png differ diff --git a/themes/default/faller4.png b/themes/default/faller4.png new file mode 100644 index 0000000..74952b1 Binary files /dev/null and b/themes/default/faller4.png differ diff --git a/themes/default/faller5.png b/themes/default/faller5.png new file mode 100644 index 0000000..0568362 Binary files /dev/null and b/themes/default/faller5.png differ diff --git a/themes/default/faller6.png b/themes/default/faller6.png new file mode 100644 index 0000000..4929b7e Binary files /dev/null and b/themes/default/faller6.png differ diff --git a/themes/default/faller7.png b/themes/default/faller7.png new file mode 100644 index 0000000..563374f Binary files /dev/null and b/themes/default/faller7.png differ diff --git a/themes/default/floater.png b/themes/default/floater.png new file mode 100644 index 0000000..1fb7dba Binary files /dev/null and b/themes/default/floater.png differ diff --git a/themes/default/floater0.png b/themes/default/floater0.png new file mode 100644 index 0000000..92c2844 Binary files /dev/null and b/themes/default/floater0.png differ diff --git a/themes/default/floater1.png b/themes/default/floater1.png new file mode 100644 index 0000000..e7d5d6a Binary files /dev/null and b/themes/default/floater1.png differ diff --git a/themes/default/floater2.png b/themes/default/floater2.png new file mode 100644 index 0000000..c2fa85f Binary files /dev/null and b/themes/default/floater2.png differ diff --git a/themes/default/floater3.png b/themes/default/floater3.png new file mode 100644 index 0000000..a2fcccd Binary files /dev/null and b/themes/default/floater3.png differ diff --git a/themes/default/floater4.png b/themes/default/floater4.png new file mode 100644 index 0000000..73f535d Binary files /dev/null and b/themes/default/floater4.png differ diff --git a/themes/default/floater5.png b/themes/default/floater5.png new file mode 100644 index 0000000..065126e Binary files /dev/null and b/themes/default/floater5.png differ diff --git a/themes/default/floater6.png b/themes/default/floater6.png new file mode 100644 index 0000000..c023e46 Binary files /dev/null and b/themes/default/floater6.png differ diff --git a/themes/default/floater7.png b/themes/default/floater7.png new file mode 100644 index 0000000..4346a41 Binary files /dev/null and b/themes/default/floater7.png differ diff --git a/themes/default/flyer.png b/themes/default/flyer.png new file mode 100644 index 0000000..d04f8c0 Binary files /dev/null and b/themes/default/flyer.png differ diff --git a/themes/default/flyer0.png b/themes/default/flyer0.png new file mode 100644 index 0000000..fb250e8 Binary files /dev/null and b/themes/default/flyer0.png differ diff --git a/themes/default/flyer1.png b/themes/default/flyer1.png new file mode 100644 index 0000000..2b366a4 Binary files /dev/null and b/themes/default/flyer1.png differ diff --git a/themes/default/flyer2.png b/themes/default/flyer2.png new file mode 100644 index 0000000..d73d9d2 Binary files /dev/null and b/themes/default/flyer2.png differ diff --git a/themes/default/flyer3.png b/themes/default/flyer3.png new file mode 100644 index 0000000..46494db Binary files /dev/null and b/themes/default/flyer3.png differ diff --git a/themes/default/flyer4.png b/themes/default/flyer4.png new file mode 100644 index 0000000..265851e Binary files /dev/null and b/themes/default/flyer4.png differ diff --git a/themes/default/flyer5.png b/themes/default/flyer5.png new file mode 100644 index 0000000..69868a7 Binary files /dev/null and b/themes/default/flyer5.png differ diff --git a/themes/default/flyer6.png b/themes/default/flyer6.png new file mode 100644 index 0000000..86926c0 Binary files /dev/null and b/themes/default/flyer6.png differ diff --git a/themes/default/flyer7.png b/themes/default/flyer7.png new file mode 100644 index 0000000..c115fd5 Binary files /dev/null and b/themes/default/flyer7.png differ diff --git a/themes/default/icon.png b/themes/default/icon.png new file mode 100644 index 0000000..3f18df0 Binary files /dev/null and b/themes/default/icon.png differ diff --git a/themes/default/reader.png b/themes/default/reader.png new file mode 100644 index 0000000..60b0c5b Binary files /dev/null and b/themes/default/reader.png differ diff --git a/themes/default/reader0.png b/themes/default/reader0.png new file mode 100644 index 0000000..66556fb Binary files /dev/null and b/themes/default/reader0.png differ diff --git a/themes/default/reader1.png b/themes/default/reader1.png new file mode 100644 index 0000000..66556fb Binary files /dev/null and b/themes/default/reader1.png differ diff --git a/themes/default/reader10.png b/themes/default/reader10.png new file mode 100644 index 0000000..2b9492f Binary files /dev/null and b/themes/default/reader10.png differ diff --git a/themes/default/reader11.png b/themes/default/reader11.png new file mode 100644 index 0000000..0c3cad6 Binary files /dev/null and b/themes/default/reader11.png differ diff --git a/themes/default/reader2.png b/themes/default/reader2.png new file mode 100644 index 0000000..7b099d2 Binary files /dev/null and b/themes/default/reader2.png differ diff --git a/themes/default/reader3.png b/themes/default/reader3.png new file mode 100644 index 0000000..7b099d2 Binary files /dev/null and b/themes/default/reader3.png differ diff --git a/themes/default/reader4.png b/themes/default/reader4.png new file mode 100644 index 0000000..2b9492f Binary files /dev/null and b/themes/default/reader4.png differ diff --git a/themes/default/reader5.png b/themes/default/reader5.png new file mode 100644 index 0000000..2b9492f Binary files /dev/null and b/themes/default/reader5.png differ diff --git a/themes/default/reader6.png b/themes/default/reader6.png new file mode 100644 index 0000000..8471a2e Binary files /dev/null and b/themes/default/reader6.png differ diff --git a/themes/default/reader7.png b/themes/default/reader7.png new file mode 100644 index 0000000..8471a2e Binary files /dev/null and b/themes/default/reader7.png differ diff --git a/themes/default/reader8.png b/themes/default/reader8.png new file mode 100644 index 0000000..56c08cf Binary files /dev/null and b/themes/default/reader8.png differ diff --git a/themes/default/reader9.png b/themes/default/reader9.png new file mode 100644 index 0000000..56c08cf Binary files /dev/null and b/themes/default/reader9.png differ diff --git a/themes/default/splatter.png b/themes/default/splatter.png new file mode 100644 index 0000000..d3b4dda Binary files /dev/null and b/themes/default/splatter.png differ diff --git a/themes/default/splatter0.png b/themes/default/splatter0.png new file mode 100644 index 0000000..c0d56cd Binary files /dev/null and b/themes/default/splatter0.png differ diff --git a/themes/default/splatter1.png b/themes/default/splatter1.png new file mode 100644 index 0000000..05a8e28 Binary files /dev/null and b/themes/default/splatter1.png differ diff --git a/themes/default/splatter10.png b/themes/default/splatter10.png new file mode 100644 index 0000000..cf8124e Binary files /dev/null and b/themes/default/splatter10.png differ diff --git a/themes/default/splatter11.png b/themes/default/splatter11.png new file mode 100644 index 0000000..e434c70 Binary files /dev/null and b/themes/default/splatter11.png differ diff --git a/themes/default/splatter2.png b/themes/default/splatter2.png new file mode 100644 index 0000000..cf72c4c Binary files /dev/null and b/themes/default/splatter2.png differ diff --git a/themes/default/splatter3.png b/themes/default/splatter3.png new file mode 100644 index 0000000..769578d Binary files /dev/null and b/themes/default/splatter3.png differ diff --git a/themes/default/splatter4.png b/themes/default/splatter4.png new file mode 100644 index 0000000..37fcd7f Binary files /dev/null and b/themes/default/splatter4.png differ diff --git a/themes/default/splatter5.png b/themes/default/splatter5.png new file mode 100644 index 0000000..e709029 Binary files /dev/null and b/themes/default/splatter5.png differ diff --git a/themes/default/splatter6.png b/themes/default/splatter6.png new file mode 100644 index 0000000..7d23e8f Binary files /dev/null and b/themes/default/splatter6.png differ diff --git a/themes/default/splatter7.png b/themes/default/splatter7.png new file mode 100644 index 0000000..962f5ad Binary files /dev/null and b/themes/default/splatter7.png differ diff --git a/themes/default/splatter8.png b/themes/default/splatter8.png new file mode 100644 index 0000000..5b13ecc Binary files /dev/null and b/themes/default/splatter8.png differ diff --git a/themes/default/splatter9.png b/themes/default/splatter9.png new file mode 100644 index 0000000..ad92767 Binary files /dev/null and b/themes/default/splatter9.png differ diff --git a/themes/default/walker.png b/themes/default/walker.png new file mode 100644 index 0000000..7152346 Binary files /dev/null and b/themes/default/walker.png differ diff --git a/themes/default/walker0a.png b/themes/default/walker0a.png new file mode 100644 index 0000000..efed89b Binary files /dev/null and b/themes/default/walker0a.png differ diff --git a/themes/default/walker0b.png b/themes/default/walker0b.png new file mode 100644 index 0000000..d3299f2 Binary files /dev/null and b/themes/default/walker0b.png differ diff --git a/themes/default/walker1a.png b/themes/default/walker1a.png new file mode 100644 index 0000000..0180066 Binary files /dev/null and b/themes/default/walker1a.png differ diff --git a/themes/default/walker1b.png b/themes/default/walker1b.png new file mode 100644 index 0000000..8ab1a3c Binary files /dev/null and b/themes/default/walker1b.png differ diff --git a/themes/default/walker2a.png b/themes/default/walker2a.png new file mode 100644 index 0000000..0793290 Binary files /dev/null and b/themes/default/walker2a.png differ diff --git a/themes/default/walker2b.png b/themes/default/walker2b.png new file mode 100644 index 0000000..eb73fb2 Binary files /dev/null and b/themes/default/walker2b.png differ diff --git a/themes/default/walker3a.png b/themes/default/walker3a.png new file mode 100644 index 0000000..f2e0af3 Binary files /dev/null and b/themes/default/walker3a.png differ diff --git a/themes/default/walker3b.png b/themes/default/walker3b.png new file mode 100644 index 0000000..3cf2d4d Binary files /dev/null and b/themes/default/walker3b.png differ diff --git a/themes/default/walker4a.png b/themes/default/walker4a.png new file mode 100644 index 0000000..ed78fbc Binary files /dev/null and b/themes/default/walker4a.png differ diff --git a/themes/default/walker4b.png b/themes/default/walker4b.png new file mode 100644 index 0000000..848ea6d Binary files /dev/null and b/themes/default/walker4b.png differ diff --git a/themes/default/walker5a.png b/themes/default/walker5a.png new file mode 100644 index 0000000..ea8487d Binary files /dev/null and b/themes/default/walker5a.png differ diff --git a/themes/default/walker5b.png b/themes/default/walker5b.png new file mode 100644 index 0000000..212c993 Binary files /dev/null and b/themes/default/walker5b.png differ diff --git a/themes/default/walker6a.png b/themes/default/walker6a.png new file mode 100644 index 0000000..ec4606c Binary files /dev/null and b/themes/default/walker6a.png differ diff --git a/themes/default/walker6b.png b/themes/default/walker6b.png new file mode 100644 index 0000000..f8c01de Binary files /dev/null and b/themes/default/walker6b.png differ diff --git a/themes/default/walker7a.png b/themes/default/walker7a.png new file mode 100644 index 0000000..b486527 Binary files /dev/null and b/themes/default/walker7a.png differ diff --git a/themes/default/walker7b.png b/themes/default/walker7b.png new file mode 100644 index 0000000..ec8603e Binary files /dev/null and b/themes/default/walker7b.png differ diff --git a/themes/lemmings/Makefile.am b/themes/lemmings/Makefile.am new file mode 100644 index 0000000..e484bb1 --- /dev/null +++ b/themes/lemmings/Makefile.am @@ -0,0 +1,22 @@ +THEME = lemmings +EDC = $(THEME).edc +EDJ = $(THEME).edj +SUFFIXES = .edc .edj +MAINTAINERCLEANFILES = Makefile.in +CLEANFILES = $(EDJ) + +pkgdatadir = $(datadir) +themedir = $(pkgdatadir)/themes +theme_DATA = $(EDJ) + +all: $(EDJ) + +.edc.edj: + edje_cc -v -id $(top_srcdir)/themes/$(THEME) -fd $(top_srcdir)/themes/$(THEME) $< $@ + +EXTRA_DIST = \ +default.edc \ +Makefile + +dist-hook: + rm -rf `find $(distdir) -name CVS` diff --git a/themes/lemmings/basher.png b/themes/lemmings/basher.png new file mode 100644 index 0000000..499a33e Binary files /dev/null and b/themes/lemmings/basher.png differ diff --git a/themes/lemmings/basher0a.png b/themes/lemmings/basher0a.png new file mode 100644 index 0000000..3738e43 Binary files /dev/null and b/themes/lemmings/basher0a.png differ diff --git a/themes/lemmings/basher0b.png b/themes/lemmings/basher0b.png new file mode 100644 index 0000000..3102f18 Binary files /dev/null and b/themes/lemmings/basher0b.png differ diff --git a/themes/lemmings/basher10a.png b/themes/lemmings/basher10a.png new file mode 100644 index 0000000..a96c7c1 Binary files /dev/null and b/themes/lemmings/basher10a.png differ diff --git a/themes/lemmings/basher10b.png b/themes/lemmings/basher10b.png new file mode 100644 index 0000000..26ebcd2 Binary files /dev/null and b/themes/lemmings/basher10b.png differ diff --git a/themes/lemmings/basher11a.png b/themes/lemmings/basher11a.png new file mode 100644 index 0000000..afd4672 Binary files /dev/null and b/themes/lemmings/basher11a.png differ diff --git a/themes/lemmings/basher11b.png b/themes/lemmings/basher11b.png new file mode 100644 index 0000000..decd7eb Binary files /dev/null and b/themes/lemmings/basher11b.png differ diff --git a/themes/lemmings/basher12a.png b/themes/lemmings/basher12a.png new file mode 100644 index 0000000..9889af7 Binary files /dev/null and b/themes/lemmings/basher12a.png differ diff --git a/themes/lemmings/basher12b.png b/themes/lemmings/basher12b.png new file mode 100644 index 0000000..13ef6af Binary files /dev/null and b/themes/lemmings/basher12b.png differ diff --git a/themes/lemmings/basher13a.png b/themes/lemmings/basher13a.png new file mode 100644 index 0000000..87734e9 Binary files /dev/null and b/themes/lemmings/basher13a.png differ diff --git a/themes/lemmings/basher13b.png b/themes/lemmings/basher13b.png new file mode 100644 index 0000000..f45ca5a Binary files /dev/null and b/themes/lemmings/basher13b.png differ diff --git a/themes/lemmings/basher14a.png b/themes/lemmings/basher14a.png new file mode 100644 index 0000000..1b3eeec Binary files /dev/null and b/themes/lemmings/basher14a.png differ diff --git a/themes/lemmings/basher14b.png b/themes/lemmings/basher14b.png new file mode 100644 index 0000000..dad2608 Binary files /dev/null and b/themes/lemmings/basher14b.png differ diff --git a/themes/lemmings/basher15a.png b/themes/lemmings/basher15a.png new file mode 100644 index 0000000..2ea23be Binary files /dev/null and b/themes/lemmings/basher15a.png differ diff --git a/themes/lemmings/basher15b.png b/themes/lemmings/basher15b.png new file mode 100644 index 0000000..6f7ba80 Binary files /dev/null and b/themes/lemmings/basher15b.png differ diff --git a/themes/lemmings/basher16a.png b/themes/lemmings/basher16a.png new file mode 100644 index 0000000..035a78d Binary files /dev/null and b/themes/lemmings/basher16a.png differ diff --git a/themes/lemmings/basher16b.png b/themes/lemmings/basher16b.png new file mode 100644 index 0000000..7b4eb60 Binary files /dev/null and b/themes/lemmings/basher16b.png differ diff --git a/themes/lemmings/basher17a.png b/themes/lemmings/basher17a.png new file mode 100644 index 0000000..a50e6de Binary files /dev/null and b/themes/lemmings/basher17a.png differ diff --git a/themes/lemmings/basher17b.png b/themes/lemmings/basher17b.png new file mode 100644 index 0000000..b618cee Binary files /dev/null and b/themes/lemmings/basher17b.png differ diff --git a/themes/lemmings/basher18a.png b/themes/lemmings/basher18a.png new file mode 100644 index 0000000..ce2c2fd Binary files /dev/null and b/themes/lemmings/basher18a.png differ diff --git a/themes/lemmings/basher18b.png b/themes/lemmings/basher18b.png new file mode 100644 index 0000000..28449a7 Binary files /dev/null and b/themes/lemmings/basher18b.png differ diff --git a/themes/lemmings/basher19a.png b/themes/lemmings/basher19a.png new file mode 100644 index 0000000..a7e362a Binary files /dev/null and b/themes/lemmings/basher19a.png differ diff --git a/themes/lemmings/basher19b.png b/themes/lemmings/basher19b.png new file mode 100644 index 0000000..a00a1fc Binary files /dev/null and b/themes/lemmings/basher19b.png differ diff --git a/themes/lemmings/basher1a.png b/themes/lemmings/basher1a.png new file mode 100644 index 0000000..26c91f7 Binary files /dev/null and b/themes/lemmings/basher1a.png differ diff --git a/themes/lemmings/basher1b.png b/themes/lemmings/basher1b.png new file mode 100644 index 0000000..eeb38a1 Binary files /dev/null and b/themes/lemmings/basher1b.png differ diff --git a/themes/lemmings/basher20a.png b/themes/lemmings/basher20a.png new file mode 100644 index 0000000..9c494c6 Binary files /dev/null and b/themes/lemmings/basher20a.png differ diff --git a/themes/lemmings/basher20b.png b/themes/lemmings/basher20b.png new file mode 100644 index 0000000..f647414 Binary files /dev/null and b/themes/lemmings/basher20b.png differ diff --git a/themes/lemmings/basher21a.png b/themes/lemmings/basher21a.png new file mode 100644 index 0000000..4429164 Binary files /dev/null and b/themes/lemmings/basher21a.png differ diff --git a/themes/lemmings/basher21b.png b/themes/lemmings/basher21b.png new file mode 100644 index 0000000..3bcc993 Binary files /dev/null and b/themes/lemmings/basher21b.png differ diff --git a/themes/lemmings/basher22a.png b/themes/lemmings/basher22a.png new file mode 100644 index 0000000..efb7720 Binary files /dev/null and b/themes/lemmings/basher22a.png differ diff --git a/themes/lemmings/basher22b.png b/themes/lemmings/basher22b.png new file mode 100644 index 0000000..5cbb165 Binary files /dev/null and b/themes/lemmings/basher22b.png differ diff --git a/themes/lemmings/basher23a.png b/themes/lemmings/basher23a.png new file mode 100644 index 0000000..d18f9fb Binary files /dev/null and b/themes/lemmings/basher23a.png differ diff --git a/themes/lemmings/basher23b.png b/themes/lemmings/basher23b.png new file mode 100644 index 0000000..38ebec1 Binary files /dev/null and b/themes/lemmings/basher23b.png differ diff --git a/themes/lemmings/basher24a.png b/themes/lemmings/basher24a.png new file mode 100644 index 0000000..b5fb222 Binary files /dev/null and b/themes/lemmings/basher24a.png differ diff --git a/themes/lemmings/basher24b.png b/themes/lemmings/basher24b.png new file mode 100644 index 0000000..91668c1 Binary files /dev/null and b/themes/lemmings/basher24b.png differ diff --git a/themes/lemmings/basher25a.png b/themes/lemmings/basher25a.png new file mode 100644 index 0000000..c192617 Binary files /dev/null and b/themes/lemmings/basher25a.png differ diff --git a/themes/lemmings/basher25b.png b/themes/lemmings/basher25b.png new file mode 100644 index 0000000..7db0d3d Binary files /dev/null and b/themes/lemmings/basher25b.png differ diff --git a/themes/lemmings/basher26a.png b/themes/lemmings/basher26a.png new file mode 100644 index 0000000..8a32b7a Binary files /dev/null and b/themes/lemmings/basher26a.png differ diff --git a/themes/lemmings/basher26b.png b/themes/lemmings/basher26b.png new file mode 100644 index 0000000..c24715b Binary files /dev/null and b/themes/lemmings/basher26b.png differ diff --git a/themes/lemmings/basher27a.png b/themes/lemmings/basher27a.png new file mode 100644 index 0000000..b4ce70f Binary files /dev/null and b/themes/lemmings/basher27a.png differ diff --git a/themes/lemmings/basher27b.png b/themes/lemmings/basher27b.png new file mode 100644 index 0000000..1c191fa Binary files /dev/null and b/themes/lemmings/basher27b.png differ diff --git a/themes/lemmings/basher2a.png b/themes/lemmings/basher2a.png new file mode 100644 index 0000000..1ec3b29 Binary files /dev/null and b/themes/lemmings/basher2a.png differ diff --git a/themes/lemmings/basher2b.png b/themes/lemmings/basher2b.png new file mode 100644 index 0000000..edb2239 Binary files /dev/null and b/themes/lemmings/basher2b.png differ diff --git a/themes/lemmings/basher3a.png b/themes/lemmings/basher3a.png new file mode 100644 index 0000000..3d5c873 Binary files /dev/null and b/themes/lemmings/basher3a.png differ diff --git a/themes/lemmings/basher3b.png b/themes/lemmings/basher3b.png new file mode 100644 index 0000000..f37c4e6 Binary files /dev/null and b/themes/lemmings/basher3b.png differ diff --git a/themes/lemmings/basher4a.png b/themes/lemmings/basher4a.png new file mode 100644 index 0000000..f9164b0 Binary files /dev/null and b/themes/lemmings/basher4a.png differ diff --git a/themes/lemmings/basher4b.png b/themes/lemmings/basher4b.png new file mode 100644 index 0000000..0096922 Binary files /dev/null and b/themes/lemmings/basher4b.png differ diff --git a/themes/lemmings/basher5a.png b/themes/lemmings/basher5a.png new file mode 100644 index 0000000..a0d9f5e Binary files /dev/null and b/themes/lemmings/basher5a.png differ diff --git a/themes/lemmings/basher5b.png b/themes/lemmings/basher5b.png new file mode 100644 index 0000000..f26d5db Binary files /dev/null and b/themes/lemmings/basher5b.png differ diff --git a/themes/lemmings/basher6a.png b/themes/lemmings/basher6a.png new file mode 100644 index 0000000..e06718b Binary files /dev/null and b/themes/lemmings/basher6a.png differ diff --git a/themes/lemmings/basher6b.png b/themes/lemmings/basher6b.png new file mode 100644 index 0000000..44e2181 Binary files /dev/null and b/themes/lemmings/basher6b.png differ diff --git a/themes/lemmings/basher7a.png b/themes/lemmings/basher7a.png new file mode 100644 index 0000000..36e081c Binary files /dev/null and b/themes/lemmings/basher7a.png differ diff --git a/themes/lemmings/basher7b.png b/themes/lemmings/basher7b.png new file mode 100644 index 0000000..8f1e423 Binary files /dev/null and b/themes/lemmings/basher7b.png differ diff --git a/themes/lemmings/basher8a.png b/themes/lemmings/basher8a.png new file mode 100644 index 0000000..16aad19 Binary files /dev/null and b/themes/lemmings/basher8a.png differ diff --git a/themes/lemmings/basher8b.png b/themes/lemmings/basher8b.png new file mode 100644 index 0000000..c86d298 Binary files /dev/null and b/themes/lemmings/basher8b.png differ diff --git a/themes/lemmings/basher9a.png b/themes/lemmings/basher9a.png new file mode 100644 index 0000000..a4400fa Binary files /dev/null and b/themes/lemmings/basher9a.png differ diff --git a/themes/lemmings/basher9b.png b/themes/lemmings/basher9b.png new file mode 100644 index 0000000..c6904cb Binary files /dev/null and b/themes/lemmings/basher9b.png differ diff --git a/themes/lemmings/blocker.png b/themes/lemmings/blocker.png new file mode 100644 index 0000000..250cf14 Binary files /dev/null and b/themes/lemmings/blocker.png differ diff --git a/themes/lemmings/blocker0a.png b/themes/lemmings/blocker0a.png new file mode 100644 index 0000000..bc9c64c Binary files /dev/null and b/themes/lemmings/blocker0a.png differ diff --git a/themes/lemmings/blocker0b.png b/themes/lemmings/blocker0b.png new file mode 100644 index 0000000..838d0c8 Binary files /dev/null and b/themes/lemmings/blocker0b.png differ diff --git a/themes/lemmings/blocker10a.png b/themes/lemmings/blocker10a.png new file mode 100644 index 0000000..b3000a5 Binary files /dev/null and b/themes/lemmings/blocker10a.png differ diff --git a/themes/lemmings/blocker10b.png b/themes/lemmings/blocker10b.png new file mode 100644 index 0000000..5b503cb Binary files /dev/null and b/themes/lemmings/blocker10b.png differ diff --git a/themes/lemmings/blocker11a.png b/themes/lemmings/blocker11a.png new file mode 100644 index 0000000..9569f19 Binary files /dev/null and b/themes/lemmings/blocker11a.png differ diff --git a/themes/lemmings/blocker11b.png b/themes/lemmings/blocker11b.png new file mode 100644 index 0000000..c5877c6 Binary files /dev/null and b/themes/lemmings/blocker11b.png differ diff --git a/themes/lemmings/blocker1a.png b/themes/lemmings/blocker1a.png new file mode 100644 index 0000000..3729eb9 Binary files /dev/null and b/themes/lemmings/blocker1a.png differ diff --git a/themes/lemmings/blocker1b.png b/themes/lemmings/blocker1b.png new file mode 100644 index 0000000..c0b181c Binary files /dev/null and b/themes/lemmings/blocker1b.png differ diff --git a/themes/lemmings/blocker2a.png b/themes/lemmings/blocker2a.png new file mode 100644 index 0000000..7f282fc Binary files /dev/null and b/themes/lemmings/blocker2a.png differ diff --git a/themes/lemmings/blocker2b.png b/themes/lemmings/blocker2b.png new file mode 100644 index 0000000..bb0f261 Binary files /dev/null and b/themes/lemmings/blocker2b.png differ diff --git a/themes/lemmings/blocker3a.png b/themes/lemmings/blocker3a.png new file mode 100644 index 0000000..446e318 Binary files /dev/null and b/themes/lemmings/blocker3a.png differ diff --git a/themes/lemmings/blocker3b.png b/themes/lemmings/blocker3b.png new file mode 100644 index 0000000..e3d4b95 Binary files /dev/null and b/themes/lemmings/blocker3b.png differ diff --git a/themes/lemmings/blocker4a.png b/themes/lemmings/blocker4a.png new file mode 100644 index 0000000..52b1a11 Binary files /dev/null and b/themes/lemmings/blocker4a.png differ diff --git a/themes/lemmings/blocker4b.png b/themes/lemmings/blocker4b.png new file mode 100644 index 0000000..aa90926 Binary files /dev/null and b/themes/lemmings/blocker4b.png differ diff --git a/themes/lemmings/blocker5a.png b/themes/lemmings/blocker5a.png new file mode 100644 index 0000000..5a6ac81 Binary files /dev/null and b/themes/lemmings/blocker5a.png differ diff --git a/themes/lemmings/blocker5b.png b/themes/lemmings/blocker5b.png new file mode 100644 index 0000000..b4d5ecd Binary files /dev/null and b/themes/lemmings/blocker5b.png differ diff --git a/themes/lemmings/blocker6a.png b/themes/lemmings/blocker6a.png new file mode 100644 index 0000000..c83dc3f Binary files /dev/null and b/themes/lemmings/blocker6a.png differ diff --git a/themes/lemmings/blocker6b.png b/themes/lemmings/blocker6b.png new file mode 100644 index 0000000..838d0c8 Binary files /dev/null and b/themes/lemmings/blocker6b.png differ diff --git a/themes/lemmings/blocker7a.png b/themes/lemmings/blocker7a.png new file mode 100644 index 0000000..9569f19 Binary files /dev/null and b/themes/lemmings/blocker7a.png differ diff --git a/themes/lemmings/blocker7b.png b/themes/lemmings/blocker7b.png new file mode 100644 index 0000000..561040c Binary files /dev/null and b/themes/lemmings/blocker7b.png differ diff --git a/themes/lemmings/blocker8a.png b/themes/lemmings/blocker8a.png new file mode 100644 index 0000000..fb22c52 Binary files /dev/null and b/themes/lemmings/blocker8a.png differ diff --git a/themes/lemmings/blocker8b.png b/themes/lemmings/blocker8b.png new file mode 100644 index 0000000..5b96875 Binary files /dev/null and b/themes/lemmings/blocker8b.png differ diff --git a/themes/lemmings/blocker9a.png b/themes/lemmings/blocker9a.png new file mode 100644 index 0000000..1b4c556 Binary files /dev/null and b/themes/lemmings/blocker9a.png differ diff --git a/themes/lemmings/blocker9b.png b/themes/lemmings/blocker9b.png new file mode 100644 index 0000000..506f81e Binary files /dev/null and b/themes/lemmings/blocker9b.png differ diff --git a/themes/lemmings/climber.png b/themes/lemmings/climber.png new file mode 100644 index 0000000..2adb0b9 Binary files /dev/null and b/themes/lemmings/climber.png differ diff --git a/themes/lemmings/climber1a.png b/themes/lemmings/climber1a.png new file mode 100644 index 0000000..66b6010 Binary files /dev/null and b/themes/lemmings/climber1a.png differ diff --git a/themes/lemmings/climber1b.png b/themes/lemmings/climber1b.png new file mode 100644 index 0000000..979861d Binary files /dev/null and b/themes/lemmings/climber1b.png differ diff --git a/themes/lemmings/climber2a.png b/themes/lemmings/climber2a.png new file mode 100644 index 0000000..3cc7668 Binary files /dev/null and b/themes/lemmings/climber2a.png differ diff --git a/themes/lemmings/climber2b.png b/themes/lemmings/climber2b.png new file mode 100644 index 0000000..ef93ee5 Binary files /dev/null and b/themes/lemmings/climber2b.png differ diff --git a/themes/lemmings/climber3a.png b/themes/lemmings/climber3a.png new file mode 100644 index 0000000..750baef Binary files /dev/null and b/themes/lemmings/climber3a.png differ diff --git a/themes/lemmings/climber3b.png b/themes/lemmings/climber3b.png new file mode 100644 index 0000000..0d7f06a Binary files /dev/null and b/themes/lemmings/climber3b.png differ diff --git a/themes/lemmings/climber4a.png b/themes/lemmings/climber4a.png new file mode 100644 index 0000000..bfa9208 Binary files /dev/null and b/themes/lemmings/climber4a.png differ diff --git a/themes/lemmings/climber4b.png b/themes/lemmings/climber4b.png new file mode 100644 index 0000000..ca1b46f Binary files /dev/null and b/themes/lemmings/climber4b.png differ diff --git a/themes/lemmings/climber5a.png b/themes/lemmings/climber5a.png new file mode 100644 index 0000000..0b88b8f Binary files /dev/null and b/themes/lemmings/climber5a.png differ diff --git a/themes/lemmings/climber5b.png b/themes/lemmings/climber5b.png new file mode 100644 index 0000000..625d267 Binary files /dev/null and b/themes/lemmings/climber5b.png differ diff --git a/themes/lemmings/climber6a.png b/themes/lemmings/climber6a.png new file mode 100644 index 0000000..b98c9cb Binary files /dev/null and b/themes/lemmings/climber6a.png differ diff --git a/themes/lemmings/climber6b.png b/themes/lemmings/climber6b.png new file mode 100644 index 0000000..af7d6c6 Binary files /dev/null and b/themes/lemmings/climber6b.png differ diff --git a/themes/lemmings/climber7a.png b/themes/lemmings/climber7a.png new file mode 100644 index 0000000..1dd999d Binary files /dev/null and b/themes/lemmings/climber7a.png differ diff --git a/themes/lemmings/climber7b.png b/themes/lemmings/climber7b.png new file mode 100644 index 0000000..4a40e75 Binary files /dev/null and b/themes/lemmings/climber7b.png differ diff --git a/themes/lemmings/climber8a.png b/themes/lemmings/climber8a.png new file mode 100644 index 0000000..760d63d Binary files /dev/null and b/themes/lemmings/climber8a.png differ diff --git a/themes/lemmings/climber8b.png b/themes/lemmings/climber8b.png new file mode 100644 index 0000000..bf7bf46 Binary files /dev/null and b/themes/lemmings/climber8b.png differ diff --git a/themes/lemmings/faller.png b/themes/lemmings/faller.png new file mode 100644 index 0000000..9394d57 Binary files /dev/null and b/themes/lemmings/faller.png differ diff --git a/themes/lemmings/faller1a.png b/themes/lemmings/faller1a.png new file mode 100644 index 0000000..3f082b9 Binary files /dev/null and b/themes/lemmings/faller1a.png differ diff --git a/themes/lemmings/faller1b.png b/themes/lemmings/faller1b.png new file mode 100644 index 0000000..24e01ee Binary files /dev/null and b/themes/lemmings/faller1b.png differ diff --git a/themes/lemmings/faller2a.png b/themes/lemmings/faller2a.png new file mode 100644 index 0000000..b71a3c8 Binary files /dev/null and b/themes/lemmings/faller2a.png differ diff --git a/themes/lemmings/faller2b.png b/themes/lemmings/faller2b.png new file mode 100644 index 0000000..f7c789f Binary files /dev/null and b/themes/lemmings/faller2b.png differ diff --git a/themes/lemmings/faller3a.png b/themes/lemmings/faller3a.png new file mode 100644 index 0000000..244c415 Binary files /dev/null and b/themes/lemmings/faller3a.png differ diff --git a/themes/lemmings/faller3b.png b/themes/lemmings/faller3b.png new file mode 100644 index 0000000..525140a Binary files /dev/null and b/themes/lemmings/faller3b.png differ diff --git a/themes/lemmings/faller4a.png b/themes/lemmings/faller4a.png new file mode 100644 index 0000000..378713c Binary files /dev/null and b/themes/lemmings/faller4a.png differ diff --git a/themes/lemmings/faller4b.png b/themes/lemmings/faller4b.png new file mode 100644 index 0000000..434c20c Binary files /dev/null and b/themes/lemmings/faller4b.png differ diff --git a/themes/lemmings/floater.png b/themes/lemmings/floater.png new file mode 100644 index 0000000..8ee0428 Binary files /dev/null and b/themes/lemmings/floater.png differ diff --git a/themes/lemmings/floater0a.png b/themes/lemmings/floater0a.png new file mode 100644 index 0000000..8c196b6 Binary files /dev/null and b/themes/lemmings/floater0a.png differ diff --git a/themes/lemmings/floater0b.png b/themes/lemmings/floater0b.png new file mode 100644 index 0000000..bdf79ee Binary files /dev/null and b/themes/lemmings/floater0b.png differ diff --git a/themes/lemmings/floater1a.png b/themes/lemmings/floater1a.png new file mode 100644 index 0000000..1088521 Binary files /dev/null and b/themes/lemmings/floater1a.png differ diff --git a/themes/lemmings/floater1b.png b/themes/lemmings/floater1b.png new file mode 100644 index 0000000..5e76aa1 Binary files /dev/null and b/themes/lemmings/floater1b.png differ diff --git a/themes/lemmings/floater2a.png b/themes/lemmings/floater2a.png new file mode 100644 index 0000000..459ec72 Binary files /dev/null and b/themes/lemmings/floater2a.png differ diff --git a/themes/lemmings/floater2b.png b/themes/lemmings/floater2b.png new file mode 100644 index 0000000..9f96d73 Binary files /dev/null and b/themes/lemmings/floater2b.png differ diff --git a/themes/lemmings/floater3a.png b/themes/lemmings/floater3a.png new file mode 100644 index 0000000..a6468ad Binary files /dev/null and b/themes/lemmings/floater3a.png differ diff --git a/themes/lemmings/floater3b.png b/themes/lemmings/floater3b.png new file mode 100644 index 0000000..d9af7a8 Binary files /dev/null and b/themes/lemmings/floater3b.png differ diff --git a/themes/lemmings/floater4a.png b/themes/lemmings/floater4a.png new file mode 100644 index 0000000..a6468ad Binary files /dev/null and b/themes/lemmings/floater4a.png differ diff --git a/themes/lemmings/floater4b.png b/themes/lemmings/floater4b.png new file mode 100644 index 0000000..d9af7a8 Binary files /dev/null and b/themes/lemmings/floater4b.png differ diff --git a/themes/lemmings/floater5a.png b/themes/lemmings/floater5a.png new file mode 100644 index 0000000..459ec72 Binary files /dev/null and b/themes/lemmings/floater5a.png differ diff --git a/themes/lemmings/floater5b.png b/themes/lemmings/floater5b.png new file mode 100644 index 0000000..86f0c22 Binary files /dev/null and b/themes/lemmings/floater5b.png differ diff --git a/themes/lemmings/floater6a.png b/themes/lemmings/floater6a.png new file mode 100644 index 0000000..15f9e2a Binary files /dev/null and b/themes/lemmings/floater6a.png differ diff --git a/themes/lemmings/floater6b.png b/themes/lemmings/floater6b.png new file mode 100644 index 0000000..a1f42b5 Binary files /dev/null and b/themes/lemmings/floater6b.png differ diff --git a/themes/lemmings/floater7a.png b/themes/lemmings/floater7a.png new file mode 100644 index 0000000..02c4ee1 Binary files /dev/null and b/themes/lemmings/floater7a.png differ diff --git a/themes/lemmings/floater7b.png b/themes/lemmings/floater7b.png new file mode 100644 index 0000000..7e070bc Binary files /dev/null and b/themes/lemmings/floater7b.png differ diff --git a/themes/lemmings/icon.png b/themes/lemmings/icon.png new file mode 100644 index 0000000..28a04c2 Binary files /dev/null and b/themes/lemmings/icon.png differ diff --git a/themes/lemmings/lemmings.edc b/themes/lemmings/lemmings.edc new file mode 100644 index 0000000..2710bb1 --- /dev/null +++ b/themes/lemmings/lemmings.edc @@ -0,0 +1,1070 @@ +#define FRAME LOSSY 90 +images +{ + image: "icon.png" FRAME; + image: "walker1a.png" FRAME; + image: "walker1b.png" FRAME; + image: "walker2a.png" FRAME; + image: "walker2b.png" FRAME; + image: "walker3a.png" FRAME; + image: "walker3b.png" FRAME; + image: "walker4a.png" FRAME; + image: "walker4b.png" FRAME; + image: "walker5a.png" FRAME; + image: "walker5b.png" FRAME; + image: "walker6a.png" FRAME; + image: "walker6b.png" FRAME; + image: "walker7a.png" FRAME; + image: "walker7b.png" FRAME; + image: "walker8a.png" FRAME; + image: "walker8b.png" FRAME; + + image: "faller1a.png" FRAME; + image: "faller1b.png" FRAME; + image: "faller2a.png" FRAME; + image: "faller2b.png" FRAME; + image: "faller3a.png" FRAME; + image: "faller3b.png" FRAME; + image: "faller4a.png" FRAME; + image: "faller4b.png" FRAME; + + image: "climber1a.png" FRAME; + image: "climber2a.png" FRAME; + image: "climber3a.png" FRAME; + image: "climber4a.png" FRAME; + image: "climber5a.png" FRAME; + image: "climber6a.png" FRAME; + image: "climber7a.png" FRAME; + image: "climber8a.png" FRAME; + image: "climber1b.png" FRAME; + image: "climber2b.png" FRAME; + image: "climber3b.png" FRAME; + image: "climber4b.png" FRAME; + image: "climber5b.png" FRAME; + image: "climber6b.png" FRAME; + image: "climber7b.png" FRAME; + image: "climber8b.png" FRAME; + + image: "floater0a.png" FRAME; + image: "floater1a.png" FRAME; + image: "floater2a.png" FRAME; + image: "floater3a.png" FRAME; + image: "floater4a.png" FRAME; + image: "floater5a.png" FRAME; + image: "floater6a.png" FRAME; + image: "floater7a.png" FRAME; + + image: "floater0b.png" FRAME; + image: "floater1b.png" FRAME; + image: "floater2b.png" FRAME; + image: "floater3b.png" FRAME; + image: "floater4b.png" FRAME; + image: "floater5b.png" FRAME; + image: "floater6b.png" FRAME; + image: "floater7b.png" FRAME; + + image: "splatter0.png" FRAME; + image: "splatter1.png" FRAME; + image: "splatter2.png" FRAME; + image: "splatter3.png" FRAME; + image: "splatter4.png" FRAME; + image: "splatter5.png" FRAME; + image: "splatter6.png" FRAME; + image: "splatter7.png" FRAME; + image: "splatter8.png" FRAME; + image: "splatter9.png" FRAME; + image: "splatter10.png" FRAME; + image: "splatter11.png" FRAME; + image: "splatter12.png" FRAME; + image: "splatter13.png" FRAME; + image: "splatter14.png" FRAME; + image: "splatter15.png" FRAME; + image: "splatter16.png" FRAME; + + image: "blocker0a.png" FRAME; + image: "blocker1a.png" FRAME; + image: "blocker2a.png" FRAME; + image: "blocker3a.png" FRAME; + image: "blocker4a.png" FRAME; + image: "blocker5a.png" FRAME; + image: "blocker5a.png" FRAME; + image: "blocker6a.png" FRAME; + image: "blocker7a.png" FRAME; + image: "blocker8a.png" FRAME; + image: "blocker9a.png" FRAME; + image: "blocker10a.png" FRAME; + image: "blocker11a.png" FRAME; + image: "blocker0b.png" FRAME; + image: "blocker1b.png" FRAME; + image: "blocker2b.png" FRAME; + image: "blocker3b.png" FRAME; + image: "blocker4b.png" FRAME; + image: "blocker5b.png" FRAME; + image: "blocker5b.png" FRAME; + image: "blocker6b.png" FRAME; + image: "blocker7b.png" FRAME; + image: "blocker8b.png" FRAME; + image: "blocker9b.png" FRAME; + image: "blocker10b.png" FRAME; + image: "blocker11b.png" FRAME; + + image: "trap0.png" FRAME; + image: "trap1.png" FRAME; + image: "trap2.png" FRAME; + image: "trap3.png" FRAME; + image: "trap4.png" FRAME; + image: "trap5.png" FRAME; + image: "trap6.png" FRAME; + image: "trap7.png" FRAME; + image: "trap8.png" FRAME; + image: "trap9.png" FRAME; + image: "trap10.png" FRAME; + image: "trap11.png" FRAME; + image: "trap12.png" FRAME; + image: "trap13.png" FRAME; + image: "trap14.png" FRAME; + image: "trap15.png" FRAME; + image: "trap16.png" FRAME; + image: "trap17.png" FRAME; + image: "trap18.png" FRAME; + image: "trap19.png" FRAME; + image: "trap20.png" FRAME; + image: "trap21.png" FRAME; + image: "trap22.png" FRAME; + image: "trap23.png" FRAME; + image: "trap24.png" FRAME; + image: "trap25.png" FRAME; + image: "trap26.png" FRAME; + image: "trap27.png" FRAME; + image: "trap28.png" FRAME; + image: "trap29.png" FRAME; + image: "trap30.png" FRAME; + image: "trap31.png" FRAME; + image: "trap32.png" FRAME; + image: "trap33.png" FRAME; + image: "trap34.png" FRAME; + image: "trap35.png" FRAME; + + image: "miner0a.png" FRAME; + image: "miner1a.png" FRAME; + image: "miner2a.png" FRAME; + image: "miner3a.png" FRAME; + image: "miner4a.png" FRAME; + image: "miner5a.png" FRAME; + image: "miner6a.png" FRAME; + image: "miner7a.png" FRAME; + image: "miner8a.png" FRAME; + image: "miner9a.png" FRAME; + image: "miner10a.png" FRAME; + image: "miner11a.png" FRAME; + image: "miner12a.png" FRAME; + image: "miner13a.png" FRAME; + image: "miner14a.png" FRAME; + image: "miner15a.png" FRAME; + image: "miner16a.png" FRAME; + image: "miner17a.png" FRAME; + image: "miner18a.png" FRAME; + image: "miner19a.png" FRAME; + image: "miner20a.png" FRAME; + image: "miner21a.png" FRAME; + image: "miner22a.png" FRAME; + image: "miner23a.png" FRAME; + image: "miner0b.png" FRAME; + image: "miner1b.png" FRAME; + image: "miner2b.png" FRAME; + image: "miner3b.png" FRAME; + image: "miner4b.png" FRAME; + image: "miner5b.png" FRAME; + image: "miner6b.png" FRAME; + image: "miner7b.png" FRAME; + image: "miner8b.png" FRAME; + image: "miner9b.png" FRAME; + image: "miner10b.png" FRAME; + image: "miner11b.png" FRAME; + image: "miner12b.png" FRAME; + image: "miner13b.png" FRAME; + image: "miner14b.png" FRAME; + image: "miner15b.png" FRAME; + image: "miner16b.png" FRAME; + image: "miner17b.png" FRAME; + image: "miner18b.png" FRAME; + image: "miner19b.png" FRAME; + image: "miner20b.png" FRAME; + image: "miner21b.png" FRAME; + image: "miner22b.png" FRAME; + image: "miner23b.png" FRAME; + + image: "basher0a.png" FRAME; + image: "basher1a.png" FRAME; + image: "basher2a.png" FRAME; + image: "basher3a.png" FRAME; + image: "basher4a.png" FRAME; + image: "basher5a.png" FRAME; + image: "basher6a.png" FRAME; + image: "basher7a.png" FRAME; + image: "basher8a.png" FRAME; + image: "basher9a.png" FRAME; + image: "basher10a.png" FRAME; + image: "basher11a.png" FRAME; + image: "basher12a.png" FRAME; + image: "basher13a.png" FRAME; + image: "basher14a.png" FRAME; + image: "basher15a.png" FRAME; + image: "basher16a.png" FRAME; + image: "basher17a.png" FRAME; + image: "basher18a.png" FRAME; + image: "basher19a.png" FRAME; + image: "basher20a.png" FRAME; + image: "basher21a.png" FRAME; + image: "basher22a.png" FRAME; + image: "basher23a.png" FRAME; + image: "basher24a.png" FRAME; + image: "basher25a.png" FRAME; + image: "basher26a.png" FRAME; + image: "basher27a.png" FRAME; + + image: "basher0b.png" FRAME; + image: "basher1b.png" FRAME; + image: "basher2b.png" FRAME; + image: "basher3b.png" FRAME; + image: "basher4b.png" FRAME; + image: "basher5b.png" FRAME; + image: "basher6b.png" FRAME; + image: "basher7b.png" FRAME; + image: "basher8b.png" FRAME; + image: "basher9b.png" FRAME; + image: "basher10b.png" FRAME; + image: "basher11b.png" FRAME; + image: "basher12b.png" FRAME; + image: "basher13b.png" FRAME; + image: "basher14b.png" FRAME; + image: "basher15b.png" FRAME; + image: "basher16b.png" FRAME; + image: "basher17b.png" FRAME; + image: "basher18b.png" FRAME; + image: "basher19b.png" FRAME; + image: "basher20b.png" FRAME; + image: "basher21b.png" FRAME; + image: "basher22b.png" FRAME; + image: "basher23b.png" FRAME; + image: "basher24b.png" FRAME; + image: "basher25b.png" FRAME; + image: "basher26b.png" FRAME; + image: "basher27b.png" FRAME; + + +} +data +{ + item: "PopulationName" "Lemmings"; + //item: "" "width height speed"; + item: "Walker" "20 20 90"; //90 + item: "Faller" "16 20 600"; //600 + item: "Climber" "16 32 80"; //80 + item: "Floater" "18 32 80"; + item: "Splatter" "32 32 80"; + item: "Flyer" "18 32 80"; + //item: "Bomber" "30 30 0"; + + //item: "Custom_x" "width height h_speed v_speed"; + item: "Custom_1" "20 20 0 0 10 10"; //blocker + item: "Custom_2" "17 41 0 0 1 1"; //trap + item: "Custom_3" "32 32 2 0 3 10"; //miner + item: "Custom_4" "32 32 2 0 3 8"; //basher +} +collections +{ + group + { + name: "icon"; + parts + { + part + { + name: "icon_"; + type: IMAGE; + mouse_events: 0; + description + { + state: "default" 0.0; + color: 255 255 255 255; + rel1 + { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 + { + relative: 1.0 1.0; + offset: 0 0; + } + image { + normal: "icon.png"; + } + } + } + } + } + group + { + name: "anims"; + parts + { + part + { + name: "penguins"; + type: IMAGE; + mouse_events: 0; + description + { + state: "default" 0.0; + color: 255 255 255 255; + rel1 + { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 + { + relative: 1.0 1.0; + offset: 0 0; + } + image { + normal: "walker1a.png"; + } + } + description + { + state: "walker" 0.0; + image { + normal: "walker1a.png"; + tween: "walker2a.png"; + tween: "walker3a.png"; + tween: "walker4a.png"; + tween: "walker5a.png"; + tween: "walker6a.png"; + tween: "walker7a.png"; + tween: "walker8a.png"; + } + } + description + { + state: "walker" 1.0; + image { + normal: "walker1b.png"; + tween: "walker2b.png"; + tween: "walker3b.png"; + tween: "walker4b.png"; + tween: "walker5b.png"; + tween: "walker6b.png"; + tween: "walker7b.png"; + tween: "walker8b.png"; + } + } + description + { + state: "faller" 0.0; + image { + normal: "faller1a.png"; + tween: "faller2a.png"; + tween: "faller3a.png"; + tween: "faller4a.png"; + } + } + description + { + state: "faller" 1.0; + image { + normal: "faller1b.png"; + tween: "faller2b.png"; + tween: "faller3b.png"; + tween: "faller4b.png"; + } + } + description + { + state: "floater" 0.0; + image { + normal: "floater0a.png"; + tween: "floater1a.png"; + tween: "floater2a.png"; + tween: "floater3a.png"; + tween: "floater4a.png"; + tween: "floater5a.png"; + tween: "floater6a.png"; + tween: "floater7a.png"; + + + } + } + description + { + state: "floater" 1.0; + image { + normal: "floater0b.png"; + tween: "floater1b.png"; + tween: "floater2b.png"; + tween: "floater3b.png"; + tween: "floater4b.png"; + tween: "floater5b.png"; + tween: "floater6b.png"; + tween: "floater7b.png"; + } + } + description + { + state: "flyer" 0.0; + image { + normal: "floater0a.png"; + tween: "floater1a.png"; + tween: "floater2a.png"; + tween: "floater3a.png"; + tween: "floater4a.png"; + tween: "floater5a.png"; + tween: "floater6a.png"; + tween: "floater7a.png"; + + + } + } + description + { + state: "flyer" 1.0; + image { + normal: "floater0b.png"; + tween: "floater1b.png"; + tween: "floater2b.png"; + tween: "floater3b.png"; + tween: "floater4b.png"; + tween: "floater5b.png"; + tween: "floater6b.png"; + tween: "floater7b.png"; + } + } + description + { + state: "climber" 0.0; + image { + normal: "climber1a.png"; + tween: "climber2a.png"; + tween: "climber3a.png"; + tween: "climber4a.png"; + tween: "climber5a.png"; + tween: "climber6a.png"; + tween: "climber7a.png"; + tween: "climber8a.png"; + } + } + description + { + state: "climber" 1.0; + image { + normal: "climber1b.png"; + tween: "climber2b.png"; + tween: "climber3b.png"; + tween: "climber4b.png"; + tween: "climber5b.png"; + tween: "climber6b.png"; + tween: "climber7b.png"; + tween: "climber8b.png"; + } + } + description + { + state: "splatter" 0.0; + image { + normal: "splatter16.png"; + tween: "splatter0.png"; + tween: "splatter1.png"; + tween: "splatter2.png"; + tween: "splatter3.png"; + tween: "splatter4.png"; + tween: "splatter5.png"; + tween: "splatter6.png"; + tween: "splatter7.png"; + tween: "splatter8.png"; + tween: "splatter9.png"; + tween: "splatter10.png"; + tween: "splatter11.png"; + tween: "splatter12.png"; + tween: "splatter13.png"; + tween: "splatter14.png"; + tween: "splatter15.png"; + + } + } + description + { + state: "splatter" 1.0; + image { + normal: "splatter16.png"; + tween: "splatter0.png"; + tween: "splatter1.png"; + tween: "splatter2.png"; + tween: "splatter3.png"; + tween: "splatter4.png"; + tween: "splatter5.png"; + tween: "splatter6.png"; + tween: "splatter7.png"; + tween: "splatter8.png"; + tween: "splatter9.png"; + tween: "splatter10.png"; + tween: "splatter11.png"; + tween: "splatter12.png"; + tween: "splatter13.png"; + tween: "splatter14.png"; + tween: "splatter15.png"; + } + } + + description + { + state: "blocker" 0.0; + image { + normal: "blocker0a.png"; + tween: "blocker1a.png"; + tween: "blocker2a.png"; + tween: "blocker3a.png"; + tween: "blocker4a.png"; + tween: "blocker5a.png"; + tween: "blocker6a.png"; + tween: "blocker7a.png"; + tween: "blocker8a.png"; + tween: "blocker9a.png"; + tween: "blocker10a.png"; + tween: "blocker11a.png"; + } + } + description + { + state: "blocker" 1.0; + image { + normal: "blocker0b.png"; + tween: "blocker1b.png"; + tween: "blocker2b.png"; + tween: "blocker3b.png"; + tween: "blocker4b.png"; + tween: "blocker5b.png"; + tween: "blocker6b.png"; + tween: "blocker7b.png"; + tween: "blocker8b.png"; + tween: "blocker9b.png"; + tween: "blocker10b.png"; + tween: "blocker11b.png"; + } + } + description + { + state: "basher" 0.0; + image { + normal: "basher0a.png"; + tween: "basher1a.png"; + tween: "basher2a.png"; + tween: "basher3a.png"; + tween: "basher4a.png"; + tween: "basher5a.png"; + tween: "basher6a.png"; + tween: "basher7a.png"; + tween: "basher8a.png"; + tween: "basher9a.png"; + tween: "basher10a.png"; + tween: "basher11a.png"; + tween: "basher12a.png"; + tween: "basher13a.png"; + tween: "basher14a.png"; + tween: "basher15a.png"; + tween: "basher16a.png"; + tween: "basher17a.png"; + tween: "basher18a.png"; + tween: "basher19a.png"; + tween: "basher20a.png"; + tween: "basher21a.png"; + tween: "basher22a.png"; + tween: "basher23a.png"; + tween: "basher24a.png"; + tween: "basher25a.png"; + tween: "basher26a.png"; + tween: "basher27a.png"; + } + } + description + { + state: "basher" 1.0; + image { + normal: "basher0a.png"; + tween: "basher1a.png"; + tween: "basher2a.png"; + tween: "basher3a.png"; + tween: "basher4a.png"; + tween: "basher5a.png"; + tween: "basher6a.png"; + tween: "basher7a.png"; + tween: "basher8a.png"; + tween: "basher9a.png"; + tween: "basher10a.png"; + tween: "basher11a.png"; + tween: "basher12a.png"; + tween: "basher13a.png"; + tween: "basher14a.png"; + tween: "basher15a.png"; + tween: "basher16a.png"; + tween: "basher17a.png"; + tween: "basher18a.png"; + tween: "basher19a.png"; + tween: "basher20a.png"; + tween: "basher21a.png"; + tween: "basher22a.png"; + tween: "basher23a.png"; + tween: "basher24a.png"; + tween: "basher25a.png"; + tween: "basher26a.png"; + tween: "basher27a.png"; + } + } + description + { + state: "miner" 0.0; + image { + normal: "miner0a.png"; + tween: "miner1a.png"; + tween: "miner2a.png"; + tween: "miner3a.png"; + tween: "miner4a.png"; + tween: "miner5a.png"; + tween: "miner6a.png"; + tween: "miner7a.png"; + tween: "miner8a.png"; + tween: "miner9a.png"; + tween: "miner10a.png"; + tween: "miner11a.png"; + tween: "miner12a.png"; + tween: "miner13a.png"; + tween: "miner14a.png"; + tween: "miner15a.png"; + tween: "miner16a.png"; + tween: "miner17a.png"; + tween: "miner18a.png"; + tween: "miner19a.png"; + tween: "miner20a.png"; + tween: "miner21a.png"; + tween: "miner22a.png"; + tween: "miner23a.png"; + + } + } + description + { + state: "miner" 1.0; + image { + normal: "miner0b.png"; + tween: "miner1b.png"; + tween: "miner2b.png"; + tween: "miner3b.png"; + tween: "miner4b.png"; + tween: "miner5b.png"; + tween: "miner6b.png"; + tween: "miner7b.png"; + tween: "miner8b.png"; + tween: "miner9b.png"; + tween: "miner10b.png"; + tween: "miner11b.png"; + tween: "miner12b.png"; + tween: "miner13b.png"; + tween: "miner14b.png"; + tween: "miner15b.png"; + tween: "miner16b.png"; + tween: "miner17b.png"; + tween: "miner18b.png"; + tween: "miner19b.png"; + tween: "miner20b.png"; + tween: "miner21b.png"; + tween: "miner22b.png"; + tween: "miner23b.png"; + + } + } + description + { + state: "trap" 0.0; + image { + normal: "trap0.png"; + tween: "trap1.png"; + tween: "trap2.png"; + tween: "trap3.png"; + tween: "trap4.png"; + tween: "trap5.png"; + tween: "trap6.png"; + tween: "trap7.png"; + tween: "trap8.png"; + tween: "trap9.png"; + tween: "trap10.png"; + tween: "trap11.png"; + tween: "trap12.png"; + tween: "trap13.png"; + tween: "trap14.png"; + tween: "trap15.png"; + tween: "trap16.png"; + tween: "trap17.png"; + tween: "trap18.png"; + tween: "trap19.png"; + tween: "trap20.png"; + tween: "trap21.png"; + tween: "trap22.png"; + tween: "trap23.png"; + tween: "trap24.png"; + tween: "trap25.png"; + tween: "trap26.png"; + tween: "trap27.png"; + tween: "trap28.png"; + tween: "trap29.png"; + tween: "trap30.png"; + tween: "trap31.png"; + tween: "trap32.png"; + tween: "trap33.png"; + tween: "trap34.png"; + tween: "trap35.png"; + } + } + + } + } + programs + { + /**************************** + * Faller + ****************************/ + program + { + name: "start_falling_right"; + signal: "start_falling_right"; + source: "epenguins"; + action: STATE_SET "faller" 0.0; + transition: LINEAR 0; + target: "penguins"; + after: "falling_right"; + } + program + { + name: "falling_right"; + action: STATE_SET "faller" 0.0; + transition: LINEAR 0.5; + target: "penguins"; + after: "falling_right"; + } + program + { + name: "start_falling_left"; + signal: "start_falling_left"; + source: "epenguins"; + action: STATE_SET "faller" 1.0; + transition: LINEAR 0; + target: "penguins"; + after: "falling_left"; + } + program + { + name: "falling_left"; + action: STATE_SET "faller" 1.0; + transition: LINEAR 1; + target: "penguins"; + after: "falling_left"; + } + /**************************** + * Floater + ****************************/ + program + { + name: "start_floating_right"; + signal: "start_floating_right"; + source: "epenguins"; + action: STATE_SET "floater" 0.0; + transition: LINEAR 0; + target: "penguins"; + after: "floating_right"; + } + program + { + name: "floating_right"; + action: STATE_SET "floater" 0.0; + transition: LINEAR 0.8; + target: "penguins"; + after: "floating_right"; + } + program + { + name: "start_floating_left"; + signal: "start_floating_left"; + source: "epenguins"; + action: STATE_SET "floater" 1.0; + transition: LINEAR 0; + target: "penguins"; + after: "floating_left"; + } + program + { + name: "floating_left"; + action: STATE_SET "floater" 1.0; + transition: LINEAR 0.8; + target: "penguins"; + after: "floating_left"; + } + /**************************** + * Walker + ****************************/ + program + { + name: "start_walking_right"; + signal: "start_walking_right"; + source: "epenguins"; + action: STATE_SET "walker" 0.0; + transition: LINEAR 0; + target: "penguins"; + after: "walking_right"; + } + program + { + name: "walking_right"; + action: STATE_SET "walker" 0.0; + transition: LINEAR 0.8; + target: "penguins"; + after: "walking_right"; + } + program + { + name: "start_walking_left"; + signal: "start_walking_left"; + source: "epenguins"; + action: STATE_SET "walker" 1.0; + transition: LINEAR 0; + target: "penguins"; + after: "walking_left"; + } + program + { + name: "walking_left"; + action: STATE_SET "walker" 1.0; + transition: LINEAR 0.8; + target: "penguins"; + after: "walking_left"; + } + /**************************** + * Flyer + ****************************/ + program + { + name: "start_flying_right"; + signal: "start_flying_right"; + source: "epenguins"; + action: STATE_SET "flyer" 0.0; + transition: LINEAR 0; + target: "penguins"; + //after: "stop_all"; + after: "flying_right"; + } + program + { + name: "flying_right"; + action: STATE_SET "flyer" 0.0; + transition: LINEAR 0.8; + target: "penguins"; + after: "flying_right"; + } + program + { + name: "start_flying_left"; + signal: "start_flying_left"; + source: "epenguins"; + action: STATE_SET "flyer" 1.0; + transition: LINEAR 0; + target: "penguins"; + //after: "stop_all"; + after: "flying_left"; + } + program + { + name: "flying_left"; + action: STATE_SET "flyer" 1.0; + transition: LINEAR 0.8; + target: "penguins"; + after: "flying_left"; + } + /**************************** + * Climber + ****************************/ + program + { + name: "start_climbing_right"; + signal: "start_climbing_right"; + source: "epenguins"; + action: STATE_SET "climber" 0.0; + transition: LINEAR 0; + target: "penguins"; + after: "climbing_right"; + } + program + { + name: "climbing_right"; + action: STATE_SET "climber" 0.0; + transition: LINEAR 1; + target: "penguins"; + after: "climbing_right"; + } + program + { + name: "start_climbing_left"; + signal: "start_climbing_left"; + source: "epenguins"; + action: STATE_SET "climber" 1.0; + transition: LINEAR 0; + target: "penguins"; + after: "climbing_left"; + } + program + { + name: "climbing_left"; + action: STATE_SET "climber" 1.0; + transition: LINEAR 1; + target: "penguins"; + after: "climbing_left"; + } + /**************************** + * Splatter + ****************************/ + program + { + name: "start_splatting_right"; + signal: "start_splatting_right"; + source: "epenguins"; + action: STATE_SET "splatter" 0.0; + transition: LINEAR 1; + target: "penguins"; + //after: "stop_all"; + after: "splatting_done"; + } + program + { + name: "start_splatting_left"; + signal: "start_splatting_left"; + source: "epenguins"; + action: STATE_SET "splatter" 1.0; + transition: LINEAR 1; + target: "penguins"; + //after: "stop_all"; + after: "splatting_done"; + } + program + { + name: "splatting_done"; + action: SIGNAL_EMIT "splatting_done" "edje"; + } + /**************************** + * Customs programs + ****************************/ + program + { + name: "custom_done"; + action: SIGNAL_EMIT "custom_done" "edje"; + } + /**************************** + * Custom_1 - blocker + ****************************/ + program + { + name: "start_custom_1_right"; + signal: "start_custom_1_right"; + source: "epenguins"; + action: STATE_SET "blocker" 0.0; + transition: LINEAR 1; + target: "penguins"; + // after: "stop_all"; + after: "custom_done"; + } + program + { + name: "start_custom_1_left"; + signal: "start_custom_1_left"; + source: "epenguins"; + action: STATE_SET "blocker" 1.0; + transition: LINEAR 1; + target: "penguins"; + // after: "stop_all"; + after: "custom_done"; + } + /**************************** + * Custom_2 - trap + ****************************/ + program + { + name: "start_custom_2_right"; + signal: "start_custom_2_right"; + source: "epenguins"; + action: STATE_SET "trap" 0.0; + transition: LINEAR 2; + target: "penguins"; + // after: "stop_all"; + after: "custom_done"; + } + program + { + name: "start_custom_2_left"; + signal: "start_custom_2_left"; + source: "epenguins"; + action: STATE_SET "trap" 0.0; + transition: LINEAR 2; + target: "penguins"; + // after: "stop_all"; + after: "custom_done"; + } + /**************************** + * Custom_3 - miner + ****************************/ + program + { + name: "start_custom_3_right"; + signal: "start_custom_3_right"; + source: "epenguins"; + action: STATE_SET "miner" 0.0; + transition: LINEAR 2; + target: "penguins"; + // after: "stop_all"; + after: "custom_done"; + } + program + { + name: "start_custom_3_left"; + signal: "start_custom_3_left"; + source: "epenguins"; + action: STATE_SET "miner" 1.0; + transition: LINEAR 2; + target: "penguins"; + // after: "stop_all"; + after: "custom_done"; + } + /**************************** + * Custom_4 - basher + ****************************/ + program + { + name: "start_custom_4_right"; + signal: "start_custom_4_right"; + source: "epenguins"; + action: STATE_SET "basher" 0.0; + transition: LINEAR 2; + target: "penguins"; + // after: "stop_all"; + after: "custom_done"; + } + program + { + name: "start_custom_4_left"; + signal: "start_custom_4_left"; + source: "epenguins"; + action: STATE_SET "basher" 1.0; + transition: LINEAR 2; + target: "penguins"; + // after: "stop_all"; + after: "custom_done"; + } + } + } +} diff --git a/themes/lemmings/miner.png b/themes/lemmings/miner.png new file mode 100644 index 0000000..f0736eb Binary files /dev/null and b/themes/lemmings/miner.png differ diff --git a/themes/lemmings/miner0a.png b/themes/lemmings/miner0a.png new file mode 100644 index 0000000..cfefe7b Binary files /dev/null and b/themes/lemmings/miner0a.png differ diff --git a/themes/lemmings/miner0b.png b/themes/lemmings/miner0b.png new file mode 100644 index 0000000..a44dbce Binary files /dev/null and b/themes/lemmings/miner0b.png differ diff --git a/themes/lemmings/miner10a.png b/themes/lemmings/miner10a.png new file mode 100644 index 0000000..09cf515 Binary files /dev/null and b/themes/lemmings/miner10a.png differ diff --git a/themes/lemmings/miner10b.png b/themes/lemmings/miner10b.png new file mode 100644 index 0000000..c7d6fe2 Binary files /dev/null and b/themes/lemmings/miner10b.png differ diff --git a/themes/lemmings/miner11a.png b/themes/lemmings/miner11a.png new file mode 100644 index 0000000..44cab05 Binary files /dev/null and b/themes/lemmings/miner11a.png differ diff --git a/themes/lemmings/miner11b.png b/themes/lemmings/miner11b.png new file mode 100644 index 0000000..efd50ce Binary files /dev/null and b/themes/lemmings/miner11b.png differ diff --git a/themes/lemmings/miner12a.png b/themes/lemmings/miner12a.png new file mode 100644 index 0000000..6e5ec11 Binary files /dev/null and b/themes/lemmings/miner12a.png differ diff --git a/themes/lemmings/miner12b.png b/themes/lemmings/miner12b.png new file mode 100644 index 0000000..7711b21 Binary files /dev/null and b/themes/lemmings/miner12b.png differ diff --git a/themes/lemmings/miner13a.png b/themes/lemmings/miner13a.png new file mode 100644 index 0000000..110c362 Binary files /dev/null and b/themes/lemmings/miner13a.png differ diff --git a/themes/lemmings/miner13b.png b/themes/lemmings/miner13b.png new file mode 100644 index 0000000..55b48ff Binary files /dev/null and b/themes/lemmings/miner13b.png differ diff --git a/themes/lemmings/miner14a.png b/themes/lemmings/miner14a.png new file mode 100644 index 0000000..e9090ff Binary files /dev/null and b/themes/lemmings/miner14a.png differ diff --git a/themes/lemmings/miner14b.png b/themes/lemmings/miner14b.png new file mode 100644 index 0000000..ec80832 Binary files /dev/null and b/themes/lemmings/miner14b.png differ diff --git a/themes/lemmings/miner15a.png b/themes/lemmings/miner15a.png new file mode 100644 index 0000000..fc59ec6 Binary files /dev/null and b/themes/lemmings/miner15a.png differ diff --git a/themes/lemmings/miner15b.png b/themes/lemmings/miner15b.png new file mode 100644 index 0000000..e1814e0 Binary files /dev/null and b/themes/lemmings/miner15b.png differ diff --git a/themes/lemmings/miner16a.png b/themes/lemmings/miner16a.png new file mode 100644 index 0000000..7a7ed8c Binary files /dev/null and b/themes/lemmings/miner16a.png differ diff --git a/themes/lemmings/miner16b.png b/themes/lemmings/miner16b.png new file mode 100644 index 0000000..9cc8645 Binary files /dev/null and b/themes/lemmings/miner16b.png differ diff --git a/themes/lemmings/miner17a.png b/themes/lemmings/miner17a.png new file mode 100644 index 0000000..ee739ba Binary files /dev/null and b/themes/lemmings/miner17a.png differ diff --git a/themes/lemmings/miner17b.png b/themes/lemmings/miner17b.png new file mode 100644 index 0000000..7845588 Binary files /dev/null and b/themes/lemmings/miner17b.png differ diff --git a/themes/lemmings/miner18a.png b/themes/lemmings/miner18a.png new file mode 100644 index 0000000..5a48ea8 Binary files /dev/null and b/themes/lemmings/miner18a.png differ diff --git a/themes/lemmings/miner18b.png b/themes/lemmings/miner18b.png new file mode 100644 index 0000000..7845588 Binary files /dev/null and b/themes/lemmings/miner18b.png differ diff --git a/themes/lemmings/miner19a.png b/themes/lemmings/miner19a.png new file mode 100644 index 0000000..16936d4 Binary files /dev/null and b/themes/lemmings/miner19a.png differ diff --git a/themes/lemmings/miner19b.png b/themes/lemmings/miner19b.png new file mode 100644 index 0000000..9a503fc Binary files /dev/null and b/themes/lemmings/miner19b.png differ diff --git a/themes/lemmings/miner1a.png b/themes/lemmings/miner1a.png new file mode 100644 index 0000000..33d71c9 Binary files /dev/null and b/themes/lemmings/miner1a.png differ diff --git a/themes/lemmings/miner1b.png b/themes/lemmings/miner1b.png new file mode 100644 index 0000000..7a8c2d0 Binary files /dev/null and b/themes/lemmings/miner1b.png differ diff --git a/themes/lemmings/miner20a.png b/themes/lemmings/miner20a.png new file mode 100644 index 0000000..bed6a2a Binary files /dev/null and b/themes/lemmings/miner20a.png differ diff --git a/themes/lemmings/miner20b.png b/themes/lemmings/miner20b.png new file mode 100644 index 0000000..dcb4e7e Binary files /dev/null and b/themes/lemmings/miner20b.png differ diff --git a/themes/lemmings/miner21a.png b/themes/lemmings/miner21a.png new file mode 100644 index 0000000..daa1ae3 Binary files /dev/null and b/themes/lemmings/miner21a.png differ diff --git a/themes/lemmings/miner21b.png b/themes/lemmings/miner21b.png new file mode 100644 index 0000000..a499ed1 Binary files /dev/null and b/themes/lemmings/miner21b.png differ diff --git a/themes/lemmings/miner22a.png b/themes/lemmings/miner22a.png new file mode 100644 index 0000000..44113bf Binary files /dev/null and b/themes/lemmings/miner22a.png differ diff --git a/themes/lemmings/miner22b.png b/themes/lemmings/miner22b.png new file mode 100644 index 0000000..d3ae7c9 Binary files /dev/null and b/themes/lemmings/miner22b.png differ diff --git a/themes/lemmings/miner23a.png b/themes/lemmings/miner23a.png new file mode 100644 index 0000000..02ff782 Binary files /dev/null and b/themes/lemmings/miner23a.png differ diff --git a/themes/lemmings/miner23b.png b/themes/lemmings/miner23b.png new file mode 100644 index 0000000..1196476 Binary files /dev/null and b/themes/lemmings/miner23b.png differ diff --git a/themes/lemmings/miner2a.png b/themes/lemmings/miner2a.png new file mode 100644 index 0000000..2ea4ee1 Binary files /dev/null and b/themes/lemmings/miner2a.png differ diff --git a/themes/lemmings/miner2b.png b/themes/lemmings/miner2b.png new file mode 100644 index 0000000..2cb1a7a Binary files /dev/null and b/themes/lemmings/miner2b.png differ diff --git a/themes/lemmings/miner3a.png b/themes/lemmings/miner3a.png new file mode 100644 index 0000000..c2e3fae Binary files /dev/null and b/themes/lemmings/miner3a.png differ diff --git a/themes/lemmings/miner3b.png b/themes/lemmings/miner3b.png new file mode 100644 index 0000000..0863714 Binary files /dev/null and b/themes/lemmings/miner3b.png differ diff --git a/themes/lemmings/miner4a.png b/themes/lemmings/miner4a.png new file mode 100644 index 0000000..c4f27d9 Binary files /dev/null and b/themes/lemmings/miner4a.png differ diff --git a/themes/lemmings/miner4b.png b/themes/lemmings/miner4b.png new file mode 100644 index 0000000..e903cf8 Binary files /dev/null and b/themes/lemmings/miner4b.png differ diff --git a/themes/lemmings/miner5a.png b/themes/lemmings/miner5a.png new file mode 100644 index 0000000..abf0c8f Binary files /dev/null and b/themes/lemmings/miner5a.png differ diff --git a/themes/lemmings/miner5b.png b/themes/lemmings/miner5b.png new file mode 100644 index 0000000..dac3f7f Binary files /dev/null and b/themes/lemmings/miner5b.png differ diff --git a/themes/lemmings/miner6a.png b/themes/lemmings/miner6a.png new file mode 100644 index 0000000..abf0c8f Binary files /dev/null and b/themes/lemmings/miner6a.png differ diff --git a/themes/lemmings/miner6b.png b/themes/lemmings/miner6b.png new file mode 100644 index 0000000..1dd4ab6 Binary files /dev/null and b/themes/lemmings/miner6b.png differ diff --git a/themes/lemmings/miner7a.png b/themes/lemmings/miner7a.png new file mode 100644 index 0000000..840fa7e Binary files /dev/null and b/themes/lemmings/miner7a.png differ diff --git a/themes/lemmings/miner7b.png b/themes/lemmings/miner7b.png new file mode 100644 index 0000000..26edec3 Binary files /dev/null and b/themes/lemmings/miner7b.png differ diff --git a/themes/lemmings/miner8a.png b/themes/lemmings/miner8a.png new file mode 100644 index 0000000..87ec897 Binary files /dev/null and b/themes/lemmings/miner8a.png differ diff --git a/themes/lemmings/miner8b.png b/themes/lemmings/miner8b.png new file mode 100644 index 0000000..82abd50 Binary files /dev/null and b/themes/lemmings/miner8b.png differ diff --git a/themes/lemmings/miner9a.png b/themes/lemmings/miner9a.png new file mode 100644 index 0000000..b18fe9d Binary files /dev/null and b/themes/lemmings/miner9a.png differ diff --git a/themes/lemmings/miner9b.png b/themes/lemmings/miner9b.png new file mode 100644 index 0000000..5a8d94b Binary files /dev/null and b/themes/lemmings/miner9b.png differ diff --git a/themes/lemmings/splatter.png b/themes/lemmings/splatter.png new file mode 100644 index 0000000..ddfbc1b Binary files /dev/null and b/themes/lemmings/splatter.png differ diff --git a/themes/lemmings/splatter0.png b/themes/lemmings/splatter0.png new file mode 100644 index 0000000..73a3fc1 Binary files /dev/null and b/themes/lemmings/splatter0.png differ diff --git a/themes/lemmings/splatter1.png b/themes/lemmings/splatter1.png new file mode 100644 index 0000000..9b4ba92 Binary files /dev/null and b/themes/lemmings/splatter1.png differ diff --git a/themes/lemmings/splatter10.png b/themes/lemmings/splatter10.png new file mode 100644 index 0000000..ddebbda Binary files /dev/null and b/themes/lemmings/splatter10.png differ diff --git a/themes/lemmings/splatter11.png b/themes/lemmings/splatter11.png new file mode 100644 index 0000000..ef3dbca Binary files /dev/null and b/themes/lemmings/splatter11.png differ diff --git a/themes/lemmings/splatter12.png b/themes/lemmings/splatter12.png new file mode 100644 index 0000000..5c9eabe Binary files /dev/null and b/themes/lemmings/splatter12.png differ diff --git a/themes/lemmings/splatter13.png b/themes/lemmings/splatter13.png new file mode 100644 index 0000000..6db20f1 Binary files /dev/null and b/themes/lemmings/splatter13.png differ diff --git a/themes/lemmings/splatter14.png b/themes/lemmings/splatter14.png new file mode 100644 index 0000000..e89c399 Binary files /dev/null and b/themes/lemmings/splatter14.png differ diff --git a/themes/lemmings/splatter15.png b/themes/lemmings/splatter15.png new file mode 100644 index 0000000..a467a7a Binary files /dev/null and b/themes/lemmings/splatter15.png differ diff --git a/themes/lemmings/splatter16.png b/themes/lemmings/splatter16.png new file mode 100644 index 0000000..2d619ec Binary files /dev/null and b/themes/lemmings/splatter16.png differ diff --git a/themes/lemmings/splatter2.png b/themes/lemmings/splatter2.png new file mode 100644 index 0000000..5894cc6 Binary files /dev/null and b/themes/lemmings/splatter2.png differ diff --git a/themes/lemmings/splatter3.png b/themes/lemmings/splatter3.png new file mode 100644 index 0000000..282471e Binary files /dev/null and b/themes/lemmings/splatter3.png differ diff --git a/themes/lemmings/splatter4.png b/themes/lemmings/splatter4.png new file mode 100644 index 0000000..3ae436a Binary files /dev/null and b/themes/lemmings/splatter4.png differ diff --git a/themes/lemmings/splatter5.png b/themes/lemmings/splatter5.png new file mode 100644 index 0000000..952998d Binary files /dev/null and b/themes/lemmings/splatter5.png differ diff --git a/themes/lemmings/splatter6.png b/themes/lemmings/splatter6.png new file mode 100644 index 0000000..0b09405 Binary files /dev/null and b/themes/lemmings/splatter6.png differ diff --git a/themes/lemmings/splatter7.png b/themes/lemmings/splatter7.png new file mode 100644 index 0000000..fbaffab Binary files /dev/null and b/themes/lemmings/splatter7.png differ diff --git a/themes/lemmings/splatter8.png b/themes/lemmings/splatter8.png new file mode 100644 index 0000000..13543fa Binary files /dev/null and b/themes/lemmings/splatter8.png differ diff --git a/themes/lemmings/splatter9.png b/themes/lemmings/splatter9.png new file mode 100644 index 0000000..f43cd89 Binary files /dev/null and b/themes/lemmings/splatter9.png differ diff --git a/themes/lemmings/trap.png b/themes/lemmings/trap.png new file mode 100644 index 0000000..8ec896d Binary files /dev/null and b/themes/lemmings/trap.png differ diff --git a/themes/lemmings/trap0.png b/themes/lemmings/trap0.png new file mode 100644 index 0000000..074a88c Binary files /dev/null and b/themes/lemmings/trap0.png differ diff --git a/themes/lemmings/trap1.png b/themes/lemmings/trap1.png new file mode 100644 index 0000000..2a1c2d8 Binary files /dev/null and b/themes/lemmings/trap1.png differ diff --git a/themes/lemmings/trap10.png b/themes/lemmings/trap10.png new file mode 100644 index 0000000..14ff873 Binary files /dev/null and b/themes/lemmings/trap10.png differ diff --git a/themes/lemmings/trap11.png b/themes/lemmings/trap11.png new file mode 100644 index 0000000..14ff873 Binary files /dev/null and b/themes/lemmings/trap11.png differ diff --git a/themes/lemmings/trap12.png b/themes/lemmings/trap12.png new file mode 100644 index 0000000..14ff873 Binary files /dev/null and b/themes/lemmings/trap12.png differ diff --git a/themes/lemmings/trap13.png b/themes/lemmings/trap13.png new file mode 100644 index 0000000..14ff873 Binary files /dev/null and b/themes/lemmings/trap13.png differ diff --git a/themes/lemmings/trap14.png b/themes/lemmings/trap14.png new file mode 100644 index 0000000..01f7f27 Binary files /dev/null and b/themes/lemmings/trap14.png differ diff --git a/themes/lemmings/trap15.png b/themes/lemmings/trap15.png new file mode 100644 index 0000000..01f7f27 Binary files /dev/null and b/themes/lemmings/trap15.png differ diff --git a/themes/lemmings/trap16.png b/themes/lemmings/trap16.png new file mode 100644 index 0000000..c7e9f29 Binary files /dev/null and b/themes/lemmings/trap16.png differ diff --git a/themes/lemmings/trap17.png b/themes/lemmings/trap17.png new file mode 100644 index 0000000..dccdff3 Binary files /dev/null and b/themes/lemmings/trap17.png differ diff --git a/themes/lemmings/trap18.png b/themes/lemmings/trap18.png new file mode 100644 index 0000000..24fdb63 Binary files /dev/null and b/themes/lemmings/trap18.png differ diff --git a/themes/lemmings/trap19.png b/themes/lemmings/trap19.png new file mode 100644 index 0000000..24fdb63 Binary files /dev/null and b/themes/lemmings/trap19.png differ diff --git a/themes/lemmings/trap2.png b/themes/lemmings/trap2.png new file mode 100644 index 0000000..a2121f3 Binary files /dev/null and b/themes/lemmings/trap2.png differ diff --git a/themes/lemmings/trap20.png b/themes/lemmings/trap20.png new file mode 100644 index 0000000..13c0187 Binary files /dev/null and b/themes/lemmings/trap20.png differ diff --git a/themes/lemmings/trap21.png b/themes/lemmings/trap21.png new file mode 100644 index 0000000..b4df04b Binary files /dev/null and b/themes/lemmings/trap21.png differ diff --git a/themes/lemmings/trap22.png b/themes/lemmings/trap22.png new file mode 100644 index 0000000..2c757f9 Binary files /dev/null and b/themes/lemmings/trap22.png differ diff --git a/themes/lemmings/trap23.png b/themes/lemmings/trap23.png new file mode 100644 index 0000000..97f9491 Binary files /dev/null and b/themes/lemmings/trap23.png differ diff --git a/themes/lemmings/trap24.png b/themes/lemmings/trap24.png new file mode 100644 index 0000000..e3e0414 Binary files /dev/null and b/themes/lemmings/trap24.png differ diff --git a/themes/lemmings/trap25.png b/themes/lemmings/trap25.png new file mode 100644 index 0000000..47ff04e Binary files /dev/null and b/themes/lemmings/trap25.png differ diff --git a/themes/lemmings/trap26.png b/themes/lemmings/trap26.png new file mode 100644 index 0000000..47d12df Binary files /dev/null and b/themes/lemmings/trap26.png differ diff --git a/themes/lemmings/trap27.png b/themes/lemmings/trap27.png new file mode 100644 index 0000000..a689043 Binary files /dev/null and b/themes/lemmings/trap27.png differ diff --git a/themes/lemmings/trap28.png b/themes/lemmings/trap28.png new file mode 100644 index 0000000..4b34dca Binary files /dev/null and b/themes/lemmings/trap28.png differ diff --git a/themes/lemmings/trap29.png b/themes/lemmings/trap29.png new file mode 100644 index 0000000..4995755 Binary files /dev/null and b/themes/lemmings/trap29.png differ diff --git a/themes/lemmings/trap3.png b/themes/lemmings/trap3.png new file mode 100644 index 0000000..616f377 Binary files /dev/null and b/themes/lemmings/trap3.png differ diff --git a/themes/lemmings/trap30.png b/themes/lemmings/trap30.png new file mode 100644 index 0000000..9b271a5 Binary files /dev/null and b/themes/lemmings/trap30.png differ diff --git a/themes/lemmings/trap31.png b/themes/lemmings/trap31.png new file mode 100644 index 0000000..79a89cb Binary files /dev/null and b/themes/lemmings/trap31.png differ diff --git a/themes/lemmings/trap32.png b/themes/lemmings/trap32.png new file mode 100644 index 0000000..ad7ecba Binary files /dev/null and b/themes/lemmings/trap32.png differ diff --git a/themes/lemmings/trap33.png b/themes/lemmings/trap33.png new file mode 100644 index 0000000..3a07666 Binary files /dev/null and b/themes/lemmings/trap33.png differ diff --git a/themes/lemmings/trap34.png b/themes/lemmings/trap34.png new file mode 100644 index 0000000..4e3b6fa Binary files /dev/null and b/themes/lemmings/trap34.png differ diff --git a/themes/lemmings/trap35.png b/themes/lemmings/trap35.png new file mode 100644 index 0000000..31a7eed Binary files /dev/null and b/themes/lemmings/trap35.png differ diff --git a/themes/lemmings/trap4.png b/themes/lemmings/trap4.png new file mode 100644 index 0000000..616f377 Binary files /dev/null and b/themes/lemmings/trap4.png differ diff --git a/themes/lemmings/trap5.png b/themes/lemmings/trap5.png new file mode 100644 index 0000000..ac5eb56 Binary files /dev/null and b/themes/lemmings/trap5.png differ diff --git a/themes/lemmings/trap6.png b/themes/lemmings/trap6.png new file mode 100644 index 0000000..ac5eb56 Binary files /dev/null and b/themes/lemmings/trap6.png differ diff --git a/themes/lemmings/trap7.png b/themes/lemmings/trap7.png new file mode 100644 index 0000000..67b85f6 Binary files /dev/null and b/themes/lemmings/trap7.png differ diff --git a/themes/lemmings/trap8.png b/themes/lemmings/trap8.png new file mode 100644 index 0000000..38f4ed8 Binary files /dev/null and b/themes/lemmings/trap8.png differ diff --git a/themes/lemmings/trap9.png b/themes/lemmings/trap9.png new file mode 100644 index 0000000..14ff873 Binary files /dev/null and b/themes/lemmings/trap9.png differ diff --git a/themes/lemmings/walker.png b/themes/lemmings/walker.png new file mode 100644 index 0000000..a2272b6 Binary files /dev/null and b/themes/lemmings/walker.png differ diff --git a/themes/lemmings/walker1a.png b/themes/lemmings/walker1a.png new file mode 100644 index 0000000..c23999f Binary files /dev/null and b/themes/lemmings/walker1a.png differ diff --git a/themes/lemmings/walker1b.png b/themes/lemmings/walker1b.png new file mode 100644 index 0000000..6fe8ac4 Binary files /dev/null and b/themes/lemmings/walker1b.png differ diff --git a/themes/lemmings/walker2a.png b/themes/lemmings/walker2a.png new file mode 100644 index 0000000..3700ea3 Binary files /dev/null and b/themes/lemmings/walker2a.png differ diff --git a/themes/lemmings/walker2b.png b/themes/lemmings/walker2b.png new file mode 100644 index 0000000..d90805d Binary files /dev/null and b/themes/lemmings/walker2b.png differ diff --git a/themes/lemmings/walker3a.png b/themes/lemmings/walker3a.png new file mode 100644 index 0000000..01f6f5b Binary files /dev/null and b/themes/lemmings/walker3a.png differ diff --git a/themes/lemmings/walker3b.png b/themes/lemmings/walker3b.png new file mode 100644 index 0000000..674f52c Binary files /dev/null and b/themes/lemmings/walker3b.png differ diff --git a/themes/lemmings/walker4a.png b/themes/lemmings/walker4a.png new file mode 100644 index 0000000..c0c07c8 Binary files /dev/null and b/themes/lemmings/walker4a.png differ diff --git a/themes/lemmings/walker4b.png b/themes/lemmings/walker4b.png new file mode 100644 index 0000000..8bb6362 Binary files /dev/null and b/themes/lemmings/walker4b.png differ diff --git a/themes/lemmings/walker5a.png b/themes/lemmings/walker5a.png new file mode 100644 index 0000000..319774d Binary files /dev/null and b/themes/lemmings/walker5a.png differ diff --git a/themes/lemmings/walker5b.png b/themes/lemmings/walker5b.png new file mode 100644 index 0000000..3d7c33d Binary files /dev/null and b/themes/lemmings/walker5b.png differ diff --git a/themes/lemmings/walker6a.png b/themes/lemmings/walker6a.png new file mode 100644 index 0000000..0a28a56 Binary files /dev/null and b/themes/lemmings/walker6a.png differ diff --git a/themes/lemmings/walker6b.png b/themes/lemmings/walker6b.png new file mode 100644 index 0000000..921b5b7 Binary files /dev/null and b/themes/lemmings/walker6b.png differ diff --git a/themes/lemmings/walker7a.png b/themes/lemmings/walker7a.png new file mode 100644 index 0000000..14ecb6b Binary files /dev/null and b/themes/lemmings/walker7a.png differ diff --git a/themes/lemmings/walker7b.png b/themes/lemmings/walker7b.png new file mode 100644 index 0000000..e85765f Binary files /dev/null and b/themes/lemmings/walker7b.png differ diff --git a/themes/lemmings/walker8a.png b/themes/lemmings/walker8a.png new file mode 100644 index 0000000..b3e13cf Binary files /dev/null and b/themes/lemmings/walker8a.png differ diff --git a/themes/lemmings/walker8b.png b/themes/lemmings/walker8b.png new file mode 100644 index 0000000..092be8e Binary files /dev/null and b/themes/lemmings/walker8b.png differ