tjurczyk / arkadia

Skrypty mudletowe dla Arkadii
18 stars 19 forks source link

kbind dla kierunków U / D #1420

Closed mwarzec closed 1 year ago

mwarzec commented 2 years ago

Jeżeli w lokacji gdzie jest wyjście góra lub dół zrobimy kbinda w stylu

/kbind n u To po naciśnięciu N na numerycznej postać pójdzie na U, ale maper nie przesunie się do lokacji na górę. Zostanie w lokalizacji gdzie jest kbind zrobiony. Prawdopodobnie związane to jest z innym traktowaniem kierunków góra/dół jako niereguralne w pliku arkadia/mapper/map.lua linie po 355.

-- check up and down if not force and n_exits and n_exits["up"] and not n_exits[dir] then local to_check_x, to_check_y, to_check_z = getRoomCoordinates(n_exits["up"]) to_check_y = -to_check_y if amap:check_direction_coords_correctness(amap.curr.x, amap.curr.y, amap.curr.z, to_check_x, to_check_y, to_check_z, dir) then amap.dir_from_key = "up" amap:pre_on_key_event() return true end end

if not force and n_exits and n_exits["down"] and not n_exits[dir] then
    local to_check_x, to_check_y, to_check_z = getRoomCoordinates(n_exits["down"])
    to_check_y = -to_check_y
    if amap:check_direction_coords_correctness(amap.curr.x, amap.curr.y, amap.curr.z, to_check_x, to_check_y, to_check_z, dir) then
        amap.dir_from_key = "down"
        amap:pre_on_key_event()
        return true
    end
end
return false

end