Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Pisanie / Poprawa Questów !


PoczatKujacy

Rekomendowane odpowiedzi

Opublikowano

Elo napisałem quest i chciałbym się zapytać czy zadziała ;p

po uzyciu itemu pokazuje się input i po wpisaniu na chatcie wywala :

[ADMIN] tresc z inputu

 

quest 3211 begin
state start begin
when 71222.use begin
say_title("adminek:")
say("Wpisz tresc")
local i=input()
 command([Admin] i)
end
end
end

 

Niestety nie wiem jak to zrobić ale command wykorzystuje "/" a ja chciałbym "["

To nie działa w taki sposób. Command to komenda wywołująca funkcję. Jeśli chcesz coś jak informacja clientowa zamień syschat, a jeśli dla wszystkich graczy to notice_all. Btw, ta część questa powinna wyglądać tak:

command("[ADMIN] "..i)

Chyba, że [ADMIN] to polecenie.

//nieregulaminowa sygnatura

//BR3ND

  • Odpowiedzi 8,7 tys.
  • Dodano
  • Ostatniej odpowiedzi
Opublikowano

Nie, w temacie z tym questem nic o query'ach nie pisało...

Możesz mi je napisać? ;xx

PS. Sprawdzałem questa. Nie działa tylko perm. Tzn gdy dam blokadę czasową, w grze pisze, że ten i ten został zablokowany... Ale sprawdziłem, i tej postaci nie wylogowuje odrazu. A ban jest.. ;d Możesz dodać do questa, że po daniu bana czasowego, funkcję na kick z gry tej zbanowanej osoby? ;x

1377019234-U697852.png


Opublikowano

@DarkSeider

 

 

---------------------------------------------------
---------------------------------------------------
------Quest stworzył DeXi (Dexik mpcforum.pl)------
------Uszanuj moją pracę  I nie usuwaj tego------
---------------------------------------------------
---------------------------------------------------
--[[
Konfiguracja:
wpisujesz itemy do tablicy: itemy
zmieniasz id: 71119 na id swojego itemu.
jak chcesz zeby item 71119 znikał to usuwasz komentarz (dwa myslniki) przed: pc.remove_item(71119, 1)
]]--
quest drop begin
state start begin
 when 71119.use begin
  local ilosc = number(1, 5)
  local itemy = {
  19,
  140,
  141,
  150,
  123,
  189,
  271,
  279,
  156,
  12,
  13,
  15
  }
  --pc.remove_item(71119, 1)
  if ilosc == 1 then
   syschat("Wylosowałeś 1 przedmiot.")
  elseif ilosc > 1 and ilosc < 5 then
   syschat("Wylosowałeś "..ilosc.." przedmioty.")
  elseif ilosc == 5 then
   syschat("Wylosowałeś 5 przedmiotów.")
  end

  for i = 1, ilosc do
   pc.give_item2(itemy[number(1, table.getn(itemy))])
  end
 end
end
end

 

 

 

Wklej.to:

http://wklej.to/Oj07L

Opublikowano

Ja by

@DarkSeider

 

 

---------------------------------------------------
---------------------------------------------------
------Quest stworzył DeXi (Dexik mpcforum.pl)------
------Uszanuj moją pracę  I nie usuwaj tego------
---------------------------------------------------
---------------------------------------------------
--[[
Konfiguracja:
wpisujesz itemy do tablicy: itemy
zmieniasz id: 71119 na id swojego itemu.
jak chcesz zeby item 71119 znikał to usuwasz komentarz (dwa myslniki) przed: pc.remove_item(71119, 1)
]]--
quest drop begin
state start begin
when 71119.use begin
local ilosc = number(1, 5)
local itemy = {
19,
140,
141,
150,
123,
189,
271,
279,
156,
12,
13,
15
}
--pc.remove_item(71119, 1)
if ilosc == 1 then
syschat("Wylosowałeś 1 przedmiot.")
elseif ilosc > 1 and ilosc < 5 then
syschat("Wylosowałeś "..ilosc.." przedmioty.")
elseif ilosc == 5 then
syschat("Wylosowałeś 5 przedmiotów.")
end

for i = 1, ilosc do
pc.give_item2(itemy[number(1, table.getn(itemy))])
end
end
end
end

 

 

 

Wklej.to:

http://wklej.to/Oj07L

Ja bym to zrobił inaczej.

http://wklej.to/yzsVN

//nieregulaminowa sygnatura

//BR3ND

Opublikowano

Pomoże ktos ?

Czemu jeśli dodam ten skrypt powitalny + eq, to buguje sie trener od skili ?. Co z tym zrobić ? Korzystam z pustych plików by terenzo

 

 

 

Kto edytuje mi ten give. na eq 1lv +9, buty wiatru i p.tp ? quest give_basic_weapon begin

state start begin

when login begin

if pc.getqf("basic_weapon") != 0 then

return

end

pc.give_item2(50187, 1)

local id_postaci = query("SELECT `id` FROM player.player WHERE `name` = '".. pc.get_name() .."';")

--query("INSERT INTO player.item VALUES ('', '".. id_postaci .."', 'EQUIPMENT', '11', '1', '41003', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');")

--query("INSERT INTO player.item VALUES ('', '".. id_postaci .."', 'EQUIPMENT', '12', '1', '45003', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');")

set_state(__COMPLETE__)

end

end

state __COMPLETE__ begin

end

end

Opublikowano

Cortier, okej idzie.

A mógłbyś mi dodać tak, żeby po nadaniu bana czasowego/perm od razu logało z serwera tego, kogo zbanowałem?

po funkcji nadającej bana dodaj: command("dc "...zmienna_z_nazwą_gracza)

Pomoże ktos ?

Czemu jeśli dodam ten skrypt powitalny + eq, to buguje sie trener od skili ?. Co z tym zrobić ? Korzystam z pustych plików by terenzo

 

 

 

Kto edytuje mi ten give. na eq 1lv +9, buty wiatru i p.tp ? quest give_basic_weapon begin

state start begin

when login begin

if pc.getqf("basic_weapon") != 0 then

return

end

pc.give_item2(50187, 1)

local id_postaci = query("SELECT `id` FROM player.player WHERE `name` = '".. pc.get_name() .."';")

--query("INSERT INTO player.item VALUES ('', '".. id_postaci .."', 'EQUIPMENT', '11', '1', '41003', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');")

--query("INSERT INTO player.item VALUES ('', '".. id_postaci .."', 'EQUIPMENT', '12', '1', '45003', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');")

set_state(__COMPLETE__)

end

end

state __COMPLETE__ begin

end

end

Pliki by terenzo, drop masz w pliku drop.quest.

//nieregulaminowa sygnatura

//BR3ND

Opublikowano

po funkcji nadającej bana dodaj: command("dc "...zmienna_z_nazwą_gracza)

 

Pliki by terenzo, drop masz w pliku drop.quest.

wielkie dzieki kolego ;]
Opublikowano

Witam , poprawi ktoś mi quest z plików terenzo ( hair.quest) tak aby fryzury były zakładane tak jak standardowe inne fryzury a nie do systemu kostiumów ? Type i Subtype ustawiałem 18 - 10 jak i również 25 - 0 ale fryzura albo się nie zakłada albo się niby zakłada lecz tego nie widać a po rlg/teleporcie ucina mi głowę . Z góry dzięki . Pozdrawiam, Patryk

 

http://wklej.to/QGu9i

Opublikowano

potrzebuje questa:

1.gdy klikniemy na jakiegos npc bedzie do wyboru opcja polacz przedmioty.

2.quest ma polegac na tym ze:

po kliknieciu na npc dajemy np zbroje dla woja na 1lvl + zbroje 9lvl + jakis ulepszacz i dostajemy zbroje na 18lvl, item ma byc wytworzony inny w zaleznosci od klasy postaci.

Opublikowano

Witam , poprawi ktoś mi quest z plików terenzo ( hair.quest) tak aby fryzury były zakładane tak jak standardowe inne fryzury a nie do systemu kostiumów ? Type i Subtype ustawiałem 18 - 10 jak i również 25 - 0 ale fryzura albo się nie zakłada albo się niby zakłada lecz tego nie widać a po rlg/teleporcie ucina mi głowę . Z góry dzięki . Pozdrawiam, Patryk

 

http://wklej.to/QGu9i

Opublikowano

Siema. Co w tym quescie jest nie tak?

 

quest grota_wyg begin

state start begin

when 20093.chat."Chcę wejść " begin

say_title("Koe-Pung:")

say("Stój! Jestem Koe-Pung z Zakonu Smoków, strażnik")

say("portalu. Możesz przejść tylko jeśli otrzymałeś")

say("pozwolenie Zakonu i jeśli pokażesz mi Krwisty")

say("Kamień! ")

local s = select("Przekaż Krwisty Kamień", "Zrozumiałem.")

if s == 2 then

return

elseif s == 1 then

if pc.count_item(30190) > 0 then

say_title(""..c_name.."")

say("Nazywam się "..c_name..". Przyszedłem z rozkazu Zakonu")

say("Smoków! Jako dowód przekazuję święty Krwisty")

say("Kamień. A teraz pozwól mi przejść! ")

local f = select("Kontynuuj")

if f == 1 then

say("Bóg Smoków wybrał właśnie Ciebie. Niech strzeże")

say("Cię na każdym kroku!")

pc.remove_item(30190,1)

pc.warp(10050,1669260)

end

end

end

end

 

Opublikowano

Witam, mam tu quest na automatyczną informację co ustawiony czas na serwerze, czy można w jednym queście zastosować np. 3 wiadomości o różnych rozpiętościach czasowych ? pierwsza 5 min druga 10 itp ?

 

http://wklej.to/YveCO

 

 

Za pomoc +++

 

Siema. Co w tym quescie jest nie tak?

 

quest grota_wyg begin

state start begin

when 20093.chat."Chcę wejść " begin

say_title("Koe-Pung:")

say("Stój! Jestem Koe-Pung z Zakonu Smoków, strażnik")

say("portalu. Możesz przejść tylko jeśli otrzymałeś")

say("pozwolenie Zakonu i jeśli pokażesz mi Krwisty")

say("Kamień! ")

local s = select("Przekaż Krwisty Kamień", "Zrozumiałem.")

if s == 2 then

return

elseif s == 1 then

if pc.count_item(30190) > 0 then

say_title(""..c_name.."")

say("Nazywam się "..c_name..". Przyszedłem z rozkazu Zakonu")

say("Smoków! Jako dowód przekazuję święty Krwisty")

say("Kamień. A teraz pozwól mi przejść! ")

local f = select("Kontynuuj")

if f == 1 then

say("Bóg Smoków wybrał właśnie Ciebie. Niech strzeże")

say("Cię na każdym kroku!")

pc.remove_item(30190,1)

pc.warp(10050,1669260)

end

end

end

end

 

 

 

 

 

 

Proste, jeżeli masz taki say:

 

 

say("portalu. Możesz przejść tylko jeśli otrzymałeś")

 

 

to zamień to na:

 

say("portalu. Możesz przejść tylko jeśli otrzymałeś ")

 

 

Jeżeli say kończy się literą jako polskie znaki np ć ś itp, to musisz zrobić taki odstęp na jedną spację :D

 

 

pozdrawiam !

2421404553.png
Opublikowano

Może i tak lecz błąd jest dalej po podaniu ./qc grota_wyg.quest w konsoli wyświetla:

QUEST : grota_wyg

STATE : start

WHEN : 20093.chat ("Chcę wejść ")

assertion failure : nested ==0

grota_wyg.quest:28:Abort (core dumped)

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...