mirror of
https://git.do.srb2.org/STJr/SRB2.git
synced 2025-01-18 07:22:28 +00:00
Merge branch 'plane-scroller-tweaks-again' into 'next'
Plane scroller & wind/current/pusher improvements (again) See merge request STJr/SRB2!1811
This commit is contained in:
commit
777a1c6b83
3 changed files with 163 additions and 12 deletions
|
@ -2866,36 +2866,63 @@ linedeftypes
|
|||
{
|
||||
title = "Scroll Floor Texture";
|
||||
prefix = "(510)";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
511
|
||||
{
|
||||
title = "Scroll Floor Texture (Accelerative)";
|
||||
prefix = "(511)";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
512
|
||||
{
|
||||
title = "Scroll Floor Texture (Displacement)";
|
||||
prefix = "(512)";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
513
|
||||
{
|
||||
title = "Scroll Ceiling Texture";
|
||||
prefix = "(513)";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
514
|
||||
{
|
||||
title = "Scroll Ceiling Texture (Accelerative)";
|
||||
prefix = "(514)";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
515
|
||||
{
|
||||
title = "Scroll Ceiling Texture (Displacement)";
|
||||
prefix = "(515)";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
516
|
||||
{
|
||||
title = "Scroll Floor and Ceiling Texture";
|
||||
prefix = "(516)";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
517
|
||||
{
|
||||
title = "Scroll Floor and Ceiling Texture (Accelerative)";
|
||||
prefix = "(517)";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
518
|
||||
{
|
||||
title = "Scroll Floor and Ceiling Texture (Displacement)";
|
||||
prefix = "(518)";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
520
|
||||
|
@ -2903,6 +2930,7 @@ linedeftypes
|
|||
title = "Carry Objects on Floor";
|
||||
prefix = "(520)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
521
|
||||
|
@ -2910,6 +2938,7 @@ linedeftypes
|
|||
title = "Carry Objects on Floor (Accelerative)";
|
||||
prefix = "(521)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
522
|
||||
|
@ -2917,6 +2946,7 @@ linedeftypes
|
|||
title = "Carry Objects on Floor (Displacement)";
|
||||
prefix = "(522)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
523
|
||||
|
@ -2924,6 +2954,7 @@ linedeftypes
|
|||
title = "Carry Objects on Ceiling";
|
||||
prefix = "(523)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
524
|
||||
|
@ -2931,6 +2962,7 @@ linedeftypes
|
|||
title = "Carry Objects on Ceiling (Accelerative)";
|
||||
prefix = "(524)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
525
|
||||
|
@ -2938,6 +2970,31 @@ linedeftypes
|
|||
title = "Carry Objects on Ceiling (Displacement)";
|
||||
prefix = "(525)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
526
|
||||
{
|
||||
title = "Carry Objects on Floor and Ceiling";
|
||||
prefix = "(526)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
527
|
||||
{
|
||||
title = "Carry Objects on Floor and Ceiling (Accelerative)";
|
||||
prefix = "(527)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
528
|
||||
{
|
||||
title = "Carry Objects on Floor and Ceiling (Displacement)";
|
||||
prefix = "(528)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
530
|
||||
|
@ -2945,6 +3002,7 @@ linedeftypes
|
|||
title = "Scroll Floor Texture and Carry Objects";
|
||||
prefix = "(530)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
531
|
||||
|
@ -2952,6 +3010,7 @@ linedeftypes
|
|||
title = "Scroll Floor Texture and Carry Objects (Accelerative)";
|
||||
prefix = "(531)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
532
|
||||
|
@ -2959,6 +3018,7 @@ linedeftypes
|
|||
title = "Scroll Floor Texture and Carry Objects (Displacement)";
|
||||
prefix = "(532)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
533
|
||||
|
@ -2966,6 +3026,7 @@ linedeftypes
|
|||
title = "Scroll Ceiling Texture and Carry Objects";
|
||||
prefix = "(533)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
534
|
||||
|
@ -2973,6 +3034,7 @@ linedeftypes
|
|||
title = "Scroll Ceiling Texture and Carry Objects (Accelerative)";
|
||||
prefix = "(534)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
535
|
||||
|
@ -2980,6 +3042,31 @@ linedeftypes
|
|||
title = "Scroll Ceiling Texture and Carry Objects (Displacement)";
|
||||
prefix = "(535)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
536
|
||||
{
|
||||
title = "Scroll Floor and Ceiling Texture and Carry Objects";
|
||||
prefix = "(536)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
537
|
||||
{
|
||||
title = "Scroll Floor and Ceiling Texture and Carry Objects (Accelerative)";
|
||||
prefix = "(537)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
538
|
||||
{
|
||||
title = "Scroll Floor and Ceiling Texture and Carry Objects (Displacement)";
|
||||
prefix = "(538)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2991,48 +3078,54 @@ linedeftypes
|
|||
{
|
||||
title = "Wind";
|
||||
prefix = "(541)";
|
||||
flags512text = "[9] Player slides";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags512text = "[9] Player slides";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
542
|
||||
{
|
||||
title = "Upwards Wind";
|
||||
prefix = "(542)";
|
||||
flags512text = "[9] Player slides";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags512text = "[9] Player slides";
|
||||
flags8192text = "[13] Use X offset";
|
||||
}
|
||||
|
||||
543
|
||||
{
|
||||
title = "Downwards Wind";
|
||||
prefix = "(543)";
|
||||
flags512text = "[9] Player slides";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags512text = "[9] Player slides";
|
||||
flags8192text = "[13] Use X offset";
|
||||
}
|
||||
|
||||
544
|
||||
{
|
||||
title = "Current";
|
||||
prefix = "(544)";
|
||||
flags512text = "[9] Player slides";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags512text = "[9] Player slides";
|
||||
flags8192text = "[13] Use angle and X offset";
|
||||
}
|
||||
|
||||
545
|
||||
{
|
||||
title = "Upwards Current";
|
||||
prefix = "(545)";
|
||||
flags512text = "[9] Player slides";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags512text = "[9] Player slides";
|
||||
flags8192text = "[13] Use X offset";
|
||||
}
|
||||
|
||||
546
|
||||
{
|
||||
title = "Downwards Current";
|
||||
prefix = "(546)";
|
||||
flags512text = "[9] Player slides";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags512text = "[9] Player slides";
|
||||
flags8192text = "[13] Use X offset";
|
||||
}
|
||||
|
||||
547
|
||||
|
@ -3040,6 +3133,7 @@ linedeftypes
|
|||
title = "Push/Pull";
|
||||
prefix = "(547)";
|
||||
flags64text = "[6] Exclusive";
|
||||
flags8192text = "[13] Use X offset";
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1301,6 +1301,21 @@ doom
|
|||
title = "Scroll Ceiling Texture (Displacement)";
|
||||
prefix = "(515)";
|
||||
}
|
||||
516
|
||||
{
|
||||
title = "Scroll Floor and Ceiling Texture";
|
||||
prefix = "(516)";
|
||||
}
|
||||
517
|
||||
{
|
||||
title = "Scroll Floor and Ceiling Texture (Accelerative)";
|
||||
prefix = "(517)";
|
||||
}
|
||||
518
|
||||
{
|
||||
title = "Scroll Floor and Ceiling Texture (Displacement)";
|
||||
prefix = "(518)";
|
||||
}
|
||||
520
|
||||
{
|
||||
title = "Carry Objects on Floor";
|
||||
|
@ -1331,6 +1346,21 @@ doom
|
|||
title = "Carry Objects on Ceiling (Displacement)";
|
||||
prefix = "(525)";
|
||||
}
|
||||
526
|
||||
{
|
||||
title = "Carry Objects on Floor and Ceiling";
|
||||
prefix = "(526)";
|
||||
}
|
||||
527
|
||||
{
|
||||
title = "Carry Objects on Floor and Ceiling (Accelerative)";
|
||||
prefix = "(527)";
|
||||
}
|
||||
528
|
||||
{
|
||||
title = "Carry Objects on Floor and Ceiling (Displacement)";
|
||||
prefix = "(528)";
|
||||
}
|
||||
530
|
||||
{
|
||||
title = "Scroll Floor Texture and Carry Objects";
|
||||
|
@ -1361,6 +1391,21 @@ doom
|
|||
title = "Scroll Ceiling Texture and Carry Objects (Displacement)";
|
||||
prefix = "(535)";
|
||||
}
|
||||
536
|
||||
{
|
||||
title = "Scroll Floor and Ceiling Texture and Carry Objects";
|
||||
prefix = "(536)";
|
||||
}
|
||||
537
|
||||
{
|
||||
title = "Scroll Floor and Ceiling Texture and Carry Objects (Accelerative)";
|
||||
prefix = "(537)";
|
||||
}
|
||||
538
|
||||
{
|
||||
title = "Scroll Floor and Ceiling Texture and Carry Objects (Displacement)";
|
||||
prefix = "(538)";
|
||||
}
|
||||
}
|
||||
|
||||
pusher
|
||||
|
|
|
@ -5731,22 +5731,31 @@ static void P_ConvertBinaryLinedefTypes(void)
|
|||
case 513: //Scroll ceiling texture
|
||||
case 514: //Scroll ceiling texture (accelerative)
|
||||
case 515: //Scroll ceiling texture (displacement)
|
||||
case 516: //Scroll floor and ceiling texture
|
||||
case 517: //Scroll floor and ceiling texture (accelerative)
|
||||
case 518: //Scroll floor and ceiling texture (displacement)
|
||||
case 520: //Carry objects on floor
|
||||
case 521: //Carry objects on floor (accelerative)
|
||||
case 522: //Carry objects on floor (displacement)
|
||||
case 523: //Carry objects on ceiling
|
||||
case 524: //Carry objects on ceiling (accelerative)
|
||||
case 525: //Carry objects on ceiling (displacement)
|
||||
case 526: //Carry objects on floor and ceiling
|
||||
case 527: //Carry objects on floor and ceiling (accelerative)
|
||||
case 528: //Carry objects on floor and ceiling (displacement)
|
||||
case 530: //Scroll floor texture and carry objects
|
||||
case 531: //Scroll floor texture and carry objects (accelerative)
|
||||
case 532: //Scroll floor texture and carry objects (displacement)
|
||||
case 533: //Scroll ceiling texture and carry objects
|
||||
case 534: //Scroll ceiling texture and carry objects (accelerative)
|
||||
case 535: //Scroll ceiling texture and carry objects (displacement)
|
||||
case 536: //Scroll floor and ceiling texture and carry objects
|
||||
case 537: //Scroll floor and ceiling texture and carry objects (accelerative)
|
||||
case 538: //Scroll floor and ceiling texture and carry objects (displacement)
|
||||
lines[i].args[0] = tag;
|
||||
lines[i].args[1] = ((lines[i].special % 10) < 3) ? TMP_FLOOR : TMP_CEILING;
|
||||
lines[i].args[1] = ((lines[i].special % 10) < 6) ? (((lines[i].special % 10) < 3) ? TMP_FLOOR : TMP_CEILING) : TMP_BOTH;
|
||||
lines[i].args[2] = ((lines[i].special - 510)/10 + 1) % 3;
|
||||
lines[i].args[3] = R_PointToDist2(lines[i].v2->x, lines[i].v2->y, lines[i].v1->x, lines[i].v1->y) >> FRACBITS;
|
||||
lines[i].args[3] = ((lines[i].flags & ML_EFFECT6) ? sides[lines[i].sidenum[0]].textureoffset : R_PointToDist2(lines[i].v2->x, lines[i].v2->y, lines[i].v1->x, lines[i].v1->y)) >> FRACBITS;
|
||||
lines[i].args[4] = (lines[i].special % 10) % 3;
|
||||
if (lines[i].args[2] != TMS_SCROLLONLY && !(lines[i].flags & ML_NOCLIMB))
|
||||
lines[i].args[4] |= TMST_NONEXCLUSIVE;
|
||||
|
@ -5777,17 +5786,19 @@ static void P_ConvertBinaryLinedefTypes(void)
|
|||
case 544: //Current
|
||||
case 545: //Upwards current
|
||||
case 546: //Downwards current
|
||||
{
|
||||
fixed_t strength = (lines[i].flags & ML_EFFECT6) ? sides[lines[i].sidenum[0]].textureoffset : R_PointToDist2(lines[i].v2->x, lines[i].v2->y, lines[i].v1->x, lines[i].v1->y);
|
||||
lines[i].args[0] = tag;
|
||||
switch ((lines[i].special - 541) % 3)
|
||||
{
|
||||
case 0:
|
||||
lines[i].args[1] = R_PointToDist2(lines[i].v2->x, lines[i].v2->y, lines[i].v1->x, lines[i].v1->y) >> FRACBITS;
|
||||
lines[i].args[1] = strength >> FRACBITS;
|
||||
break;
|
||||
case 1:
|
||||
lines[i].args[2] = R_PointToDist2(lines[i].v2->x, lines[i].v2->y, lines[i].v1->x, lines[i].v1->y) >> FRACBITS;
|
||||
lines[i].args[2] = strength >> FRACBITS;
|
||||
break;
|
||||
case 2:
|
||||
lines[i].args[2] = -R_PointToDist2(lines[i].v2->x, lines[i].v2->y, lines[i].v1->x, lines[i].v1->y) >> FRACBITS;
|
||||
lines[i].args[2] = -strength >> FRACBITS;
|
||||
break;
|
||||
}
|
||||
lines[i].args[3] = (lines[i].special >= 544) ? p_current : p_wind;
|
||||
|
@ -5797,6 +5808,7 @@ static void P_ConvertBinaryLinedefTypes(void)
|
|||
lines[i].args[4] |= TMPF_NONEXCLUSIVE;
|
||||
lines[i].special = 541;
|
||||
break;
|
||||
}
|
||||
case 600: //Floor lighting
|
||||
case 601: //Ceiling lighting
|
||||
lines[i].args[0] = tag;
|
||||
|
@ -6450,7 +6462,7 @@ static void P_ConvertBinaryThingTypes(void)
|
|||
}
|
||||
|
||||
mapthings[i].args[0] = mapthings[i].angle;
|
||||
mapthings[i].args[1] = P_AproxDistance(line->dx >> FRACBITS, line->dy >> FRACBITS);
|
||||
mapthings[i].args[1] = (line->flags & ML_EFFECT6) ? sides[line->sidenum[0]].textureoffset >> FRACBITS : P_AproxDistance(line->dx >> FRACBITS, line->dy >> FRACBITS);
|
||||
if (mapthings[i].type == 755)
|
||||
mapthings[i].args[1] *= -1;
|
||||
if (mapthings[i].options & MTF_OBJECTSPECIAL)
|
||||
|
|
Loading…
Reference in a new issue