Changeset - 8a8cef5d3441
[Not reviewed]
default
0 1 0
Silverwing - 6 years ago 2018-12-22 22:28:15

Chapter 1: 15 game fixed
1 file changed with 2 insertions and 2 deletions:
0 comments (0 inline, 0 general)
atlantis_dyp.lua
Show inline comments
 
@@ -152,59 +152,59 @@ dyp_obelisk_puzzle = room {
 
            12,13,14,15
 
        };
 
        set = false;
 
    };
 
    win = "";
 
    nam = "Дипатреанотр, центр";
 
    underwater = true;
 
    entered = function(s)
 
        if not s.set then
 
            s.set = true;
 
            local details = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};
 
            local matches = 3;
 
            for i = 1, 16 do
 
                local item;
 
                local index;
 
                repeat
 
                    index = rnd(#details);
 
                    item = details[index];
 
                until matches > 0 or item ~= s.state[i] or i == 16;
 
                table.remove(details, index);
 
                s.state[i] = item;
 
            end;
 
            local k = 1;
 
            for i = 1, 16 do
 
                if s.state[i] == 1 then
 
                if s.state[i] ~= 12 then
 
                    for j = i + 1, 16 do
 
                        if s.state[i] > s.state[j] and s.state[j] ~= 12 then
 
                            k = k + 1;
 
                        end;
 
                    end;
 
                else
 
                    k = k + math.floor(i / 4);
 
                end;
 
            end;
 
            if k % 2 == 0 then
 
            if k % 2 == 1 then
 
                for i = 16, 1, -1 do
 
                    if s.state[i] == 14 then
 
                        s.state[i] = 15;
 
                    elseif s.state[i] == 15 then
 
                        s.state[i] = 14;
 
                    end;
 
                end;
 
            end;
 
        end;
 
    end;
 
    pic = function(s)
 
        local p = 'images/dyp15.png';
 
        for i = 1, #s.state do
 
            local f = s.state[i];
 
            p = p .. ';images/dyp15_' .. tostring(f) .. '.png@' .. tostring(math.floor((i - 1) / 4) * 40) .. ',' .. tostring((3 - (i - 1) % 4) * 40);
 
        end;
 
        return p;
 
    end;
 
    dsc = [[У самого основания обелиска вы видите небольшое изображение, вырезанное в камне. Некогда оно было разрезано на шестнадцать частей, а части перепутаны между собой. ]];
 
    click = function(s, x, y)
 
        local ty = math.floor(x / 40);
 
        local tx = 3 - math.floor(y / 40);
 
        local tile = tx + ty * 4 + 1;
 
        if (s.state[tile] ~= 15) then
0 comments (0 inline, 0 general)