Działaj±ce INQ.

PRzeSteR


  No to tak. Pętla zupełnie jest niepotrzebna w tym kodzie. Zmień indeksowanie tablic na nazwy potworów, a usprawni to znacznie kod. Do tego:
Kod: if (getCreatureName(cid) == "golgordan") or (getCreatureName(cid) == "latrivan") then
                                brat_1 = getCreatureByName("golgordan")
                                brat_2 = getCreatureByName("latrivan")
                                if (brat_1 == nil) or (brat_2 == nil) then
                                        doItemSetAttribute(doCreateTeleport(tp_itemid, tp_to, tp_in[i]), "aid", tp_id[i])
                                        doCreatureSay(cid, message, TALKTYPE_ORANGE_1)
                                        addEvent(usun_tp, time_to_end * 1000, tp_in[i])
                                else
                                        doCreatureSay(cid, "Mój bracie ide odpoczac", TALKTYPE_ORANGE_1)
                                end Można tak usprawnić:
Kod: if (getCreatureName(cid) == "golgordan") or (getCreatureName(cid) == "latrivan") then
        brat_1 = getCreatureByName("golgordan")
        brat_2 = getCreatureByName("latrivan")
        if (brat_1 ~= nil) or (brat_2 ~= nil) then
                doCreatureSay(cid, "Mój bracie ide odpoczac", TALKTYPE_ORANGE_1)
        end Ale to nie jest jaki¶ najlepszy sposób. Do tego wy¶wietlanie czasu we wiadomo¶ci powinno być czytane ze zmiennej. Zmienne brat powinny być lokalne.Sporo błędów.



  Brawo chłopaki najbardziej tobie gz Oskar :] ja miałem twój kodzik predzej niż był on wydany no no :D
Wszystko działa :) hm zastanawiam się jak zmienić wygl±d efekt jak się wejdzie w tp ten ktory jest postawiony jak bos padnie :P


  Dziękuje bardzo za skrypt bardzo mi się przyda do mojego OTSA !!

Dałbym reputa ale nie mogę . _/ Hail .

  hail dzieki !!!1



  No najs, ale s± lepsze scripty już w niektórych silnikach, ale Twój widzę prawie dorównuje sasirowskiemu :D

Btw why nie funkcja function onKill(cid, target, lastHit)?

  #Tairens
Jak zapewne pamiętasz nie jestem jakim¶ super skrypterem, ale czytanie z tablic mija się z celem, chyba, że chcesz sztucznie przedłużyć kod.
Ten skrypt uważam za dobrze napisany, ale oczywi¶cie mogę się mylić, Ty tu jeste¶ najlepszy z nas wszystkich (:

#topic
Wszelkie błędy, sugestie, propozycje proszę pisać do mnie drog± prywatn± b±dĽ w tym temacie.


  Wiem, że to odkopanie starego tematu, ale nie warto było zakładać nowego.
Skrypt został napisany od nowa. Ten działa doskonale.
Wszelkie problemy zgłaszać do mnie.

#edit
Znalazłem wła¶nie kilka głupich błędów. Poprawię je po południu. Póki co nie korzystajcie z tego skryptu.

#edit2
Skrypt poprawiony. Działa bez zarzutów.

  Czy skrypt nikomu się już nie przyda?
Od¶wieżam.

#down
Zerżnięty z otlandu. Dzi¶ widziałem ten skrypt...

  Kod: <?xml version="1.0" encoding="UTF-8"?>
<mod name="Inquisition"
version="1.0" author="Tommy" contact="[Tylko pełnoprawni użytkownicy (z aktywacj± e-mailem) mog± widzieć linki.] Kliknij tutaj, aby się zarejestrować." enabled="yes">
        <event type="login" name="inquisitionRegister" event="script"><![CDATA[
        function onLogin(cid)
    registerCreatureEvent(cid, "Inquisition")
        return true
end]]></event>
    <event type="kill" name="Inquisition" event="script"><![CDATA[
local config = {
    message = "Go into the teleporter in 3 minutes, else it will disappear.",
    timeToRemove = 180, -- seconds
    teleportId = 1387,
    bosses = { -- Monster Name, Teleport To Position, Teleport Position
  ["Ushuriel"] = { { x=1173, y=1138, z=12}, { x=1097, y=1214, z=12, stackpos=1 } },
  ["Annihilon"] = { { x=1244, y=1297, z=12 }, { x=1187, y=1198, z=12, stackpos=1 } },
  ["Hellgorak"] = { { x=1067, y=1307, z=13 }, { x=1192, y=1240, z=12, stackpos=1 } },
  ["Madareth"] = { { x=1045, y=1204, z=13}, { x=1111, y=1240, z=12, stackpos=1 } },
  ["Zugurosh"] = { { x=1126, y=1151, z=12 }, { x=1149, y=1213, z=12, stackpos=1 } },
  ["Latrivan"] = { { x=1153, y=1195, z=13}, { x=1147, y=1244, z=12, stackpos=1 } }
    }
}
local function removal(position)
    if getThingfromPos(position).itemid == config.teleportId then
        doRemoveItem(getThingfromPos(position).uid)
    end
    return TRUE
end
function onKill(cid, target, lastHit)
if lastHit == true then
    local position = getCreaturePosition(target)
    for name, pos in pairs(config.bosses) do
        if name == getCreatureName(target) then
            teleport = doCreateTeleport(config.teleportId, pos[1], pos[2])
            doCreatureSay(cid, config.message, TALKTYPE_ORANGE_1)
            addEvent(removal, config.timeToRemove * 1000, pos[2])
            doSendMagicEffect(pos[2], 10)
        end
    end
end
    return TRUE
end]]></event>
        <action fromuid="1300" touid="1308" event="script"><![CDATA[
      if item.uid == 1300 then
        queststatus = getPlayerStorageValue(cid,50301)
          if queststatus == -1 then
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found robe of the underworld.")
              doPlayerAddItem(cid,8890,1)
              setPlayerStorageValue(cid,50301,1)
          else
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")
          end
      elseif item.uid == 1301 then
        queststatus = getPlayerStorageValue(cid,50301)
          if queststatus == -1 then
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a  Spellbook of Dark Mysteries.")
              doPlayerAddItem(cid,8918,1)
              setPlayerStorageValue(cid,50301,1)
          else
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")
          end
      elseif item.uid == 1302 then
        queststatus = getPlayerStorageValue(cid,50301)
          if queststatus == -1 then
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a Fireborn Giant Armor.")
              doPlayerAddItem(cid,8881,1)
              setPlayerStorageValue(cid,50301,1)
          else
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")
        end
      elseif item.uid == 1303 then
        queststatus = getPlayerStorageValue(cid,50301)
          if queststatus == -1 then
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a Master Archer's Armor.")
              doPlayerAddItem(cid,8888,1)
              setPlayerStorageValue(cid,50301,1)
          else
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")
          end
      elseif item.uid == 1304 then
        queststatus = getPlayerStorageValue(cid,50301)
          if queststatus == -1 then
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a Royal Crossbow.")
              doPlayerAddItem(cid,8851,1)
              setPlayerStorageValue(cid,50301,1)
          else
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")
          end
    elseif item.uid == 1305 then
        queststatus = getPlayerStorageValue(cid,50301)
          if queststatus == -1 then
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a Executioner.")
              doPlayerAddItem(cid,7435,1)
              setPlayerStorageValue(cid,50301,1)
          else
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")
          end
    elseif item.uid == 1306 then
        queststatus = getPlayerStorageValue(cid,50301)
          if queststatus == -1 then
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a The Stomper.")
              doPlayerAddItem(cid,8929,1)
              setPlayerStorageValue(cid,50301,1)
          else
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")
          end
    elseif item.uid == 1307 then
        queststatus = getPlayerStorageValue(cid,50301)
          if queststatus == -1 then
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a Runed Sword.")
              doPlayerAddItem(cid,7417,1)
              setPlayerStorageValue(cid,50301,1)
          else
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")
          end
    elseif item.uid == 1308 then
        queststatus = getPlayerStorageValue(cid,50301)
          if queststatus == -1 then
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a Warsinger Bow.")
              doPlayerAddItem(cid,8854,1)
              setPlayerStorageValue(cid,50301,1)
          else
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")
          end
    elseif item.uid == 1309 then
        queststatus = getPlayerStorageValue(cid,50301)
          if queststatus == -1 then
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a spellbook of Lost Souls.")
              doPlayerAddItem(cid,8903,1)
              setPlayerStorageValue(cid,50301,1)
          else
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")
          end
    elseif item.uid == 13010 then
        queststatus = getPlayerStorageValue(cid,50301)
          if queststatus == -1 then
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a Mystical Armor.")
              doPlayerAddItem(cid,2508,1)
              setPlayerStorageValue(cid,50301,1)
          else
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")
          end
    elseif item.uid == 13011 then
        queststatus = getPlayerStorageValue(cid,50301)
          if queststatus == -1 then
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a Rainbow Shield.")
              doPlayerAddItem(cid,8905,1)
              setPlayerStorageValue(cid,50301,1)
          else
              doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")
          end
    end
      return TRUE]]></action>
</mod> 1 mod i w dodatku dzialajacy lepiej.

  od¶wieżam. bardzo proszę o pomoc

  Zamiast od¶wieżać i spamować napisałby¶ na GG, tam wyja¶nię Ci gdzie robisz bł±d, a raczej błędy bo jest ich od groma.
Copyright (c) 2009 PRzeSteR | Powered by Wordpress. Fresh News Theme by WooThemes - Premium Wordpress Themes.