From ef680076a07c2442adb39f50529e6f8cee756c9b Mon Sep 17 00:00:00 2001 From: driAn Date: Tue, 7 Nov 2006 20:12:43 +0000 Subject: [PATCH] ctf git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@528 e016b1c5-ed68-44aa-a2f7-31cac88cffde --- source/src/clientgame.cpp | 20 ++++++++++---------- source/src/clients2c.cpp | 6 +++--- source/src/cube.h | 4 ++-- source/src/entities.cpp | 16 ++++++++-------- source/src/renderextras.cpp | 2 +- source/src/server.cpp | 20 ++++++++++---------- 6 files changed, 34 insertions(+), 34 deletions(-) diff --git a/source/src/clientgame.cpp b/source/src/clientgame.cpp index be90ac27..204319d2 100644 --- a/source/src/clientgame.cpp +++ b/source/src/clientgame.cpp @@ -125,7 +125,7 @@ void ctf_death() // EDIT: AH { int flag = rb_opposite(rb_team_int(player1->team)); flaginfo &f = flaginfos[flag]; - if(f.state==CTFF_STOLEN && f.thief==player1) + if(f.state==CTFF_STOLEN && f.actor==player1) { addmsg(SV_FLAGDROP, "ri", flag); f.flag->spawned = false; @@ -638,44 +638,44 @@ COMMAND(suicide, ARG_NONE); void flagaction(int flag, int action) { flaginfo &f = flaginfos[flag]; - if(!f.thief) return; + if(!f.actor) return; bool ownflag = flag == rb_team_int(player1->team); switch(action) { case SV_FLAGPICKUP: { playsound(S_FLAGPICKUP); - if(f.thief==player1) + if(f.actor==player1) { conoutf("you got the enemy flag"); f.pick_ack = true; } - else conoutf("%s got %s flag", f.thief->name, (ownflag ? "your": "the enemy")); + else conoutf("%s got %s flag", f.actor->name, (ownflag ? "your": "the enemy")); break; }; case SV_FLAGDROP: { playsound(S_FLAGDROP); - if(f.thief==player1) conoutf("you lost the flag"); - else conoutf("%s lost %s flag", f.thief->name, (ownflag ? "your" : "the enemy")); + if(f.actor==player1) conoutf("you lost the flag"); + else conoutf("%s lost %s flag", f.actor->name, (ownflag ? "your" : "the enemy")); break; }; case SV_FLAGRETURN: { playsound(S_FLAGRETURN); - if(f.thief==player1) conoutf("you returned your flag"); - else conoutf("%s returned %s flag", f.thief->name, (ownflag ? "your" : "the enemy")); + if(f.actor==player1) conoutf("you returned your flag"); + else conoutf("%s returned %s flag", f.actor->name, (ownflag ? "your" : "the enemy")); break; }; case SV_FLAGSCORE: { playsound(S_FLAGSCORE); - if(f.thief==player1) + if(f.actor==player1) { conoutf("you scored"); addmsg(SV_FLAGS, "ri", ++player1->flagscore); } - else conoutf("%s scored for %s team", f.thief->name, (ownflag ? "the enemy" : "your")); + else conoutf("%s scored for %s team", f.actor->name, (ownflag ? "the enemy" : "your")); break; }; default: break; diff --git a/source/src/clients2c.cpp b/source/src/clients2c.cpp index d57ee58d..54d3f9cc 100644 --- a/source/src/clients2c.cpp +++ b/source/src/clients2c.cpp @@ -472,8 +472,8 @@ void parsemessages(int cn, dynent *d, ucharbuf &p) int action = getint(p); if(f.state==CTFF_STOLEN) { - int thief_cn = getint(p); - f.thief = thief_cn == getclientnum() ? player1 : getclient(thief_cn); + int actor_cn = getint(p); + f.actor = actor_cn == getclientnum() ? player1 : getclient(actor_cn); f.flag->spawned = false; } else if(f.state==CTFF_DROPPED) @@ -497,7 +497,7 @@ void parsemessages(int cn, dynent *d, ucharbuf &p) if(action==SV_FLAGRETURN) { int returnerer_cn = getint(p); - f.thief = returnerer_cn == getclientnum() ? player1 : getclient(returnerer_cn); + f.actor = returnerer_cn == getclientnum() ? player1 : getclient(returnerer_cn); } f.flag->x = (ushort) f.originalpos.x; f.flag->y = (ushort) f.originalpos.y; diff --git a/source/src/cube.h b/source/src/cube.h index eb8c31b3..630d3715 100644 --- a/source/src/cube.h +++ b/source/src/cube.h @@ -343,11 +343,11 @@ enum { CTFF_INBASE = 0, CTFF_STOLEN, CTFF_DROPPED }; struct flaginfo { entity *flag; - dynent *thief; + dynent *actor; vec originalpos; int state; // one of the types above bool pick_ack; - flaginfo() : flag(0), thief(0), state(CTFF_INBASE), pick_ack(false) {}; + flaginfo() : flag(0), actor(0), state(CTFF_INBASE), pick_ack(false) {}; }; enum { PHYSENT_NONE = 0, NADE_ACTIVATED, NADE_THROWED, GIB}; diff --git a/source/src/entities.cpp b/source/src/entities.cpp index b7893759..3d23a14f 100644 --- a/source/src/entities.cpp +++ b/source/src/entities.cpp @@ -34,13 +34,13 @@ void renderentities() else if(e.type==CTF_FLAG && m_ctf) // EDIT: AH { flaginfo &f = flaginfos[e.attr2]; - if(f.state==CTFF_STOLEN && f.thief) + if(f.state==CTFF_STOLEN && f.actor) { - if(f.thief == player1) continue; + if(f.actor == player1) continue; s_sprintfd(path)("pickups/flags/small_%s", rb_team_string(e.attr2)); mapmodelinfo mmi = {10, 4, 0, 0, path}; if(!&mmi) continue; - rendermodel(mmi.name, 0, 1, 0, 0, f.thief->o.x, f.thief->o.z+0.3f+(sin(lastmillis/100.0f)+1)/10, f.thief->o.y, lastmillis/2.5f, 0, false, 0.6f, 120.0f, mmi.snap); + rendermodel(mmi.name, 0, 1, 0, 0, f.actor->o.x, f.actor->o.z+0.3f+(sin(lastmillis/100.0f)+1)/10, f.actor->o.y, lastmillis/2.5f, 0, false, 0.6f, 120.0f, mmi.snap); } else { @@ -174,7 +174,6 @@ void pickup(int n, dynent *d) break; case I_AKIMBO: - //additem(n, d->ammo[1], 60, 9); additem(n, d->akimbo, 60, 9); break; @@ -195,21 +194,22 @@ void pickup(int n, dynent *d) { int team = ents[n].attr2; flaginfo &f = flaginfos[team]; + bool isownflag = team == rb_team_int(player1->team); if(f.state == CTFF_STOLEN) break; - else if(team == rb_team_int(player1->team) && f.state == CTFF_DROPPED) + else if(isownflag && f.state == CTFF_DROPPED) { addmsg(SV_FLAGRETURN, "ri", team); ents[n].spawned = false; } - else if(team != rb_team_int(player1->team)) + else if(!isownflag) { addmsg(SV_FLAGPICKUP, "ri", team); ents[n].spawned = false; - f.thief = player1; // do this although we don't know if we picked the flag to avoid getting it after a possible respawn + f.actor = player1; // do this although we don't know if we picked the flag to avoid getting it after a possible respawn f.state = CTFF_STOLEN; f.pick_ack = false; } - else if(team == rb_team_int(player1->team) && f.state == CTFF_INBASE && flaginfos[rb_opposite(team)].state == CTFF_STOLEN && flaginfos[rb_opposite(team)].thief == player1) addmsg(SV_FLAGSCORE, "ri", rb_opposite(team)); + else if(isownflag && f.state == CTFF_INBASE && flaginfos[rb_opposite(team)].state == CTFF_STOLEN && flaginfos[rb_opposite(team)].actor == player1) addmsg(SV_FLAGSCORE, "ri", rb_opposite(team)); break; }; }; diff --git a/source/src/renderextras.cpp b/source/src/renderextras.cpp index 76572b0a..d27e839e 100644 --- a/source/src/renderextras.cpp +++ b/source/src/renderextras.cpp @@ -465,7 +465,7 @@ void gl_drawhud(int w, int h, int curfps, int nquads, int curvert, bool underwat // big flag icon flaginfo &f = flaginfos[rb_opposite(rb_team_int(player1->team))]; - if(f.state==CTFF_STOLEN && f.thief == player1 && f.pick_ack ) + if(f.state==CTFF_STOLEN && f.actor == player1 && f.pick_ack ) { glPushMatrix(); glOrtho(0, VIRTW/2, VIRTH/2, 0, -1, 1); diff --git a/source/src/server.cpp b/source/src/server.cpp index 818463dc..9b3e1eed 100644 --- a/source/src/server.cpp +++ b/source/src/server.cpp @@ -289,7 +289,7 @@ void sendf(int cn, int chan, const char *format, ...) struct ctfflag { int state; - int thief_cn; + int actor_cn; int pos[3]; int lastupdate; } ctfflags[2]; @@ -305,7 +305,7 @@ void sendflaginfo(int flag, int action, int cn = -1) putint(p, flag); putint(p, f.state); putint(p, action); - if(f.state==CTFF_STOLEN || action==SV_FLAGRETURN) putint(p, f.thief_cn); + if(f.state==CTFF_STOLEN || action==SV_FLAGRETURN) putint(p, f.actor_cn); else if(f.state==CTFF_DROPPED) loopi(3) putint(p, f.pos[i]); enet_packet_resize(packet, p.length()); if(cn<0) multicast(packet, -1, 1); @@ -318,7 +318,7 @@ void ctfreset(bool send=true) if(!m_ctf_s) return; loopi(2) { - ctfflags[i].thief_cn = 0; + ctfflags[i].actor_cn = 0; ctfflags[i].state = CTFF_INBASE; ctfflags[i].lastupdate = -1; if(send) sendflaginfo(i, -1); @@ -762,8 +762,8 @@ void sendmapinfo(int c) #define CN_CHECK if((cn>=0 && cn!=sender) || !valid_client(cn)) { if(sender>=0) disconnect_client(sender, DISC_CN); return; }; #define SENDER_CHECK if(sender<0) return; #else -#define CN_CHECK if((cn>=0 && cn!=sender) || !valid_client(cn)) { if(sender>=0) disconnect_client(sender, DISC_CN); conoutf("invalid client (msg %i)", type); return; }; -#define SENDER_CHECK if(sender<0) { conoutf("invalid sender (msg %i)", type); return; }; +#define CN_CHECK if((cn>=0 && cn!=sender) || !valid_client(cn)) { if(sender>=0) disconnect_client(sender, DISC_CN); conoutf("ERROR: invalid client (msg %i)", type); return; }; +#define SENDER_CHECK if(sender<0) { conoutf("ERROR: invalid sender (msg %i)", type); return; }; #endif void process(ENetPacket *packet, int sender, int chan) // sender may be -1 @@ -797,7 +797,7 @@ void process(ENetPacket *packet, int sender, int chan) // sender may be -1 { int n = getint(p); if(m_ctf_s) - loopi(2) if(ctfflags[i].state==CTFF_STOLEN && ctfflags[i].thief_cn==n) + loopi(2) if(ctfflags[i].state==CTFF_STOLEN && ctfflags[i].actor_cn==n) sendf(-1, 1, "rii", SV_FLAGDROP, i); QUEUE_MSG; break; @@ -943,7 +943,7 @@ void process(ENetPacket *packet, int sender, int chan) // sender may be -1 if(f.state!=CTFF_STOLEN) { f.state = CTFF_STOLEN; - f.thief_cn = sender; + f.actor_cn = sender; f.lastupdate = lastsec; sendflaginfo(flag, SV_FLAGPICKUP); }; @@ -956,7 +956,7 @@ void process(ENetPacket *packet, int sender, int chan) // sender may be -1 int flag = getint(p); if(!valid_flag(flag)) return; ctfflag &f = ctfflags[flag]; - if(f.state==CTFF_STOLEN && (sender==-1 || f.thief_cn==sender)) + if(f.state==CTFF_STOLEN && (sender==-1 || f.actor_cn==sender)) { f.state = CTFF_DROPPED; f.lastupdate = lastsec; @@ -974,7 +974,7 @@ void process(ENetPacket *packet, int sender, int chan) // sender may be -1 if(f.state==CTFF_DROPPED) { f.state = CTFF_INBASE; - f.thief_cn = sender; + f.actor_cn = sender; f.lastupdate = lastsec; sendflaginfo(flag, SV_FLAGRETURN); }; @@ -989,7 +989,7 @@ void process(ENetPacket *packet, int sender, int chan) // sender may be -1 if(f.state==CTFF_STOLEN) { f.state = CTFF_INBASE; - f.thief_cn = sender; + f.actor_cn = sender; f.lastupdate = lastsec; sendflaginfo(flag, SV_FLAGSCORE); };