foxygit / doom Log in
commit 69b0c4526e6f2d6fe6920f1efa3b32e27b3db0bc
Author:     Simon Howard <fraggle@gmail.com>
AuthorDate: Sat Sep 20 23:27:22 2008 +0000
Commit:     Simon Howard <fraggle@gmail.com>
CommitDate: Sat Sep 20 23:27:22 2008 +0000

    Use common event queue code.

    Subversion-branch: /branches/raven-branch
    Subversion-revision: 1263
---
 src/heretic/d_main.c  | 34 +---------------------------------
 src/heretic/d_net.c   |  5 ++---
 src/heretic/doomdef.h |  6 ------
 3 files changed, 3 insertions(+), 42 deletions(-)

diff --git a/src/heretic/d_main.c b/src/heretic/d_main.c
index 437abed3..6107ba16 100644
--- a/src/heretic/d_main.c
+++ b/src/heretic/d_main.c
@@ -64,36 +64,6 @@ void D_AdvanceDemo(void);
 void F_Drawer(void);
 boolean F_Responder(event_t * ev);

-/*
-===============================================================================
-
-							EVENT HANDLING
-
-Events are asyncronous inputs generally generated by the game user.
-
-Events can be discarded if no responder claims them
-
-===============================================================================
-*/
-
-event_t events[MAXEVENTS];
-int eventhead;
-int eventtail;
-
-//---------------------------------------------------------------------------
-//
-// PROC D_PostEvent
-//
-// Called by the I/O functions when input is detected.
-//
-//---------------------------------------------------------------------------
-
-void D_PostEvent(event_t * ev)
-{
-    events[eventhead] = *ev;
-    eventhead = (eventhead + 1) & (MAXEVENTS - 1);
-}
-
 //---------------------------------------------------------------------------
 //
 // PROC D_ProcessEvents
@@ -106,10 +76,8 @@ void D_ProcessEvents(void)
 {
     event_t *ev;

-    for (; eventtail != eventhead;
-         eventtail = (eventtail + 1) & (MAXEVENTS - 1))
+    while ((ev = D_PopEvent()) != NULL)
     {
-        ev = &events[eventtail];
         if (F_Responder(ev))
         {
             continue;
diff --git a/src/heretic/d_net.c b/src/heretic/d_net.c
index 8b8aba20..fd728de4 100644
--- a/src/heretic/d_net.c
+++ b/src/heretic/d_net.c
@@ -483,10 +483,9 @@ void CheckAbort(void)
         I_StartTic();

     I_StartTic();
-    for (; eventtail != eventhead;
-         eventtail = (eventtail + 1) & (MAXEVENTS - 1))
+
+    while ((ev = D_PopEvent()) != NULL)
     {
-        ev = &events[eventtail];
         if (ev->type == ev_keydown && ev->data1 == KEY_ESCAPE)
             I_Error("Network game synchronization aborted.");
     }
diff --git a/src/heretic/doomdef.h b/src/heretic/doomdef.h
index 3da11a3c..c60fa350 100644
--- a/src/heretic/doomdef.h
+++ b/src/heretic/doomdef.h
@@ -544,12 +544,6 @@ extern doomdata_t *netbuffer;   // points inside doomcom

 #define TELEFOGHEIGHT (32*FRACUNIT)

-#define MAXEVENTS 64
-
-extern event_t events[MAXEVENTS];
-extern int eventhead;
-extern int eventtail;
-
 extern gameaction_t gameaction;

 extern boolean paused;