FILES ----- weather.config worldgen.config [NEW] animations\windstorm\windstorm1.animation [NEW] animations\windstorm\windstorm1.frames [NEW] animations\windstorm\windstorm1.png [NEW] animations\windstorm\windstorm2.animation [NEW] animations\windstorm\windstorm2.frames [NEW] animations\windstorm\windstorm2.png dungeons\avian\avianairship\avianship-objects.png dungeons\avian\avianairship\key with grid.png dungeons\avian\avianairship\key.png dungeons\avian\aviantemple\15a-objects.png dungeons\avian\aviantemple\15b-objects.png dungeons\avian\aviantemple\15d-objects.png dungeons\avian\aviantemple\26-objects.png dungeons\avian\aviantemple\27-objects.png dungeons\avian\aviantemple\9-objects.png dungeons\avian\aviantemple\key with grid.png dungeons\avian\aviantemple\key.png dungeons\avian\aviantemple\pyramidentry2-objects.png dungeons\avian\aviantomb\key with grid.png dungeons\avian\aviantomb\key.png dungeons\avian\aviantower\key with grid.png dungeons\avian\aviantower\key.png dungeons\avian\avianvillage\key with grid.png dungeons\avian\avianvillage\key.png interface\escmenu\current.png interface\escmenu\currentup.png interface\escmenu\home.png interface\escmenu\homeup.png items\armors\other\wildfungus\wildfungus.head items\armors\other\wildfungus\wildfungus.legs [NEW] items\materials\gateblock.matitem [NEW] items\materials\gateblock.png items\tools\swingingvine.grapplinghook npcs\workstate.lua objects\avian\ashjar1\ashjar1.object objects\avian\ashjar2\ashjar2.object objects\avian\ashjar3\ashjar3.object objects\avian\bigjar1\bigjar1.object objects\avian\bigjar1\bigjar1.png objects\avian\goldenjar1\goldenjar1.object objects\avian\midjar1\midjar1.object objects\avian\screen4\screen4lit.frames objects\floran\huntingpressureplate\huntingpressureplate.object objects\glitch\medievalpressureplate\medievalpressureplate.object objects\glitch\medievalswitchhidden\medievalswitchhidden.object objects\human\bunkermotiondetector.todo\bunkermotiondetector.object objects\wired\bigredbutton\bigredbutton.object objects\wired\proximitysensor\proximitysensor.lua objects\wired\proximitysensor\proximitysensor.object objects\wired\scanner\scanner.object objects\wired\smallfloorbutton\smallfloorbutton.object projectiles\explosions\meteorexplosion\meteorexplosion.config [NEW] tiles\materials\gateblock.material [NEW] tiles\materials\gateblock.png weather\windstorm\windstorm.weather DIFFS ----- weather.config 30a31,34 > "alwaysWindy" : [ > [1.0, "windstorm" ] > ], > worldgen.config 184c184 < "surfaceDungeonCount" : 1 --- > "surfaceDungeonCount" : 0 276,277c276,277 < < "outposthills" : { --- > > "outposthills" : { 425,426c425 < < "outpost" : { --- > "outpost" : { 429,431c428,429 < "dungeonSelection" : [ < [0, [ "outpost" ]] < ] --- > "dungeonSelection" : [ ], > "mainDungeon" : "outpost" items\armors\other\wildfungus\wildfungus.head 28c28 < "amount" : 25 --- > "amount" : 30 items\armors\other\wildfungus\wildfungus.legs 27c27 < "amount" : 0.20 --- > "amount" : 0.25 items\tools\swingingvine.grapplinghook 20,21c20,21 < "energyConsumeRateAnchored" : 2.0, < "energyConsumeRateWinding" : 1.0, --- > "energyConsumeRateAnchored" : 0.8, > "energyConsumeRateWinding" : 0.0, npcs\workstate.lua 123c123,127 < local objectIds = world.entityQuery(position, entity.configParameter("work.searchDistance"), { includedTypes = {"object"}, name = "anvil" }) --- > local objectIds = world.entityQuery(position, entity.configParameter("work.searchDistance"), { > includedTypes = {"object"}, > callScript = "entity.configParameter", > callScriptArgs = {"objectName"}, > callScriptResult = "anvil" }) objects\avian\ashjar1\ashjar1.object 23c23 < "imagePosition" : [0, 0], --- > "imagePosition" : [3, 0], objects\avian\ashjar2\ashjar2.object 23c23 < "imagePosition" : [0, 0], --- > "imagePosition" : [3, 0], objects\avian\ashjar3\ashjar3.object 23c23 < "imagePosition" : [0, 0], --- > "imagePosition" : [2, 0], objects\avian\bigjar1\bigjar1.object 23c23 < "imagePosition" : [-1, 0], --- > "imagePosition" : [-8, 0], objects\avian\goldenjar1\goldenjar1.object 4c4 < "category" : "pot", --- > "category" : "decorative", 30,36d29 < ], < "smashSounds" : [ "/sfx/objects/pot_break_small1.wav", "/sfx/objects/pot_break_small2.wav", "/sfx/objects/pot_break_small3.wav" ], < "smashDropOptions" : [ < [ [ "goldcoin", 1, { } ], [ "goldcoin", 1, { } ], [ "goldcoin", 1, { } ], [ "goldcoin", 1, { } ], [ "goldcoin", 1, { } ], [ "goldcoin", 1, { } ] ] < ], < "breakDropOptions" : [ < [ [ "goldcoin", 1, { } ], [ "goldcoin", 1, { } ], [ "goldcoin", 1, { } ], [ "goldcoin", 1, { } ], [ "goldcoin", 1, { } ], [ "goldcoin", 1, { } ] ] objects\avian\midjar1\midjar1.object 23c23 < "imagePosition" : [0, 0], --- > "imagePosition" : [2, 0], objects\avian\screen4\screen4lit.frames 6,14c6,14 < [ "default.1", "default.2", "default.3", "default.4", "default.5", "default.6", "default.7", "default.8", "default.9", "default.10", "default.11", "default.12", "default.13", "default.14", "default.15", "default.16", "default.17", "default.18", "default.19", "default.20", "default.21", "default.22", "default.23", "default.24", "default.25", "default.26", "default.27", "default.28", "default.29", "default.30", "default.31", "default.32", "default.off" ], < [ "red.1", "red.2", "red.3", "red.4", "red.5", "red.6", "red.7", "red.8", "red.9", "red.10", "red.11", "red.12", "red.13", "red.14", "red.15", "red.16", "red.17", "red.18", "red.19", "red.20", "red.21", "red.22", "red.23", "red.24", "red.25", "red.26", "red.27", "red.28", "red.29", "red.30", "red.31", "red.32", "red.off" ], < [ "blue.1", "blue.2", "blue.3", "blue.4", "blue.5", "blue.6", "blue.7", "blue.8", "blue.9", "blue.10", "blue.11", "blue.12", "blue.13", "blue.14", "blue.15", "blue.16", "blue.17", "blue.18", "blue.19", "blue.20", "blue.21", "blue.22", "blue.23", "blue.24", "blue.25", "blue.26", "blue.27", "blue.28", "blue.29", "blue.30", "blue.31", "blue.32", "blue.off" ], < [ "green.1", "green.2", "green.3", "green.4", "green.5", "green.6", "green.7", "green.8", "green.9", "green.10", "green.11", "green.12", "green.13", "green.14", "green.15", "green.16", "green.17", "green.18", "green.19", "green.20", "green.21", "green.22", "green.23", "green.24", "green.25", "green.26", "green.27", "green.28", "green.29", "green.30", "green.31", "green.32", "green.off" ], < [ "yellow.1", "yellow.2", "yellow.3", "yellow.4", "yellow.5", "yellow.6", "yellow.7", "yellow.8", "yellow.9", "yellow.10", "yellow.11", "yellow.12", "yellow.13", "yellow.14", "yellow.15", "yellow.16", "yellow.17", "yellow.18", "yellow.19", "yellow.20", "yellow.21", "yellow.22", "yellow.23", "yellow.24", "yellow.25", "yellow.26", "yellow.27", "yellow.28", "yellow.29", "yellow.30", "yellow.31", "yellow.32", "yellow.off" ], < [ "orange.1", "orange.2", "orange.3", "orange.4", "orange.5", "orange.6", "orange.7", "orange.8", "orange.9", "orange.10", "orange.11", "orange.12", "orange.13", "orange.14", "orange.15", "orange.16", "orange.17", "orange.18", "orange.19", "orange.20", "orange.21", "orange.22", "orange.23", "orange.24", "orange.25", "orange.26", "orange.27", "orange.28", "orange.29", "orange.30", "orange.31", "orange.32", "orange.off" ], < [ "pink.1", "pink.2", "pink.3", "pink.4", "pink.5", "pink.6", "pink.7", "pink.8", "pink.9", "pink.10", "pink.11", "pink.12", "pink.13", "pink.14", "pink.15", "pink.16", "pink.17", "pink.18", "pink.19", "pink.20", "pink.21", "pink.22", "pink.23", "pink.24", "pink.25", "pink.26", "pink.27", "pink.28", "pink.29", "pink.30", "pink.31", "pink.32", "pink.off" ], < [ "black.1", "black.2", "black.3", "black.4", "black.5", "black.6", "black.7", "black.8", "black.9", "black.10", "black.11", "black.12", "black.13", "black.14", "black.15", "black.16", "black.17", "black.18", "black.19", "black.20", "black.21", "black.22", "black.23", "black.24", "black.25", "black.26", "black.27", "black.28", "black.29", "black.30", "black.31", "black.32", "black.off" ], < [ "white.1", "white.2", "white.3", "white.4", "white.5", "white.6", "white.7", "white.8", "white.9", "white.10", "white.11", "white.12", "white.13", "white.14", "white.15", "white.16", "white.17", "white.18", "white.19", "white.20", "white.21", "white.22", "white.23", "white.24", "white.25", "white.26", "white.27", "white.28", "white.29", "white.30", "white.31", "white.32", "white.off" ] --- > [ "default.1", "default.2", "default.3", "default.4", "default.5", "default.6", "default.7", "default.8", "default.9", "default.10", "default.11", "default.12", "default.13", "default.14", "default.15", "default.16", "default.off" ], > [ "red.1", "red.2", "red.3", "red.4", "red.5", "red.6", "red.7", "red.8", "red.9", "red.10", "red.11", "red.12", "red.13", "red.14", "red.15", "red.16", "red.off" ], > [ "blue.1", "blue.2", "blue.3", "blue.4", "blue.5", "blue.6", "blue.7", "blue.8", "blue.9", "blue.10", "blue.11", "blue.12", "blue.13", "blue.14", "blue.15", "blue.16", "blue.off" ], > [ "green.1", "green.2", "green.3", "green.4", "green.5", "green.6", "green.7", "green.8", "green.9", "green.10", "green.11", "green.12", "green.13", "green.14", "green.15", "green.16", "green.off" ], > [ "yellow.1", "yellow.2", "yellow.3", "yellow.4", "yellow.5", "yellow.6", "yellow.7", "yellow.8", "yellow.9", "yellow.10", "yellow.11", "yellow.12", "yellow.13", "yellow.14", "yellow.15", "yellow.16", "yellow.off" ], > [ "orange.1", "orange.2", "orange.3", "orange.4", "orange.5", "orange.6", "orange.7", "orange.8", "orange.9", "orange.10", "orange.11", "orange.12", "orange.13", "orange.14", "orange.15", "orange.16", "orange.off" ], > [ "pink.1", "pink.2", "pink.3", "pink.4", "pink.5", "pink.6", "pink.7", "pink.8", "pink.9", "pink.10", "pink.11", "pink.12", "pink.13", "pink.14", "pink.15", "pink.16", "pink.off" ], > [ "black.1", "black.2", "black.3", "black.4", "black.5", "black.6", "black.7", "black.8", "black.9", "black.10", "black.11", "black.12", "black.13", "black.14", "black.15", "black.16", "black.off" ], > [ "white.1", "white.2", "white.3", "white.4", "white.5", "white.6", "white.7", "white.8", "white.9", "white.10", "white.11", "white.12", "white.13", "white.14", "white.15", "white.16", "white.off" ] objects\floran\huntingpressureplate\huntingpressureplate.object 28c28 < "scripts" : [ "/objects/wired/proximitysensor/proximitysensorcreature.lua" ], --- > "scripts" : [ "/objects/wired/proximitysensor/proximitysensor.lua" ], 42,43c42,43 < "detectRadius" : 2, < "detectOffset" : [0, 1] --- > "detectEntityTypes" : [ "creature" ], > "detectArea" : [ [-1, 0.5], [1, 0.5] ] objects\glitch\medievalpressureplate\medievalpressureplate.object 28c28 < "scripts" : [ "/objects/wired/proximitysensor/proximitysensorcreature.lua" ], --- > "scripts" : [ "/objects/wired/proximitysensor/proximitysensor.lua" ], 42,43c42,43 < "detectRadius" : 2, < "detectOffset" : [0, 1] --- > "detectEntityTypes" : [ "creature" ], > "detectArea" : [ [-1.5, 0.875], [1.5, 0.875] ] objects\glitch\medievalswitchhidden\medievalswitchhidden.object 29c29 < "scripts" : [ "/objects/wired/proximitysensor/proximitysensorcreature.lua" ], --- > "scripts" : [ "/objects/wired/proximitysensor/proximitysensor.lua" ], 43,44c43,44 < "detectRadius" : 1, < "detectOffset" : [0.5,2] --- > "detectEntityTypes" : [ "creature" ], > "detectArea" : [ [0, 0], [1, 0.5] ] objects\human\bunkermotiondetector.todo\bunkermotiondetector.object 31c31 < "scripts" : [ "/objects/wired/proximitysensor/proximitysensorcreature.lua" ], --- > "scripts" : [ "/objects/wired/proximitysensor/proximitysensor.lua" ], 44,45c44,46 < "detectRadius" : 3, < "detectDuration" : 0.5 --- > "detectDuration" : 0.5, > "detectEntityTypes" : [ "creature" ], > "detectArea" : [ [0, 0], 5 ] objects\wired\bigredbutton\bigredbutton.object 28c28 < "scripts" : [ "/objects/wired/proximitysensor/proximitysensorcreature.lua" ], --- > "scripts" : [ "/objects/wired/proximitysensor/proximitysensor.lua" ], 42,43c42,43 < "detectRadius" : 2, < "detectOffset" : [0, 1] --- > "detectEntityTypes" : [ "creature" ], > "detectArea" : [ [-1.5, 0.875], [1.5, 0.875] ] objects\wired\proximitysensor\proximitysensor.lua 4c4,20 < self.detectOffset = entity.toAbsolutePosition(entity.configParameter("detectOffset", {0, 0})) --- > self.detectEntityTypes = entity.configParameter("detectEntityTypes") > self.detectBoundMode = entity.configParameter("detectBoundMode", "CollisionArea") > local detectArea = entity.configParameter("detectArea") > local pos = entity.position() > if type(detectArea[2]) == "number" then > --center and radius > self.detectArea = { > {pos[1] + detectArea[1][1], pos[2] + detectArea[1][2]}, > detectArea[2] > } > elseif type(detectArea[2]) == "table" and #detectArea[2] == 2 then > --rect corner1 and corner2 > self.detectArea = { > {pos[1] + detectArea[1][1], pos[2] + detectArea[1][2]}, > {pos[1] + detectArea[2][1], pos[2] + detectArea[2][2]} > } > end 26c42,46 < local entityIds = world.entityQuery(self.detectOffset, entity.configParameter("detectRadius"), { notAnObject = true }) --- > local entityIds = world.entityQuery(self.detectArea[1], self.detectArea[2], { > withoutEntityId = entity.id(), > includedTypes = self.detectEntityTypes, > boundMode = self.detectBoundMode > }) 34,35c54 < end < --- > end \ No newline at end of file objects\wired\proximitysensor\proximitysensor.object 29c29 < "scripts" : [ "/objects/wired/proximitysensor/proximitysensorcreature.lua" ], --- > "scripts" : [ "/objects/wired/proximitysensor/proximitysensor.lua" ], 43,44c43,44 < "detectRadius" : 2, < "detectOffset" : [0, 1] --- > "detectEntityTypes" : [ "creature" ], > "detectArea" : [ [-1, 0.5], [1, 0.5] ] objects\wired\scanner\scanner.object 29c29 < "scripts" : [ "/objects/wired/proximitysensor/proximitysensorcreature.lua" ], --- > "scripts" : [ "/objects/wired/proximitysensor/proximitysensor.lua" ], 43,44c43,44 < "detectRadius" : 3, < "detectOffset" : [0.5, 0.5] --- > "detectEntityTypes" : [ "creature" ], > "detectArea" : [ [0.5, 0.5], 3 ] objects\wired\smallfloorbutton\smallfloorbutton.object 27c27 < "scripts" : [ "/objects/wired/proximitysensor/proximitysensorcreature.lua" ], --- > "scripts" : [ "/objects/wired/proximitysensor/proximitysensor.lua" ], 41,42c41,42 < "detectRadius" : 1, < "detectOffset" : [0, 3] --- > "detectEntityTypes" : [ "creature" ], > "detectArea" : [ [-0.75, 0], [0.75, 0.875] ] projectiles\explosions\meteorexplosion\meteorexplosion.config 81c81 < "tileDamageType" : "crushing", --- > "tileDamageType" : "explosive", weather\windstorm\windstorm.weather 7,19c7 < "density" : 0.03, < "particle" : { < "type" : "textured", < "image" : "/particles/windstorm/1.png", < "velocity" : [0, -12], < "angularVelocity" : 180, < "timeToLive" : 100, < "collidesForeground" : true, < "collidesLiquid" : true < } < }, < { < "density" : 0.025, --- > "density" : 0.005, 21,26c9,16 < "type" : "textured", < "image" : "/particles/windstorm/2.png", < "velocity" : [0, -11], < "angularVelocity" : 180, < "timeToLive" : 100, < "collidesForeground" : true, --- > "type" : "animated", > "animation" : "/animations/windstorm/windstorm1.animation", > "velocity" : [0, 0], > "fade" : 0.5, > "looping" : true, > "destructionTime" : 20, > "timeToLive" : 10, > "collidesForeground" : false, 31,54d20 < "density" : 0.15, < "particle" : { < "type" : "textured", < "image" : "/particles/windstorm/3.png", < "velocity" : [0, -14], < "angularVelocity" : 180, < "timeToLive" : 100, < "collidesForeground" : true, < "collidesLiquid" : true < } < }, < { < "density" : 0.01, < "particle" : { < "type" : "textured", < "image" : "/particles/windstorm/4.png", < "velocity" : [0, -14], < "angularVelocity" : 180, < "timeToLive" : 100, < "collidesForeground" : true, < "collidesLiquid" : true < } < }, < { 57,62c23,30 < "type" : "textured", < "image" : "/particles/windstorm/5.png", < "velocity" : [0, -14], < "angularVelocity" : 180, < "timeToLive" : 100, < "collidesForeground" : true, --- > "type" : "animated", > "animation" : "/animations/windstorm/windstorm2.animation", > "velocity" : [0, 0], > "fade" : 0.5, > "looping" : true, > "destructionTime" : 20, > "timeToLive" : 10, > "collidesForeground" : false, 64c32 < } --- > } 72,75c40,42 < "velocity" : [0, -14], < "angularVelocity" : 180, < "timeToLive" : 100, < "collidesForeground" : true, --- > "velocity" : [0, 0], > "timeToLive" : 10, > "collidesForeground" : false, 78,165d44 < }, < { < "density" : 0.03, < "particle" : { < "type" : "textured", < "image" : "/particles/windstorm/6.png", < "velocity" : [0, -12], < "angularVelocity" : 180, < "timeToLive" : 100, < "collidesForeground" : true, < "collidesLiquid" : true < } < }, < { < "density" : 0.03, < "particle" : { < "type" : "textured", < "image" : "/particles/windstorm/7.png", < "velocity" : [0, -12], < "angularVelocity" : 180, < "timeToLive" : 100, < "collidesForeground" : true, < "collidesLiquid" : true < } < }, < { < "density" : 0.02, < "autoRotate" : true, < < "particle" : { < "type" : "textured", < "image" : "/particles/spacejunk/5.png", < "velocity" : [0, -12.5], < "approach" : [15, 15], < "angularVelocity" : 30, < "timeToLive" : 100, < "destructionAction" : "Image", < "destructionTime" : 0.1, < "destructionImage" : "/particles/spacejunk/5.png", < "collidesForeground" : true, < "collidesLiquid" : true < } < } < ], < "projectiles" : [ < { < "projectile" : "windstorm1", < "parameters" : { < "power" : 1 < }, < "velocity" : [0, -15], < "ratePerX" : 0.03, < "spawnAboveRegion" : 30, < "spawnHorizontalPad" : 30, < "windAffectAmount" : 1.0 < }, < { < "projectile" : "windstorm2", < "parameters" : { < "power" : 1 < }, < "velocity" : [0, -15], < "ratePerX" : 0.025, < "spawnAboveRegion" : 30, < "spawnHorizontalPad" : 30, < "windAffectAmount" : 1.0 < }, < { < "projectile" : "windstorm3", < "parameters" : { < "power" : 1 < }, < "velocity" : [0, -15], < "ratePerX" : 0.015, < "spawnAboveRegion" : 30, < "spawnHorizontalPad" : 30, < "windAffectAmount" : 1.0 < }, < { < "projectile" : "windstorm4", < "parameters" : { < "power" : 1 < }, < "velocity" : [0, -15], < "ratePerX" : 0.0050, < "spawnAboveRegion" : 30, < "spawnHorizontalPad" : 30, < "windAffectAmount" : 1.0 170c49 < "maximumWind" : 42.0, --- > "maximumWind" : 35.0,