Re: Mudlet 3.* - skrypty + mapper
: 06 lut 2019 22:59
				
				Na tej defaultowej mapie do skryptow Adremena niema. Trzeba sobie we własnym zakresie dorysować.
			Oficjalne forum Arkadii, polskiego MUD-a, tekstowej gry fabularnej.
https://arkadia.rpg.pl/forum/
Kod: Zaznacz cały
amap:follow("north", false)Kod: Zaznacz cały
amap:follow(amap.ui.compass.special_exit1,false)Przejrzeć temat parę podstron do tyłu, są podane linki do mapy, którą można pobrać "ręcznie" i wrzucić do profilu (link można znaleźć też w skryptach).
Kod: Zaznacz cały
ocen bron
======= Oceniasz starannie wysmukla graniasta maczuge bojowa. ========
Maczuga ta sklada sie z wysmuklego, profilowanego drewnianego trzonka, na ktorym osadzono graniasta brazowa glowice, o krawedziach obitych srebrnymi okuciami. Bron ta nie tylko ma pewne walory
ozdobne, ale i bojowe.
Wyglada na to, ze jest w znakomitym stanie. [max]
Oceniasz, ze wysmukla graniasta maczuga bojowa wazy 3900 gramow, zas jej objetosc wynosi 1300 mililitrow.
Wydaje ci sie, ze jest warta okolo 1000 miedziakow, czyli 4 zl, 3 sr, 4 mdz.
 Typ broni: maczuge                Chwyt: w dowolnej rece            
 Obrazenia: obuchowe                         
 Wywazenie: genialnie [14/14]      Skutecznosc: bardzo skuteczne [10/14]             
Do wykonania tej broni uzyto srebra, bedzie wiec ona skuteczna przeciw wrogom odpornym na zwykle obrazenia.Kod: Zaznacz cały
/ocen bron
======= Oceniasz starannie wysmukla graniasta maczuge bojowa. ========
Wyglada na to, ze jest w znakomitym stanie. [max]             
Wywazenie: genialnie [14/14]      Skutecznosc: bardzo skuteczne [10/14]             
Do wykonania tej broni uzyto srebra, bedzie wiec ona skuteczna przeciw wrogom odpornym na zwykle obrazenia.Kod: Zaznacz cały
> ocen bron
WYSMUKLA GRANIASTA MACZUGA BOJOWA(maczuga) obrazenia:O, dowolna reka, K:(MAX/7) $ 0mth 4zl 3sr 4md (1000)
          wywazenie:14/14, skutecznosc:10/14  waga:3900, objetosc:1300
          Do wykonania tej broni uzyto srebra, bedzie wiec ona skuteczna przeciw wrogom odpornym na zwykle obrazenia.Kod: Zaznacz cały
Pattern:
^Wraz z .* jedziesz .* na (.*).$
^Wraz z .* jedziesz .* w (.*) traktem.$
Body:
local english_dir = amap.polish_to_english[matches[2]]
amap:follow(english_dir, false)
Kod: Zaznacz cały
Pattern:
^Masz przy sobie (.*)\.$
Body:
local str = scripts.utils:extract_string_list(matches[2])
scripts.utils:print_string_list(str)Kod: Zaznacz cały
function popraw_area_custom_lines(areaid)
  local areas = getAreaTableSwap()
  if (areas[areaid] ~= nil) then
    echo("# Area: " .. areas[areaid] .. "\r\n")
  end
  arearooms = getAreaRooms(areaid)
  for _, id in pairs(arearooms) do
    popraw_room_custom_lines(id)
  end
end
function popraw_room_custom_lines(roomId)
  cl = getCustomLines(roomId)
  --display(cl)
  for ex, at in pairs(cl) do
    if (at["attributes"] ~= nil) then
      if (at["attributes"]["color"] ~= nil) then
        local clrgb = at["attributes"]["color"]
        if (clrgb["r"] == 0 and clrgb["g"] == 0 and clrgb["b"] == 0) then
          local clstyle = at["attributes"]["style"]
          local clarrow = at["attributes"]["arrow"]
          local rcx, rcy, rcz = getRoomCoordinates(roomId)
          if (at["points"] ~= nil) then
            local tmppoints = at["points"]
            points = {}
            local cnt = 1
            if (tmppoints[0] ~= nil) then
              points[cnt] = {tmppoints[0]["x"], tmppoints[0]["y"], rcz}
              cnt = cnt + 1
            end
            for i, p in pairs(at["points"]) do
              local pp = {}
              pp = {p["x"], p["y"], rcz}
              if (i > 0) then
                points[cnt] = pp
                cnt = cnt + 1
              end
            end
            echo("\r\poprawiam : " .. roomId .. " - " .. ex .. "\r\n")
                        -- tu popraw kolor z {192, 192, 192} na wlasny
            addCustomLine(roomId, points, ex, clstyle, {192, 192, 192}, clarrow)
          end
        end
      end
    end
  end
end
Kod: Zaznacz cały
-- Ustawienia do skryptu lampy
--
-- Maksymalny (startowy) czas odliczania odnosnie lampy. Domyslnie 300 sekund = 5 minut.
scripts.inv.lamp.lamp_seconds_default_start_val = 300
-- W ktorych sekundach odliczania skrypt wydrukuje informacje w oknie glownym
-- o pozostalym czasie lampy. Domyslnie jest to 120, 60, 30 i 10 sekund.
-- Aby w ogole nic nie drukowac w oknie glownym, trzeba ustawic pusta tablice: {}
scripts.inv.lamp.lamp_warning_times = {120, 60, 30, 10}
-- W ktorych sekundach odliczania skrypt wykona beep poprzez zainicjowanie eventu
-- "playBeep". Aby nie inicjowac zadnego eventu, nalezy ustawic pusta tablice: {}
-- Mozna ustawienie wiecej niz jedna wartosc. Wartosci nie musza byc jednakowe
-- z tymi z poprzedniej opcji.
scripts.inv.lamp.lamp_beeps = {10}
-- Ponizej ktorej sekundy odliczania skrypt zacznie drukowac w dolnym pasku
-- zoltym kolorem czcionki. Aby nie uzywac zoltej czcionki, ustawic 0
scripts.inv.lamp.lamp_yellow_seconds = 60
-- Ponizej ktorej sekundy odliczania skrypt zacznie drukowac w dolnym pasku
-- czerwonym kolorem czcionki. Aby nie uzywac czerwonej czcionki, ustawic 0
scripts.inv.lamp.lamp_red_seconds = 30
-- Bind, ktory ma sie bindowac gdy butelka oleju stanie sie pusta.
-- Aby nie bindowac nic, ustawic pusty string: ""
scripts.inv.lamp.lamp_empty_bottle_bind = "odloz olej; wez butelke z plecaka; napelnij lampe olejem"
-- Bind, ktory ma sie bindowac gdy nie mamy butelki oleju w rece.
-- Aby nie bindowac nic, ustawic pusty string: ""
scripts.inv.lamp.lamp_no_bottle_bind = "wez butelke z plecaka"
Kod: Zaznacz cały
-- Dozwolone wartosci:
-- mode0 - wylaczony
-- mode1 - pasek z suwakami (bardziej graficznie)
-- mode2 - pasek z wartosciami tekstowymi (bardziej minimalistyczny niz 1)
-- mode3 - pasek z wartosciami tekstowymi (dostarczony przez Daracana)
-- mode4 - pasek z wartosciami tekstowymi (inversionz, dostarczony przez Kazura)
-- 
-- mode4 wymaga wgrania czcionek inversionz. Trzeba pobrac z
-- https://www.dafont.com/search.php?q=inversionz
-- i wrzucic do katalogu "fonts" w mudlet-data.
scripts.ui.cfg["footer_mode"] = "mode2"
Kod: Zaznacz cały
-- Opcja decydujaca jak oznaczac czlonkow swojej druzyny w pasku stanow.
--
-- Dozwolone wartosci
-- "mode1"  - czlonkowie druzyny beda numerowanie literami: A, B, C...
-- "mode2"  - czlonkowie druzyny beda numerowanie liczbami: 1, 2, 3...
ateam.options.team_numbering_mode = "mode1"
Kod: Zaznacz cały
/porownaj_ze_wszystkimi
 #  OSOBA                        SIL  ZRE  WYT  TOTAL 
 1  grozny barczysty mezczyzna   -1   -1   -1   -3    
 2  ponury umiesniony mezczyzna  -1   -1   -1   -3    
Kod: Zaznacz cały
| /zbieraj_extra [przedmiot] - doda do zbieranych extra konkretny przedmiot,     |
| np. /zbieraj_extra posrebrzane miecze doda do zbieranych extra                 |
| posrebrzane miecze.                                                            |
| /nie_zbieraj_extra [przedmiot] - usunie ze zbieranych extra konkretny przedmiot|
| /nie_zbieraj_extra - usunie wszystkie extra zbieranie przedmioty.              |
|                                                                                |
+--------------------------------------------------------------------------------+