private void Build(bool up, MapElementInfo info, NVector pos, ActionHolder holder) { //Debug.Log($"Old {pos}"); //Debug.Log($"Old {info.Pos()}"); if (up) { Debug.Log($"New {pos.DiffLevel(1)}"); BuildingInfo n = S.Building().Create(info.Town().id, "stair", pos.DiffLevel(1)); n.FinishConstruct(); n.SetSprite(holder.data["stair"]); n.data.data["level"] = "-1"; } else { Debug.Log($"New {pos.DiffLevel(-1)}"); info.SetSprite(holder.data["stair"]); BuildingInfo n = S.Building().Create(info.Town().id, info.data.type, pos.DiffLevel(-1)); n.FinishConstruct(); n.data.data["level"] = "1"; } info.data.data["level"] = up ? "1" : "-1"; }