diff --git a/luaui/configs/DeferredLightsGL4config.lua b/luaui/configs/DeferredLightsGL4config.lua index fce87e5aff..eea19b830d 100644 --- a/luaui/configs/DeferredLightsGL4config.lua +++ b/luaui/configs/DeferredLightsGL4config.lua @@ -7398,6 +7398,129 @@ local unitLights = { lifetime = 0, sustain = 0, animtype = 0}, }, }, + ['legavp'] = { + buildlight1 = { --top spinning light + lightType = 'cone', + pieceName = 'buildlightLPoint', + lightConfig = { posx = 0, posy = 0, posz = 0, radius = 18, + dirx = -1, diry = 0, dirz = 0, theta = 0.99000001, + r = 1.29999995, g = 0.89999998, b = 0.1, a = 2, + modelfactor = 0.1, specular = 0.2, scattering = 1.5, lensflare = 8, + lifetime = 0, sustain = 0, animtype = 0}, + }, + buildlight2 = { -- other top spinning light + lightType = 'cone', + pieceName = 'buildlightRPoint', + lightConfig = { posx = 0, posy = 0, posz = 0, radius = 18, + dirx = 1, diry = 0, dirz = 0, theta = 0.99000001, + r = 1.29999995, g = 0.89999998, b = 0.1, a = 2, + modelfactor = 0.1, specular = 0.2, scattering = 1.5, lensflare = 8, + lifetime = 0, sustain = 0, animtype = 0}, + }, + -- + cannisterlight1 = { + lightType = 'point', + pieceName = 'cannisterLight', + lightConfig = { posx = 0, posy = 0, posz = 0, radius = 15, + color2r = 1, color2g = 0.92, color2b = 0.66, colortime = 6, + r = 0.88, g = 0.83, b = 0.2, a = 0.6, + modelfactor = 0.4, specular = 0.5, scattering = 2.5, lensflare = 0, + lifetime = 0, sustain = 0, animtype = 0}, + }, + cannisterlight2 = { + lightType = 'point', + pieceName = 'cannisterLight2', + lightConfig = { posx = 0, posy = 0, posz = 0, radius = 15, + color2r = 1, color2g = 0.92, color2b = 0.66, colortime = 6, + r = 0.88, g = 0.83, b = 0.2, a = 0.6, + modelfactor = 0.4, specular = 0.5, scattering = 2.5, lensflare = 0, + lifetime = 0, sustain = 0, animtype = 0}, + }, + cannisterlight3 = { + lightType = 'point', + pieceName = 'cannisterLight3', + lightConfig = { posx = 0, posy = 0, posz =0, radius = 15, + color2r = 1, color2g = 0.92, color2b = 0.66, colortime = 6, + r = 0.88, g = 0.83, b = 0.2, a = 0.6, + modelfactor = 0.4, specular = 0.5, scattering = 2.5, lensflare = 0, + lifetime = 0, sustain = 0, animtype = 0}, + }, + -- + pipelight1 = { + lightType = 'point', + pieceName = 'pipeLight1', + lightConfig = { posx = 0, posy = 0, posz = 0, radius = 5, + color2r = 1, color2g = 0.92, color2b = 0.66, colortime = 6, + r = 0.88, g = 0.83, b = 0.2, a = 0.6, + modelfactor = 0.4, specular = 0.5, scattering = 2.5, lensflare = 0, + lifetime = 0, sustain = 0, animtype = 0}, + }, + pipelight2 = { + lightType = 'point', + pieceName = 'pipeLight2', + lightConfig = { posx = 0, posy = 0, posz = 0, radius = 5, + color2r = 1, color2g = 0.92, color2b = 0.66, colortime = 6, + r = 0.88, g = 0.83, b = 0.2, a = 0.6, + modelfactor = 0.4, specular = 0.5, scattering = 2.5, lensflare = 0, + lifetime = 0, sustain = 0, animtype = 0}, + }, + -- + nanolight1 = { + lightType = 'point', + pieceName = 'sprayL1A', + lightConfig = { posx = 0, posy = 0, posz = 0, radius = 15, + color2r = 0, color2g = 0, color2b = 0, colortime = 0, + r = -1, g = 1, b = 1, a = 0.3, + modelfactor = 0.5, specular = 0.5, scattering = 1, lensflare = 10, + lifetime = 0, sustain = 0, animtype = 0}, + }, + nanolight2 = { + lightType = 'point', + pieceName = 'sprayL2A', + lightConfig = { posx = 0, posy = 0, posz = 0, radius = 15, + color2r = 0, color2g = 0, color2b = 0, colortime = 0, + r = -1, g = 1, b = 1, a = 0.3, + modelfactor = 0.5, specular = 0.5, scattering = 1, lensflare = 10, + lifetime = 0, sustain = 0, animtype = 0}, + }, + nanolight3 = { + lightType = 'point', + pieceName = 'sprayL3A', + lightConfig = { posx = 0, posy = 0, posz = 0, radius = 15, + color2r = 0, color2g = 0, color2b = 0, colortime = 0, + r = -1, g = 1, b = 1, a = 0.3, + modelfactor = 0.5, specular = 0.5, scattering = 1, lensflare = 10, + lifetime = 0, sustain = 0, animtype = 0}, + }, + nanolight4 = { + lightType = 'point', + pieceName = 'sprayR1A', + lightConfig = { posx = 0, posy = 0, posz = 0, radius = 15, + color2r = 0, color2g = 0, color2b = 0, colortime = 0, + r = -1, g = 1, b = 1, a = 0.3, + modelfactor = 0.5, specular = 0.5, scattering = 1, lensflare = 10, + lifetime = 0, sustain = 0, animtype = 0}, + }, + nanolight5 = { + lightType = 'point', + pieceName = 'sprayR2A', + lightConfig = { posx = 0, posy = 0, posz = 0, radius = 15, + color2r = 0, color2g = 0, color2b = 0, colortime = 0, + r = -1, g = 1, b = 1, a = 0.3, + modelfactor = 0.5, specular = 0.5, scattering = 1, lensflare = 10, + lifetime = 0, sustain = 0, animtype = 0}, + }, + nanolight6 = { + lightType = 'point', + pieceName = 'sprayR3A', + lightConfig = { posx = 0, posy = 0, posz = 0, radius = 15, + color2r = 0, color2g = 0, color2b = 0, colortime = 0, + r = -1, g = 1, b = 1, a = 0.3, + modelfactor = 0.5, specular = 0.5, scattering = 1, lensflare = 10, + lifetime = 0, sustain = 0, animtype = 0}, + }, + + }, ['corvp'] = { nanolight1 = { lightType = 'point', diff --git a/objects3d/Units/legavp.s3o b/objects3d/Units/legavp.s3o new file mode 100644 index 0000000000..0c5c76f4fa Binary files /dev/null and b/objects3d/Units/legavp.s3o differ diff --git a/objects3d/Units/legavp_dead.s3o b/objects3d/Units/legavp_dead.s3o new file mode 100644 index 0000000000..10778de424 Binary files /dev/null and b/objects3d/Units/legavp_dead.s3o differ diff --git a/scripts/Units/legavp.bos b/scripts/Units/legavp.bos new file mode 100644 index 0000000000..05fbe93ba1 --- /dev/null +++ b/scripts/Units/legavp.bos @@ -0,0 +1,404 @@ +#include "../recoil_common_includes.h" +#include "../factories_common.h" + +piece base, + buildlightLBase, buildlightL, buildlightRBase, buildlightR, buildlightLPoint, buildlightRPoint, + cannisterLight, cannisterLight2, cannisterLight3, pipeLight1, pipeLight2, smokePoint, + doorA, platformA1, paltformA2, + doorB, platformB1, platformB2, + doorC, platformC1, platformC2, + doorD, + gateL1, nanoarmL1, nanoL1, + gateL2, nanoarmL2, nanoL2, + gateL3, nanoarmL3, nanoL3, + gateR1, nanoarmR1, nanoR1, + gateR2, nanoarmR2, nanoR2, + gateR3, nanoarmR3, nanoR3, + sprayL1A, sprayL2A, sprayL3A, sprayR1A, sprayR2A, sprayR3A, + sprayL1B, sprayL2B, sprayL3B, sprayR1B, sprayR2B, sprayR3B, + pad; + +static-var spray, issmoking; + +// Signal definitions +#define SIGNAL_BUILD 2 +#define SIGNAL_TURNON 4 + +SmokeItUp() +{ while (TRUE) { + emit-sfx 258 from smokePoint; + sleep 45; + emit-sfx 258 from smokePoint; + sleep 500; +} + +} + +Create() +{ + hide buildlightLPoint; + hide buildlightRPoint; + hide cannisterLight; + hide cannisterLight2; + hide cannisterLight3; + hide pipeLight1; + hide pipeLight2; + hide smokePoint; + + hide sprayL1A; + hide sprayL1B; + hide sprayL2A; + hide sprayL2B; + hide sprayL3A; + hide sprayL3B; + hide sprayR1A; + hide sprayR1B; + hide sprayR2A; + hide sprayR2B; + hide sprayR3A; + hide sprayR3B; + + issmoking = 0; + spray = 0; + + move buildLightL to y-axis [-2] now; + move buildLightR to y-axis [-2] now; + + move gateL1 to y-axis [5] now; + move gateL2 to y-axis [5] now; + move gateL3 to y-axis [5] now; + + move gateR1 to y-axis [5] now; + move gateR2 to y-axis [5] now; + move gateR3 to y-axis [5] now; + + move doorA to y-axis [-10] now; + move doorB to y-axis [-10] now; + move doorC to y-axis [-10] now; + move doorD to y-axis [-10] now; + + SLEEP_UNTIL_UNITFINISHED; + + move gateR1 to y-axis [0] speed [2.5]; + move gateL1 to y-axis [0] speed [2.5]; + move doorA to y-axis [0] speed [5]; + sleep 100; + move gateR2 to y-axis [0] speed [2.5]; + move gateL2 to y-axis [0] speed [2.5]; + move doorB to y-axis [0] speed [5]; + sleep 100; + move gateR3 to y-axis [0] speed [2.5]; + move gateL3 to y-axis [0] speed [2.5]; + move doorC to y-axis [0] speed [5]; + sleep 100; + move doorD to y-axis [0] speed [5]; + + + + +} + + +#define BASEPIECE base +#define MAXTILT 0 +#include "../unit_hitbyweaponid_and_smoke.h" + +QueryNanoPiece(pieceIndex) +{ + spray = (spray + 1) % 12; + pieceIndex = sprayL1A + spray; +} + +Activate() +{ + signal SIGNAL_TURNON; + set-signal-mask SIGNAL_TURNON; + + move gateL1 to y-axis [15] speed [75]; + move gateL2 to y-axis [15] speed [75]; + move gateL3 to y-axis [15] speed [75]; + + move gateR1 to y-axis [15] speed [75]; + move gateR2 to y-axis [15] speed [75]; + move gateR3 to y-axis [15] speed [75]; + + wait-for-move gateR3 along y-axis; + + turn gateR1 to z-axis <-70> speed <200>; + turn gateL1 to z-axis <70> speed <200>; + sleep 50; + turn gateR2 to z-axis <-70> speed <200>; + turn gateL2 to z-axis <70> speed <200>; + sleep 50; + turn gateR3 to z-axis <-70> speed <200>; + turn gateL3 to z-axis <70> speed <200>; + + sleep 50; + + move doorA to y-axis [-31] speed [130]; + sleep 50; + move doorB to y-axis [-31] speed [130]; + sleep 50; + move doorC to y-axis [-31] speed [130]; + sleep 50; + move doorD to y-axis [-31] speed [130]; + + wait-for-move doorD along y-axis; + + move platformA1 to z-axis [-6] speed [65]; + move paltformA2 to z-axis [-6] speed [65]; + sleep 50; + move platformB1 to z-axis [-6] speed [65]; + move platformB2 to z-axis [-6] speed [65]; + sleep 50; + move platformC1 to z-axis [-6] speed [65]; + move platformC2 to z-axis [-6] speed [65]; + + wait-for-turn gateL3 around z-axis; + + move buildLightL to y-axis [0] speed [1]; + move buildLightR to y-axis [0] speed [1]; + + turn nanoarmR1 to z-axis <60> speed <65>; + turn nanoarmL1 to z-axis <-60> speed <65>; + sleep 10; + turn nanoarmR2 to z-axis <60> speed <65>; + turn nanoarmL2 to z-axis <-60> speed <65>; + sleep 10; + turn nanoarmR3 to z-axis <60> speed <65>; + turn nanoarmL3 to z-axis <-60> speed <65>; + sleep 50; + + FACTORY_OPEN_BUILD; + spin buildLightL around y-axis speed <200> accelerate <2>; + spin buildLightR around y-axis speed <200> accelerate <2>; + + show buildlightLPoint; + show buildlightRPoint; + show cannisterLight; + show cannisterLight2; + show cannisterLight3; + show pipeLight1; + show pipeLight2; + show sprayL1A; + show sprayL2A; + show sprayL3A; + show sprayR1A; + show sprayR2A; + show sprayR3A; +} + +Deactivate() +{ + signal SIGNAL_TURNON; + set-signal-mask SIGNAL_TURNON; + hide buildlightLPoint; + hide buildlightRPoint; + hide cannisterLight; + hide cannisterLight2; + hide cannisterLight3; + hide pipeLight1; + hide pipeLight2; + hide sprayL1A; + hide sprayL2A; + hide sprayL3A; + hide sprayR1A; + hide sprayR2A; + hide sprayR3A; + stop-spin buildLightL around y-axis decelerate <2>; + stop-spin buildLightR around y-axis decelerate <2>; + sleep 5000; + + turn nanoarmR3 to z-axis <0> speed <45>; + sleep 25; + turn nanoarmL3 to z-axis <0> speed <45>; + sleep 25; + turn nanoarmR2 to z-axis <0> speed <45>; + sleep 25; + turn nanoarmL2 to z-axis <0> speed <45>; + sleep 25; + turn nanoarmR1 to z-axis <0> speed <45>; + sleep 25; + turn nanoarmL1 to z-axis <0> speed <45>; + sleep 25; + wait-for-turn nanoarmL1 around z-axis; + + move platformC1 to z-axis [0] speed [25]; + sleep 25; + move platformC2 to z-axis [0] speed [25]; + sleep 25; + move platformB1 to z-axis [0] speed [25]; + sleep 25; + move platformB2 to z-axis [0] speed [25]; + sleep 25; + move platformA1 to z-axis [0] speed [25]; + sleep 25; + move paltformA2 to z-axis [0] speed [25]; + sleep 25; + wait-for-move paltformA2 along z-axis; + + move doorD to y-axis [0] speed [40]; + sleep 50; + move doorC to y-axis [0] speed [40]; + sleep 50; + move doorB to y-axis [0] speed [40]; + sleep 50; + move doorA to y-axis [0] speed [40]; + //wait-for-move doorA along y-axis; + + turn gateR1 to z-axis <0> speed <90>; + turn gateL1 to z-axis <0> speed <90>; + sleep 25; + turn gateR2 to z-axis <0> speed <90>; + turn gateL2 to z-axis <0> speed <90>; + sleep 25; + turn gateR3 to z-axis <0> speed <90>; + turn gateL3 to z-axis <0> speed <90>; + wait-for-turn gateL3 around z-axis; + + move buildLightL to y-axis [-2] speed [2]; + move buildLightR to y-axis [-2] speed [2]; + + move gateL1 to y-axis [0] speed [15]; + move gateR1 to y-axis [0] speed [15]; + sleep 25; + move gateL2 to y-axis [0] speed [15]; + move gateR2 to y-axis [0] speed [15]; + sleep 25; + move gateL3 to y-axis [0] speed [15]; + move gateR3 to y-axis [0] speed [15]; + + FACTORY_CLOSE_BUILD; +} + +MoveCranes() +{ + while(TRUE) + { + spin buildLightL around y-axis speed <200> accelerate <2>; + spin buildLightR around y-axis speed <200> accelerate <2>; + turn nanoarmR1 to z-axis <15> speed <20>; + sleep 200; + turn nanoarmL1 to z-axis <-15> speed <20>; + sleep 200; + turn nanoarmR2 to z-axis <15> speed <20>; + sleep 200; + turn nanoarmL2 to z-axis <-15> speed <20>; + sleep 200; + turn nanoarmR3 to z-axis <15> speed <20>; + sleep 200; + turn nanoarmL3 to z-axis <-15> speed <20>; + wait-for-turn nanoarmR1 around z-axis; + turn nanoarmR1 to z-axis <60> speed <20>; + sleep 200; + turn nanoarmL1 to z-axis <-60> speed <20>; + sleep 200; + turn nanoarmR2 to z-axis <60> speed <20>; + sleep 200; + turn nanoarmL2 to z-axis <-60> speed <20>; + sleep 200; + turn nanoarmR3 to z-axis <60> speed <20>; + sleep 200; + turn nanoarmL3 to z-axis <-60> speed <20>; + wait-for-turn nanoarmR1 around z-axis; + } +} + + +StartBuilding() +{ + signal SIGNAL_BUILD; + set-signal-mask SIGNAL_BUILD; + wait-for-turn nanoarmR1 around z-axis; + sleep 250; + start-script MoveCranes(); + start-script SmokeItUp(); +} + +StopBuilding() +{ + + signal SIGNAL_BUILD; + + /* + set BUGGER_OFF to 1; // tell units to get out of here + set INBUILDSTANCE to 0; // we turn it off, to wait for the unit to clear the build pad (large aircraft) + sleep 500; // then we wait for 0.5 sec + set INBUILDSTANCE to 1; // we turn it on again, as the next startbuilding and construction will begin when this is 1 again. + set BUGGER_OFF to 0; // ok now we dont mind if they are here + */ +} + +QueryBuildInfo(pieceIndex) +{ + pieceIndex = pad; +} + + + +Killed(severity, corpsetype) +{ + if( severity <= 25 ) + { + corpsetype = 1 ; + // explode base type BITMAPONLY | NOHEATCLOUD; + // explode doorl type FIRE | SMOKE | FALL | BITMAPONLY | NOHEATCLOUD; + // explode nano1 type BITMAPONLY | NOHEATCLOUD; + // explode nano2 type BITMAPONLY | NOHEATCLOUD; + // explode nano3 type BITMAPONLY | NOHEATCLOUD; + // explode nano4 type BITMAPONLY | NOHEATCLOUD; + // explode doorr type BITMAPONLY | NOHEATCLOUD; + // explode nano5 type BITMAPONLY | NOHEATCLOUD; + // explode nano6 type BITMAPONLY | NOHEATCLOUD; + // explode nano7 type BITMAPONLY | NOHEATCLOUD; + // explode nano8 type BITMAPONLY | NOHEATCLOUD; + // explode pad type BITMAPONLY | NOHEATCLOUD; + return(corpsetype); + } + if( severity <= 50 ) + { + corpsetype = 2 ; + // explode base type BITMAPONLY | NOHEATCLOUD; + // explode nano1 type FALL | NOHEATCLOUD; + // explode nano2 type FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode nano3 type FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode nano4 type FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode nano5 type FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode nano6 type FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode nano7 type FALL | NOHEATCLOUD; + // explode nano8 type FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode pad type FIRE | SMOKE | FALL | NOHEATCLOUD; + return(corpsetype); + } + if( severity <= 99 ) + { + corpsetype = 3 ; + // explode base type BITMAPONLY | NOHEATCLOUD; + // explode doorl type BITMAPONLY | NOHEATCLOUD; + // explode nano1 type FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode nano2 type FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode nano3 type FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode nano4 type EXPLODE_ON_HIT | FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode doorr type BITMAPONLY | NOHEATCLOUD; + // explode nano5 type SMOKE | FALL | NOHEATCLOUD; + // explode nano6 type EXPLODE_ON_HIT | FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode nano7 type EXPLODE_ON_HIT | FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode nano8 type EXPLODE_ON_HIT | FIRE | SMOKE | FALL | NOHEATCLOUD; + explode pad type SMOKE | FALL | NOHEATCLOUD; + return(corpsetype); + } + corpsetype = 3 ; + // explode base type BITMAPONLY | NOHEATCLOUD; + // explode doorl type EXPLODE_ON_HIT | FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode nano1 type EXPLODE_ON_HIT | FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode nano2 type EXPLODE_ON_HIT | FIRE | FALL | NOHEATCLOUD; + // explode nano3 type EXPLODE_ON_HIT | FIRE | FALL | NOHEATCLOUD; + // explode nano4 type EXPLODE_ON_HIT | FIRE | FALL | NOHEATCLOUD; + // explode doorr type EXPLODE_ON_HIT | FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode nano5 type EXPLODE_ON_HIT | FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode nano6 type EXPLODE_ON_HIT | FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode nano7 type EXPLODE_ON_HIT | FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode nano8 type EXPLODE_ON_HIT | FIRE | SMOKE | FALL | NOHEATCLOUD; + // explode pad type EXPLODE_ON_HIT | FIRE | SMOKE | FALL | NOHEATCLOUD; + return corpsetype; +} diff --git a/scripts/Units/legavp.cob b/scripts/Units/legavp.cob new file mode 100644 index 0000000000..811c8722a5 Binary files /dev/null and b/scripts/Units/legavp.cob differ diff --git a/unitpics/legavp.dds b/unitpics/legavp.dds index 96bf6b6ab9..51098b5d9b 100644 Binary files a/unitpics/legavp.dds and b/unitpics/legavp.dds differ diff --git a/units/Legion/Labs/legavp.lua b/units/Legion/Labs/legavp.lua index 9a0e2e957b..f7db6472b3 100644 --- a/units/Legion/Labs/legavp.lua +++ b/units/Legion/Labs/legavp.lua @@ -9,7 +9,7 @@ return { buildpic = "LEGAVP.DDS", buildtime = 18500, canmove = true, - collisionvolumeoffsets = "0 8 0", + collisionvolumeoffsets = "0 0 5", collisionvolumescales = "144 70 144", collisionvolumetype = "Box", corpse = "DEAD", @@ -24,15 +24,34 @@ return { maxslope = 15, maxwaterdepth = 0, metalstorage = 200, - objectname = "Units/CORAVP.s3o", + objectname = "Units/LEGAVP.s3o", radardistance = 50, - script = "Units/CORAVP.cob", + script = "Units/LEGAVP.cob", seismicsignature = 0, selfdestructas = "largeBuildingExplosionGenericSelfd", sightdistance = 286, terraformspeed = 1000, workertime = 300, - yardmap = "ooooooooo ooooooooo ooooooooo oocccccoo oocccccoo oocccccoo oocccccoo oocccccoo oocccccoo", + yardmap = [[h + oo oo oo oo oo oo oo oo oo + oo oo oo oo oo oo oo oo oo + oo oo oo oo oo oo oo oo oo + oo oo oo oo oo oo oo oo oo + oo oo oo oo oo oo oo oo oo + oo oo oo oo oo oo oo oo oo + oo oo oo oo oo oo oo oo oo + oo oo oo oo oo oo oo oo oo + oo oo oo oo oo oo oo oo oo + oo oo oc cc cc cc co oo oo + oo oo oc cc cc cc co oo oo + oo oo oc cc cc cc co oo oo + oo oo oc cc cc cc co oo oo + oo oo oc cc cc cc co oo oo + oo oo oc cc cc cc co oo oo + oo oo oc cc cc cc co oo oo + oo oo oc cc cc cc co oo oo + oo oo oc cc cc cc co oo oo + ]], buildoptions = { "legacv", "legmrv", @@ -50,23 +69,23 @@ return { "corvrad", }, customparams = { - usebuildinggrounddecal = true, + usebuildinggrounddecal = false, buildinggrounddecaltype = "decals/coravp_aoplane.dds", buildinggrounddecalsizey = 12, buildinggrounddecalsizex = 12, buildinggrounddecaldecayspeed = 0.01, unitgroup = 'buildert2', - model_author = "Mr Bob", - normaltex = "unittextures/cor_normal.dds", - subfolder = "CorBuildings/LandFactories", + model_author = "ZephyrSkies", + normaltex = "unittextures/leg_normal.dds", + subfolder = "Legion/Labs", techlevel = 2, }, featuredefs = { dead = { blocking = true, category = "corpses", - collisionvolumeoffsets = "0 -6 0", - collisionvolumescales = "124 30 104", + collisionvolumeoffsets = "0 0 5", + collisionvolumescales = "144 70 144", collisionvolumetype = "Box", damage = 2777, featuredead = "HEAP", @@ -74,7 +93,7 @@ return { footprintz = 6, height = 20, metal = 1721, - object = "Units/coravp_dead.s3o", + object = "Units/legavp_dead.s3o", reclaimable = true, }, heap = {