Merge branch 'R74nCom:main' into main

This commit is contained in:
HACKERPRO908 2024-02-21 10:23:13 +00:00 committed by GitHub
commit 4f2085ac97
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
7 changed files with 678 additions and 6 deletions

View File

@ -15851,7 +15851,7 @@ Landmine, Grenade, Smoke Grenade">?</span> <input type="button" value="OFF" clas
<!-- <p>If you'd like to support us, consider donating on <a href="https://www.paypal.com/donate/?hosted_button_id=GCX4VHQ7SZWTN" target="_blank">PayPal</a> or <a href="https://cash.app/$emojiartist" target="_blank" title="$emojiartist">CashApp</a>, or subscribing on Discord.</p> -->
<p>Business inquiries? Education stories? Help needed? Email us at <a href="mailto:contact@r74n.com">contact@R74n.com</a>!</p>
<p>More links: <a href="https://sandboxels.R74n.com/help" rel="help">Help</a><a href="https://sandboxels.R74n.com/tips">Tips</a><a href="https://sandboxels.R74n.com/mod-list">Mods</a><a href="https://sandboxels.R74n.com/mobile-use">Mobile</a><a href="https://sandboxels.R74n.com/offline-use">Offline</a><a href="https://R74n.com/privacy">Privacy</a></p>
<p>Thanks to: Serioustar, WeiChei, Midi_png, ggod, personman, Trent, u2ce</p>
<p>Thanks to: Serioustar, WeiChei, Midi_png, ggod, personman, fnl4y, PitsPower, Trent, u2ce</p>
<p style="display:none" id="langCredit">Translation by R74n</p>
<p>Sandboxels is developed by R74n. Check out <a href="https://R74n.com" rel="author" target="_blank">our other projects</a>!</p>
<script>

View File

@ -272,6 +272,8 @@
<tr><td>heatglow.js</td><td>Red glowing effect for hot metals</td><td>nousernamefound</td></tr>
<tr><td>invisible_dye.js</td><td>Adds elements like Dye and Spray Paint that take the color of the background</td><td>Alice</td></tr>
<tr><td>invisible_wall.js</td><td>Adds an element like Wall that takes the color of the background</td><td>Alice</td></tr>
<tr><td>moreViews.js</td><td>Many new rendering modes</td><td>ggod</td></tr>
<tr><td>onecolor.js</td><td>Makes all placed pixels single-colored</td><td>nousernamefound</td></tr>
<tr><td>paint_event.js</td><td>Adds a random event that randomly paints a circle</td><td>Alice</td></tr>
<tr><td>rainbow_tests.js</td><td>Adds variants of the rainbow element with different maths</td><td>Alice</td></tr>
<tr><td>Shroomboxels.js</td><td>A variant of acid_and_shapes.js that uses a different trigonometric function</td><td>Alice</td></tr>

416
mods/combustion.js Normal file
View File

@ -0,0 +1,416 @@
elements.primer_up = {
behavior: behaviors.SUPPORT,
reactions: {
"fire": { "charge1": 1 }
},
properties: {
range: 100,
pushTime: 0,
pushLength: 5,
pushStrength: 100,
},
tick: function (pixel) {
pixel.range ??= 10;
pixel.pushTime ??= 0;
pixel.pushLength ??= 100;
pixel.pushStrength ??= 100;
if (isNaN(pixel.pushTime) || pixel.pushTime < 0) { pixel.pushTime = 0 };
if (pixel.charge) {
pixel.pushTime = pixel.pushLength;
};
if (pixel.pushTime > 0) {
for (h = 0; h < pixel.pushStrength; h++) {
for (i = (pixel.range - 1); i >= 0; i--) {
if (!isEmpty(pixel.x, pixel.y - 1 - i, true)) {
tryMove(pixelMap[pixel.x][pixel.y - 1 - i], pixel.x, pixel.y - 2 - i);
};
};
};
pixel.pushTime--;
};
doDefaults(pixel);
},
color: "#c0c0c0",
colorOn: "#ffffff",
category: "machines",
tempHigh: 1500,
stateHigh: "molten_glass",
conduct: 1
};
elements.primer_down = {
behavior: behaviors.SUPPORT,
reactions: {
"fire": { "charge1": 1 }
},
properties: {
range: 100,
pushTime: 0,
pushLength: 5,
pushStrength: 100,
},
tick: function (pixel) {
pixel.range ??= 10;
pixel.pushTime ??= 0;
pixel.pushLength ??= 100;
pixel.pushStrength ??= 100;
if (isNaN(pixel.pushTime) || pixel.pushTime < 0) { pixel.pushTime = 0 };
if (pixel.charge) {
pixel.pushTime = pixel.pushLength;
};
if (pixel.pushTime > 0) {
for (h = 0; h < pixel.pushStrength; h++) {
for (i = (pixel.range - 1); i >= 0; i--) {
if (!isEmpty(pixel.x, pixel.y + 1 + i, true)) {
tryMove(pixelMap[pixel.x][pixel.y + 1 + i], pixel.x, pixel.y + 2 + i);
};
};
};
pixel.pushTime--;
};
doDefaults(pixel);
},
color: "#c0c0c0",
colorOn: "#ffffff",
category: "machines",
tempHigh: 1500,
stateHigh: "molten_glass",
conduct: 1
};
elements.primer_right = {
behavior: behaviors.SUPPORT,
reactions: {
"fire": { "charge1": 1 }
},
properties: {
range: 100,
pushTime: 0,
pushLength: 5,
pushStrength: 100,
},
tick: function (pixel) {
pixel.range ??= 10;
pixel.pushTime ??= 0;
pixel.pushLength ??= 100;
pixel.pushStrength ??= 100;
if (isNaN(pixel.pushTime) || pixel.pushTime < 0) { pixel.pushTime = 0 };
if (pixel.charge) {
pixel.pushTime = pixel.pushLength;
};
if (pixel.pushTime > 0) {
for (h = 0; h < pixel.pushStrength; h++) {
for (i = (pixel.range - 1); i >= 0; i--) {
if (!isEmpty(pixel.x + 1 + i, pixel.y, true)) {
tryMove(pixelMap[pixel.x + 1 + i][pixel.y], pixel.x + 2 + i, pixel.y);
};
};
};
pixel.pushTime--;
};
doDefaults(pixel);
},
color: "#c0c0c0",
colorOn: "#ffffff",
category: "machines",
tempHigh: 1500,
stateHigh: "molten_glass",
conduct: 1
};
elements.primer_left = {
behavior: behaviors.SUPPORT,
reactions: {
"fire": { "charge1": 1 }
},
properties: {
range: 100,
pushTime: 0,
pushLength: 5,
pushStrength: 100,
},
tick: function (pixel) {
pixel.range ??= 10;
pixel.pushTime ??= 0;
pixel.pushLength ??= 100;
pixel.pushStrength ??= 100;
if (isNaN(pixel.pushTime) || pixel.pushTime < 0) { pixel.pushTime = 0 };
if (pixel.charge) {
pixel.pushTime = pixel.pushLength;
};
if (pixel.pushTime > 0) {
for (h = 0; h < pixel.pushStrength; h++) {
for (i = (pixel.range - 1); i >= 0; i--) {
if (!isEmpty(pixel.x - 1 - i, pixel.y, true)) {
tryMove(pixelMap[pixel.x - 1 - i][pixel.y], pixel.x - 2 - i, pixel.y);
};
};
};
pixel.pushTime--;
};
doDefaults(pixel);
},
color: "#c0c0c0",
colorOn: "#ffffff",
category: "machines",
tempHigh: 1500,
stateHigh: "molten_glass",
conduct: 1
}
elements.kerosene = {
color: "#b3b38b",
behavior: behaviors.LIQUID,
behaviorOn: [
"XX|XX|XX",
"XX|CH:fire|XX",
"XX|XX|XX",
],
conduct: 0.09,
tick: function (pixel) {
if (pixel.temp > 220 && !pixel.burning) {
pixel.burning = true;
pixel.burnStart = pixelTicks;
}
},
reactions: {
"glue": { elem2: null, chance: 0.05 },
"wax": { elem2: null, chance: 0.005 },
"melted_wax": { elem2: null, chance: 0.025 },
},
category: "liquids",
tempHigh: 2100,
stateHigh: "fire",
burn: 95,
burnTime: 2000,
burnInto: ["carbon_dioxide", "fire"],
viscosity: 3,
state: "liquid",
density: 850
}
if (!elements.hydrogen.reactions) elements.hydrogen.reactions = {};
elements.hydrogen.reactions.oxygen = { elem1: "kerosene", elem2: null }
elements.combustion_sesor = {
behavior: behaviors.SUPPORT,
reactions: {
"fire": { "charge1": 1 }
},
color: "#C70039",
colorOn: "#ffffff",
category: "machines",
tempHigh: 1500,
stateHigh: "molten_glass",
conduct: 1
};
elements.insulation_powder= {
behavior: behaviors.SUPPORT,
reactions: {
"fire": { "charge1": 1 }
},
color: "#00FFFF",
category: "powders",
tempHigh: 1500,
stateHigh: "molten_glass",
insulate: true,
};
elements.conductive_insulation_powder = {
behavior: behaviors.SUPPORT,
reactions: {
"fire": { "charge1": 1 }
},
color: "#FFFF00",
colorOn: "#ffffff",
category: "powders",
tempHigh: 1500,
stateHigh: "molten_glass",
insulate: true,
conduct: 1
};
elements.engine_up = {
behavior: behaviors.SUPPORT,
reactions: {
"fire": { "charge1": 1 }
},
properties: {
range: 25,
pushTime: 0,
pushLength: 2.5,
pushStrength: 100,
},
tick: function (pixel) {
pixel.range ??= 5;
pixel.pushTime ??= 0;
pixel.pushLength ??= 25;
pixel.pushStrength ??= 25;
if (isNaN(pixel.pushTime) || pixel.pushTime < 0) { pixel.pushTime = 0 };
if (pixel.charge) {
pixel.pushTime = pixel.pushLength;
};
if (pixel.pushTime > 0) {
for (h = 0; h < pixel.pushStrength; h++) {
for (i = (pixel.range - 1); i >= 0; i--) {
if (!isEmpty(pixel.x, pixel.y - 1 - i, true)) {
tryMove(pixelMap[pixel.x][pixel.y - 1 - i], pixel.x, pixel.y - 2 - i);
};
};
};
pixel.pushTime--;
};
doDefaults(pixel);
},
color: "#c0c0c0",
colorOn: "#ffffff",
category: "machines",
tempHigh: 1500,
stateHigh: "molten_glass",
conduct: 1
};
elements.engine_down = {
behavior: behaviors.SUPPORT,
reactions: {
"fire": { "charge1": 1 }
},
properties: {
range: 25,
pushTime: 0,
pushLength: 2.5,
pushStrength: 100,
},
tick: function (pixel) {
pixel.range ??= 5;
pixel.pushTime ??= 0;
pixel.pushLength ??= 25;
pixel.pushStrength ??= 25;
if (isNaN(pixel.pushTime) || pixel.pushTime < 0) { pixel.pushTime = 0 };
if (pixel.charge) {
pixel.pushTime = pixel.pushLength;
};
if (pixel.pushTime > 0) {
for (h = 0; h < pixel.pushStrength; h++) {
for (i = (pixel.range - 1); i >= 0; i--) {
if (!isEmpty(pixel.x, pixel.y + 1 + i, true)) {
tryMove(pixelMap[pixel.x][pixel.y + 1 + i], pixel.x, pixel.y + 2 + i);
};
};
};
pixel.pushTime--;
};
doDefaults(pixel);
},
color: "#c0c0c0",
colorOn: "#ffffff",
category: "machines",
tempHigh: 1500,
stateHigh: "molten_glass",
conduct: 1
};
elements.engine_right = {
behavior: behaviors.SUPPORT,
reactions: {
"fire": { "charge1": 1 }
},
properties: {
range: 25,
pushTime: 0,
pushLength: 2.5,
pushStrength: 25,
},
tick: function (pixel) {
pixel.range ??= 5;
pixel.pushTime ??= 0;
pixel.pushLength ??= 25;
pixel.pushStrength ??= 25;
if (isNaN(pixel.pushTime) || pixel.pushTime < 0) { pixel.pushTime = 0 };
if (pixel.charge) {
pixel.pushTime = pixel.pushLength;
};
if (pixel.pushTime > 0) {
for (h = 0; h < pixel.pushStrength; h++) {
for (i = (pixel.range - 1); i >= 0; i--) {
if (!isEmpty(pixel.x + 1 + i, pixel.y, true)) {
tryMove(pixelMap[pixel.x + 1 + i][pixel.y], pixel.x + 2 + i, pixel.y);
};
};
};
pixel.pushTime--;
};
doDefaults(pixel);
},
color: "#c0c0c0",
colorOn: "#ffffff",
category: "machines",
tempHigh: 1500,
stateHigh: "molten_glass",
conduct: 1
};
elements.engine_left = {
behavior: behaviors.SUPPORT,
reactions: {
"fire": { "charge1": 1 }
},
properties: {
range: 25,
pushTime: 0,
pushLength: 2.5,
pushStrength: 25,
},
tick: function (pixel) {
pixel.range ??= 5;
pixel.pushTime ??= 0;
pixel.pushLength ??= 25;
pixel.pushStrength ??= 25;
if (isNaN(pixel.pushTime) || pixel.pushTime < 0) { pixel.pushTime = 0 };
if (pixel.charge) {
pixel.pushTime = pixel.pushLength;
};
if (pixel.pushTime > 0) {
for (h = 0; h < pixel.pushStrength; h++) {
for (i = (pixel.range - 1); i >= 0; i--) {
if (!isEmpty(pixel.x - 1 - i, pixel.y, true)) {
tryMove(pixelMap[pixel.x - 1 - i][pixel.y], pixel.x - 2 - i, pixel.y);
};
};
};
pixel.pushTime--;
};
doDefaults(pixel);
},
color: "#c0c0c0",
colorOn: "#ffffff",
category: "machines",
tempHigh: 1500,
stateHigh: "molten_glass",
conduct: 1
}
elements.steam_sesor = {
behavior: behaviors.SUPPORT,
reactions: {
"steam": { "charge1": 1 }
},
color: "#0000FF",
colorOn: "#ffffff",
category: "machines",
tempHigh: 1500,
stateHigh: "molten_glass",
conduct: 1
};

View File

@ -1387,7 +1387,7 @@ elements.sign = {
}
}
runAfterLoad(function(){
document.body.innerHTML += `
document.body.insertAdjacentHTML("beforeend",`
these are all properties of the pixel. another way to find pixel properties is using debug on a pixel, it will tell you the property and the value, like x and y, or, in plants.js, fruit.
<table id="variables">
<thead>
@ -1457,8 +1457,8 @@ runAfterLoad(function(){
</th>
</tr>
</tbody></table>
`
document.getElementById("extraInfo").innerHTML = `
<small><a href="https://sandboxels.r74n.com/changelog" id="changelogButton" target="_blank">Changelog<span style="color:red">(NEW)</span></a> <a href="https://sandboxels.R74n.com/feedback" target="_blank" style="color:lime;">Feedback</a> <a href="https://sandboxels.wiki.gg/" target="_blank" id="wikiButton" title="Official Sandboxels Wiki - wiki.gg" style="color:white;">Wiki</a> <a id="moreSocial" href="https://reddit.com/r/Sandboxels" rel="me" target="_blank"><span style="color:#FF5700">Reddit</span></a> <a href="https://discord.gg/ejUc6YPQuS" target="_blank" style="color:#2f60ff;">Discord</a><span id="install-button" style="display: inline-block;">&nbsp; <a onclick="deferredPrompt.prompt(); return false" href="#" style="text-shadow: 0px 2px 10px #ff00ff; cursor:pointer">Install Offline</a> <a href = "https://sandboxels.r74n.com/#variables">Variables</a></span><!--<br><br><a style="color:lime" target="_blank" href="https://docs.google.com/forms/d/e/1FAIpQLSf8pVMSdC6oSnBSaTpzjPQa8Ef-vxG_eXL99UITnMSQtJFTJA/viewform?usp=sf_link">FILL OUT THE CENSUS<span style="color:red">(NEW)</span></a>--></small><small><p>v1.9.3 559 elements, with <span id="hiddenCount">0</span> hidden.</p><p>©2021-2024. <a href="https://sandboxels.R74n.com/license.txt" rel="license" target="_blank">All Rights Reserved</a>. <a style="color:#00ffff" rel="author" href="https://r74n.com">R74n</a></p></small>
`
`)
// document.getElementById("extraInfo").innerHTML = `
// <small><a href="https://sandboxels.r74n.com/changelog" id="changelogButton" target="_blank">Changelog<span style="color:red">(NEW)</span></a> • <a href="https://sandboxels.R74n.com/feedback" target="_blank" style="color:lime;">Feedback</a> • <a href="https://sandboxels.wiki.gg/" target="_blank" id="wikiButton" title="Official Sandboxels Wiki - wiki.gg" style="color:white;">Wiki</a> • <a id="moreSocial" href="https://reddit.com/r/Sandboxels" rel="me" target="_blank"><span style="color:#FF5700">Reddit</span></a> • <a href="https://discord.gg/ejUc6YPQuS" target="_blank" style="color:#2f60ff;">Discord</a><span id="install-button" style="display: inline-block;">&nbsp;• <a onclick="deferredPrompt.prompt(); return false" href="#" style="text-shadow: 0px 2px 10px #ff00ff; cursor:pointer">Install Offline</a> • <a href = "https://sandboxels.r74n.com/#variables">Variables</a></span><!--<br><br><a style="color:lime" target="_blank" href="https://docs.google.com/forms/d/e/1FAIpQLSf8pVMSdC6oSnBSaTpzjPQa8Ef-vxG_eXL99UITnMSQtJFTJA/viewform?usp=sf_link">FILL OUT THE CENSUS<span style="color:red">(NEW)</span></a>--></small><small><p>v1.9.3 • 559 elements, with <span id="hiddenCount">0</span> hidden.</p><p>©2021-2024. <a href="https://sandboxels.R74n.com/license.txt" rel="license" target="_blank">All Rights Reserved</a>. <a style="color:#00ffff" rel="author" href="https://r74n.com">R74n</a></p></small>
// `
});

View File

@ -1498,6 +1498,7 @@ elements.mixer = {
}
},
movable: false,
noMix: true,
},
elements.invisiblesupport = {
color: "#000000",
@ -2081,6 +2082,52 @@ textures.transparency = [
"gggwww",
"gggwww"
]
textures.steel = [
"hHhhd",
"Hnnnd",
"hnnnd",
"hnnnD",
"dddDD"
]
textures.sponge = [
"hddddnnddd",
"Ddhddhnhdd",
"ddDdnNnNdd",
"dddhnnnnnh",
"dhdNnhnnnN",
"nNnhnNnddd",
"dhnNnnddhd",
"dDnnnhddDd",
"dhnnnNdhdd",
"ddddnddDdd"
]
textures.copper = [
"uuuuum",
"unhhnd",
"uhhnnD",
"uhnnHd",
"unnHnD",
"mdDdDD"
]
textures.gold = [
"hnnndbHHHhhnbHHHh",
"nnndbhnnnnndDbnnn",
"nnddbnnnnnddDbnnn",
"dddbnnnddddDDDbnd",
"DDDbDDDDDDDDDDbDD",
"BBBBBBBBBBBBBBBBB"
]
textures.diamond = [
"llcccLbLl",
"lcccccbbC",
"CScccBbCC",
"SSScBBBLC",
"SSSSLBbLS",
"SSSCLbbbL",
"BSCCCnbBL",
"BBBCnnBBB",
"lBBcLnLbL"
]
elements.transparency = {
color: ["#d4d4d4", "#ffffff"],
colorPattern: textures.transparency,
@ -2091,4 +2138,125 @@ elements.transparency = {
behavior: behaviors.WALL,
category: "special",
state: "solid"
}
elements.textured_steel = {
color: ["#708196", "#8895ad", "#596B77", "#525D6B", "#404954"],
colorPattern: textures.steel,
colorKey: {
"h": "#708196",
"H": "#8895ad",
"n": "#596B77",
"d": "#525D6B",
"D": "#404954"
},
behavior: behaviors.WALL,
category: "solids",
state: "solid",
tick: function(pixel){
if (pixelTicks - pixel.start == 1){
pixel.element = "steel"
}
}
}
elements.textured_sponge = {
color: ["#ccaa00", "#c1a100", "#967d00", "#b89a00", "#ae9100"],
colorPattern: textures.sponge,
colorKey: {
"n": "#ccaa00",
"N": "#c1a100",
"h": "#967d00",
"d": "#b89a00",
"D": "#ae9100"
},
behavior: behaviors.WALL,
category: "solids",
state: "solid",
tick: function(pixel){
if (pixelTicks - pixel.start == 1){
pixel.element = "sponge"
}
}
}
elements.textured_copper = {
color: ["#772F22", "#AB533F", "#9E3F2D", "#9E3F2D", "#4C1C11"],
colorPattern: textures.copper,
colorKey: {
"u": "#772F22",
"H": "#AB533F",
"h": "#C0725A",
"n": "#9E3F2D",
"D": "#4C1C11",
"d": "#622516",
"m": "#712C1E"
},
behavior: behaviors.WALL,
category: "solids",
state: "solid",
tick: function(pixel){
if (pixelTicks - pixel.start == 1){
pixel.element = "copper"
}
}
}
elements.textured_gold = {
color: ["#E4B038", "#FFCA59", "#BF8A18", "#7F5A10", "#674611"],
colorPattern: textures.gold,
colorKey: {
"h": "#FFCA59",
"H": "#FFFFCC",
"n": "#E4B038",
"B": "#513412",
"b": "#674611",
"d": "#BF8A18",
"D": "#7F5A10"
},
behavior: behaviors.WALL,
category: "solids",
state: "solid",
tick: function(pixel){
if (pixelTicks - pixel.start == 1){
pixel.element = "gold"
}
}
}
elements.solid_diamond = {
color: elements.diamond.color,
category: "solids",
colorPattern: textures.diamond,
colorKey: {
"c":"#36BDF3",
"C": "#7DD1F2",
"B": "#4B94ED",
"b": "#97BEED",
"L":"#C2D5ED",
"n": "#7BAEED",
"l": "#A2DBF2",
"S": "#BDF8FF"
},
tempHigh: elements.diamond.tempHigh,
stateHigh: elements.diamond.stateHigh,
state: "solid",
denisty: elements.diamond.density,
hardness: elements.diamond.hardness
}
elements.textured_rose_gold = {
color: ["#FF5991", "#E4386F", "#7F1037", "#FFCCCD", "#671133"],
colorPattern: textures.gold,
colorKey: {
"h": "#FF5991",
"H": "#FFCCCD",
"n": "#E4386F",
"B": "#511230",
"b": "#671133",
"d": "#BF1850",
"D": "#7F1037"
},
behavior: behaviors.WALL,
category: "solids",
state: "solid",
tick: function(pixel){
if (pixelTicks - pixel.start == 1){
pixel.element = "rose_gold"
}
}
}

60
mods/rays++.js Normal file
View File

@ -0,0 +1,60 @@
elements.shock_ray = {
color: ["#fffba6", "#8c8279"],
tick: function (pixel) {
var x = pixel.x;
for (var y = pixel.y + 1; y < height; y++) {
if (outOfBounds(x, y)) {
break;
}
if (isEmpty(x, y)) {
if (Math.random() > 0.1) { continue }
createPixel("electric", x, y);
}
else {
if (elements[pixelMap[x][y].element].id === elements.flash.id) { continue }
if (elements[pixelMap[x][y].element].id === elements.god_ray.id) { break }
if (!elements[pixelMap[x][y].element].isGas && isEmpty(x, y - 1)) {
createPixel("electric", x, y - 1);
}
if (Math.random() > 0.1) { continue }
elements.bless.tool(pixelMap[x][y])
}
}
deletePixel(pixel.x, pixel.y);
},
temp: 20,
category: "energy",
state: "gas",
excludeRandom: true,
noMix: true
};
elements.magic_ray = {
color: ["#a270ff","#f2d9ff"],
tick: function (pixel) {
var x = pixel.x;
for (var y = pixel.y + 1; y < height; y++) {
if (outOfBounds(x, y)) {
break;
}
if (isEmpty(x, y)) {
if (Math.random() > 0.1) { continue }
createPixel("magic", x, y);
}
else {
if (elements[pixelMap[x][y].element].id === elements.flash.id) { continue }
if (elements[pixelMap[x][y].element].id === elements.god_ray.id) { break }
if (!elements[pixelMap[x][y].element].isGas && isEmpty(x, y - 1)) {
createPixel("magic", x, y - 1);
}
if (Math.random() > 0.1) { continue }
elements.bless.tool(pixelMap[x][y])
}
}
deletePixel(pixel.x, pixel.y);
},
temp: 20,
category: "energy",
state: "gas",
excludeRandom: true,
noMix: true
};

View File

@ -159,4 +159,30 @@ elements.left_bullet = {
"XX|XX|M2",
],
category:"weapons",
},
elements.e_gun_left = {
color: "#C0C0C0",
behavior: behaviors.WALL,
behaviorOn: [
"XX|XX|XX",
"CR:left_bullet|XX|XX",
"XX|XX|XX",
],
category: "weapons",
state: "solid",
conduct: 1,
density: 1300,
},
elements.e_gun_right = {
color: "#C0C0C0",
behavior: behaviors.WALL,
behaviorOn: [
"XX|XX|XX",
"XX|XX|CR:right_bullet",
"XX|XX|XX",
],
category: "weapons",
state: "solid",
conduct: 1,
density: 1300,
};