mirror of
https://git.do.srb2.org/STJr/ZoneBuilder.git
synced 2025-02-25 21:33:06 +00:00
Added, Game configurations, ZDoom: added Line_SetBlocking (55) linedef action.
Fixed, Draw Rectangle mode: fixed a crash caused by incorrectly changing text labels array when accepting the drawing. Fixed, "Check unknown ACS scripts" error check: named scripts check was performed incorrectly causing it to fail on script names containing uppercase letters.
This commit is contained in:
parent
66fb6c39b7
commit
7eafaa4d1a
3 changed files with 51 additions and 17 deletions
Build/Configurations/Includes
Source/Plugins/BuilderModes/ClassicModes
|
@ -656,6 +656,31 @@ zdoom
|
|||
type = 15;
|
||||
}
|
||||
}
|
||||
|
||||
55
|
||||
{
|
||||
title = "Line Set Blocking";
|
||||
id = "Line_SetBlocking";
|
||||
|
||||
arg0
|
||||
{
|
||||
title = "Target Line Tag";
|
||||
type = 15;
|
||||
}
|
||||
arg1
|
||||
{
|
||||
title = "Set Flags";
|
||||
type = 12;
|
||||
enum = "linesetblockingflags";
|
||||
}
|
||||
arg2
|
||||
{
|
||||
title = "Clear Flags";
|
||||
type = 12;
|
||||
enum = "linesetblockingflags";
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
door
|
||||
|
|
|
@ -732,24 +732,20 @@ enums
|
|||
4 = "Lower";
|
||||
}
|
||||
|
||||
generic_door_types
|
||||
linesetblockingflags
|
||||
{
|
||||
0 = "Open Close";
|
||||
1 = "Open Stay";
|
||||
2 = "Close Open";
|
||||
3 = "Close Stay";
|
||||
64 = "Open Close (no retrigger)";
|
||||
65 = "Open Stay (no retrigger)";
|
||||
66 = "Close Open (no retrigger)";
|
||||
67 = "Close Stay (no retrigger)";
|
||||
128 = "Open Close (tag is light tag)";
|
||||
129 = "Open Stay (tag is light tag)";
|
||||
130 = "Close Open (tag is light tag)";
|
||||
131 = "Close Stay (tag is light tag)";
|
||||
192 = "Open Close (no retrigger, tag is light tag)";
|
||||
193 = "Open Stay (no retrigger, tag is light tag)";
|
||||
194 = "Close Open (no retrigger, tag is light tag)";
|
||||
195 = "Close Stay (no retrigger, tag is light tag)";
|
||||
0 = "None";
|
||||
1 = "Block creatures";
|
||||
2 = "Block monsters";
|
||||
4 = "Block players";
|
||||
8 = "Block floating creatures";
|
||||
16 = "Block projectiles";
|
||||
32 = "Block all of the above";
|
||||
64 = "Strife railing";
|
||||
128 = "Block use action";
|
||||
256 = "Block monster line of sight";
|
||||
512 = "Block hitscan attacks";
|
||||
1024 = "Block sound";
|
||||
}
|
||||
|
||||
generic_lift_types
|
||||
|
|
|
@ -47,6 +47,8 @@ namespace CodeImp.DoomBuilder.BuilderModes
|
|||
protected int minpointscount;
|
||||
protected bool alwaysrendershapehints;
|
||||
|
||||
private bool blockupdate;
|
||||
|
||||
// Interface
|
||||
private DrawRectangleOptionsPanel panel;
|
||||
|
||||
|
@ -128,6 +130,8 @@ namespace CodeImp.DoomBuilder.BuilderModes
|
|||
|
||||
override protected void Update()
|
||||
{
|
||||
if(blockupdate) return;
|
||||
|
||||
PixelColor stitchcolor = General.Colors.Highlight;
|
||||
PixelColor losecolor = General.Colors.Selection;
|
||||
|
||||
|
@ -193,6 +197,11 @@ namespace CodeImp.DoomBuilder.BuilderModes
|
|||
renderer.RenderRectangleFilled(new RectangleF(labelCoords[i].x - vsize, labelCoords[i].y - vsize, vsize * 2.0f, vsize * 2.0f), General.Colors.InfoLine, true);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// Render vertex at points[0]
|
||||
renderer.RenderRectangleFilled(new RectangleF(start.x - vsize, start.y - vsize, vsize * 2.0f, vsize * 2.0f), General.Colors.InfoLine, true);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -354,7 +363,11 @@ namespace CodeImp.DoomBuilder.BuilderModes
|
|||
points = new List<DrawnVertex>(); //clear points
|
||||
Vector2D[] shape = GetShape(start, end);
|
||||
|
||||
// We don't want base.DrawPointAt to call Update() here, because it will mess labels[]
|
||||
// and trigger shape.Count number of display redraws...
|
||||
blockupdate = true;
|
||||
foreach(Vector2D t in shape) base.DrawPointAt(t, true, true);
|
||||
blockupdate = false;
|
||||
|
||||
FinishDraw();
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue