Small changes in order to get the demos to work. Alien demo runs. Marine
and Predator demos used a different HUD font. Changes that need to be made for demo versions: 1. avp/langenum.h needs to be rebuilt for each demo (easy) 2. Marine and Predator demos need to use a different HUD font 3. There may be other minor differences with enums, etc.
This commit is contained in:
parent
241e98c3d8
commit
c7f0dd737a
7 changed files with 49 additions and 10 deletions
4
README
4
README
|
@ -34,6 +34,10 @@ demos. Plus, I am told that the Regular edition does seem to work by
|
|||
renaming a file or two.
|
||||
|
||||
|
||||
Unless someone feels strongly about it, I probably will decide not to support
|
||||
save games (save games were added in the gold edition).
|
||||
|
||||
|
||||
At least with the Gold edition, a number of files are encoded on the CD. So
|
||||
you would need to install the game in Windows (VMware works also) in order
|
||||
to get this to work. Currently wine does not work because it fails the CD
|
||||
|
|
|
@ -13,7 +13,6 @@
|
|||
|
||||
extern "C"
|
||||
{
|
||||
#include "3dc.h"
|
||||
#include "module.h"
|
||||
#include "inline.h"
|
||||
|
||||
|
|
|
@ -71,6 +71,9 @@ void InitTextStrings(void)
|
|||
for (i=1; i<MAX_NO_OF_TEXTSTRINGS; i++)
|
||||
{
|
||||
/* scan for a quote mark */
|
||||
if (*textPtr == 0) /* TODO: probably a broken hack (added for predator demo)... */
|
||||
break;
|
||||
|
||||
while (*textPtr++ != '"');
|
||||
|
||||
/* now pointing to a text string after quote mark*/
|
||||
|
@ -84,6 +87,7 @@ void InitTextStrings(void)
|
|||
|
||||
/* change quote mark to zero terminator */
|
||||
*textPtr = 0;
|
||||
textPtr++;
|
||||
|
||||
#if SupportWindows95
|
||||
AddToTable( TextStringPtr[i] );
|
||||
|
|
|
@ -1,15 +1,20 @@
|
|||
#ifndef _included_AvP_Menus_h_
|
||||
#define _included_AvP_Menus_h_
|
||||
|
||||
#ifndef MARINE_DEMO
|
||||
#define MARINE_DEMO 0
|
||||
#endif
|
||||
|
||||
#ifndef PREDATOR_DEMO
|
||||
#define PREDATOR_DEMO 0
|
||||
#endif
|
||||
|
||||
#ifndef ALIEN_DEMO
|
||||
#define ALIEN_DEMO 0
|
||||
// Edmond modified for Mplayer Demo
|
||||
#ifdef MPLAYER_DEMO
|
||||
#define DEATHMATCH_DEMO 1
|
||||
#else
|
||||
#define DEATHMATCH_DEMO 0 // more multiplayer-only demo really
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#define DEATHMATCH_DEMO 0 // more multiplayer-only demo really
|
||||
|
||||
|
||||
#ifdef AVP_DEBUG_VERSION
|
||||
#define CONSOLE_DEBUGGING_COMMANDS_ACTIVATED 1
|
||||
|
|
|
@ -558,7 +558,9 @@ void InitNPCs(RIFFHANDLE h)
|
|||
}
|
||||
}
|
||||
}
|
||||
#if 1
|
||||
|
||||
/* predator disk not included in demos */
|
||||
#if !(PREDATOR_DEMO||MARINE_DEMO||ALIEN_DEMO)
|
||||
if(AvP.PlayerType==I_Predator || Load_HNPC[HNPC_Predator])
|
||||
{
|
||||
//need to load the disk hierarchy
|
||||
|
@ -569,7 +571,10 @@ void InitNPCs(RIFFHANDLE h)
|
|||
}
|
||||
|
||||
}
|
||||
#endif
|
||||
|
||||
/* i believe this was added for the gold edition */
|
||||
#if !(PREDATOR_DEMO||MARINE_DEMO||ALIEN_DEMO)//||REGULAR_EDITION /* TODO */
|
||||
if(AvP.PlayerType==I_Marine || Load_HNPC[HNPC_Marine])
|
||||
{
|
||||
//need to load the mdisk hierarchy
|
||||
|
@ -580,7 +585,7 @@ void InitNPCs(RIFFHANDLE h)
|
|||
}
|
||||
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
// see what we already have, unloading what we don't need, and ensuring we don't load a npc twice
|
||||
|
|
13
src/main.c
13
src/main.c
|
@ -573,7 +573,17 @@ int main(int argc, char *argv[])
|
|||
}
|
||||
|
||||
AvP.CurrentEnv = AvP.StartingEnv = 0; /* are these even used? */
|
||||
|
||||
|
||||
#if ALIEN_DEMO
|
||||
AvP.PlayerType = I_Alien;
|
||||
SetLevelToLoad(AVP_ENVIRONMENT_INVASION_A);
|
||||
#elif PREDATOR_DEMO
|
||||
AvP.PlayerType = I_Predator;
|
||||
SetLevelToLoad(AVP_ENVIRONMENT_INVASION_P);
|
||||
#elif MARINE_DEMO
|
||||
AvP.PlayerType = I_Marine;
|
||||
SetLevelToLoad(AVP_ENVIRONMENT_INVASION);
|
||||
#else
|
||||
// AvP.PlayerType = I_Alien;
|
||||
// SetLevelToLoad(AVP_ENVIRONMENT_TEMPLE); /* starting alien level */
|
||||
|
||||
|
@ -586,6 +596,7 @@ int main(int argc, char *argv[])
|
|||
// SetLevelToLoad(AVP_ENVIRONMENT_LEADWORKS_MP); /* multiplayer */
|
||||
|
||||
// SetLevelToLoad(AVP_ENVIRONMENT_E3DEMOSP); /* demo level */
|
||||
#endif
|
||||
|
||||
// while(AvP_MainMenus()) {
|
||||
|
||||
|
|
11
src/opengl.c
11
src/opengl.c
|
@ -1536,6 +1536,8 @@ void D3D_RenderHUDString(char *stringPtr,int x,int y,int colour)
|
|||
{
|
||||
struct VertexTag quadVertices[4];
|
||||
|
||||
if (stringPtr == NULL) return;
|
||||
|
||||
quadVertices[0].Y = y-1;
|
||||
quadVertices[1].Y = y-1;
|
||||
quadVertices[2].Y = y + HUD_FONT_HEIGHT + 1;
|
||||
|
@ -1581,6 +1583,7 @@ void D3D_RenderHUDString_Clipped(char *stringPtr,int x,int y,int colour)
|
|||
struct VertexTag quadVertices[4];
|
||||
|
||||
// LOCALASSERT(y<=0);
|
||||
if (stringPtr == NULL) return;
|
||||
|
||||
CheckFilteringModeIsCorrect(FILTERING_BILINEAR_OFF);
|
||||
|
||||
|
@ -1628,6 +1631,8 @@ void D3D_RenderHUDString_Centred(char *stringPtr, int centreX, int y, int colour
|
|||
int x, length = 0;
|
||||
char *ptr = stringPtr;
|
||||
struct VertexTag quadVertices[4];
|
||||
|
||||
if (stringPtr == NULL) return;
|
||||
|
||||
while(*ptr)
|
||||
{
|
||||
|
@ -1679,6 +1684,8 @@ void D3D_RenderHUDString_Centred(char *stringPtr, int centreX, int y, int colour
|
|||
|
||||
void RenderString(char *stringPtr, int x, int y, int colour)
|
||||
{
|
||||
if (stringPtr == NULL) return;
|
||||
|
||||
D3D_RenderHUDString(stringPtr,x,y,colour);
|
||||
}
|
||||
|
||||
|
@ -1686,6 +1693,8 @@ void RenderStringCentred(char *stringPtr, int centreX, int y, int colour)
|
|||
{
|
||||
int length = 0;
|
||||
char *ptr = stringPtr;
|
||||
|
||||
if (stringPtr == NULL) return;
|
||||
|
||||
while(*ptr)
|
||||
{
|
||||
|
@ -1699,6 +1708,8 @@ void RenderStringVertically(char *stringPtr, int centreX, int bottomY, int colou
|
|||
struct VertexTag quadVertices[4];
|
||||
int y = bottomY;
|
||||
|
||||
if (stringPtr == NULL) return;
|
||||
|
||||
quadVertices[0].X = centreX - (HUD_FONT_HEIGHT/2) - 1;
|
||||
quadVertices[1].X = quadVertices[0].X;
|
||||
quadVertices[2].X = quadVertices[0].X+2+HUD_FONT_HEIGHT*1;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue