diff --git a/src/items_logic.mpsrc b/src/items_logic.mpsrc
index d4900720c14ff97e92740b4079910d991620deb5..6c730f618f5345b68b5aceecc3373ae2a50cdf0f 100644 (file)
--- a/src/items_logic.mpsrc
+++ b/src/items_logic.mpsrc
setmap(0,xx,yy);\r
destsign(getmapinfo(xx,yy));\r
end; else\r
- if id=106 then\r
+ if (id = 106) or (id = 125) then\r
begin\r
setmap(0,xx,yy);\r
DestroyFurnace(xx, yy);\r
begin\r
if createsign(xx,yy)=-1 then set_block_code:=true;\r
end; else\r
- if it=106 then\r
+ if (it = 106) or (it = 125) then\r
begin\r
if CreateFurnace(xx, yy)=FURNACE_ERROR then\r
set_block_code:=true;\r
begin\r
destsign(getmapinfo(xx,yy));\r
end; else\r
- if id=106 then\r
+ if (id = 106) or (id = 125) then\r
begin\r
DestroyFurnace(xx, yy);\r
end; else\r
destsign(getmapinfo(xx,yy));\r
drop.create(104,1,xx*16+4,yy*16+4);\r
end; else\r
- if id=106 then\r
+ if (id = 106) or (id = 125) then\r
begin\r
setmap(0,xx,yy);\r
DestroyFurnace(xx, yy);\r
if block=104 then\r
keymode:=5;*/\r
else\r
- if block=106 then\r
+ if (block = 106) or (block = 125) then\r
OpenFurnaceWindow(info);\r
else\r
if block=107 then\r
else\r
if block=63 then\r
begin\r
- if (light>7) or (getMap(x, y+1)=0) then\r
- setmap(0, x, y);\r
+ // В зимнем биоме снег не растапливается при сильном свете\r
+ if ((light > 7) and (getBiomMap(x) <> 2)) or (getMap(x, y + 1) = 0) then\r
+ setmap(0, x, y);\r
end;\r
else\r
if block=74 then\r
create_particle(4, x*16+4, y*16+4);\r
end;\r
else\r
+ if (block = 106) or (block = 125) then\r
+ begin\r
+ if furnaceBurn(getMapInfo(x, y)) then\r
+ setmap(125, x, y);\r
+ else\r
+ setmap(106, x, y);\r
+ end;\r
+ else\r
if block=110 then\r
begin\r
if (getmap(x-1, y)=0) or (getmap(x+1, y)=0) or (getmap(x, y-1)=0) or (getmap(x, y+1)=0) then\r
else\r
if block=30 then\r
begin\r
- if (random(GENWOOD_RND)=random(GENWOOD_RND)) and (getMap(x, y+2)<>30) then\r
- setMap(30, x, y-1);\r
- if (getMap(x, y+1)<>7) or (getMap(x, y+1)<>30) then\r
+ if (random(GENWOOD_RND) = random(GENWOOD_RND)) and (getMap(x, y + 2) <> 30) then\r
+ setMap(30, x, y - 1);\r
+ if (getMap(x, y + 1) <> 7) and (getMap(x, y + 1) <> 30) then\r
begin\r
setMap(0, x, y);\r
destroy_block_1(block, x, y);\r