A little more work trying to get the tree back to normal..

This commit is contained in:
Joseph Carter 2000-01-28 03:19:57 +00:00
parent 63978c73c6
commit 25f297ded2
8 changed files with 112 additions and 93 deletions

5
NEWS
View File

@ -1,8 +1,13 @@
NEWS for the QuakeForge project
-------------------------------
QuakeForge 0.2
26 Jan 2000 - Waterwarp bug fixed
The waterwarp bug has been fixed, set r_waterwarp 1 to use it.
QuakeForge 0.1.0
22 Jan 2000 - cl_sbar and cl_hudswap in uquake
The cvars cl_sbar and cl_hudswap noe work in uquake just like they
do in qw-client. In uquake, cl_sbar defaults to 1 to satisfy the

View File

@ -1,4 +1,5 @@
/*
cd_sdl.c - SDL CD audio routines
Copyright (C) 1996-1997 Id Software, Inc.
Copyright (C) 1999,2000 contributors of the QuakeForge project
Please see the file "AUTHORS" for a list of contributors
@ -25,6 +26,10 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
// -- Mark Baker <homer1@together.net>
#include <SDL/SDL.h>
#include <cvar.h>
#include <sound.h>
#include <cdaudio.h>
#include <console.h>
#include "quakedef.h"

View File

@ -1,4 +1,5 @@
/*
cvar.c - dynamic variable tracking
Copyright (C) 1996-1997 Id Software, Inc.
Portions Copyright (C) 1999,2000 Nelson Rush.
Copyright (C) 1999,2000 contributors of the QuakeForge project
@ -20,17 +21,19 @@ along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
// cvar.c -- dynamic variable tracking
#include <zone.h>
#include "qtypes.h"
#include "qstructs.h"
#include "lib_replace.h"
#include "console.h"
#include "cmd.h"
#include "client.h"
#include <qtypes.h>
#include <qstructs.h>
#include <lib_replace.h>
#include <console.h>
#include <cmd.h>
#include <client.h>
#ifdef UQUAKE
#include "server.h"
#include <server.h>
#endif
#if defined(QUAKEWORLD) && defined(SERVERONLY)
#include <server.h>
#endif
#include <string.h>

View File

@ -1,4 +1,5 @@
/*
keys.h
Copyright (C) 1996-1997 Id Software, Inc.
Copyright (C) 1999,2000 contributors of the QuakeForge project
Please see the file "AUTHORS" for a list of contributors
@ -19,6 +20,10 @@ along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifndef KEYS_H
#define KEYS_H
#include "qtypes.h"
//
// these are the key numbers that should be passed to Key_Event
@ -165,3 +170,4 @@ void Key_WriteBindings (FILE *f);
void Key_SetBinding (int keynum, char *binding);
void Key_ClearStates (void);
#endif

View File

@ -22,6 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
// vid_sdl.h -- sdl video driver
#include <SDL/SDL.h>
#include "keys.h"
#include "quakedef.h"
#include "d_local.h"

View File

@ -3,7 +3,7 @@ AC_PREREQ(2.13)
AC_INIT(common/crc.h)
dnl Version of this release
QF_VERSION=0.1.1-devel
QF_VERSION=0.2-devel
VERSION=2.40
AC_DEFINE_UNQUOTED(QF_VERSION,"$QF_VERSION")
AC_DEFINE_UNQUOTED(VERSION,"$VERSION")

View File

@ -20,7 +20,7 @@ mandir := @mandir@
TARGET_DIR := $(PROJECT_ODIR)/targets
BUILD_DIR := $(TARGET_DIR)/qw_client
OBJ_PATTERN := $(shell echo $(BUILD_DIR)/{gl,soft,common_lib}/%.o)
OBJ_PATTERN := $(shell echo $(BUILD_DIR)/{client,common_lib}/%.o)
LDFLAGS = @LDFLAGS@ @NET_LIBS@ -lm
LIBS = @LIBS@
@ -97,7 +97,7 @@ gl_targets = $(GLQUAKE) $(TDFXQUAKE)
lib_targets = $(COMMON_LIB)
targets = $(lib_targets) $(gl_targets) $(soft_targets)
CLEAN_TARGETS = $(patsubst %,clean-%, $(targets))
.PHONY: $(targets) $(CLEAN_TARGETS) clean-soft clean-gl
.PHONY: $(targets) $(CLEAN_TARGETS) clean-soft clean-gl clean-common_lib clean-client
all: $(targets)
########################################################################
@ -210,14 +210,14 @@ $(OBJ_PATTERN): $(QW_COMMON_DIR)/%.c
$(CC) $(CFLAGS) -o $@ -c $<
# Software targets
soft_DIR:
@DIR=soft; $(MAKE_SURE_DIR)
client_DIR:
@DIR=client; $(MAKE_SURE_DIR)
# GL targets
gl_DIR:
@DIR=gl; $(MAKE_SURE_DIR)
@DIR=client; $(MAKE_SURE_DIR)
###########################################################################
#
@ -243,7 +243,7 @@ ifneq ($(X11QUAKE),)
ALL_X11_SRC = $(SW_REND_SRC) @X11_VID_SRC@\
model.c
ALL_X11_OBJS = $(patsubst %,$(BUILD_DIR)/soft/%,$(addsuffix .@OBJEXT@,\
ALL_X11_OBJS = $(patsubst %,$(BUILD_DIR)/client/%,$(addsuffix .@OBJEXT@,\
$(basename $(ALL_X11_SRC) .c .s))) \
$(BUILD_DIR)/common_lib.a $(TARGET_DIR)/sound_lib.a
@ -254,11 +254,11 @@ X11_LDFLAGS = @X_LIBS@ -lX11 @X11_SHM_LIB@ @X_EXTRA_LIBS@
# either merge it into vid_x.c or make a seperate sun target. In either
# case, find the moro^wpeople responsible for this and other stupidities
# in Solaris and "educate" them.
$(BUILD_DIR)/soft/$(addsuffix .@OBJEXT@,$(basename @X11_VID_SRC@ .c)):\
$(BUILD_DIR)/client/$(addsuffix .@OBJEXT@,$(basename @X11_VID_SRC@ .c)):\
$(COMMON_DIR)/@X11_VID_SRC@
$(CC) $(CFLAGS) $(X11_CFLAGS) -o $@ -c $<
$(X11QUAKE): soft_DIR $(BUILD_DIR)/../$(X11QUAKE)
$(X11QUAKE): client_DIR $(BUILD_DIR)/../$(X11QUAKE)
$(BUILD_DIR)/../$(X11QUAKE): $(ALL_X11_OBJS)
$(CC) $(CFLAGS) $(ALL_X11_OBJS) $(X11_LDFLAGS) $(LDFLAGS) $(LIBS) \
@ -271,7 +271,7 @@ endif
ifneq ($(SVGAQUAKE),)
ALL_SVGA_SRC = $(SW_REND_SRC) \
vid_svgalib.c in_svgalib.c d_copy.s model.c
ALL_SVGA_OBJS = $(patsubst %,$(BUILD_DIR)/soft/%,$(addsuffix .@OBJEXT@,\
ALL_SVGA_OBJS = $(patsubst %,$(BUILD_DIR)/client/%,$(addsuffix .@OBJEXT@,\
$(basename $(ALL_SVGA_SRC) .c .s))) \
$(BUILD_DIR)/common_lib.a $(TARGET_DIR)/sound_lib.a
@ -279,13 +279,13 @@ SVGA_CFLAGS = @SVGA_CFLAGS@
SVGA_LDFLAGS = @SVGA_LIBS@
# Not sure why this -O is needed, but it is...
$(BUILD_DIR)/soft/vid_svgalib.@OBJEXT@: $(COMMON_DIR)/vid_svgalib.c
$(BUILD_DIR)/client/vid_svgalib.@OBJEXT@: $(COMMON_DIR)/vid_svgalib.c
$(CC) -O $(CFLAGS) $(SVGA_CFLAGS) -o $@ -c $<
$(BUILD_DIR)/soft/d_copy.@OBJEXT@: $(COMMON_DIR)/d_copy.s
$(BUILD_DIR)/client/d_copy.@OBJEXT@: $(COMMON_DIR)/d_copy.s
$(CC) $(CFLAGS) -x assembler-with-cpp -o $@ -c $<
$(SVGAQUAKE): soft_DIR $(BUILD_DIR)/../$(SVGAQUAKE)
$(SVGAQUAKE): client_DIR $(BUILD_DIR)/../$(SVGAQUAKE)
$(BUILD_DIR)/../$(SVGAQUAKE): $(ALL_SVGA_OBJS)
$(CC) $(CFLAGS) $(ALL_SVGA_OBJS) $(SVGA_LDFLAGS) $(LDFLAGS) $(LIBS) \
@ -300,7 +300,7 @@ ifneq ($(GGIQUAKE),)
# Map the list of source files into a list of object files
ALL_GGI_SRC = $(SW_REND_SRC) vid_ggi.c\
model.c
ALL_GGI_OBJS = $(patsubst %,$(BUILD_DIR)/soft/%,$(addsuffix .@OBJEXT@,\
ALL_GGI_OBJS = $(patsubst %,$(BUILD_DIR)/client/%,$(addsuffix .@OBJEXT@,\
$(basename $(ALL_GGI_SRC) .c .s))) \
$(BUILD_DIR)/common_lib.a $(TARGET_DIR)/sound_lib.a
@ -308,10 +308,10 @@ GGI_SRC = vid_ggi.c
GGI_CFLAGS = -DGGI @GGI_CFLAGS@
GGI_LDFLAGS = @GGI_LIBS@
$(BUILD_DIR)/soft/vid_ggi.@OBJEXT@: $(COMMON_DIR)/vid_ggi.c
$(BUILD_DIR)/client/vid_ggi.@OBJEXT@: $(COMMON_DIR)/vid_ggi.c
$(CC) $(CFLAGS) $(GGI_CFLAGS) -o $@ -c $<
$(GGIQUAKE): soft_DIR $(BUILD_DIR)/../$(GGIQUAKE)
$(GGIQUAKE): client_DIR $(BUILD_DIR)/../$(GGIQUAKE)
$(BUILD_DIR)/../$(GGIQUAKE): $(ALL_GGI_OBJS)
$(CC) $(CFLAGS) $(ALL_GGI_OBJS) $(GGI_LDFLAGS) $(LDFLAGS) $(LIBS) \
@ -324,20 +324,20 @@ endif
ifneq ($(SDLQUAKE),)
ALL_SDL_SRC = $(SW_REND_SRC) $(SDL_SRC) vid_sdl.c cd_sdl.c\
model.c
ALL_SDL_OBJS = $(patsubst %,$(BUILD_DIR)/soft/%,$(addsuffix .@OBJEXT@,\
ALL_SDL_OBJS = $(patsubst %,$(BUILD_DIR)/client/%,$(addsuffix .@OBJEXT@,\
$(basename $(ALL_SDL_SRC) .c .s))) \
$(BUILD_DIR)/common_lib.a $(TARGET_DIR)/sound_lib.a
SDL_CFLAGS = @SDL_CFLAGS@ -DSDL
SDL_LDFLAGS = @SDL_LIBS@
$(BUILD_DIR)/soft/vid_sdl.@OBJEXT@: $(COMMON_DIR)/vid_sdl.c
$(BUILD_DIR)/client/vid_sdl.@OBJEXT@: $(COMMON_DIR)/vid_sdl.c
$(CC) $(CFLAGS) $(SDL_CFLAGS) -o $@ -c $<
$(BUILD_DIR)/soft/cd_sdl.@OBJEXT@: $(COMMON_DIR)/cd_sdl.c
$(BUILD_DIR)/client/cd_sdl.@OBJEXT@: $(COMMON_DIR)/cd_sdl.c
$(CC) $(CFLAGS) $(SDL_CFLAGS) -o $@ -c $<
$(SDLQUAKE): soft_DIR $(BUILD_DIR)/../$(SDLQUAKE)
$(SDLQUAKE): client_DIR $(BUILD_DIR)/../$(SDLQUAKE)
$(BUILD_DIR)/../$(SDLQUAKE): $(ALL_SDL_OBJS)
$(CC) $(CFLAGS) $(ALL_SDL_OBJS) $(SDL_LDFLAGS) $(LDFLAGS) $(LIBS) \
@ -352,17 +352,17 @@ ifneq ($(MGLQUAKE),)
# Map the list of source files into a list of object files
ALL_MGL_SRC = $(SW_REND_SRC) \
vid_win.c in_win.c model.c
ALL_MGL_OBJS = $(patsubst %,$(BUILD_DIR)/soft/%,$(addsuffix .@OBJEXT@,\
ALL_MGL_OBJS = $(patsubst %,$(BUILD_DIR)/client/%,$(addsuffix .@OBJEXT@,\
$(basename $(ALL_MGL_SRC) .c .s))) \
$(BUILD_DIR)/common_lib.a $(TARGET_DIR)/sound_lib.a
MGL_CFLAGS = -DMGL @MGL_CFLAGS@
MGL_LDFLAGS = @MGL_LIBS@ -lm
$(BUILD_DIR)/soft/vid_mgl.@OBJEXT@: $(COMMON_DIR)/vid_mgl.c
$(BUILD_DIR)/client/vid_mgl.@OBJEXT@: $(COMMON_DIR)/vid_mgl.c
$(CC) $(CFLAGS) $(MGL_CFLAGS) -o $@ -c $<
$(MGLQUAKE): soft_DIR $(BUILD_DIR)/../$(MGLQUAKE)
$(MGLQUAKE): client_DIR $(BUILD_DIR)/../$(MGLQUAKE)
$(BUILD_DIR)/../$(MGLQUAKE): $(ALL_MGL_OBJS)
$(CC) $(CFLAGS) $(ALL_MGL_OBJS) $(MGL_LDFLAGS) $(LDFLAGS) $(LIBS) \
@ -375,20 +375,20 @@ endif
ifneq ($(GLQUAKE),)
ALL_GL_SRC = $(GL_REND_SRC) \
gl_vidglx.c dga_check.c
ALL_GL_OBJS = $(patsubst %,$(BUILD_DIR)/gl/%,$(addsuffix .@OBJEXT@,\
ALL_GL_OBJS = $(patsubst %,$(BUILD_DIR)/client/%,$(addsuffix .@OBJEXT@,\
$(basename $(ALL_GL_SRC) .c .s))) \
$(BUILD_DIR)/common_lib.a $(TARGET_DIR)/sound_lib.a
GL_CFLAGS = @OGL_CFLAGS@
GL_LDFLAGS = $(X11_LDFLAGS) @OGL_LIBS@ @DGA_LIBS@ @DYN_LIBS@
$(BUILD_DIR)/gl/gl_vidglx.o: $(COMMON_DIR)/gl_vidglx.c
$(BUILD_DIR)/client/gl_vidglx.o: $(COMMON_DIR)/gl_vidglx.c
$(CC) $(CFLAGS) $(GL_CFLAGS) -o $@ -c $<
$(BUILD_DIR)/gl/dga_check.@OBJEXT@: $(COMMON_DIR)/dga_check.c
$(BUILD_DIR)/client/dga_check.@OBJEXT@: $(COMMON_DIR)/dga_check.c
$(CC) $(CFLAGS) $(X11_CFLAGS) -o $@ -c $<
$(GLQUAKE): gl_DIR $(BUILD_DIR)/../$(GLQUAKE)
$(GLQUAKE): client_DIR $(BUILD_DIR)/../$(GLQUAKE)
$(BUILD_DIR)/../$(GLQUAKE): $(ALL_GL_OBJS)
$(CC) $(CFLAGS) $(ALL_GL_OBJS) $(GL_LDFLAGS) $(LDFLAGS) $(LIBS) \
@ -402,17 +402,17 @@ endif
ifneq ($(TDFXQUAKE),)
ALL_TDFX_SRC = $(GL_REND_SRC) \
gl_vidlinux_3dfx.c in_svgalib.c
ALL_TDFX_OBJS = $(patsubst %,$(BUILD_DIR)/gl/%,$(addsuffix .@OBJEXT@,\
ALL_TDFX_OBJS = $(patsubst %,$(BUILD_DIR)/client/%,$(addsuffix .@OBJEXT@,\
$(basename $(ALL_TDFX_SRC) .c .s))) \
$(BUILD_DIR)/common_lib.a $(TARGET_DIR)/sound_lib.a
TDFX_CFLAGS = @OGL_CFLAGS@ @GLIDE_CFLAGS@
TDFX_LDFLAGS = @SVGA_LIBS@ @TDFXGL_LIBS@
$(BUILD_DIR)/gl/gl_vidlinux_3dfx.@OBJEXT@: $(COMMON_DIR)/gl_vidlinux_3dfx.c
$(BUILD_DIR)/client/gl_vidlinux_3dfx.@OBJEXT@: $(COMMON_DIR)/gl_vidlinux_3dfx.c
$(CC) $(CFLAGS) $(TDFX_CFLAGS) -o $@ -c $<
$(TDFXQUAKE): gl_DIR $(BUILD_DIR)/../$(TDFXQUAKE)
$(TDFXQUAKE): client_DIR $(BUILD_DIR)/../$(TDFXQUAKE)
$(BUILD_DIR)/../$(TDFXQUAKE): $(ALL_TDFX_OBJS)
$(CC) $(CFLAGS) $(ALL_TDFX_OBJS) $(TDFX_LDFLAGS) $(LDFLAGS) $(LIBS) \
@ -432,10 +432,10 @@ distclean: clean
$(CLEAN_TARGETS):
rm -f $(BUILD_DIR)/../$(subst clean-,,$@)
clean-soft clean-gl clean-common_lib:
clean-soft clean-gl clean-client clean-common_lib:
rm -rf $(BUILD_DIR)/$(subst clean-,,$@)
clean: clean-soft clean-gl clean-common_lib $(CLEAN_TARGETS)
clean: clean-client clean-common_lib $(CLEAN_TARGETS)
-rmdir $(BUILD_DIR)
install: $(targets)

View File

@ -1,4 +1,5 @@
/*
server.h
Copyright (C) 1996-1997 Id Software, Inc.
Copyright (C) 1999,2000 contributors of the QuakeForge project
Please see the file "AUTHORS" for a list of contributors
@ -19,7 +20,6 @@ along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
// server.h
#define QW_SERVER
@ -121,30 +121,29 @@ typedef struct client_s
{
sv_client_state_t state;
int spectator; // non-interactive
qboolean sendinfo; // at end of frame, send info to all
int spectator; // non-interactive
qboolean sendinfo; // at end of frame, send info to all
// this prevents malicious multiple broadcasts
float lastnametime; // time of last name change
int lastnamecount; // time of last name change
unsigned checksum; // checksum for calcs
qboolean drop; // lose this guy next opportunity
int lossage; // loss percentage
int lastnamecount; // time of last name change
unsigned checksum; // checksum for calcs
qboolean drop; // lose this guy next opportunity
int lossage; // loss percentage
int userid; // identifying number
char userinfo[MAX_INFO_STRING]; // infostring
int userid; // identifying number
char userinfo[MAX_INFO_STRING]; // infostring
usercmd_t lastcmd; // for filling in big drops and partial predictions
double localtime; // of last message
int oldbuttons;
usercmd_t lastcmd; // for filling in big drops and partial predictions
double localtime; // of last message
int oldbuttons;
float maxspeed; // localized maxspeed
float entgravity; // localized ent gravity
float maxspeed; // localized maxspeed
float entgravity; // localized ent gravity
edict_t *edict; // EDICT_NUM(clientnum+1)
char name[32]; // for printing to other people
edict_t *edict; // EDICT_NUM(clientnum+1)
char name[32]; // for printing to other people
// extracted from userinfo
int messagelevel; // for filtering printed messages
int messagelevel; // for filtering printed messages
// the datagram is written to after every frame, but only cleared
// when it is sent out to the client. overflow is tolerated.
@ -152,10 +151,10 @@ typedef struct client_s
byte datagram_buf[MAX_DATAGRAM];
// back buffers for client reliable data
sizebuf_t backbuf;
sizebuf_t backbuf;
int num_backbuf;
int backbuf_size[MAX_BACK_BUFFERS];
byte backbuf_data[MAX_BACK_BUFFERS][MAX_MSGLEN];
byte backbuf_data[MAX_BACK_BUFFERS][MAX_MSGLEN];
double connection_started; // or time of disconnect for zombies
qboolean send_message; // set on frames a datagram arived on
@ -164,18 +163,18 @@ typedef struct client_s
float spawn_parms[NUM_SPAWN_PARMS];
// client known data for deltas
int old_frags;
int old_frags;
int stats[MAX_CL_STATS];
int stats[MAX_CL_STATS];
client_frame_t frames[UPDATE_BACKUP]; // updates can be deltad from here
client_frame_t frames[UPDATE_BACKUP]; // updates can be deltad from here
FILE *download; // file being downloaded
int downloadsize; // total bytes
int downloadcount; // bytes sent
FILE *download; // file being downloaded
int downloadsize; // total bytes
int downloadcount; // bytes sent
int spec_track; // entnum of player tracking
int spec_track; // entnum of player tracking
double whensaid[10]; // JACK: For floodprots
int whensaidhead; // Head value for floodprots
@ -189,11 +188,11 @@ typedef struct client_s
qboolean remote_snap;
//===== NETWORK ============
int chokecount;
int delta_sequence; // -1 = no compression
int ping;
int chokecount;
int delta_sequence; // -1 = no compression
int ping;
netchan_t netchan;
int msecs, msec_cheating;
int msecs, msec_cheating;
double last_check;
} client_t;
@ -262,7 +261,7 @@ typedef struct
// edict->movetype values
#define MOVETYPE_NONE 0 // never moves
#define MOVETYPE_ANGLENOCLIP 1
#define MOVETYPE_ANGLENOCLIP 1
#define MOVETYPE_ANGLECLIP 2
#define MOVETYPE_WALK 3 // gravity
#define MOVETYPE_STEP 4 // gravity, special edge handling
@ -274,32 +273,32 @@ typedef struct
#define MOVETYPE_BOUNCE 10
// edict->solid values
#define SOLID_NOT 0 // no interaction with other objects
#define SOLID_NOT 0 // no interaction with other objects
#define SOLID_TRIGGER 1 // touch on edge, but not blocking
#define SOLID_BBOX 2 // touch on edge, block
#define SOLID_BBOX 2 // touch on edge, block
#define SOLID_SLIDEBOX 3 // touch on edge, but not an onground
#define SOLID_BSP 4 // bsp clip, touch on edge, block
#define SOLID_BSP 4 // bsp clip, touch on edge, block
// edict->deadflag values
#define DEAD_NO 0
#define DEAD_DYING 1
#define DEAD_DEAD 2
#define DEAD_NO 0
#define DEAD_DYING 1
#define DEAD_DEAD 2
#define DAMAGE_NO 0
#define DAMAGE_YES 1
#define DAMAGE_AIM 2
#define DAMAGE_NO 0
#define DAMAGE_YES 1
#define DAMAGE_AIM 2
// edict->flags
#define FL_FLY 1
#define FL_SWIM 2
#define FL_GLIMPSE 4
#define FL_CLIENT 8
#define FL_INWATER 16
#define FL_MONSTER 32
#define FL_GODMODE 64
#define FL_NOTARGET 128
#define FL_ITEM 256
#define FL_ONGROUND 512
#define FL_FLY 1
#define FL_SWIM 2
#define FL_GLIMPSE 4
#define FL_CLIENT 8
#define FL_INWATER 16
#define FL_MONSTER 32
#define FL_GODMODE 64
#define FL_NOTARGET 128
#define FL_ITEM 256
#define FL_ONGROUND 512
#define FL_PARTIALGROUND 1024 // not all corners are valid
#define FL_WATERJUMP 2048 // player jumping out of water
@ -311,9 +310,9 @@ typedef struct
#define EF_DIMLIGHT 8
#define SPAWNFLAG_NOT_EASY 256
#define SPAWNFLAG_NOT_EASY 256
#define SPAWNFLAG_NOT_MEDIUM 512
#define SPAWNFLAG_NOT_HARD 1024
#define SPAWNFLAG_NOT_HARD 1024
#define SPAWNFLAG_NOT_DEATHMATCH 2048
#define MULTICAST_ALL 0