From a9022b5972dc49d86f617a27940fafe9c4d0e7e7 Mon Sep 17 00:00:00 2001 From: Ian C Date: Thu, 9 Jun 2011 13:46:28 +0000 Subject: Initial import of (very old) vidoom sources. --- genlines.h | 86 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 genlines.h (limited to 'genlines.h') diff --git a/genlines.h b/genlines.h new file mode 100644 index 0000000..1fc6bfb --- /dev/null +++ b/genlines.h @@ -0,0 +1,86 @@ +/* + + viDOOM - level editor for DOOM + + Copyright (C) 2000 Ian Cowburn (ianc@noddybox.demon.co.uk) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + ------------------------------------------------------------------------- + + Handles definition and storage of the supported generalised LINEDEFs + + $Id$ + +*/ + +#ifndef VIDOOM_GENLINES_H + +#define VIDOOM_GENLINES_H + +/* This is not going to be an ID, so is used to detect whether LinedefSelect() + was cancelled. +*/ +#define GENLINE_NULLID -666 + + +/* Add a new class of bitmask +*/ +void GenLineNewBitClass(char *class, int no_fields); + +/* Add a bitmask to a defined class +*/ +void GenLineAddBitmask(char *class, char *name, char *abbrev, int mask); + + +/* Define a generalised linedef type class +*/ +void GenLineNewClass(int for_hexen,char *class, + int lo, int hi, int mask, int no_bitmasks); + +/* Add the named bitmask to the supplied class +*/ +void GenLineAdd(int for_hexen, char *class,char *bitmask, int shift); + + +/* Selects a generalised linedef type, returning the bit fields or + GENLINE_NULLID if cancelled +*/ +int SelectGenLine(int for_hexen, int current_type); + + +/* Returns the full name of a generalised linedef type. If the generalised + type is added to a normal linedef type the passed function GetName is + used to get the name for that part. +*/ +char *GenLineName(int for_hexen, int id,char *(*GetName)(int id)); + + +/* Returns the class name of a generalised linedef type. If the generalised + type is added to a normal linedef type the passed function GetClass is + used to get the class for that part. +*/ +char *GenLineClass(int for_hexen, int id,char *(*GetClass)(int id)); + + +/* Returns the number of classes defined +*/ +int GenLineNoClasses(int for_hexen); + + +#endif + + +/* END OF FILE */ -- cgit v1.2.3