ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/plugins/cfanim/include/cfanim.h
Revision: 1.1.1.3 (vendor branch)
Committed: Wed Mar 15 14:05:32 2006 UTC (18 years, 3 months ago) by elmex
Content type: text/plain
Branch: UPSTREAM
CVS Tags: UPSTREAM_2006_03_15, LAST_C_VERSION, difficulty_fix_merge_060810_2300
Branch point for: difficulty_fix
Changes since 1.1.1.2: +3 -1 lines
Log Message:
cvs -z9 -d:ext:elmex@cvs.schmorp.de:/schmorpforge import cf.schmorp.de UPSTREAM UPSTREAM_2006_03_15

File Contents

# Content
1 /*****************************************************************************/
2 /* Crossfire Animator v2.0a */
3 /* Contacts: yann.chachkoff@myrealbox.com, tchize@myrealbox.com */
4 /*****************************************************************************/
5 /* That code is placed under the GNU General Public Licence (GPL) */
6 /* */
7 /* (C) 2001 David Delbecq for the original code version. */
8 /*****************************************************************************/
9 /* CrossFire, A Multiplayer game for X-windows */
10 /* */
11 /* Copyright (C) 2000 Mark Wedel */
12 /* Copyright (C) 1992 Frank Tore Johansen */
13 /* */
14 /* This program is free software; you can redistribute it and/or modify */
15 /* it under the terms of the GNU General Public License as published by */
16 /* the Free Software Foundation; either version 2 of the License, or */
17 /* (at your option) any later version. */
18 /* */
19 /* This program is distributed in the hope that it will be useful, */
20 /* but WITHOUT ANY WARRANTY; without even the implied warranty of */
21 /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
22 /* GNU General Public License for more details. */
23 /* */
24 /* You should have received a copy of the GNU General Public License */
25 /* along with this program; if not, write to the Free Software */
26 /* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
27 /* */
28 /*****************************************************************************/
29 #ifndef PLUGIN_ANIM_H
30 #define PLUGIN_ANIM_H
31
32 #define PLUGIN_NAME "Animator"
33 #define PLUGIN_VERSION "CFAnim Plugin 2.0"
34
35 #ifndef __CEXTRACT__
36 #include <plugin.h>
37 #include <plugin_common.h>
38 #endif
39
40 #include <plugin_common.h>
41 enum time_enum {time_second, time_tick};
42 struct CFanimation_struct;
43 struct CFmovement_struct;
44 typedef int (*CFAnimRunFunc) (struct CFanimation_struct* animation, long int id, void* parameters);
45 typedef long int (*CFAnimInitFunc) (char* name,char* parameters,struct CFmovement_struct*);
46 typedef struct CFmovement_struct
47 {
48 struct CFanimation_struct* parent;
49 CFAnimRunFunc func;
50 void* parameters;
51 long int id;
52 int tick;
53 struct CFmovement_struct* next;
54 } CFmovement;
55 typedef struct CFanimation_struct
56 {
57 char* name;
58 object* victim;
59 int paralyze;
60 int invisible;
61 int wizard;
62 int unique;
63 int verbose;
64 int ghosted;
65 int errors_allowed;
66 object* corpse;
67 long int tick_left;
68 enum time_enum time_representation;
69 struct CFmovement_struct* nextmovement;
70 struct CFanimation_struct* nextanimation;
71 } CFanimation;
72 typedef struct
73 {
74 const char *name;
75 CFAnimInitFunc funcinit;
76 CFAnimRunFunc funcrun;
77 } CFanimationHook;
78 extern CFanimationHook animationbox[];
79 extern int animationcount;
80 int get_boolean (char* string,int* bool);
81
82 typedef struct _cfpcontext
83 {
84 struct _cfpcontext* down;
85 object* who;
86 object* activator;
87 object* third;
88 char message[1024];
89 int fix;
90 int event_code;
91 char options[1024];
92 char script[1024];
93 int returnvalue;
94 int parms[5];
95 } CFPContext;
96
97 extern f_plug_api gethook;
98 extern CFPContext* context_stack;
99 extern CFPContext* current_context;
100 #include <cfanim_proto.h>
101
102 #endif /* PLUGIN_ANIM_H */