diff options
| author | xolatile | 2025-07-17 23:28:55 +0200 |
|---|---|---|
| committer | xolatile | 2025-07-17 23:28:55 +0200 |
| commit | c79dda69d6e603500a5681430172b5152041af0a (patch) | |
| tree | c1669442318e77a9ae76009edd5eefcaa69064ce /src/fpsgame/fps.cpp | |
| parent | 5b88d873f42b1cad5c5fd03888cfe45b82da06d6 (diff) | |
| download | xolatile-badassbug-c79dda69d6e603500a5681430172b5152041af0a.tar.xz xolatile-badassbug-c79dda69d6e603500a5681430172b5152041af0a.tar.zst | |
Big changed mentioned in IRC channel...
Diffstat (limited to 'src/fpsgame/fps.cpp')
| -rw-r--r-- | src/fpsgame/fps.cpp | 71 |
1 files changed, 10 insertions, 61 deletions
diff --git a/src/fpsgame/fps.cpp b/src/fpsgame/fps.cpp index 04b036f..f5ce95c 100644 --- a/src/fpsgame/fps.cpp +++ b/src/fpsgame/fps.cpp @@ -70,12 +70,6 @@ namespace game void resetgamestate() { - if(m_classicsp) - { - clearmovables(); - clearmonsters(); // all monsters back at their spawns for editing - entities::resettriggers(); - } clearprojectiles(); clearbouncers(); } @@ -222,8 +216,6 @@ namespace game } } - VARFP(slowmosp, 0, 0, 1, { if(m_sp && !slowmosp) server::forcegamespeed(100); }); - void checkslowmo() { static int lastslowmohealth = 0; @@ -251,8 +243,6 @@ namespace game ai::update(); moveragdolls(); gets2c(); - updatemovables(curtime); - updatemonsters(curtime); if(connected) { if(player1->state == CS_DEAD) @@ -270,12 +260,7 @@ namespace game moveplayer(player1, 10, true); swayhudgun(curtime); entities::checkitems(player1); - if(m_sp) - { - if(slowmosp) checkslowmo(); - if(m_classicsp) entities::checktriggers(); - } - else if(cmode) cmode->checkitems(player1); + if(cmode) cmode->checkitems(player1); } } if(player1->clientnum>=0) c2sinfo(); // do this last, to reduce the effective frame lag @@ -323,7 +308,7 @@ namespace game void pickgamespawn(fpsent *d) { - int ent = m_classicsp && d == player1 && respawnent >= 0 ? respawnent : -1; + int ent = d == player1 && respawnent >= 0 ? respawnent : -1; int tag = cmode ? cmode->getspawngroup(d) : 0; findplayerspawn(d, ent, tag); } @@ -355,13 +340,7 @@ namespace game return; } if(lastmillis < player1->lastpain + spawnwait) return; - if(m_dmsp) { changemap(clientmap, gamemode); return; } // if we die in SP we try the same map again respawnself(); - if(m_classicsp) - { - conoutf(CON_GAMEINFO, "\f2You wasted another life! The monsters stole your armour and some ammo..."); - loopi(NUMGUNS) if(i!=GUN_PISTOL && (player1->ammo[i] = savedammo[i]) > 5) player1->ammo[i] = max(player1->ammo[i]/3, 5); - } } } COMMAND(respawn, ""); @@ -413,9 +392,7 @@ namespace game } damageeffect(damage, d, d!=h); - ai::damaged(d, actor); - - if(m_sp && slowmosp && d==player1 && d->health < 1) d->health = 1; + ai::damaged(d, actor); if(d->health<=0) { if(local) killed(d, actor); } else if(d==h) playsound(S_PAIN6); @@ -514,12 +491,9 @@ namespace game if(cmode) cmode->gameover(); conoutf(CON_GAMEINFO, "\f2intermission:"); conoutf(CON_GAMEINFO, "\f2game has ended!"); - if(m_ctf) conoutf(CON_GAMEINFO, "\f2player frags: %d, flags: %d, deaths: %d", player1->frags, player1->flags, player1->deaths); - else if(m_collect) conoutf(CON_GAMEINFO, "\f2player frags: %d, skulls: %d, deaths: %d", player1->frags, player1->flags, player1->deaths); - else conoutf(CON_GAMEINFO, "\f2player frags: %d, deaths: %d", player1->frags, player1->deaths); + conoutf(CON_GAMEINFO, "\f2player frags: %d, deaths: %d", player1->frags, player1->deaths); int accuracy = (player1->totaldamage*100)/max(player1->totalshots, 1); conoutf(CON_GAMEINFO, "\f2player total damage dealt: %d, damage wasted: %d, accuracy(%%): %d", player1->totaldamage, player1->totalshots-player1->totaldamage, accuracy); - if(m_sp) spsummary(accuracy); showscores(true); disablezoom(); @@ -593,7 +567,7 @@ namespace game void initclient() { player1 = spawnstate(new fpsent); - filtertext(player1->name, "unnamed", false, false, MAXNAMELEN); + filtertext(player1->name, "Anonymous", false, false, MAXNAMELEN); players.add(player1); } @@ -601,9 +575,6 @@ namespace game void startgame() { - clearmovables(); - clearmonsters(); - clearprojectiles(); clearbouncers(); clearragdolls(); @@ -637,19 +608,8 @@ namespace game conoutf(CON_GAMEINFO, "\f2game mode is %s", server::modename(gamemode)); - if(m_sp) - { - defformatstring(scorename, "bestscore_%s", getclientmap()); - const char *best = getalias(scorename); - if(*best) conoutf(CON_GAMEINFO, "\f2try to beat your best score so far: %s", best); - } - else - { - const char *info = m_valid(gamemode) ? gamemodes[gamemode - STARTGAMEMODE].info : NULL; - if(showmodeinfo && info) conoutf(CON_GAMEINFO, "\f0%s", info); - } - - if(player1->playermodel != playermodel) switchplayermodel(playermodel); + const char *info = m_valid(gamemode) ? gamemodes[gamemode - STARTGAMEMODE].info : NULL; + if(showmodeinfo && info) conoutf(CON_GAMEINFO, "\f0%s", info); showscores(false); disablezoom(); @@ -698,11 +658,7 @@ namespace game void dynentcollide(physent *d, physent *o, const vec &dir) { - switch(d->type) - { - case ENT_AI: if(dir.z > 0) stackmonster((monster *)d, o); break; - case ENT_INANIMATE: if(dir.z > 0) stackmovable((movable *)d, o); break; - } + return; } void msgsound(int n, physent *d) @@ -720,15 +676,12 @@ namespace game } } - int numdynents() { return players.length()+monsters.length()+movables.length(); } + int numdynents() { return players.length(); } dynent *iterdynents(int i) { if(i<players.length()) return players[i]; i -= players.length(); - if(i<monsters.length()) return (dynent *)monsters[i]; - i -= monsters.length(); - if(i<movables.length()) return (dynent *)movables[i]; return NULL; } @@ -803,13 +756,9 @@ namespace game if(pl->suicided!=seq) { addmsg(N_SUICIDE, "rc", pl); pl->suicided = seq; } } } - else if(d->type==ENT_AI) suicidemonster((monster *)d); - else if(d->type==ENT_INANIMATE) suicidemovable((movable *)d); } ICOMMAND(suicide, "", (), suicide(player1)); - bool needminimap() { return m_ctf || m_protect || m_hold || m_capture || m_collect; } - void drawicon(int icon, float x, float y, float sz) { settexture("packages/hud/items.png"); @@ -1087,7 +1036,7 @@ namespace game if(ammobar) drawammobar(w, h, d); } - if(!m_edit && !m_sp) + if(!m_edit) { if(gameclock) drawgameclock(w, h); if(hudscore) drawhudscore(w, h); |
