[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Stratagus-CVS] stratagus/src/include cursor.h map.h player.h s...
From: |
address@hidden |
Subject: |
[Stratagus-CVS] stratagus/src/include cursor.h map.h player.h s... |
Date: |
15 Jan 2004 13:05:40 +1100 |
CVSROOT: /home/strat
Module name: stratagus
Changes by: <address@hidden> 04/01/15 13:05:40
Modified files:
src/include : cursor.h map.h player.h stratagus.h ui.h unit.h
unittype.h video.h
Log message:
USE_SDL_SURFACE is default
Patches:
Index: stratagus/src/include/cursor.h
diff -u stratagus/src/include/cursor.h:1.40 stratagus/src/include/cursor.h:1.41
--- stratagus/src/include/cursor.h:1.40 Thu Jan 15 10:49:50 2004
+++ stratagus/src/include/cursor.h Thu Jan 15 13:05:38 2004
@@ -26,7 +26,7 @@
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
// 02111-1307, USA.
//
-// $Id: cursor.h,v 1.40 2004/01/14 23:49:50 jsalmon3 Exp $
+// $Id: cursor.h,v 1.41 2004/01/15 02:05:38 jsalmon3 Exp $
#ifndef __CURSOR_H__
#define __CURSOR_H__
@@ -209,17 +209,12 @@
/// Save/load rectangle region from/to screen
/// Note: this is made extern for minimap only
-#ifdef USE_SDL_SURFACE
#ifndef USE_OPENGL
extern void SaveCursorRectangle(void *buffer, int x, int y, int w, int h);
extern void LoadCursorRectangle(void *buffer, int x, int y, int w, int h);
#else
#define SaveCursorRectangle(buffer, x, y, w, h)
#define LoadCursorRectangle(buffer, x, y, w, h)
-#endif
-#else
-extern void (*SaveCursorRectangle)(void *buffer, int x, int y, int w, int h);
-extern void (*LoadCursorRectangle)(void *buffer, int x, int y, int w, int h);
#endif
/// Invalidate given area and check if cursor won't need any
Index: stratagus/src/include/map.h
diff -u stratagus/src/include/map.h:1.114 stratagus/src/include/map.h:1.115
--- stratagus/src/include/map.h:1.114 Thu Jan 15 10:17:27 2004
+++ stratagus/src/include/map.h Thu Jan 15 13:05:38 2004
@@ -27,7 +27,7 @@
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
// 02111-1307, USA.
//
-// $Id: map.h,v 1.114 2004/01/14 23:17:27 nobody_ Exp $
+// $Id: map.h,v 1.115 2004/01/15 02:05:38 jsalmon3 Exp $
#ifndef __MAP_H__
#define __MAP_H__
@@ -297,13 +297,8 @@
Tileset* Tileset; /// tileset data
unsigned TileCount; /// how many tiles,
-#ifdef USE_SDL_SURFACE
/// == TileGraphic->NFrames
Graphic* TileGraphic; /// graphic for all the tiles
-#else
- unsigned char** Tiles; /// pointer to tile data
- Graphic* TileData; /// tiles graphic for map
-#endif
char Description[32];/// map description short
@@ -317,17 +312,9 @@
extern WorldMap TheMap; /// The current map
/// Fast draw tile, display and video mode independ
-#ifdef USE_SDL_SURFACE
extern void VideoDrawTile(const int, int, int);
-#else
-extern void (*VideoDrawTile)(const unsigned char*, int, int);
-#endif
/// Draws tiles display and video mode independ
-#ifdef USE_SDL_SURFACE
extern void MapDrawTile(int, int, int);
-#else
-extern void (*MapDrawTile)(int, int, int);
-#endif
/// Vision Table to see where to locate goals and vision
extern unsigned char *VisionTable[3];
/// Companion table for fast lookups
Index: stratagus/src/include/player.h
diff -u stratagus/src/include/player.h:1.83 stratagus/src/include/player.h:1.84
--- stratagus/src/include/player.h:1.83 Thu Jan 15 09:31:04 2004
+++ stratagus/src/include/player.h Thu Jan 15 13:05:38 2004
@@ -26,7 +26,7 @@
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
// 02111-1307, USA.
//
-// $Id: player.h,v 1.83 2004/01/14 22:31:04 nobody_ Exp $
+// $Id: player.h,v 1.84 2004/01/15 02:05:38 jsalmon3 Exp $
#ifndef __PLAYER_H__
#define __PLAYER_H__
@@ -346,11 +346,7 @@
int TotalKills; /// How many unit killed
// Display video
-#ifdef USE_SDL_SURFACE
Uint32 Color; /// color of units on minimap
-#else
- VMemType Color; /// color of units on minimap
-#endif
UnitColors UnitColors; /// Unit colors for new units
@@ -462,11 +458,7 @@
extern Player Players[PlayerMax]; /// All players
extern Player* ThisPlayer; /// Player on local computer
extern int NoRescueCheck; /// Disable rescue check
-#ifdef USE_SDL_SURFACE
extern Uint32 PlayerColors[PlayerMax][4];
-#else
-extern VMemType PlayerColors[PlayerMax][4]; /// Player colors
-#endif
extern char* PlayerColorNames[PlayerMax]; /// Player color names
extern PlayerRace PlayerRaces; /// Player races
Index: stratagus/src/include/stratagus.h
diff -u stratagus/src/include/stratagus.h:1.32
stratagus/src/include/stratagus.h:1.33
--- stratagus/src/include/stratagus.h:1.32 Sat Jan 10 10:13:58 2004
+++ stratagus/src/include/stratagus.h Thu Jan 15 13:05:38 2004
@@ -26,7 +26,7 @@
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
// 02111-1307, USA.
//
-// $Id: stratagus.h,v 1.32 2004/01/09 23:13:58 jsalmon3 Exp $
+// $Id: stratagus.h,v 1.33 2004/01/15 02:05:38 jsalmon3 Exp $
#ifndef __STRATAGUS_H__
#define __STRATAGUS_H__
@@ -36,9 +36,6 @@
/*============================================================================
== Config definitions
============================================================================*/
-
-// Temporary define, remove
-#define USE_SDL_SURFACE
//
// Default speed for many things, set it higher for faster
actions.
Index: stratagus/src/include/ui.h
diff -u stratagus/src/include/ui.h:1.85 stratagus/src/include/ui.h:1.86
--- stratagus/src/include/ui.h:1.85 Thu Jan 15 09:31:04 2004
+++ stratagus/src/include/ui.h Thu Jan 15 13:05:38 2004
@@ -26,7 +26,7 @@
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
// 02111-1307, USA.
//
-// $Id: ui.h,v 1.85 2004/01/14 22:31:04 nobody_ Exp $
+// $Id: ui.h,v 1.86 2004/01/15 02:05:38 jsalmon3 Exp $
#ifndef __UI_H__
#define __UI_H__
@@ -230,13 +230,8 @@
int TransportingTextY;
// Completed bar
-#ifdef USE_SDL_SURFACE
SDL_Color CompletedBarColorRGB; /// color for
completed bar
Uint32 CompletedBarColor; /// color for completed
bar
-#else
- VMemType CompletedBarColorRGB; /// color for
completed bar
- VMemType CompletedBarColor; /// color for
completed bar
-#endif
int CompletedBarX;
/// completed bar X position
int CompletedBarY;
/// completed bar Y position
int CompletedBarW;
/// completed bar width
@@ -288,11 +283,7 @@
int MinimapPosX;
/// minimap screen X position
int MinimapPosY;
/// minimap screen Y position
int MinimapTransparent; /// unexplored
areas are transparent
-#ifdef USE_SDL_SURFACE
Uint32 ViewportCursorColor; /// minimap cursor color
-#else
- VMemType ViewportCursorColor; /// minimap
cursor color
-#endif
// The status line
GraphicConfig StatusLine; /// Status line
background
Index: stratagus/src/include/unit.h
diff -u stratagus/src/include/unit.h:1.244 stratagus/src/include/unit.h:1.245
--- stratagus/src/include/unit.h:1.244 Thu Jan 15 09:31:05 2004
+++ stratagus/src/include/unit.h Thu Jan 15 13:05:38 2004
@@ -26,7 +26,7 @@
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
// 02111-1307, USA.
//
-// $Id: unit.h,v 1.244 2004/01/14 22:31:05 nobody_ Exp $
+// $Id: unit.h,v 1.245 2004/01/15 02:05:38 jsalmon3 Exp $
#ifndef __UNIT_H__
#define __UNIT_H__
@@ -379,9 +379,7 @@
#include "construct.h"
#include "ccl.h"
-#ifdef USE_SDL_SURFACE
#include "SDL.h"
-#endif
#ifdef NEW_DECODRAW
#include "deco.h"
@@ -728,11 +726,7 @@
extern char RevealAttacker; /// Config: reveal
attacker enabled
extern const Viewport* CurrentViewport; /// CurrentViewport
extern void DrawUnitSelection(const Unit*);
-#ifdef USE_SDL_SURFACE
extern void (*DrawSelection)(Uint32, int, int, int, int);
-#else
-extern void (*DrawSelection)(VMemType, int, int, int, int);
-#endif
extern int MaxSelectable; /// How many units
could be selected
extern Unit** Selected; ///
currently selected units
@@ -911,7 +905,6 @@
// in unit_draw.c
//--------------------
-#ifdef USE_SDL_SURFACE
/// Draw nothing around unit
extern void DrawSelectionNone(Uint32, int, int, int, int);
/// Draw circle around unit
@@ -924,20 +917,6 @@
extern void DrawSelectionRectangleWithTrans(Uint32, int, int, int, int);
/// Draw corners around unit
extern void DrawSelectionCorners(Uint32, int, int, int, int);
-#else
- /// Draw nothing around unit
-extern void DrawSelectionNone(VMemType, int, int, int, int);
- /// Draw circle around unit
-extern void DrawSelectionCircle(VMemType, int, int, int, int);
- /// Draw circle filled with alpha around unit
-extern void DrawSelectionCircleWithTrans(VMemType, int, int, int, int);
- /// Draw rectangle around unit
-extern void DrawSelectionRectangle(VMemType, int, int, int, int);
- /// Draw rectangle filled with alpha around unit
-extern void DrawSelectionRectangleWithTrans(VMemType, int, int, int, int);
- /// Draw corners around unit
-extern void DrawSelectionCorners(VMemType, int, int, int, int);
-#endif
/// Register CCL decorations features
extern void DecorationCclRegister(void);
Index: stratagus/src/include/unittype.h
diff -u stratagus/src/include/unittype.h:1.137
stratagus/src/include/unittype.h:1.138
--- stratagus/src/include/unittype.h:1.137 Sun Jan 11 07:53:59 2004
+++ stratagus/src/include/unittype.h Thu Jan 15 13:05:39 2004
@@ -26,7 +26,7 @@
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
// 02111-1307, USA.
//
-// $Id: unittype.h,v 1.137 2004/01/10 20:53:59 jsalmon3 Exp $
+// $Id: unittype.h,v 1.138 2004/01/15 02:05:39 jsalmon3 Exp $
#ifndef __UNITTYPE_H__
#define __UNITTYPE_H__
@@ -738,11 +738,7 @@
int GivesResource; /// The resource this unit gives.
ResourceInfo* ResInfo[MaxCosts]; /// Resource information.
UnitType* MustBuildOnTop; /// Must be built on top of
something.
-#ifdef USE_SDL_SURFACE
SDL_Color NeutralMinimapColorRGB; /// Minimap Color for Neutral Units.
-#else
- VMemType NeutralMinimapColorRGB; /// Minimap Color for Neutral Units.
-#endif
UnitSound Sound; /// Sounds for events
// FIXME: temporary solution
Index: stratagus/src/include/video.h
diff -u stratagus/src/include/video.h:1.113 stratagus/src/include/video.h:1.114
--- stratagus/src/include/video.h:1.113 Thu Jan 15 10:49:50 2004
+++ stratagus/src/include/video.h Thu Jan 15 13:05:39 2004
@@ -5,12 +5,12 @@
// /_______ /|__| |__| (____ /__| (____ /\___ /|____//____ >
// \/ \/ \//_____/ \/
// ______________________ ______________________
-// T H E W A R B E G I N S
-// Stratagus - A free fantasy real time strategy game engine
+// T H E W A R B E G I N S
+// Stratagus - A free fantasy real time strategy game engine
//
-/address@hidden video.h - The video headerfile. */
+/address@hidden video.h - The video headerfile. */
//
-// (c) Copyright 1999-2003 by Lutz Sammer and Nehal Mistry
+// (c) Copyright 1999-2004 by Lutz Sammer and Nehal Mistry
//
// 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
@@ -26,15 +26,13 @@
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
// 02111-1307, USA.
//
-// $Id: video.h,v 1.113 2004/01/14 23:49:50 jsalmon3 Exp $
+// $Id: video.h,v 1.114 2004/01/15 02:05:39 jsalmon3 Exp $
#ifndef __VIDEO_H__
#define __VIDEO_H__
//@{
-#ifdef USE_SDL_SURFACE
-
#include "SDL.h"
#ifdef USE_OPENGL
@@ -517,863 +515,6 @@
/// MACRO defines speed of colorcycling FIXME: should be made
configurable
#define COLOR_CYCLE_SPEED (CYCLES_PER_SECOND/4)
-
-#else
-
-// OOOOOOOOOLLLLLLLLDDDDDDDD VIDEO MODE *********************************
-// OOOOOOOOOLLLLLLLLDDDDDDDD VIDEO MODE *********************************
-// OOOOOOOOOLLLLLLLLDDDDDDDD VIDEO MODE *********************************
-// OOOOOOOOOLLLLLLLLDDDDDDDD VIDEO MODE *********************************
-
-/*----------------------------------------------------------------------------
--- Documentation
-----------------------------------------------------------------------------*/
-
-/**
-** @struct _graphic_config_ video.h
-**
-** \#include "video.h"
-**
-** typedef struct _graphic_config_ GraphicConfig;
-**
-** This structure contains all configuration informations about a
graphic.
-**
-** GraphicConfig::File
-**
-** Unique identifier of the graphic, used to
reference graphics
-** in config files and during startup. The file
is resolved
-** during game start and the pointer placed in the
next field.
-** Currently this is the path file name of the
graphic file.
-**
-** GraphicConfig::Graphic
-**
-** Pointer to the graphic. This pointer is
resolved during game
-** start.
-*/
-
-/*----------------------------------------------------------------------------
--- Includes
-----------------------------------------------------------------------------*/
-
-#ifdef USE_OPENGL
-#define DrawIcon WinDrawIcon
-#define EndMenu WinEndMenu
-#include "SDL_opengl.h"
-#undef EndMenu
-#undef DrawIcon
-#endif
-
-/*----------------------------------------------------------------------------
--- Declarations
-----------------------------------------------------------------------------*/
-
-typedef unsigned char VMemType8; /// 8 bpp modes pointer
-typedef unsigned short VMemType16; /// 16 bpp modes pointer
-typedef struct { char a, b, c;} VMemType24; /// 24 bpp modes pointer
-typedef unsigned int VMemType32; /// 32 bpp modes pointer
-
-/**
-** General video mode pointer.
-**
-** video mode (color) types
-**
-** FIXME: The folllowing are assumptions and might not be true for all
-** hardware. Note that VMemType16 and VMemType32 support 2 types.
-** An idea: convert VMemType32 to the needed coding in the very
last
-** step, keeping it out of the main code (and
this include ;)
-**
-** @li VMemType8 : 8 bit (index in a special RGB palette)
-** NOTE: single common palette support added
(used in X11)
-** @li VMemType16 :
-** 15 bit [5 bit Red|5 bit Green|5 bit Blue]
-** 16 bit [5 bit Red|6 bit Green|5 bit Blue]
-** @li VMemType24 : [8 bit Red|8 bit Green|8 bit Blue]
-** @li VMemType32 :
-** 24 bit [0|8 bit Red|8 bit Green|8 bit Blue]
-** 32 bit [8 bit alpha|8 bit Red|8 bit Green|8 bit Blue]
-**
-** @see VMemType8 @see VMemType16 @see VMemType24 @see VMemType32
-*/
-typedef union _vmem_type_ {
- VMemType8 D8;
/// 8 bpp access
- VMemType16 D16;
/// 16 bpp access
- VMemType24 D24;
/// 24 bpp access
- VMemType32 D32;
/// 32 bpp access
-} VMemType;
-
-/**
-** Typedef for palette links.
-*/
-typedef struct _palette_link_ PaletteLink;
-
-/**
-** Links all palettes together to join the same palettes.
-*/
-struct _palette_link_ {
- PaletteLink* Next; /// Next palette
- VMemType* Palette; ///
Palette in hardware format
- long Checksum; /// Checksum
for quick lookup
- int RefCount;
/// Reference counter
-};
-
- /// MACRO defines speed of colorcycling FIXME: should be made
configurable
-#define COLOR_CYCLE_SPEED (CYCLES_PER_SECOND/4)
-
-// FIXME: not quite correct for new multiple palette version
- /// System-Wide used colors.
-extern VMemType ColorBlack;
-extern VMemType ColorDarkGreen;
-extern VMemType ColorBlue;
-extern VMemType ColorOrange;
-extern VMemType ColorWhite;
-extern VMemType ColorNPC;
-extern VMemType ColorGray;
-extern VMemType ColorRed;
-extern VMemType ColorGreen;
-extern VMemType ColorYellow;
-
-extern int ColorWaterCycleStart; /// color # start for color
cycling
-extern int ColorWaterCycleEnd; /// color # end for
color cycling
-extern int ColorIconCycleStart; /// color #
start for color cycling
-extern int ColorIconCycleEnd; /// color # end for
color cycling
-extern int ColorBuildingCycleStart; /// color # start for color
cycling
-extern int ColorBuildingCycleEnd; /// color # end for color
cycling
-
-typedef enum _sys_colors_ SysColors; /// System-Wide used colors.
-
-typedef struct _palette_ Palette; /// palette typedef
-
-/// Palette structure.
-struct _palette_ {
- unsigned char r; /// red
component
- unsigned char g; ///
green component
- unsigned char b; ///
blue component
-};
-
-typedef unsigned char GraphicData; /// generic graphic data type
-
-/**
-** General graphic object typedef. (forward)
-*/
-typedef struct _graphic_ Graphic;
-
-/**
-** General graphic object type.
-*/
-typedef struct _graphic_type_ {
- /// Draw the object unclipped.
- void (*Draw)(const Graphic* o, unsigned f, int x, int y);
- /// Draw the object unclipped and flipped in X
direction.
- void (*DrawX)(const Graphic* o, unsigned f, int x, int y);
- /// Draw the object clipped to the current clipping.
- void (*DrawClip)(const Graphic* o, unsigned f, int x, int y);
- /// Draw the object clipped and flipped in X
direction.
- void (*DrawClipX)(const Graphic* o, unsigned f, int x, int y);
-
- ///50% Translucide functions
- void (*DrawTrans50)(const Graphic* o, unsigned f, int x, int y);
- /// Draw the object unclipped and flipped in X
direction.
- void (*DrawXTrans50)(const Graphic* o, unsigned f, int x, int y);
- /// Draw the object clipped to the current clipping.
- void (*DrawClipTrans50)(const Graphic* o, unsigned f, int x, int y);
- /// Draw the object clipped and flipped in X
direction.
- void (*DrawClipXTrans50)(const Graphic* o, unsigned f, int x, int y);
-
- /// Draw the shadow object clipped to the current
clipping.
- void (*DrawShadowClip)(const Graphic* o, unsigned f, int x, int y);
- /// Draw the shadow object clipped and flipped in X
direction.
- void (*DrawShadowClipX)(const Graphic* o, unsigned f, int x, int y);
- /// Draw part of the object unclipped.
- void (*DrawSub)(const Graphic* o, int gx, int gy,
- int w, int h, int x, int y);
- /// Draw part of the object unclipped and flipped
in X direction.
- void (*DrawSubX)(const Graphic* o, int gx, int gy,
- int w, int h, int x, int y);
- /// Draw part of the object clipped to the current
clipping.
- void (*DrawSubClip)(const Graphic* o, int gx, int gy,
- int w, int h, int x, int y);
- /// Draw part of the object clipped and flipped in
X direction.
- void (*DrawSubClipX)(const Graphic* o, int gx, int gy,
- int w, int h, int x, int y);
-
- /// Draw the object unclipped and zoomed.
- void (*DrawZoom)(const Graphic* o, unsigned f, int x, int y, int z);
-
- // FIXME: add zooming functions.
-
- /// Free the object.
- void (*Free)(Graphic* o);
-} GraphicType;
-
-/**
-** General graphic object
-*/
-struct _graphic_ {
- // cache line 0
- GraphicType* Type; /// Object type
dependend
- void* Frames; ///
Frames of the object
- void* Pixels; ///
Pointer to local or global palette
- int Width;
/// Width of the object
- // cache line 1
- int Height;
/// Height of the object
- int NumFrames;
/// Number of frames
- int Size;
/// Size of frames
- Palette* Palette; ///
Loaded Palette
- // cache line 2
- //void* Offsets; /// Offsets
into frames
-#ifdef USE_OPENGL
- int GraphicWidth;
/// Original graphic width
- int GraphicHeight;
/// Original graphic height
- GLfloat TextureWidth; /// Width of
the texture
- GLfloat TextureHeight; /// Height of
the texture
- int NumTextureNames; ///
Number of textures
- GLuint* TextureNames; /// Texture
names
-#endif
-};
-
- /// Graphic reference used during config/setup
-typedef struct _graphic_config_ {
- char* File; ///
config graphic name or file
- Graphic* Graphic; ///
graphic pointer to use to run time
-} GraphicConfig;
-
-/**
-** Colors of units. Same sprite can have different colors.
-*/
-typedef union _unit_colors_ {
- struct __4pixel8__ {
- VMemType8 Pixels[4]; /// palette
colors #0 ... #3
- } Depth8;
/// player colors for 8bpp
- struct __4pixel16__ {
- VMemType16 Pixels[4]; /// palette
colors #0 ... #3
- } Depth16;
/// player colors for 16bpp
- struct __4pixel24__ {
- VMemType24 Pixels[4]; /// palette
colors #0 ... #3
- } Depth24;
/// player colors for 24bpp
- struct __4pixel32__ {
- VMemType32 Pixels[4]; /// palette
colors #0 ... #3
- } Depth32;
/// player colors for 32bpp
-} UnitColors; ///
Unit colors for faster setup
-
-/**
-** Event call back.
-**
-** This is placed in the video part, because it depends on the
video
-** hardware driver.
-*/
-typedef struct _event_callback_ {
-
- /// Callback for mouse button press
- void (*ButtonPressed)(unsigned buttons);
- /// Callback for mouse button release
- void (*ButtonReleased)(unsigned buttons);
- /// Callback for mouse move
- void (*MouseMoved)(int x, int y);
- /// Callback for mouse exit of game window
- void (*MouseExit)(void);
-
- /// Callback for key press
- void (*KeyPressed)(unsigned keycode, unsigned keychar);
- /// Callback for key release
- void (*KeyReleased)(unsigned keycode, unsigned keychar);
- /// Callback for key repeated
- void (*KeyRepeated)(unsigned keycode, unsigned keychar);
-
- /// Callback for network event
- void (*NetworkEvent)(void);
- /// Callback for sound output ready
- void (*SoundReady)(void);
-
-} EventCallback;
-
-/*----------------------------------------------------------------------------
--- Variables
-----------------------------------------------------------------------------*/
-
-extern EventCallback* Callbacks; /// Current callbacks
-extern EventCallback GameCallbacks; /// Game callbacks
-extern EventCallback MenuCallbacks; /// Menu callbacks
-
-extern PaletteLink* PaletteList; /// List of all used palettes
loaded
-extern int ColorCycleAll; /// Flag color cycle
palettes
-#ifdef DEBUG
-extern unsigned AllocatedGraphicMemory; /// Allocated memory
for objects
-extern unsigned CompressedGraphicMemory;/// memory for compressed objects
-#endif
-
- // 1 if mouse cursor is inside main window, else 0
-extern int InMainWindow;
-
- /// Wanted videomode, fullscreen or windowed.
-extern char VideoFullScreen;
-
- /**
- ** Architecture-dependant video depth. Set by
InitVideoXXX, if 0.
- ** (8,15,16,24,32)
- ** @see InitVideo @see InitVideoSdl
- ** @see main
- */
-extern int VideoDepth;
-
- /**
- ** Architecture-dependant video bpp (bits pro pixel).
- ** Set by InitVideoXXX. (8,16,24,32)
- ** @see InitVideo @see InitVideoSdl
- ** @see main
- */
-extern int VideoBpp;
-
- /**
- ** Architecture-dependant video memory-size (byte pro
pixel).
- ** Set by InitVideo. (1,2,3,4 equals VideoBpp/8)
- ** @see InitVideo
- */
-extern int VideoTypeSize;
-
- /**
- ** Architecture-dependant videomemory. Set by InitVideoXXX.
- ** FIXME: need a new function to set it, see #ifdef SDL
code
- ** @see InitVideo @see InitVideoSdl
- ** @see VMemType
- */
-extern VMemType* VideoMemory;
-
-#define VideoMemory8 (&VideoMemory->D8) /// video
memory 8bpp
-#define VideoMemory16 (&VideoMemory->D16) /// video
memory 16bpp
-#define VideoMemory24 (&VideoMemory->D24) /// video
memory 24bpp
-#define VideoMemory32 (&VideoMemory->D32) /// video
memory 32bpp
-
- /**
- ** Special 8bpp functionality, only to be used in ../video
- ** @todo use CommonPalette names!
- */
- /// FIXME: docu
-extern VMemType8 *lookup25trans8;
- /// FIXME: docu
-extern VMemType8 *lookup50trans8;
-
- /**
- ** Video synchronization speed. Synchronization time in
percent.
- ** If =0, video framerate is not synchronized. 100 is exact
- ** CYCLES_PER_SECOND (30). Game will try to redraw screen
within
- ** intervals of VideoSyncSpeed, not more, not less.
- ** @see CYCLES_PER_SECOND @see VideoInterrupts
- */
-extern int VideoSyncSpeed;
-
- /**
- ** Counter. Counts how many video interrupts occured,
while proceed event
- ** queue. If <1 simply do nothing, =1 means that we should
redraw screen.
- ** >1 means that framerate is too slow.
- ** @see CheckVideoInterrupts @see VideoSyncSpeed
- */
-extern volatile int VideoInterrupts;
-
- /// Draw pixel unclipped.
-extern void (*VideoDrawPixel)(VMemType color, int x, int y);
-
- /// Draw 25% translucent pixel (Alpha=64) unclipped.
-extern void (*VideoDraw25TransPixel)(VMemType color, int x, int y);
-
- /// Draw 50% translucent pixel (Alpha=128) unclipped.
-extern void (*VideoDraw50TransPixel)(VMemType color, int x, int y);
-
- /// Draw 75% translucent pixel (Alpha=192) unclipped.
-extern void (*VideoDraw75TransPixel)(VMemType color, int x, int y);
-
- /// Draw translucent pixel unclipped.
-extern void (*VideoDrawTransPixel)(VMemType color, int x, int y,
- unsigned char alpha);
-
- /// Draw pixel clipped to current clip setting.
-extern void (*VideoDrawPixelClip)(VMemType color, int x, int y);
-
- /// Draw 25% translucent pixel clipped to current clip
setting.
-extern void VideoDraw25TransPixelClip(VMemType color, int x, int y);
-
- /// Draw 50% translucent pixel clipped to current clip
setting.
-extern void VideoDraw50TransPixelClip(VMemType color, int x, int y);
-
- /// Draw 75% translucent pixel clipped to current clip
setting.
-extern void VideoDraw75TransPixelClip(VMemType color, int x, int y);
-
- /// Draw translucent pixel clipped to current clip setting.
-extern void VideoDrawTransPixelClip(VMemType color, int x, int y,
- unsigned char alpha);
-
- /// Draw vertical line unclipped.
-extern void (*VideoDrawVLine)(VMemType color, int x, int y,
- int height);
-
- /// Draw 25% translucent vertical line unclipped.
-extern void (*VideoDraw25TransVLine)(VMemType color, int x, int y,
- int height);
-
- /// Draw 50% translucent vertical line unclipped.
-extern void (*VideoDraw50TransVLine)(VMemType color, int x, int y,
- int height);
-
- /// Draw 75% translucent vertical line unclipped.
-extern void (*VideoDraw75TransVLine)(VMemType color, int x, int y,
- int height);
-
- /// Draw translucent vertical line unclipped.
-extern void (*VideoDrawTransVLine)(VMemType color, int x, int y,
- int height, unsigned char alpha);
-
- /// Draw vertical line clipped to current clip setting
-extern void VideoDrawVLineClip(VMemType color, int x, int y,
- int height);
-
- /// Draw 25% translucent vertical line clipped to current
clip setting
-extern void VideoDraw25TransVLineClip(VMemType color, int x, int y,
- int height);
-
- /// Draw 50% translucent vertical line clipped to current
clip setting
-extern void VideoDraw50TransVLineClip(VMemType color, int x, int y,
- int height);
-
- /// Draw 75% translucent vertical line clipped to current
clip setting
-extern void VideoDraw75TransVLineClip(VMemType color, int x, int y,
- int height);
-
- /// Draw translucent vertical line clipped to current clip
setting
-extern void VideoDrawTransVLineClip(VMemType color, int x, int y,
- int height, unsigned char alpha);
-
- /// Draw horizontal line unclipped.
-extern void (*VideoDrawHLine)(VMemType color, int x, int y,
- int width);
-
- /// Draw 25% translucent horizontal line unclipped.
-extern void (*VideoDraw25TransHLine)(VMemType color, int x, int y,
- int width);
-
- /// Draw 50% translucent horizontal line unclipped.
-extern void (*VideoDraw50TransHLine)(VMemType color, int x, int y,
- int width);
-
- /// Draw 75% translucent horizontal line unclipped.
-extern void (*VideoDraw75TransHLine)(VMemType color, int x, int y,
- int width);
-
- /// Draw translucent horizontal line unclipped.
-extern void (*VideoDrawTransHLine)(VMemType color, int x, int y,
- int width, unsigned char alpha);
-
- /// Draw horizontal line clipped to current clip setting
-extern void VideoDrawHLineClip(VMemType color, int x, int y,
- int width);
-
- /// Draw 25% translucent horizontal line clipped to current
clip setting
-extern void VideoDraw25TransHLineClip(VMemType color, int x, int y,
- int width);
-
- /// Draw 50% translucent horizontal line clipped to current
clip setting
-extern void VideoDraw50TransHLineClip(VMemType color, int x, int y,
- int width);
-
- /// Draw 75% translucent horizontal line clipped to current
clip setting
-extern void VideoDraw75TransHLineClip(VMemType color, int x, int y,
- int width);
-
- /// Draw translucent horizontal line clipped to current
clip setting
-extern void VideoDrawTransHLineClip(VMemType color, int x, int y,
- int width, unsigned char alpha);
-
- /// Draw line unclipped.
-extern void (*VideoDrawLine)(VMemType color, int sx, int sy, int dx, int dy);
-
- /// Draw 25% translucent line unclipped.
-extern void (*VideoDraw25TransLine)(VMemType color, int sx, int sy,
- int dx, int dy);
-
- /// Draw 50% translucent line unclipped.
-extern void (*VideoDraw50TransLine)(VMemType color, int sx, int sy,
- int dx, int dy);
-
- /// Draw 75% translucent line unclipped.
-extern void (*VideoDraw75TransLine)(VMemType color, int sx, int sy,
- int dx, int dy);
-
- /// Draw translucent line unclipped.
-extern void (*VideoDrawTransLine)(VMemType color, int sx, int sy, int dx, int
dy,
- unsigned char alpha);
-
- /// Draw line clipped to current clip setting
-extern void VideoDrawLineClip(VMemType color, int sx, int sy, int dx, int dy);
-
- /// Draw 25% translucent line clipped to current clip
setting
-extern void VideoDraw25TransLineClip(VMemType color, int sx, int sy,
- int dx, int dy);
-
- /// Draw 50% translucent line clipped to current clip
setting
-extern void VideoDraw50TransLineClip(VMemType color, int sx, int sy,
- int dx, int dy);
-
- /// Draw 75% translucent line clipped to current clip
setting
-extern void VideoDraw75TransLineClip(VMemType color, int sx, int sy,
- int dx, int dy);
-
- /// Draw translucent line clipped to current clip setting
-extern void VideoDrawTransLineClip(VMemType color, int sx, int sy,
- int dx, int dy, unsigned char alpha);
-
- /// Draw rectangle.
-extern void (*VideoDrawRectangle)(VMemType color, int x, int y,
- int w, int h);
-
- /// Draw 25% translucent rectangle.
-extern void (*VideoDraw25TransRectangle)(VMemType color, int x, int y,
- int w, int h);
-
- /// Draw 50% translucent rectangle.
-extern void (*VideoDraw50TransRectangle)(VMemType color, int x, int y,
- int w, int h);
-
- /// Draw 75% translucent rectangle.
-extern void (*VideoDraw75TransRectangle)(VMemType color, int x, int y,
- int w, int h);
-
- /// Draw translucent rectangle.
-extern void (*VideoDrawTransRectangle)(VMemType color, int x, int y,
- int w, int h, unsigned char alpha);
-
- /// Draw rectangle clipped.
-extern void VideoDrawRectangleClip(VMemType color, int x, int y,
- int w, int h);
-
- /// Draw 25% translucent rectangle clipped.
-extern void VideoDraw25TransRectangleClip(VMemType color, int x, int y,
- int w, int h);
-
- /// Draw 50% translucent rectangle clipped.
-extern void VideoDraw50TransRectangleClip(VMemType color, int x, int y,
- int w, int h);
-
- /// Draw 75% translucent rectangle clipped.
-extern void VideoDraw75TransRectangleClip(VMemType color, int x, int y,
- int w, int h);
-
- /// Draw translucent rectangle clipped.
-extern void VideoDrawTransRectangleClip(VMemType color, int x, int y,
- int w, int h, unsigned char alpha);
-
- /// Draw 8bit raw graphic data clipped, using given pixel
pallette
-extern void (*VideoDrawRawClip)(VMemType *pixels, const unsigned char *data,
- int x, int y, int w, int h);
-
- /// Does ColorCycling..
-extern void (*ColorCycle)(void);
-
- /// Draw part of a graphic clipped and faded.
-extern void VideoDrawSubClipFaded(Graphic* graphic, int gx, int gy,
- int w, int h, int x, int y, unsigned char fade);
-
-/*----------------------------------------------------------------------------
--- Macros
-----------------------------------------------------------------------------*/
-
- /// Get the width of a single frame of a graphic object
-#define VideoGraphicWidth(o) ((o)->Width)
- /// Get the height of a single frame of a graphic object
-#define VideoGraphicHeight(o) ((o)->Height)
- /// Get the number of frames of a graphic object
-#define VideoGraphicFrames(o) ((o)->NumFrames)
-
- /// Draw a graphic object unclipped.
-#define VideoDraw(o, f, x, y) ((o)->Type->Draw)((o), (f), (x), (y))
- /// Draw a graphic object unclipped and flipped in X
direction.
-#define VideoDrawX(o, f, x, y) ((o)->Type->DrawX)((o), (f), (x), (y))
- /// Draw a graphic object clipped to the current clipping.
-#define VideoDrawClip(o, f, x, y) ((o)->Type->DrawClip)((o), (f),
(x), (y))
- /// Draw a graphic object clipped and flipped in X
direction.
-#define VideoDrawClipX(o, f, x, y) ((o)->Type->DrawClipX)((o),
(f), (x), (y))
-
- /// Translucent Functions
- /// Draw a graphic object unclipped.
-#define VideoDrawTrans50(o, f, x, y) ((o)->Type->DrawTrans50)((o),
(f), (x), (y))
- /// Draw a graphic object unclipped and flipped in X
direction.
-#define VideoDrawXTrans50(o, f, x, y) ((o)->Type->DrawXTrans50)((o),
(f), (x), (y))
- /// Draw a graphic object clipped to the current clipping.
-#define VideoDrawClipTrans50(o, f, x, y)
((o)->Type->DrawClipTrans50)((o), (f), (x), (y))
- /// Draw a graphic object clipped and flipped in X
direction.
-#define VideoDrawClipXTrans50(o, f, x, y)
((o)->Type->DrawClipXTrans50)((o), (f), (x), (y))
-
- /// Draw a shadow graphic object clipped to the current
clipping.
-#define VideoDrawShadowClip(o, f, x, y)
((o)->Type->DrawShadowClip)((o),(f),(x),(y))
- /// Draw a shadow graphic object clipped and flipped in X
direction.
-#define VideoDrawShadowClipX(o, f, x, y)
((o)->Type->DrawShadowClipX)((o),(f),(x),(y))
-
- /// Draw a part of graphic object unclipped.
-#define VideoDrawSub(o, ix, iy, w, h, x, y) \
- ((o)->Type->DrawSub)((o), (ix), (iy), (w), (h), (x), (y))
- /// Draw a part of graphic object unclipped and flipped in
X direction.
-#define VideoDrawSubX(o, ix, iy, w, h, x, y) \
- ((o)->Type->DrawSubX)((o), (ix), (iy), (w), (h), (x), (y))
- /// Draw a part of graphic object clipped to the current
clipping.
-#define VideoDrawSubClip(o, ix, iy, w, h, x, y) \
- ((o)->Type->DrawSubClip)((o), (ix), (iy), (w), (h), (x), (y))
- /// Draw a part of graphic object clipped and flipped in X
direction.
-#define VideoDrawSubClipX(o, ix, iy, w, h, x, y) \
- ((o)->Type->DrawSubClipX)((o), (ix), (iy), (w), (h), (x), (y))
-
-#if 0
-// FIXME: not written
- /// Draw a graphic object zoomed unclipped.
-#define VideoDrawZoom(o, f, x, y, z) \
- ((o)->Type->DrawZoom)((o), (f), (x), (y), (z))
- /// Draw a graphic object zoomed unclipped flipped in X
direction.
-#define VideoDrawZoomX(o, f, x, y, z) \
- ((o)->Type->DrawZoomX)((o), (f), (x), (y), (z))
- /// Draw a graphic object zoomed clipped to the current
clipping.
-#define VideoDrawZoomClip(o, f, x, y, z) \
- ((o)->Type->DrawZoomClip)((o), (f), (x), (y), (z))
- /// Draw a graphic object zoomed clipped and flipped in X
direction.
-#define VideoDrawZoomClipX(o, f, x, y, z) \
- ((o)->Type->DrawZoomClipX)((o), (f), (x), (y), (z))
-
- /// Draw a part of graphic object zoomed unclipped.
-#define VideoDrawZoomSub(o, ix, iy, w, h, x, y, z) \
- ((o)->Type->DrawZoomSub)((o), (ix), (iy), (w), (h), (x), (y), (z))
- /// Draw a part of graphic object zoomed unclipped flipped
in X direction.
-#define VideoDrawZoomSubX(o, ix, iy, w, h, x, y, z) \
- ((o)->Type->DrawZoomSubX)((o), (ix), (iy), (w), (h), (x), (y), (z))
- /// Draw a part of graphic object zoomed clipped to the
current clipping.
-#define VideoDrawZoomSubClip(o, ix, iy, w, h, x, y, z) \
- ((o)->Type->DrawZoomSubClip)((o), (ix), (iy), (w), (h), (x), (y), (z))
- /// Draw a part of graphic object zoomed clipped flipped in
X direction.
-#define VideoDrawZoomSubClipX(o, ix, iy, w, h, x, y, z) \
- ((o)->Type->DrawZoomSubClipX)((o), (ix), (iy), (w), (h), (x), (y), (z))
-
-#endif
-
- /// Free a graphic object.
-#define VideoFree(o) ((o)->Type->Free)((o))
- /// Safe (NULL) free a graphic object.
-#define VideoSafeFree(o) \
- do { if ((o)) ((o)->Type->Free)((o)); } while(0)
-
-
-/*----------------------------------------------------------------------------
--- Functions
-----------------------------------------------------------------------------*/
-
- /// initialize the video part
-extern void InitVideo(void);
-
- /// Invalidates selected area on window or screen. Use for
accurate
- /// redrawing. in so
-extern void InvalidateArea(int x, int y, int w, int h);
-
- /// Simply invalidates whole window or screen.
-extern void Invalidate(void);
-
- /// Realize video memory.
-extern void RealizeVideoMemory(void);
-
- /// Process all system events. Returns if the time for a
frame is over
-extern void WaitEventsOneFrame(const EventCallback* callbacks);
-
- /// Load graphic from PNG file
-extern Graphic* LoadGraphicPNG(const char* name);
-
-#ifdef USE_OPENGL
- /// Make an OpenGL texture
-extern void MakeTexture(Graphic* graphic, int width, int height);
- /// Make an OpenGL texture of the player color pixels only.
-extern void MakePlayerColorTexture(Graphic** g, Graphic* graphic, int frame,
- unsigned char* map, int maplen);
-#endif
-
- /// Save a screenshot to a PNG file
-extern void SaveScreenshotPNG(const char* name);
-
- /// New graphic
-extern Graphic* NewGraphic(unsigned d, int w, int h);
-
- /// Make graphic
-extern Graphic* MakeGraphic(unsigned, int, int, void*, unsigned);
-
- /// Resize a graphic
-extern void ResizeGraphic(Graphic* g, int w, int h);
-
- /// Load graphic
-extern Graphic* LoadGraphic(const char* file);
-
- /// Load sprite
-extern Graphic* LoadSprite(const char* file, int w, int h);
-
- /// Init graphic
-extern void InitGraphic(void);
-
- /// Init sprite
-extern void InitSprite(void);
-
- /// Init line draw
-extern void InitLineDraw(void);
-
- /// Draw circle.
-extern void VideoDrawCircle(VMemType color, int x, int y, int r);
-
- /// Draw 25% translucent circle.
-extern void VideoDraw25TransCircle(VMemType color, int x, int y, int r);
-
- /// Draw 50% translucent circle.
-extern void VideoDraw50TransCircle(VMemType color, int x, int y, int r);
-
- /// Draw 75% translucent circle.
-extern void VideoDraw75TransCircle(VMemType color, int x, int y, int r);
-
- /// Draw translucent circle.
-extern void VideoDrawTransCircle(VMemType color, int x, int y, int r,
- unsigned char alpha);
-
- /// Draw circle clipped.
-extern void VideoDrawCircleClip(VMemType color, int x, int y, int r);
-
- /// Draw 25% translucent circle clipped.
-extern void VideoDraw25TransCircleClip(VMemType color, int x, int y, int r);
-
- /// Draw 50% translucent circle clipped.
-extern void VideoDraw50TransCircleClip(VMemType color, int x, int y, int r);
-
- /// Draw 75% translucent circle clipped.
-extern void VideoDraw75TransCircleClip(VMemType color, int x, int y, int r);
-
- /// Draw translucent circle clipped.
-extern void VideoDrawTransCircleClip(VMemType color, int x, int y, int r,
- unsigned char alpha);
-
- /// Fill rectangle.
-extern void (*VideoFillRectangle)(VMemType color, int x, int y,
- int w, int h);
-
- /// Fill 25% translucent rectangle.
-extern void (*VideoFill25TransRectangle)(VMemType color, int x, int y,
- int w, int h);
-
- /// Fill 50% translucent rectangle.
-extern void (*VideoFill50TransRectangle)(VMemType color, int x, int y,
- int w, int h);
-
- /// Fill 75% translucent rectangle.
-extern void (*VideoFill75TransRectangle)(VMemType color, int x, int y,
- int w, int h);
-
- /// Fill translucent rectangle.
-extern void (*VideoFillTransRectangle)(VMemType color, int x, int y,
- int w, int h, unsigned char alpha);
-
- /// Fill rectangle clipped.
-extern void VideoFillRectangleClip(VMemType color, int x, int y,
- int w, int h);
-
- /// Fill 25% translucent rectangle clipped.
-extern void VideoFill25TransRectangleClip(VMemType color, int x, int y,
- int w, int h);
-
- /// Fill 50% translucent rectangle clipped.
-extern void VideoFill50TransRectangleClip(VMemType color, int x, int y,
- int w, int h);
-
- /// Fill 75% translucent rectangle clipped.
-extern void VideoFill75TransRectangleClip(VMemType color, int x, int y,
- int w, int h);
-
- /// Fill translucent rectangle clipped.
-extern void VideoFillTransRectangleClip(VMemType color, int x, int y,
- int w, int h, unsigned char alpha);
-
- /// Fill circle.
-extern void VideoFillCircle(VMemType color, int x, int y, int r);
-
- /// Fill 25% translucent circle.
-extern void VideoFill25TransCircle(VMemType color, int x, int y, int r);
-
- /// Fill 50% translucent circle.
-extern void VideoFill50TransCircle(VMemType color, int x, int y, int r);
-
- /// Fill 75% translucent circle.
-extern void VideoFill75TransCircle(VMemType color, int x, int y, int r);
-
- /// Fill translucent circle.
-extern void VideoFillTransCircle(VMemType color, int x, int y, int r,
- unsigned char alpha);
-
- /// Fill circle clipped.
-extern void VideoFillCircleClip(VMemType color, int x, int y, int r);
-
- /// Fill 25% translucent circle clipped.
-extern void VideoFill25TransCircleClip(VMemType color, int x, int y, int r);
-
- /// Fill 50% translucent circle clipped.
-extern void VideoFill50TransCircleClip(VMemType color, int x, int y, int r);
-
- /// Fill 75% translucent circle clipped.
-extern void VideoFill75TransCircleClip(VMemType color, int x, int y, int r);
-
- /// Fill translucent circle clipped.
-extern void VideoFillTransCircleClip(VMemType color, int x, int y, int r,
- unsigned char alpha);
-
- /// Set clipping for nearly all vector primitives.
Functions which support
- /// clipping will be marked Clip. Set the system-wide
clipping rectangle.
-extern void SetClipping(int left, int top, int right, int bottom);
- /// Set the clipping inside the current clipping rectangle.
-extern void SetClipToClip(int left, int top, int right, int bottom);
-
- /// Push current clipping.
-extern void PushClipping(void);
-
- /// Pop current clipping.
-extern void PopClipping(void);
-
- /// Load a picture and display it on the screen (full
screen),
- /// changing the colormap and so on..
-extern void DisplayPicture(const char *name);
-
- /// Maps RGB to a hardware dependent pixel.
-extern VMemType VideoMapRGB(int r, int g, int b);
-
- /// Creates a hardware palette from an independent Palette
struct.
-extern VMemType* VideoCreateNewPalette(const Palette* palette);
-
- /// Creates a shared hardware palette from an independent
Palette struct.
-extern VMemType* VideoCreateSharedPalette(const Palette* palette);
-
- /// Free a shared hardware palette.
-extern void VideoFreeSharedPalette(VMemType* pixels);
-
- /// Initialize Pixels[] for all players.
- /// (bring Players[] in sync with Pixels[])
-extern void SetPlayersPalette(void);
-
- /// Initializes video synchronization.
-extern void SetVideoSync(void);
-
- /// Prints warning if video is too slow..
-extern void CheckVideoInterrupts(void);
-
- /// Toggle mouse grab mode
-extern void ToggleGrabMouse(int mode);
-
- /// Toggle full screen mode
-extern void ToggleFullScreen(void);
-
- /// Lock the screen for display
-extern void VideoLockScreen(void);
-
- /// Unlock the screen for display
-extern void VideoUnlockScreen(void);
-
- /// Clear video screen
-extern void VideoClearScreen(void);
-
- /// Returns the ticks in ms since start
-extern unsigned long GetTicks(void);
-
-#endif
//@}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Stratagus-CVS] stratagus/src/include cursor.h map.h player.h s...,
address@hidden <=