mirror of
https://git.do.srb2.org/KartKrew/Kart-Public.git
synced 2024-11-11 07:41:36 +00:00
Merge branch 'master' into next
This commit is contained in:
commit
ec125628ab
22 changed files with 89 additions and 22 deletions
15
.travis.yml
15
.travis.yml
|
@ -100,6 +100,21 @@ matrix:
|
|||
compiler: gcc-6
|
||||
env: WFLAGS="-Wno-tautological-compare"
|
||||
#gcc-6 (Ubuntu 6.1.1-3ubuntu11~14.04.1) 6.1.1 20160511
|
||||
- os: linux
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
packages:
|
||||
- libsdl2-mixer-dev
|
||||
- libpng-dev
|
||||
- libgl1-mesa-dev
|
||||
- libgme-dev
|
||||
- p7zip-full
|
||||
- gcc-7
|
||||
compiler: gcc-7
|
||||
env: WFLAGS="-Wno-tautological-compare -Wno-error=implicit-fallthrough"
|
||||
#gcc-7 (Ubuntu 7.2.0-1ubuntu1~14.04) 7.2.0 20170802
|
||||
- os: linux
|
||||
compiler: clang
|
||||
#clang version 3.5.0 (tags/RELEASE_350/final)
|
||||
|
|
|
@ -7,6 +7,17 @@
|
|||
# and other things
|
||||
#
|
||||
|
||||
ifdef GCC72
|
||||
GCC71=1
|
||||
endif
|
||||
|
||||
ifdef GCC71
|
||||
GCC64=1
|
||||
endif
|
||||
|
||||
ifdef GCC64
|
||||
GCC64=1
|
||||
endif
|
||||
|
||||
ifdef GCC63
|
||||
GCC62=1
|
||||
|
|
|
@ -412,7 +412,7 @@ static Instruction symbexec (const Proto *pt, int lastpc, int reg) {
|
|||
case OP_FORLOOP:
|
||||
case OP_FORPREP:
|
||||
checkreg(pt, a+3);
|
||||
/* go through */
|
||||
/* FALLTHRU */
|
||||
case OP_JMP: {
|
||||
int dest = pc+1+b;
|
||||
/* not full check and jump is forward and do not skip `lastpc'? */
|
||||
|
|
|
@ -306,11 +306,12 @@ static void read_string (LexState *ls, int del, SemInfo *seminfo) {
|
|||
save_and_next(ls); /* skip $ */
|
||||
seminfo->ts = luaX_newstring(ls, luaZ_buffer(ls->buff) + 1,
|
||||
luaZ_bufflen(ls->buff) - 2);
|
||||
ls->refstr++; /* expect '\' anytime soon */
|
||||
ls->refstr++; /* expect '\' anytime soon */
|
||||
lua_assert(ls->lookahead.token == TK_EOS);
|
||||
ls->lookahead.token = TK_CONCAT;
|
||||
return;
|
||||
}
|
||||
ls->lookahead.token = TK_CONCAT;
|
||||
return;
|
||||
}
|
||||
/* FALLTHRU */
|
||||
default: {
|
||||
if (!isdigit(ls->current))
|
||||
save_and_next(ls); /* handles \\, \", \', and \? */
|
||||
|
@ -340,7 +341,8 @@ static void read_string (LexState *ls, int del, SemInfo *seminfo) {
|
|||
};
|
||||
|
||||
switch (i) {
|
||||
case 4: save( ls, (c>>8) & 0xff ); // pass-through..
|
||||
case 4: save( ls, (c>>8) & 0xff );
|
||||
/* FALLTHRU */
|
||||
case 2: save( ls, c&0xff );
|
||||
break;
|
||||
case 5:
|
||||
|
@ -350,7 +352,7 @@ static void read_string (LexState *ls, int del, SemInfo *seminfo) {
|
|||
}
|
||||
continue;
|
||||
|
||||
// "\u0000".."\x10FFFF": UTF-8 encoded Unicode
|
||||
// "\u0000".."\x10FFFF": UTF-8 encoded Unicode
|
||||
//
|
||||
// Note that although codes are entered like this (must have min. four digit,
|
||||
// just to tease you!) the actual outcome in the string will vary between
|
||||
|
@ -482,20 +484,22 @@ static int llex (LexState *ls, SemInfo *seminfo) {
|
|||
else if (sep == -1) return '[';
|
||||
else luaX_lexerror(ls, "invalid long string delimiter", TK_STRING);
|
||||
}
|
||||
/* FALLTHRU */
|
||||
case '=': {
|
||||
next(ls);
|
||||
if (ls->current != '=') return '=';
|
||||
else { next(ls); return TK_EQ; }
|
||||
}
|
||||
/* FALLTHRU */
|
||||
case '<': {
|
||||
next(ls);
|
||||
if (ls->current == '<') { next(ls); return TK_SHL; }
|
||||
if (ls->current == '<') { next(ls); return TK_SHL; }
|
||||
if (ls->current != '=') return '<';
|
||||
else { next(ls); return TK_LE; }
|
||||
}
|
||||
case '>': {
|
||||
next(ls);
|
||||
if (ls->current == '>') { next(ls); return TK_SHR; }
|
||||
if (ls->current == '>') { next(ls); return TK_SHR; }
|
||||
if (ls->current != '=') return '>';
|
||||
else { next(ls); return TK_GE; }
|
||||
}
|
||||
|
@ -547,9 +551,10 @@ static int llex (LexState *ls, SemInfo *seminfo) {
|
|||
}
|
||||
case '\\': if (ls->refstr) {
|
||||
ls->refstr--;
|
||||
ls->current = '"'; /* whacky! */
|
||||
return TK_CONCAT;
|
||||
ls->current = '"'; /* whacky! */
|
||||
return TK_CONCAT;
|
||||
}
|
||||
/* FALLTHRU */
|
||||
default: {
|
||||
if (isspace(ls->current)) {
|
||||
lua_assert(!currIsNewline(ls));
|
||||
|
|
|
@ -478,6 +478,7 @@ static TValue *newkey (lua_State *L, Table *t, const TValue *key) {
|
|||
return luaH_getnum(t, k); /* use specialized version */
|
||||
/* else go through */
|
||||
}
|
||||
/* FALLTHRU */
|
||||
default: {
|
||||
Node *n = mainposition(t, key);
|
||||
do { /* check whether `key' is somewhere in the chain */
|
||||
|
|
|
@ -1883,6 +1883,7 @@ static boolean CL_ServerConnectionTicker(boolean viams, const char *tmpsave, tic
|
|||
break; // exit the case
|
||||
|
||||
cl_mode = CL_ASKJOIN; // don't break case continue to cljoin request now
|
||||
/* FALLTHRU */
|
||||
|
||||
case CL_ASKJOIN:
|
||||
CL_LoadServerFiles();
|
||||
|
@ -3605,6 +3606,7 @@ static void HandlePacketFromAwayNode(SINT8 node)
|
|||
// Do not remove my own server (we have just get a out of order packet)
|
||||
if (node == servernode)
|
||||
break;
|
||||
/* FALLTHRU */
|
||||
|
||||
default:
|
||||
DEBFILE(va("unknown packet received (%d) from unknown host\n",netbuffer->packettype));
|
||||
|
@ -3761,6 +3763,7 @@ FILESTAMP
|
|||
break;
|
||||
case PT_TEXTCMD2: // splitscreen special
|
||||
netconsole = nodetoplayer2[node];
|
||||
/* FALLTHRU */
|
||||
case PT_TEXTCMD:
|
||||
if (client)
|
||||
break;
|
||||
|
|
|
@ -1364,7 +1364,7 @@ boolean D_CheckNetGame(void)
|
|||
#else
|
||||
if (M_CheckParm("-debugfile"))
|
||||
{
|
||||
char filename[20];
|
||||
char filename[21];
|
||||
INT32 k = doomcom->consoleplayer - 1;
|
||||
if (M_IsNextParm())
|
||||
k = atoi(M_GetNextParm()) - 1;
|
||||
|
|
|
@ -2453,7 +2453,7 @@ static void Got_Teamchange(UINT8 **cp, INT32 playernum)
|
|||
error = true;
|
||||
break;
|
||||
}
|
||||
//fall down
|
||||
/* FALLTHRU */
|
||||
case GT_TAG:
|
||||
switch (NetPacket.packet.newteam)
|
||||
{
|
||||
|
|
|
@ -94,7 +94,7 @@ static fixed_t paldiv;
|
|||
* \return fademask_t for lump
|
||||
*/
|
||||
static fademask_t *F_GetFadeMask(UINT8 masknum, UINT8 scrnnum) {
|
||||
static char lumpname[9] = "FADEmmss";
|
||||
static char lumpname[10] = "FADEmmss";
|
||||
static fademask_t fm = {NULL,0,0,0,0,0};
|
||||
lumpnum_t lumpnum;
|
||||
UINT8 *lump, *mask;
|
||||
|
|
|
@ -726,7 +726,7 @@ void G_SetGameModified(boolean silent)
|
|||
*/
|
||||
const char *G_BuildMapName(INT32 map)
|
||||
{
|
||||
static char mapname[9] = "MAPXX"; // internal map name (wad resource name)
|
||||
static char mapname[10] = "MAPXX"; // internal map name (wad resource name)
|
||||
|
||||
I_Assert(map > 0);
|
||||
I_Assert(map <= NUMMAPS);
|
||||
|
|
|
@ -3022,6 +3022,7 @@ static void M_DrawGenericMenu(void)
|
|||
W_CachePatchName(currentMenu->menuitems[i].patch, PU_CACHE));
|
||||
}
|
||||
}
|
||||
/* FALLTHRU */
|
||||
case IT_NOTHING:
|
||||
case IT_DYBIGSPACE:
|
||||
y += LINEHEIGHT;
|
||||
|
@ -3073,6 +3074,7 @@ static void M_DrawGenericMenu(void)
|
|||
break;
|
||||
case IT_STRING2:
|
||||
V_DrawString(x, y, 0, currentMenu->menuitems[i].text);
|
||||
/* FALLTHRU */
|
||||
case IT_DYLITLSPACE:
|
||||
y += SMALLLINEHEIGHT;
|
||||
break;
|
||||
|
@ -3085,6 +3087,7 @@ static void M_DrawGenericMenu(void)
|
|||
case IT_TRANSTEXT:
|
||||
if (currentMenu->menuitems[i].alphaKey)
|
||||
y = currentMenu->y+currentMenu->menuitems[i].alphaKey;
|
||||
/* FALLTHRU */
|
||||
case IT_TRANSTEXT2:
|
||||
V_DrawString(x, y, V_TRANSLUCENT, currentMenu->menuitems[i].text);
|
||||
y += SMALLLINEHEIGHT;
|
||||
|
@ -3297,6 +3300,7 @@ static void M_DrawCenteredMenu(void)
|
|||
W_CachePatchName(currentMenu->menuitems[i].patch, PU_CACHE));
|
||||
}
|
||||
}
|
||||
/* FALLTHRU */
|
||||
case IT_NOTHING:
|
||||
case IT_DYBIGSPACE:
|
||||
y += LINEHEIGHT;
|
||||
|
@ -3347,6 +3351,7 @@ static void M_DrawCenteredMenu(void)
|
|||
break;
|
||||
case IT_STRING2:
|
||||
V_DrawCenteredString(x, y, 0, currentMenu->menuitems[i].text);
|
||||
/* FALLTHRU */
|
||||
case IT_DYLITLSPACE:
|
||||
y += SMALLLINEHEIGHT;
|
||||
break;
|
||||
|
|
|
@ -1079,7 +1079,7 @@ void M_StartMovie(void)
|
|||
moviemode = M_StartMovieGIF(pathname);
|
||||
break;
|
||||
}
|
||||
// fall thru
|
||||
/* FALLTHRU */
|
||||
case MM_APNG:
|
||||
moviemode = M_StartMovieAPNG(pathname);
|
||||
break;
|
||||
|
|
|
@ -79,7 +79,7 @@ void T_MoveCeiling(ceiling_t *ceiling)
|
|||
P_LinedefExecute((INT16)(ceiling->texture + INT16_MAX + 2), NULL, NULL);
|
||||
if (ceiling->texture > -1) // flat changing
|
||||
ceiling->sector->ceilingpic = ceiling->texture;
|
||||
// don't break
|
||||
/* FALLTHRU */
|
||||
case raiseToHighest:
|
||||
// case raiseCeilingByLine:
|
||||
case moveCeilingByFrontTexture:
|
||||
|
@ -182,6 +182,7 @@ void T_MoveCeiling(ceiling_t *ceiling)
|
|||
// except generalized ones, reset speed, start back up
|
||||
case crushAndRaise:
|
||||
ceiling->speed = CEILSPEED;
|
||||
/* FALLTHRU */
|
||||
case fastCrushAndRaise:
|
||||
ceiling->direction = 1;
|
||||
break;
|
||||
|
@ -200,6 +201,7 @@ void T_MoveCeiling(ceiling_t *ceiling)
|
|||
if (ceiling->texture > -1) // flat changing
|
||||
ceiling->sector->ceilingpic = ceiling->texture;
|
||||
// don't break
|
||||
/* FALLTHRU */
|
||||
|
||||
// in all other cases, just remove the active ceiling
|
||||
case lowerAndCrush:
|
||||
|
@ -427,6 +429,7 @@ INT32 EV_DoCeiling(line_t *line, ceiling_e type)
|
|||
case crushAndRaise:
|
||||
ceiling->crush = true;
|
||||
ceiling->topheight = sec->ceilingheight;
|
||||
/* FALLTHRU */
|
||||
case lowerAndCrush:
|
||||
ceiling->bottomheight = sec->floorheight;
|
||||
ceiling->bottomheight += 4*FRACUNIT;
|
||||
|
|
|
@ -6169,7 +6169,7 @@ void A_Boss7Chase(mobj_t *actor)
|
|||
break;
|
||||
}
|
||||
actor->threshold++;
|
||||
// fall into...
|
||||
/* FALLTHRU */
|
||||
case 1: // Chaingun Goop
|
||||
A_FaceTarget(actor);
|
||||
P_SetMobjState(actor, S_BLACKEGG_SHOOT1);
|
||||
|
|
|
@ -312,6 +312,7 @@ void T_MoveFloor(floormove_t *movefloor)
|
|||
case moveFloorByFrontSector:
|
||||
if (movefloor->texture < -1) // chained linedef executing
|
||||
P_LinedefExecute((INT16)(movefloor->texture + INT16_MAX + 2), NULL, NULL);
|
||||
/* FALLTHRU */
|
||||
case instantMoveFloorByFrontSector:
|
||||
if (movefloor->texture > -1) // flat changing
|
||||
movefloor->sector->floorpic = movefloor->texture;
|
||||
|
@ -360,6 +361,7 @@ void T_MoveFloor(floormove_t *movefloor)
|
|||
case moveFloorByFrontSector:
|
||||
if (movefloor->texture < -1) // chained linedef executing
|
||||
P_LinedefExecute((INT16)(movefloor->texture + INT16_MAX + 2), NULL, NULL);
|
||||
/* FALLTHRU */
|
||||
case instantMoveFloorByFrontSector:
|
||||
if (movefloor->texture > -1) // flat changing
|
||||
movefloor->sector->floorpic = movefloor->texture;
|
||||
|
|
|
@ -383,9 +383,11 @@ void P_TouchSpecialThing(mobj_t *special, mobj_t *toucher, boolean heightcheck)
|
|||
case MT_REDTEAMRING:
|
||||
if (player->ctfteam != 1)
|
||||
return;
|
||||
/* FALLTHRU */
|
||||
case MT_BLUETEAMRING: // Yes, I'm lazy. Oh well, deal with it.
|
||||
if (special->type == MT_BLUETEAMRING && player->ctfteam != 2)
|
||||
return;
|
||||
/* FALLTHRU */
|
||||
case MT_RING:
|
||||
case MT_FLINGRING:
|
||||
if (!(P_CanPickupItem(player, false)))
|
||||
|
@ -3127,7 +3129,7 @@ boolean P_DamageMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, INT32 da
|
|||
P_SetMobjState(target, target->info->meleestate); // go to pinch pain state
|
||||
break;
|
||||
}
|
||||
// fallthrough
|
||||
/* FALLTHRU */
|
||||
default:
|
||||
P_SetMobjState(target, target->info->painstate);
|
||||
break;
|
||||
|
|
|
@ -7152,7 +7152,7 @@ void P_MobjThinker(mobj_t *mobj)
|
|||
mobj->z = mobj->ceilingz - mobj->height;
|
||||
else
|
||||
mobj->z = mobj->floorz;
|
||||
// THERE IS NO BREAK HERE ON PURPOSE
|
||||
/* FALLTHRU */
|
||||
default:
|
||||
// check mobj against possible water content, before movement code
|
||||
P_MobjCheckWater(mobj);
|
||||
|
@ -8199,6 +8199,7 @@ void P_PrecipitationEffects(void)
|
|||
{
|
||||
case PRECIP_RAIN: // no lightning or thunder whatsoever
|
||||
sounds_thunder = false;
|
||||
/* FALLTHRU */
|
||||
case PRECIP_STORM_NOSTRIKES: // no lightning strikes specifically
|
||||
effects_lightning = false;
|
||||
break;
|
||||
|
|
10
src/p_spec.c
10
src/p_spec.c
|
@ -3668,6 +3668,7 @@ void P_ProcessSpecialSector(player_t *player, sector_t *sector, sector_t *rovers
|
|||
goto DoneSection2;
|
||||
}
|
||||
}
|
||||
/* FALLTHRU */
|
||||
case 4: // Linedef executor that doesn't require touching floor
|
||||
case 5: // Linedef executor
|
||||
case 6: // Linedef executor (7 Emeralds)
|
||||
|
@ -4680,6 +4681,8 @@ static void P_RunSpecialSectorCheck(player_t *player, sector_t *sector)
|
|||
// requires touching floor.
|
||||
break;
|
||||
}
|
||||
/* FALLTHRU */
|
||||
|
||||
case 1: // Starpost activator
|
||||
case 5: // Fan sector
|
||||
case 6: // Super Sonic Transform
|
||||
|
@ -5762,6 +5765,8 @@ void P_SpawnSpecials(INT32 fromnetsave)
|
|||
EV_DoFloor(&lines[i], bounceFloor);
|
||||
if (lines[i].special == 54)
|
||||
break;
|
||||
/* FALLTHRU */
|
||||
|
||||
case 55: // New super cool and awesome moving ceiling type
|
||||
if (lines[i].backsector)
|
||||
EV_DoCeiling(&lines[i], bounceCeiling);
|
||||
|
@ -5773,7 +5778,8 @@ void P_SpawnSpecials(INT32 fromnetsave)
|
|||
EV_DoFloor(&lines[i], bounceFloorCrush);
|
||||
|
||||
if (lines[i].special == 57)
|
||||
break; //only move the floor
|
||||
break; //only move the floor
|
||||
/* FALLTHRU */
|
||||
|
||||
case 58: // New super cool and awesome moving ceiling crush type
|
||||
if (lines[i].backsector)
|
||||
|
@ -6879,6 +6885,7 @@ static void P_SpawnScrollers(void)
|
|||
Add_Scroller(sc_ceiling, -dx, dy, control, s, accel, l->flags & ML_NOCLIMB);
|
||||
if (special != 533)
|
||||
break;
|
||||
/* FALLTHRU */
|
||||
|
||||
case 523: // carry objects on ceiling
|
||||
dx = FixedMul(dx, CARRYFACTOR);
|
||||
|
@ -6893,6 +6900,7 @@ static void P_SpawnScrollers(void)
|
|||
Add_Scroller(sc_floor, -dx, dy, control, s, accel, l->flags & ML_NOCLIMB);
|
||||
if (special != 530)
|
||||
break;
|
||||
/* FALLTHRU */
|
||||
|
||||
case 520: // carry objects on floor
|
||||
dx = FixedMul(dx, CARRYFACTOR);
|
||||
|
|
|
@ -941,6 +941,7 @@ static inline boolean I_SkipFrame(void)
|
|||
case GS_LEVEL:
|
||||
if (!paused)
|
||||
return false;
|
||||
/* FALLTHRU */
|
||||
case GS_TIMEATTACK:
|
||||
case GS_WAITINGPLAYERS:
|
||||
return skip; // Skip odd frames
|
||||
|
|
|
@ -477,7 +477,7 @@ void S_InitRuntimeSounds (void)
|
|||
{
|
||||
sfxenum_t i;
|
||||
INT32 value;
|
||||
char soundname[7];
|
||||
char soundname[10];
|
||||
|
||||
for (i = sfx_freeslot0; i <= sfx_lastskinsoundslot; i++)
|
||||
{
|
||||
|
|
|
@ -1083,6 +1083,7 @@ char *V_WordWrap(INT32 x, INT32 w, INT32 option, const char *string)
|
|||
{
|
||||
case V_MONOSPACE:
|
||||
spacewidth = 8;
|
||||
/* FALLTHRU */
|
||||
case V_OLDSPACING:
|
||||
charwidth = 8;
|
||||
break;
|
||||
|
@ -1160,6 +1161,7 @@ void V_DrawString(INT32 x, INT32 y, INT32 option, const char *string)
|
|||
{
|
||||
case V_MONOSPACE:
|
||||
spacewidth = 8;
|
||||
/* FALLTHRU */
|
||||
case V_OLDSPACING:
|
||||
charwidth = 8;
|
||||
break;
|
||||
|
@ -1269,6 +1271,7 @@ void V_DrawSmallString(INT32 x, INT32 y, INT32 option, const char *string)
|
|||
{
|
||||
case V_MONOSPACE:
|
||||
spacewidth = 4;
|
||||
/* FALLTHRU */
|
||||
case V_OLDSPACING:
|
||||
charwidth = 4;
|
||||
break;
|
||||
|
@ -1370,6 +1373,7 @@ void V_DrawThinString(INT32 x, INT32 y, INT32 option, const char *string)
|
|||
{
|
||||
case V_MONOSPACE:
|
||||
spacewidth = 5;
|
||||
/* FALLTHRU */
|
||||
case V_OLDSPACING:
|
||||
charwidth = 5;
|
||||
break;
|
||||
|
@ -1463,6 +1467,7 @@ void V_DrawStringAtFixed(fixed_t x, fixed_t y, INT32 option, const char *string)
|
|||
{
|
||||
case V_MONOSPACE:
|
||||
spacewidth = 8;
|
||||
/* FALLTHRU */
|
||||
case V_OLDSPACING:
|
||||
charwidth = 8;
|
||||
break;
|
||||
|
@ -1747,6 +1752,7 @@ INT32 V_StringWidth(const char *string, INT32 option)
|
|||
{
|
||||
case V_MONOSPACE:
|
||||
spacewidth = 8;
|
||||
/* FALLTHRU */
|
||||
case V_OLDSPACING:
|
||||
charwidth = 8;
|
||||
break;
|
||||
|
@ -1785,6 +1791,7 @@ INT32 V_SmallStringWidth(const char *string, INT32 option)
|
|||
{
|
||||
case V_MONOSPACE:
|
||||
spacewidth = 4;
|
||||
/* FALLTHRU */
|
||||
case V_OLDSPACING:
|
||||
charwidth = 4;
|
||||
break;
|
||||
|
@ -1823,6 +1830,7 @@ INT32 V_ThinStringWidth(const char *string, INT32 option)
|
|||
{
|
||||
case V_MONOSPACE:
|
||||
spacewidth = 5;
|
||||
/* FALLTHRU */
|
||||
case V_OLDSPACING:
|
||||
charwidth = 5;
|
||||
break;
|
||||
|
|
|
@ -1004,6 +1004,7 @@ void Y_StartIntermission(void)
|
|||
|
||||
// fall back into the coop intermission for now
|
||||
intertype = int_coop;
|
||||
/* FALLTHRU */
|
||||
case int_coop: // coop or single player, normal level
|
||||
{
|
||||
// award time and ring bonuses
|
||||
|
@ -1117,6 +1118,7 @@ void Y_StartIntermission(void)
|
|||
|
||||
// fall back into the special stage intermission for now
|
||||
intertype = int_spec;
|
||||
/* FALLTHRU */
|
||||
case int_spec: // coop or single player, special stage
|
||||
{
|
||||
// Update visitation flags?
|
||||
|
|
Loading…
Reference in a new issue