raze/polymer/eduke32/source/jmact/scriplib.h
hendricks266 fcf9beae6a Work-in-progress adjustment to the C code to compile under C++. It builds for me without errors using Win32 MinGW-GCC, but it still generates warning soup. No guarantees about MSVC or anything using SDL. Enable C++ by building with CPLUSPLUS=1. C remains the default and should compile with no change in setup.
Credit to Plagman for the idea and doing the work on the game side, which is included in this commit.

(Building as C++ will give us features with which we can make improvements and optimizations on the multiplayer code and Polymer.)

git-svn-id: https://svn.eduke32.com/eduke32@3116 1a8010ca-5511-0410-912e-c29ae57300e0
2012-11-05 02:49:08 +00:00

293 lines
4.2 KiB
C

//-------------------------------------------------------------------------
/*
Copyright (C) 1996, 2003 - 3D Realms Entertainment
This file is part of Duke Nukem 3D version 1.5 - Atomic Edition
Duke Nukem 3D 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.
Original Source: 1996 - Todd Replogle
Prepared for public release: 03/21/2003 - Charlie Wiederhold, 3D Realms
*/
//-------------------------------------------------------------------------
// scriplib.h
#ifndef _scriplib_public
#define _scriplib_public
#ifdef EXTERNC
{
#endif
/*
==============
=
= SCRIPT_Init
=
==============
*/
int32_t SCRIPT_Init( char * name );
/*
==============
=
= SCRIPT_Free
=
==============
*/
void SCRIPT_Free( int32_t scripthandle );
/*
==============
=
= SCRIPT_Load
=
==============
*/
int32_t SCRIPT_Load ( char * filename );
/*
==============
=
= SCRIPT_Save
=
==============
*/
void SCRIPT_Save (int32_t scripthandle, char * filename);
/*
==============
=
= SCRIPT_NumberSections
=
==============
*/
int32_t SCRIPT_NumberSections( int32_t scripthandle );
/*
==============
=
= SCRIPT_Section
=
==============
*/
char * SCRIPT_Section( int32_t scripthandle, int32_t which );
/*
==============
=
= SCRIPT_NumberEntries
=
==============
*/
int32_t SCRIPT_NumberEntries( int32_t scripthandle, char * sectionname );
/*
==============
=
= SCRIPT_Entry
=
==============
*/
char * SCRIPT_Entry( int32_t scripthandle, char * sectionname, int32_t which );
/*
==============
=
= SCRIPT_GetRaw
=
==============
*/
char * SCRIPT_GetRaw(int32_t scripthandle, char * sectionname, char * entryname);
/*
==============
=
= SCRIPT_GetString
=
==============
*/
int32_t SCRIPT_GetString
(
int32_t scripthandle,
char * sectionname,
char * entryname,
char * dest
);
/*
==============
=
= SCRIPT_GetDoubleString
=
==============
*/
int32_t SCRIPT_GetDoubleString
(
int32_t scripthandle,
char * sectionname,
char * entryname,
char * dest1,
char * dest2
);
/*
==============
=
= SCRIPT_GetNumber
=
==============
*/
int32_t SCRIPT_GetNumber
(
int32_t scripthandle,
char * sectionname,
char * entryname,
int32_t * number
);
/*
==============
=
= SCRIPT_GetBoolean
=
==============
*/
int32_t SCRIPT_GetBoolean
(
int32_t scripthandle,
char * sectionname,
char * entryname,
int32_t * boole
);
/*
==============
=
= SCRIPT_PutSection
=
==============
*/
void SCRIPT_PutSection( int32_t scripthandle, char * sectionname );
/*
==============
=
= SCRIPT_PutRaw
=
==============
*/
void SCRIPT_PutRaw
(
int32_t scripthandle,
char * sectionname,
char * entryname,
char * raw
);
/*
==============
=
= SCRIPT_PutString
=
==============
*/
void SCRIPT_PutString
(
int32_t scripthandle,
char * sectionname,
char * entryname,
const char * string
);
/*
==============
=
= SCRIPT_PutDoubleString
=
==============
*/
void SCRIPT_PutDoubleString
(
int32_t scripthandle,
char * sectionname,
char * entryname,
char * string1,
char * string2
);
/*
==============
=
= SCRIPT_PutNumber
=
==============
*/
void SCRIPT_PutNumber
(
int32_t scripthandle,
char * sectionname,
char * entryname,
int32_t number,
int32_t hexadecimal,
int32_t defaultvalue
);
/*
==============
=
= SCRIPT_PutBoolean
=
==============
*/
void SCRIPT_PutBoolean
(
int32_t scripthandle,
char * sectionname,
char * entryname,
int32_t boole
);
/*
==============
=
= SCRIPT_PutDouble
=
==============
*/
void SCRIPT_PutDouble
(
int32_t scripthandle,
char * sectionname,
char * entryname,
double number,
int32_t defaultvalue
);
#ifdef EXTERNC
};
#endif
#endif