From 24a8f3a448d24133bb869b9c7f6f0a01ebbbb761 Mon Sep 17 00:00:00 2001 From: Pasi Kallinen Date: Fri, 2 Oct 2009 17:41:12 +0000 Subject: [PATCH] Add a "gameend" hook. Patch from jorgenpt. git-svn-id: svn://katsu.triplehelix.org/dgamelaunch/trunk@464 db0b04b0-f4d1-0310-9a6d-de3e77497b0e --- config.l | 1 + dgamelaunch.h | 1 + dgl-common.c | 5 +++-- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/config.l b/config.l index 8054d82..8ffd76b 100644 --- a/config.l +++ b/config.l @@ -92,6 +92,7 @@ dglstart { yylval.i = DGLTIME_DGLSTART; return TYPE_CMDQUEUENAME; } login { yylval.i = DGLTIME_LOGIN; return TYPE_CMDQUEUENAME; } register { yylval.i = DGLTIME_REGISTER; return TYPE_CMDQUEUENAME; } gamestart { yylval.i = DGLTIME_GAMESTART; return TYPE_CMDQUEUENAME; } +gameend { yylval.i = DGLTIME_GAMEEND; return TYPE_CMDQUEUENAME; } mkdir { yylval.i = DGLCMD_MKDIR; return TYPE_DGLCMD1; } chdir { yylval.i = DGLCMD_CHDIR; return TYPE_DGLCMD1; } cp { yylval.i = DGLCMD_CP; return TYPE_DGLCMD2; } diff --git a/dgamelaunch.h b/dgamelaunch.h index f1313fb..3c38270 100644 --- a/dgamelaunch.h +++ b/dgamelaunch.h @@ -20,6 +20,7 @@ typedef enum DGLTIME_LOGIN, /* right after user login */ DGLTIME_REGISTER, /* right after new nick is registered */ DGLTIME_GAMESTART, /* right before a game is started */ + DGLTIME_GAMEEND, /* right after a game is ended */ NUM_DGLTIMES } dglcmd_times; diff --git a/dgl-common.c b/dgl-common.c index 09c2fbc..e841a7c 100644 --- a/dgl-common.c +++ b/dgl-common.c @@ -305,10 +305,11 @@ dgl_exec_cmdqueue(struct dg_cmdpart *queue, int game, struct dg_user *me) /* launch program */ ttyrec_main (userchoice, me->username, gen_ttyrec_filename()); - setproctitle ("%s", me->username); + /* lastly, run the generic "do these when a game is left" commands */ + dgl_exec_cmdqueue(globalconfig.cmdqueue[DGLTIME_GAMEEND], userchoice, me); + setproctitle ("%s", me->username); initcurses (); - check_retard(1); /* reset retard counter */ } break; -- 2.47.3