1 /* -*- Mode: C++; c-basic-offset: 2; tab-width: 2; indent-tabs-mode: nil -*- 2 * 3 * Quadra, an action puzzle game 4 * Copyright (C) 1998-2000 Ludus Design 5 * 6 * This program is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU Lesser General Public 8 * License as published by the Free Software Foundation; either 9 * version 2.1 of the License, or (at your option) any later version. 10 * 11 * This program is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public 17 * License along with this library; if not, write to the Free Software 18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 19 */ 20 21 #ifndef _HEADER_MISC 22 #define _HEADER_MISC 23 24 #include "overmind.h" 25 #include "palette.h" 26 27 class Fade_to: public Module { 28 Fade* fad; 29 public: 30 Fade_to(const Palette& dst, const Palette& src, int nframe=16); 31 virtual ~Fade_to(); 32 virtual void step(); 33 }; 34 35 class Fade_in: public Fade_to { 36 public: Fade_in(const Palette & dst)37 Fade_in(const Palette& dst): Fade_to(dst, noir) { } 38 virtual void init(); 39 }; 40 41 class Fade_out: public Fade_to { 42 public: Fade_out(const Palette & src)43 Fade_out(const Palette& src): Fade_to(noir, src) { } 44 virtual void init(); 45 }; 46 47 class Setpalette: public Module { 48 const Palette& pal; 49 public: 50 Setpalette(const Palette& p); 51 virtual void init(); 52 }; 53 54 class Wait_event: public Module { 55 public: 56 virtual void step(); 57 }; 58 59 class Wait_time: public Wait_event { 60 int delay; 61 bool force_wait; 62 public: 63 Wait_time(int del, bool force=false); 64 virtual void step(); 65 }; 66 67 #endif 68