mirror of
https://git.do.srb2.org/STJr/ZoneBuilder.git
synced 2025-04-22 17:44:06 +00:00
Fixed: HiRes images should not be used on surfaces with long texture names.
Changed, Draw Lines and Draw Curve modes: "Auto-finish drawing" option now works regardless of "Continuous drawing" option (previously it worked only when the latter was enabled). Changed: position and size of the "Errors and Warnings" window is now stored while the editor is running. Internal: rewritten parts of long texture names support code. It now involves much less special handling. Updated ZDoom_DECORATE.cfg (A_QuakeEx, A_CheckBlock). Updated ZDoom_ACS.cfg (QuakeEx). Updated ZDoom ACC (QuakeEx).
This commit is contained in:
parent
474ca9b895
commit
4b85392a18
6 changed files with 29 additions and 11 deletions
|
@ -358,7 +358,7 @@ special
|
|||
-88:SetActorRoll(2),
|
||||
-89:ChangeActorRoll(2,3),
|
||||
-90:GetActorRoll(1),
|
||||
-91:QuakeEx(8,12),
|
||||
-91:QuakeEx(8,14),
|
||||
-92:Warp(6,11),
|
||||
-93:GetMaxInventory(2),
|
||||
-94:SetSectorDamage(2,5),
|
||||
|
|
|
@ -309,7 +309,7 @@ keywords
|
|||
PolyWait = "void PolyWait(int polyid)";
|
||||
Print = "void Print(type:expression)\nPrint will print something to the screen.\nPrint will only display for the activator of the script\nFor printing to all players, use PrintBold.";
|
||||
PrintBold = "void PrintBold(type:expression)\nThis is exactly the same as Print, except all players will see the printed text\non the screen instead of just the activator of the script.";
|
||||
QuakeEx = "bool QuakeEx(int tid, int intensityX, int intensityY, int intensityZ, int duration, int damrad, int tremrad, str sound[, int flags = 0[, float mulwavex = 1.0[, float mulwavey = 1.0[, float mulwavez = 1.0]]]])";
|
||||
QuakeEx = "bool QuakeEx(int tid, int intensityX, int intensityY, int intensityZ, int duration, int damrad, int tremrad, str sound[, int flags = 0[, float mulwavex = 1.0[, float mulwavey = 1.0[, float mulwavez = 1.0[, int falloff = 0[, int highpoint = 0]]]]]])";
|
||||
Radius_Quake = "Radius_Quake(intensity, duration, damrad, tremrad, tid)";
|
||||
Radius_Quake2 = "void Radius_Quake2(int tid, int intensity, int duration, int damrad, int tremrad, str sound)";
|
||||
Random = "int Random(int min, int max)";
|
||||
|
|
|
@ -162,7 +162,7 @@ keywords
|
|||
A_PlayerSkinCheck = "state A_PlayerSkinCheck(str state)";
|
||||
A_SkullPop = "A_SkullPop[(str type = \"BloodySkull\")]";
|
||||
A_Quake = "A_Quake(int intensity, int duration, int damageradius, int tremorradius[, str sound = \"world/quake\"])";
|
||||
A_QuakeEx = "A_QuakeEx(int intensityX, int intensityY, int intensityZ, int duration, int damrad, int tremrad[, str sound = \"world/quake\"[, int flags = 0[, float mulwavex = 1.0[, float mulwavey = 1.0[, float mulwavez = 1.0]]]]])";
|
||||
A_QuakeEx = "A_QuakeEx(int intensityX, int intensityY, int intensityZ, int duration, int damrad, int tremrad[, str sound = \"world/quake\"[, int flags = 0[, float mulwavex = 1.0[, float mulwavey = 1.0[, float mulwavez = 1.0[, int falloff = 0[, int highpoint = 0]]]]]]])";
|
||||
//Spawn functions
|
||||
A_TossGib = "A_TossGib";
|
||||
A_SpawnDebris = "A_SpawnDebris(str type[, bool translation = false[, float horizontal_vel = 1.0[, float vertical_vel = 1.0]]])";
|
||||
|
@ -170,7 +170,7 @@ keywords
|
|||
A_SpawnItemEx = "bool A_SpawnItemEx(str type[, float xoffset = 0.0[, float yoffset = 0.0[, float zoffset = 0.0[, float xvelocity = 0.0[, float yvelocity = 0.0[, float zvelocity = 0.0[, float angle = 0.0[, int flags = 0[, int skipchance = 0[, int tid = 0]]]]]]]]]])";
|
||||
A_SpawnParticle = "A_SpawnParticle(color color[, int flags = 0[, int lifetime = 35[, int size = 1[, float angle = 0.0[, float xoff = 0.0[, float yoff = 0.0[, float zoff = 0.0[, float velx = 0.0[, float vely = 0.0[, float velz = 0.0[, float accelx = 0.0[, float accely = 0.0[, float accelz = 0.0[, float startalpha = 1.0[, float fadestep = -1.0]]]]]]]]]]]]]]])";
|
||||
//State jumps
|
||||
A_CheckBlock = "state A_CheckBlock(str block[, int flags = 0[, int pointer = AAPTR_TARGET]])";
|
||||
A_CheckBlock = "state A_CheckBlock(str block[, int flags = 0[, int pointer = AAPTR_TARGET[, float xoff = 0.0[, float yoff = 0.0[, float zoff = 0.0[, float angle = 0.0]]]]]])";
|
||||
A_CheckCeiling = "state A_CheckCeiling(str state)\nstate A_CheckCeiling(int offset)";
|
||||
A_CheckFloor = "state A_CheckFloor(str state)\nstate A_CheckFloor(int offset)";
|
||||
A_CheckFlag = "state A_CheckFlag(str flagname, state label[, int check_pointer = AAPTR_DEFAULT])";
|
||||
|
@ -1081,6 +1081,8 @@ constants
|
|||
CBF_SETONPTR;
|
||||
CBF_DROPOFF;
|
||||
CBF_NOACTORS;
|
||||
CBF_ABSOLUTEPOS;
|
||||
CBF_ABSOLUTEANGLE;
|
||||
CHF_DONTMOVE;
|
||||
CHF_FASTCHASE;
|
||||
CHF_NIGHTMAREFAST;
|
||||
|
|
|
@ -31,6 +31,10 @@ namespace CodeImp.DoomBuilder.Windows
|
|||
{
|
||||
#region ================== Variables
|
||||
|
||||
//mxd. Window setup stuff
|
||||
private static Point location = Point.Empty;
|
||||
private static Size size = Size.Empty;
|
||||
|
||||
#endregion
|
||||
|
||||
#region ================== Constructor / Disposer
|
||||
|
@ -39,6 +43,15 @@ namespace CodeImp.DoomBuilder.Windows
|
|||
public ErrorsForm()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
//mxd. Apply window settings
|
||||
if(location != Point.Empty)
|
||||
{
|
||||
this.StartPosition = FormStartPosition.Manual;
|
||||
this.Location = location;
|
||||
}
|
||||
if(size != Size.Empty) this.Size = size;
|
||||
|
||||
FillList();
|
||||
checkerrors.Start();
|
||||
checkshow.Checked = General.Settings.ShowErrorsWindow;
|
||||
|
@ -86,16 +99,17 @@ namespace CodeImp.DoomBuilder.Windows
|
|||
{
|
||||
checkerrors.Stop();
|
||||
General.Settings.ShowErrorsWindow = checkshow.Checked;
|
||||
|
||||
//mxd. Save window settings
|
||||
location = this.Location;
|
||||
size = this.Size;
|
||||
}
|
||||
|
||||
// Checking for more errors
|
||||
private void checkerrors_Tick(object sender, EventArgs e)
|
||||
{
|
||||
// If errors have been added, update the list
|
||||
if(General.ErrorLogger.HasChanged)
|
||||
{
|
||||
FillList();
|
||||
}
|
||||
if(General.ErrorLogger.HasChanged) FillList();
|
||||
}
|
||||
|
||||
// This clears all errors
|
||||
|
|
|
@ -4022,17 +4022,19 @@ namespace CodeImp.DoomBuilder.Windows
|
|||
{
|
||||
// Go for all setors
|
||||
bool updated = false;
|
||||
long imgshorthash = General.Map.Data.GetShortLongFlatName(img.LongName); //mxd. Part of long name support shennanigans
|
||||
|
||||
foreach(Sector s in General.Map.Map.Sectors)
|
||||
{
|
||||
// Update floor buffer if needed
|
||||
if(s.LongFloorTexture == img.LongName)
|
||||
if(s.LongFloorTexture == img.LongName || s.LongFloorTexture == imgshorthash)
|
||||
{
|
||||
s.UpdateFloorSurface();
|
||||
updated = true;
|
||||
}
|
||||
|
||||
// Update ceiling buffer if needed
|
||||
if(s.LongCeilTexture == img.LongName)
|
||||
if(s.LongCeilTexture == img.LongName || s.LongCeilTexture == imgshorthash)
|
||||
{
|
||||
s.UpdateCeilingSurface();
|
||||
updated = true;
|
||||
|
|
|
@ -454,7 +454,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
|
|||
}
|
||||
|
||||
//mxd. Points and existing geometry form a closed shape?
|
||||
if(continuousdrawing && autoclosedrawing)
|
||||
if(autoclosedrawing)
|
||||
{
|
||||
// Determive center point
|
||||
float minx = float.MaxValue;
|
||||
|
|
Loading…
Reference in a new issue