From http://www.jwz.org/xscreensaver/xscreensaver-5.37.tar.gz
[xscreensaver] / hacks / glx / sproingies.h
1 /*-
2  *  sproingies.c - Copyright 1996 by Ed Mackey, freely distributable.
3  *
4  * Permission to use, copy, modify, and distribute this software and its
5  * documentation for any purpose and without fee is hereby granted,
6  * provided that the above copyright notice appear in all copies and that
7  * both that copyright notice and this permission notice appear in
8  * supporting documentation.
9  *
10  * This file is provided AS IS with no warranties of any kind.  The author
11  * shall have no liability with respect to the infringement of copyrights,
12  * trade secrets or any patents by this file or any part thereof.  In no
13  * event will the author be liable for any lost revenue or profits or
14  * other special, indirect and consequential damages.
15  *
16  * Revision History:
17  * See sproingiewrap.c
18  */
19
20 struct sPosColor {   /* Position and color of the sproingie     */
21         int x, y, z;     /*   Position                              */
22         int frame;       /*   Current frame (0-5)                   */
23         int life;        /*   Life points                           */
24         GLfloat r, g, b; /*   Color RGB                             */
25         int direction;   /*   Direction of next hop (left or right) */
26 };
27
28 typedef struct {
29         int         rotx, roty, dist, wireframe, flatshade, groundlevel,
30                     maxsproingies, mono;
31         int         sframe, target_rx, target_ry, target_dist, target_count;
32         const struct gllist *sproingies[6];
33         const struct gllist *SproingieBoom;
34         GLuint TopsSides;
35         struct sPosColor *positions;
36 } sp_instance;
37
38 extern void DisplaySproingies(sp_instance *si);
39 extern void NextSproingieDisplay(sp_instance *si);
40 extern void ReshapeSproingies(int w, int h);
41 extern void CleanupSproingies(sp_instance *si);
42 extern void InitSproingies(sp_instance *, int wfmode, int grnd, int mspr,
43                            int smrtspr, int mono);