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

sunushi a gdyby zastosować pc . give_exp2 ( 'xxxxx' ) i podać wartość ujemną to może by poszło? A wtedy mi nie działał ten temat, dopiero jak do moderacji spam robiłem zaczął działać.

6fc086389b796c47.jpg
Siedzę na mpc gdy jest czas, dzięki temu dużo się od was uczę dzięki!!

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

@up to i tak nic nie da bo np.

 

masz 3000Expa i ustawisz -500000 to będziesz miał 0 ale nadal ten poziom.

A to może querka? ;)

Gdyby ludzie rozmawiali tylko o tym, co rozumieją, zapadłaby nad światem wielka cisza

Albert Einstein

Opublikowano

Potrzebuje zmienną typu int rozpisać na części pierwsze czyli np.:

local liczba = 123456
say(liczba[1])
say(liczba[2])
say(liczba[3])
say(liczba[4])
say(liczba[5])
say(liczba[6])

 

Ten sposób nie chce działać. Szukałem też czegoś na temat substr, ale nie zbyt jest.

Opublikowano

querka? A wytłumaczyłbyś co to dokładnie znaczy i o co z tym chodzi?

Querka, czyli query, czyli zapytanie do bazy ;)

 

Tylko nie jestem pewien, czy po wylogowaniu i zalogowaniu, bo relog w przypadku querki będzie niezbędny, poziom się od razu zmieni, o ile wgl ;)

 

Nie mam żadnego serwera teraz, więc nie sprawdzę.

Gdyby ludzie rozmawiali tylko o tym, co rozumieją, zapadłaby nad światem wielka cisza

Albert Einstein

Opublikowano

Witam wszystkich troche moze nie ten temat ale mam pytanie jeżeli sam spalszczam locale.lua to po resecie serwa wywala mi bład czy musze jeszcze gdziec coś zmienic?

Opublikowano

Witam wszystkich troche moze nie ten temat ale mam pytanie jeżeli sam spalszczam locale.lua to po resecie serwa wywala mi bład czy musze jeszcze gdziec coś zmienic?

Nie. Najprawdopodobniej gdzieś usunąłeś " lub popatrz czy na końcach zdań nie ma znaków specjalnych czyli ś,ć,ą itp.

Gdyby ludzie rozmawiali tylko o tym, co rozumieją, zapadłaby nad światem wielka cisza

Albert Einstein

Opublikowano

say ( "Witaj" )

say ( "Masz Do wyboru Opcje Wybierz Jaka Ci sie Podoba !" )

say ( "" )

wait ( )

local s = select ( "Wróć Do Miasta" ,"Idź Do Atlantydy" , "Idź do Czer. Las" , "Idź Do V2" , "Bossy" , "Koń I Ranga oraz lvl i kasa" , "Skile" , "Poli Moby" , "Anuluj" )

if 1 == s then

say_title ("Zostaniesz Przeniesiony")

say ("Trzymaj się Mocno")

wait ()

local empire = pc . get_empire ( )

if empire == 1 then

pc . warp ( 474300 , 954800 )

elseif empire == 2 then

pc . warp ( 63800 , 166400 )

elseif empire == 3 then

pc . warp ( 959900 , 269200 )

end

 

 

elseif 2 == s then

say_title ("Zostaniesz Przeniesiony")

say ("Trzymaj się Mocno")

wait ()

local empire = pc . get_empire ( )

if empire == 1 then

pc.warp ( 9800 , 1215100 )

elseif empire == 2 then

pc.warp ( 9800 , 1215100 )

elseif empire == 3 then

pc.warp ( 9800 , 1215100 )

end

 

 

 

 

elseif 3 == s then

say_title ("Zostaniesz Przeniesiony")

say ("Trzymaj się Mocno")

wait ()

local empire = pc . get_empire ( )

if empire == 1 then

pc.warp ( 1119900 , 70800 )

elseif empire == 2 then

pc.warp ( 1119900 , 70800 )

elseif empire == 3 then

pc.warp ( 1119900 , 70800 )

end

 

 

elseif 4 == s then

say_title ("Zostaniesz Przeniesiony")

say ("Trzymaj się Mocno")

wait ()

local empire = pc . get_empire ( )

if empire == 1 then

pc.warp ( 704100 , 464100 )

elseif empire == 2 then

pc.warp ( 704100 , 464100 )

elseif empire == 3 then

pc.warp ( 704100 , 464100 )

end

 

elseif 5 == s then

say ( "Cześć" )

say ( "Wybierz Jednego Z tych Bossów" )

say ("Lub Wybierz Opcje Powrotu Do Noralnej Postaci ")

local s = select ( "Reaper" ,"Ogni.Krol" , "Eli.Krol.Demo." , "Tysięczny Woj" , "Wroc_Do_Normalnej_Postaci." )

say ("Czy Napewno Chcesz Kontynuowac?")

local scelta = select ( "Tak","Nie" )

if scelta==1 then

pc.polymorph ( 1093, 80 )

elseif scelta==2 then

say ( "Nie To Nie Łaski Bez" )

return

end

 

 

 

if 2 == s then

pc.polymorph ( 2206, 90 )

end

 

 

if 3 == s then

pc.polymorph ( 1092, 80 )

end

 

 

if 4 == s then

pc.polymorph ( 1403, 80 )

end

 

if 5 == s then

pc.polymorph ( 1, 1 )

end

 

 

 

elseif 6 == s then

say ( "Cześć" )

say ( "Czy Chcesz Dostać Konia lvl 21 I Range Rycerski??" )

local scelta = select ( "Tak","Nie" )

if scelta==1 then

pc . set_skill_level ( 131 , 10 )

horse.set_level ( 21 )

pc.change_alignment ( 200000 )

pc.change_money ( 1000000000 )

pc.get_level ( 250 )

pc.give_item2 ( 50053 )

elseif scelta==2 then

say ("Nie to Nie laski Bez ")

return

end

 

elseif 7 == s then

say_title ( "Cześć" )

say ( "Czy chcesz wbić wszystkie skille na P??" )

local s = select ( "Tak" , "Nie" )

if 2 == s then

say ("Nie To Nie Łaski Bez ")

return

end

say ( "Otrzymałeś Wszystkie Skille P" )

if pc . get_job() == 0 and pc . get_skill_group()==1 then

pc . set_skill_level (1, 59)

pc . set_skill_level (2, 59)

pc . set_skill_level (3, 59)

pc . set_skill_level (4, 59)

pc . set_skill_level (5, 59)

elseif pc . get_job()==0 and pc . get_skill_group()==2 then

pc . set_skill_level (16, 59)

pc . set_skill_level (17, 59)

pc . set_skill_level (18, 59)

pc . set_skill_level (19, 59)

pc . set_skill_level (20, 59)

elseif pc . get_job()==1 and pc . get_skill_group()==1 then

pc.set_skill_level(31, 59)

pc.set_skill_level(32, 59)

pc.set_skill_level(33, 59)

pc.set_skill_level(34, 59)

pc.set_skill_level(35, 59)

elseif pc . get_job()==1 and pc . get_skill_group()==2 then

pc.set_skill_level(46, 59)

pc.set_skill_level(47, 59)

pc.set_skill_level(48, 59)

pc.set_skill_level(49, 59)

pc.set_skill_level(50, 59)

elseif pc . get_job()==2 and pc . get_skill_group()==1 then

pc.set_skill_level(61, 59)

pc.set_skill_level(62, 59)

pc.set_skill_level(63, 59)

pc.set_skill_level(64, 59)

pc.set_skill_level(65, 59)

pc.set_skill_level(66, 59)

elseif pc . get_job()==2 and pc . get_skill_group()==2 then

pc.set_skill_level(76, 59)

pc.set_skill_level(77, 59)

pc.set_skill_level(78, 59)

pc.set_skill_level(79, 59)

pc.set_skill_level(80, 59)

pc.set_skill_level(81, 59)

elseif pc . get_job()==3 and pc . get_skill_group()==1 then

pc.set_skill_level(91, 59)

pc.set_skill_level(92, 59)

pc.set_skill_level(93, 59)

pc.set_skill_level(94, 59)

pc.set_skill_level(95, 59)

pc.set_skill_level(96, 59)

elseif pc . get_job()==3 and pc . get_skill_group()==2 then

pc.set_skill_level(106, 59)

pc.set_skill_level(107, 59)

pc.set_skill_level(108, 59)

pc.set_skill_level(109, 59)

pc.set_skill_level(110, 59)

pc.set_skill_level(111, 59)

end

 

elseif 8 == s then

say ( "Cześć" )

say ( "Wybierz Jakiego Moba Chcesz Sie Zamienic," )

say ( "Lub Wybierz Opcje Powrotu Do Normalnej Postaci " )

local s = select ( "Silny Dziki Sluga" ,"Dziki Pies" , "Goo-Pae" , "Podly Demoni Zolnierz" , "Niebianski Zolnierz" , "Wroc_Do_Normalnej_Postaci." )

say ("Czy Napewno Chcesz Kontynuowac?")

local scelta = select ( "Tak","Nie" )

if scelta==1 then

pc.polymorph ( 552, 80 )

elseif scelta==2 then

say ( "Nie To Nie Łaski Bez" )

return

end

 

 

if 2 == s then

pc.polymorph ( 101, 90 )

end

 

 

if 3 == s then

pc.polymorph ( 493, 80 )

end

 

 

if 4 == s then

pc.polymorph ( 1031, 80 )

end

 

 

if 5 == s then

pc.polymorph ( 2401, 80 )

end

 

 

if 6 == s then

pc.polymorph ( 1, 1 )

end

 

pc . setqf ( "next_time" , get_time ( ) + 3600 )

elseif 9 == s then

say ( "Może Innym razem" )

say ( "" )

end

 

Dało by rade Zrobić tak że jak ktos kliknie na kasa kon i lvl to da mu też 250lvl??

4ru8nn.png

Opublikowano

quest deviltower_zone begin

state start begin

when login begin

if pc.get_map_index() == 66 then

if pc.get_x() < 2048+88 or pc.get_y() < 6656+577 or pc.get_x() > 2048+236 or pc.get_y() > 6656+737 then

pc.warp((5376+532)*100, (512+596+4)*100, 65)

end

pc.set_warp_location(65, 5376+532, 512+596+4)

elseif pc.get_map_index() >= 660000 and pc.get_map_index() <= 670000 then

pc.set_warp_location(65, 5376+532, 512+596+4)

end

end

when deviltower_man.chat.locale.deviltower_man_chat begin

if pc.get_level() < 65 then

say(locale.deviltower_man_say_you_cant)

else

say(locale.deviltower_man_say)

local s = select(locale.deviltower_enter,locale.deviltower_no_enter)

if s == 1 then

-- warp into!

pc.warp(216500,727000)

end

end

end

when devil_stone1.kill begin

timer("devil_stone1_1", 5)

end

when 30121.take with item.vnum == 30185 begin

item.remove()

d.new_jump_all(66, special.devil_tower[1][1], special.devil_tower[1][2])

d.regen_file("data/dungeon/deviltower2_2_regen.txt")

d.set_warp_at_eliminate(4, d.get_map_index(), special.devil_tower[2][1], special.devil_tower[2][2], "data/dungeon/deviltower3_2_regen.txt")

end

when 30121.chat."Wer bist du?" begin

say("Sei gegrüßt Fremder!")

say("Ich bin der Wächter der zweiten, geheimem Ebne")

say("Um sie zu betreten, musst du mir")

say("ein spezeilles Item bringen")

say("Dies kriegst du nur vom Blauen Tod!")

say_item("Schwarzes Eis", 30185, "")

wait()

say("Zieh es einfach auf mich,")

say("und ich werde dir und deinen Gefährten")

say("den Weg in die geheime Ebne zeigen...")

end

when devil_stone1_1.timer begin

local mapto7= pc.count_item(30302) -- ®ř·Ŕ¤ŁŞľ¬O§_¦s¦bŞşŻu¤`ĆF¶đ

pc.remove_item(30302,mapto7)

 

local boxto7= pc.count_item(30300) -- ®ř·Ŕ¤ŁŞľ¬O§_¦s¦bŞş¤ŁŞľ¦WŞş˝c¤l

pc.remove_item(30300,boxto7)

d.new_jump_all(66, special.devil_tower[1][1], special.devil_tower[1][2])

d.regen_file("data/dungeon/deviltower2_regen.txt")

d.set_warp_at_eliminate(4, d.get_map_index(), special.devil_tower[2][1], special.devil_tower[2][2], "data/dungeon/deviltower3_regen.txt")

end

--when devil_stone2.kill begin

--d.jump_all_local(special.devil_tower[2][1], special.devil_tower[2][2])

--end

when devil_stone3.kill begin

--d.jump_all_local(special.devil_tower[3][1], special.devil_tower[3][2])

--d.set_exit_all_at_eliminate(6)

--d.set_warp_at_eliminate(6, d.get_map_index(), 100, 100)

--d.set_warp_at_eliminate(4, 65, 5376+532, 512+596+4)

d.set_warp_at_eliminate(4, d.get_map_index(), special.devil_tower[3][1], special.devil_tower[3][2], "data/dungeon/deviltower4_regen.txt")

d.check_eliminated()

--d.exit_all()

end

function get_4floor_stone_pos()

local positions = {

{368, 629},

{419, 630},

{428, 653},

{422, 679},

{395, 689},

{369, 679},

{361, 658},

}

for i = 1, 6 do

local j = number(i, 7)

if i != j then

local t = positions;

positions = positions[j];

positions[j] = t;

end

end

--for i = 1, 7 do

-- positions[1] = positions[1] * 100

-- positions[2] = positions[2] * 100

-- end

return positions

end

when 8016.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

d.setf("level", 4)

-- ¦A˛{¤j¶q©ÇŞ«¤Î»słyŻuĄŰŔY©M°˛ĄŰŔY

--d.regen_file("data/dungeon/deviltower4_regen.txt")

local positions = deviltower_zone.get_4floor_stone_pos()

for i = 1, 6 do

chat(positions[1], positions[2])

d.set_unique("fake" .. i , d.spawn_mob(8017, positions[1], positions[2]))

end

chat(positions[7][1], positions[7][2])

local vid = d.spawn_mob(8017, positions[7][1], positions[7][2])

chat(vid)

d.set_unique("real", vid)

server_loop_timer('devil_stone4_update', 10, pc.get_map_index())

server_timer('devil_stone4_fail1', 5*60, pc.get_map_index())

 

d.notice("Du hast den Metin des Teufels");

d.notice("Zerstört!");

d.notice("Du hast nun 15Min Zeit, den Richtigen");

d.notice("Metin des Sturzes zu zerstören!");

d.notice("Nur duch Zerstörung ddes Richtigen kommtst du weiter!");

end

 

when devil_stone4_fail1.server_timer begin

if d.select(get_server_timer_arg()) then

d.notice("Es verbleiben noch 10min!")

server_timer('devil_stone4_fail2', 5*60, get_server_timer_arg())

end

end

 

when devil_stone4_fail2.server_timer begin

if d.select(get_server_timer_arg()) then

d.notice("Es verbleiben noch 5min!")

server_timer('devil_stone4_fail', 5*60, get_server_timer_arg())

end

end

 

when devil_stone4_fail.server_timer begin

if d.select(get_server_timer_arg()) then

d.notice("Die Zeit ist abgelaufen.")

d.exit_all()

clear_server_timer('devil_stone4_update', get_server_timer_arg())

end

end

 

when devil_stone4_update.server_timer begin

if d.select(get_server_timer_arg()) then

if not d.is_unique_dead("real") then

for i = 1, 6 do

if d.getf("fakedead" .. i) == 0 then

if d.unique_get_hp_perc("fake" .. i) < 50 then

d.purge_unique("fake" .. i)

d.setf("fakedead" .. i, 1)

d.notice("Die falschen Metinsteine Verschwinden...");

end

end

end

else

--d.clear_regen()

--d.regen_file("data/dungeon/deviltower5_regen.txt")

server_timer("devil_stone4_end", 5, get_server_timer_arg())

d.notice("Du hast den Richtigen Metin des Sturzes zerstört!");

d.notice("Du wirst in den 5ten Stock Teleportiert..")

clear_server_timer('devil_stone4_fail1', get_server_timer_arg())

clear_server_timer('devil_stone4_fail2', get_server_timer_arg())

clear_server_timer('devil_stone4_fail', get_server_timer_arg())

end

else

server_timer('devil_stone4_stop_timer', 1, get_server_timer_arg())

end

end

 

when devil_stone4_stop_timer.server_timer begin

clear_server_timer('devil_stone4_update', get_server_timer_arg())

end

 

when devil_stone4_end.server_timer begin

if d.select(get_server_timer_arg()) then

d.setf("level", 5)

d.setf("stone_count", 5)

d.notice("Du bist nun im 5ten Stock")

d.notice("Auf dieser Ebene ist viel Können gefragt!")

d.notice("Einige Monster droppen einen 'Schlüsselsein'")

d.notice("Ziehe diesen Stein auf die Säulen,")

d.notice("und komme auf Ebene6!")

 

d.jump_all(special.devil_tower[4][1], special.devil_tower[4][2])

server_timer('devil_stone5_fail1', 5*60, get_server_timer_arg())

clear_server_timer('devil_stone4_update', get_server_timer_arg())

 

-- 5ĽÓÄ~Äň¦A˛{

d.set_regen_file("data/dungeon/deviltower5_regen.txt")

 

-- 5ĽÓ«Ę¦LĄŰ¦A˛{

d.spawn_mob(20073, 421, 452)

d.spawn_mob(20073, 380, 460)

d.spawn_mob(20073, 428, 414)

d.spawn_mob(20073, 398, 392)

d.spawn_mob(20073, 359, 426)

end

end

when devil_stone5_fail1.server_timer begin

if d.select(get_server_timer_arg()) then

d.notice("łEs verbleiben noch 15min!")

server_timer('devil_stone5_fail2', 5*60, get_server_timer_arg())

end

end

 

when devil_stone5_fail2.server_timer begin

if d.select(get_server_timer_arg()) then

d.notice("Es verbleiben noch 10min!")

server_timer('devil_stone5_fail3', 5*60, get_server_timer_arg())

end

end

 

when devil_stone5_fail3.server_timer begin

if d.select(get_server_timer_arg()) then

d.notice("łEs verbleiben noch 5min!")

server_timer('devil_stone5_fail', 5*60, get_server_timer_arg())

end

end

 

when devil_stone5_fail.server_timer begin

if d.select(get_server_timer_arg()) then

d.notice("Die Zeit ist abgelaufen.")

d.exit_all()

end

end

 

--when devil_stone4.kill begin

--d.setf("level", 5)

--d.setf("stone_count", 4)

--d.clear_regen()

--d.regen_file("data/dungeon/deviltower5_regen.txt")

--d.jump_all_local(special.devil_tower[4][1], special.devil_tower[4][2])

--end

 

when 1062.kill with pc.in_dungeon() and d.getf("level") == 5 begin

local KILL_COUNT_FOR_DROP_KEY = 50

--if is_test_server() then

--KILL_COUNT_FOR_DROP_KEY = 1

--end

local n =d.getf("count") + 1

d.setf("count", n)

if n == KILL_COUNT_FOR_DROP_KEY then

-- ±Ľ¤UÂę°Í

game.drop_item(50084, 1)

d.setf("count", 0)

end

end

when devil_stone5.take with item.vnum == 50084 begin

npc.purge()

item.remove()

d.setf("stone_count", d.getf("stone_count") - 1)

if d.getf("stone_count") <= 0 then

d.setf("level", 6)

d.clear_regen()

d.regen_file("data/dungeon/deviltower6_regen.txt")

 

d.notice("Du hast das Siegel geöffnet!")

d.notice("Du wirst nun auf die 6te Ebene zu dem Dämonenkönig geportet!")

d.jump_all(special.devil_tower[5][1], special.devil_tower[5][2])

clear_server_timer('devil_stone5_fail1', get_server_timer_arg())

clear_server_timer('devil_stone5_fail2', get_server_timer_arg())

clear_server_timer('devil_stone5_fail3', get_server_timer_arg())

clear_server_timer('devil_stone5_fail', get_server_timer_arg())

else

d.notice("Du hast ein Siegel geöffnet! "..d.getf("stone_count").." verbleiben noch!")

end

end

 

when devil_stone6.kill begin

 

-- Geschickt, um eine Karte, wo die Verfeinerung St.

-- Ansonsten ˇĽfnen Sie ein neues Lian Sheng

-- d.jump_all(special.devil_tower[6][1], special.devil_tower[6][2])

 

d.kill_all()

 

--d.set_warp_at_eliminate(3*60, 65, 5376+532, 512+596+4)

 

d.notice("Der Dämonenkönig wurde getötet. In wenigen Sekunden")

d.notice("wird dich ein Schmied belohnen.")

 

timer("schmied_spawn",10)

 

--d.check_eliminated()

--local reward_alchemist = {20074, 20075, 20076}

--d.spawn_mob(reward_alchemist[number(1,3)], 425, 216);

--d.setqf("can_refine", 1)

end

 

when schmied_spawn.timer begin

d.check_eliminated()

local reward_alchemist = {20074, 20075, 20076}

d.spawn_mob(reward_alchemist[number(1,3)], 425, 216);

d.setqf("can_refine", 1)

end

--------------------------------------

-- ĄŃ¶i¤J7ĽÓ¦Ü¨ěąF8ĽÓ¤§«e

--------------------------------------

 

when 20074.chat."Zu den Höheren Stockwerken.." with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000begin

npc.lock()

say(""..mob_name(20074).."")

say("In den Höheren Ebenen des Turms")

say("wartet der Sensenmann auf dich!")

say("Du musst mindestens LV80 sein!")

say("Bist du sicher das du voranschreiten willst?")

wait()

if pc.level >=80 then

say("Du bist mutig..")

say("Ich werde dich Teleportieren...")

say("")

npc.purge()

timer("devil_jump_7", 6)

return

end

say("Du bist unter Level80!")

say("Du wirst weiter oben nur Grausame Qualen zuspüren bekommen...")

say("Ich Teleportiere dich jetzt runter...zu deiner Sicherheit...")

say("")

wait()

pc.warp(590500, 110500)

return

end

when 20075.chat."Zu den Höheren Stockwerken.." with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

npc.lock()

say(""..mob_name(20075).."")

say("In den Höheren Ebenen des Turms")

say("wartet der Sensenmann auf dich!")

say("Du musst mindestens LV80 sein!")

say("Bist du sicher das du voranschreiten willst?")

wait()

if pc.level >=80 then

say("Du bist mutig..")

say("Ich werde dich Teleportieren...")

say("")

npc.purge()

timer("devil_jump_7", 6)

return

end

say("Du bistt unter Level80!")

say("Du wirst weiter oben nur Grausame Qualen zuspüren bekommen...")

say("Ich Teleportiere dich jetzt runter...zu deiner Sicherheit...")

say("")

wait()

pc.warp(590500, 110500)

return

end

when 20076.chat."Zu den Höheren Stockwerken.." with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

npc.lock()

say(""..mob_name(20076).."")

say("In den Höheren Ebenen des Turms")

say("wartet der Sensenmann auf dich!")

say("Du musst mindestens LV80 sein!")

say("Bist du sicher das du voranschreiten willst?")

wait()

if pc.level >=80 then

say("Du bist mutig..")

say("Ich werde dich Teleportieren...")

say("")

npc.purge()

timer("devil_jump_7", 6)

return

end

say("Du bist unter Level80!")

say("Du wirst weiter oben nur Grausame Qualen zuspüren bekommen...")

say("Ich Teleportiere dich jetzt runter...zu deiner Sicherheit...")

say("")

wait()

pc.warp(590500, 110500)

return

end

 

when devil_jump_7.timer begin

d.clear_regen()

 

d.spawn_mob(8018, 639, 658)

d.spawn_mob(8018, 611, 637)

d.spawn_mob(8018, 596, 674)

d.spawn_mob(8018, 629, 670)

 

d.setf("level", 7)

 

d.jump_all(2048+590, 6656+638)

end

 

when 8018.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

local cont = d.getf("7_stone_kill") + 1

d.setf("7_stone_kill", cont)

 

if cont >= 4 then

d.setf("7_stone_kill", 0)

d.set_regen_file("data/dungeon/deviltower7_regen.txt")

end

end

 

when 8019.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

game.drop_item(30300, 1)

end

 

when 30300.use with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

pc.remove_item("30300", 1)

 

local pct = number(1,10)

 

if pct == 1 then

-- ±Ľ¤UŻu¦aąĎ

game.drop_item(30302, 1)

d.clear_regen()

else

-- ±Ľ¤U°˛¦aąĎ

game.drop_item(30301, 1)

 

end

end

 

when 30302.use with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

-- ¶Ç°e¨ě8ĽÓ

say("Du wirst in den 7ten Stock Teleportiert..")

pc.remove_item("30302", 1)

timer("devil_jump_8", 6)

d.clear_regen()

end

 

--------------------------------------------

-- ĄŃ¶i¤J8ĽÓ¦Ü¨ěąF9ĽÓ¤§«e

--------------------------------------------

when devil_jump_8.timer begin

d.setf("level", 8)

d.jump_all(2048+590, 6656+403)

d.set_regen_file("data/dungeon/deviltower8_regen.txt")

d.spawn_mob(20366, 640, 460)

 

local _count= pc.count_item(30302)-- ®ř·ŔŻu¤`ĆF¶đ

pc.remove_item(30302,_count)

 

end

 

when 1040.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

local pct1 = number(1, 5)

if pct1 == 1 then

local pct2 = number(1, 10)

if pct2 == 1 then

-- ±Ľ¤UŻuÂę°Í

game.drop_item(30304, 1)

else

-- ±Ľ¤U°˛Âę°Í

game.drop_item(30303, 1)

end

else

return

end

end

 

when 20366.take with item.vnum == 30304 begin

-- 9ĽÓ«Ę¦L¸Ń°Ł

npc.purge()

item.remove()

d.kill_all()

timer("devil_jump_9", 6)

end

 

---------------------------------------------

-- ĄŃ¶i¤J9ĽÓ¦Üµ˛§ô

---------------------------------------------

when devil_jump_9.timer begin

d.setf("level", 9)

d.jump_all(2048+590, 6656+155)

d.clear_regen()

d.regen_file("data/dungeon/deviltower9_regen.txt")

end

 

when 1093.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

d.notice("Du hast das Oberhaupt der Dämonen getötet...")

d.notice("Du bist wahrhaft ein mächtiger kämpfer...")

d.kill_all()

timer("devil_jump_10", 6)

end

---------------------------------------------

-- ĄŃ¶i¤J9ĽÓ¦Üµ˛§ô

---------------------------------------------

when devil_jump_10.timer begin

d.setf("level", 10)

d.clear_regen()

d.jump_all(2048+590, 6656+403)

d.regen_file("data/dungeon/deviltower10_regen.txt")

d.spawn_mob(1094, 602, 442)

end

 

when 1094.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

d.check_eliminated()

timer("devil_jump_11", 6)

end

---------------------------------------------

-- ĄŃ¶i¤J9ĽÓ¦Üµ˛§ô

---------------------------------------------

when devil_jump_11.timer begin

d.setf("level", 11)

d.clear_regen()

d.jump_all(2048+590, 6656+155)

d.regen_file("data/dungeon/deviltower11_regen.txt")

d.spawn_mob(1095, 610, 194)

end

 

 

when 1095.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

d.kill_all()

d.kill_all()

d.notice("Du hast das geschafft, was keiner gedacht hat...")

d.notice("Du hast den Blauten Tod getötet...")

d.notice("Nun erscheinen 3 Schmiede...")

d.notice("In 2min wirst du herraus telepotiert!")

d.check_eliminated()

--d.spawn_mob(20366, 690, 158);

d.spawn_mob(20074,600,168,0,0,1);

d.spawn_mob(20075,605,178,0,0,1);

d.spawn_mob(20076,610,188,0,0,1);

d.setqf("can_refine", 3)

timer("lolbai", 120)

 

end

when lolbai.timer begin

d.exit_all()

end

 

when 2591.kill begin

d.kill_all()

--d.clear_regen()

--d.regen_file("data/dungeon/deviltower4_2_regen.txt")

d.set_warp_at_eliminate(4, d.get_map_index(), special.devil_tower[3][1], special.devil_tower[3][2], "data/dungeon/deviltower4_2_regen.txt")

d.check_eliminated()

end

 

when 8024.kill with pc.in_dungeon() begin

d.setf("level", 4)

-- ¦A˛{¤j¶q©ÇŞ«¤Î»słyŻuĄŰŔY©M°˛ĄŰŔY

--d.regen_file("data/dungeon/deviltower4_regen2.txt")

local positions = deviltower_zone.get_4floor_stone_pos()

for i = 1, 6 do

chat(positions[1], positions[2])

d.set_unique("fake" .. i , d.spawn_mob(8025, positions[1], positions[2]))

end

chat(positions[7][1], positions[7][2])

local vid = d.spawn_mob(8025, positions[7][1], positions[7][2])

chat(vid)

d.set_unique("real", vid)

server_loop_timer('devil_stone4_update2', 10, pc.get_map_index())

server_timer('devil_stone4_fail1', 5*60, pc.get_map_index())

 

d.notice("Du hast den Metin Zerstört!");

d.notice("Du hast nun 15Min Zeit, den Richtigen");

d.notice("Metin zu zerstören!");

d.notice("Nur duch Zerstörung des richtigen kommtst du weiter!");

end

 

when devil_stone4_update2.server_timer begin

if d.select(get_server_timer_arg()) then

if not d.is_unique_dead("real") then

for i = 1, 6 do

if d.getf("fakedead" .. i) == 0 then

if d.unique_get_hp_perc("fake" .. i) < 50 then

d.purge_unique("fake" .. i)

d.setf("fakedead" .. i, 1)

d.notice("Die falschen Metinsteine verschwinden...");

end

end

end

else

server_timer("devil_stone4_end2", 5, get_server_timer_arg())

d.notice("Du hast den Richtigen Metin zerstört!");

d.notice("Du wirst in den 5ten Stock teleportiert..")

clear_server_timer('devil_stone4_fail1', get_server_timer_arg())

clear_server_timer('devil_stone4_fail2', get_server_timer_arg())

clear_server_timer('devil_stone4_fail', get_server_timer_arg())

end

else

server_timer('devil_stone4_stop_timer', 1, get_server_timer_arg())

end

end

when devil_stone4_end2.server_timer begin

if d.select(get_server_timer_arg()) then

d.setf("level", 5)

d.setf("stone_count", 5)

d.notice("Du bist nun im 5ten Stock")

d.notice("Auf dieser Ebene ist viel können gefragt!")

d.notice("Einige Monster droppen einen 'Scharfen Stein'")

d.notice("Ziehe diese Stein auf die Kisten")

 

d.jump_all(special.devil_tower[4][1], special.devil_tower[4][2])

server_timer('devil_stone5_fail1', 5*60, get_server_timer_arg())

clear_server_timer('devil_stone4_update2', get_server_timer_arg())

 

-- 5ĽÓÄ~Äň¦A˛{

d.set_regen_file("data/dungeon/deviltower5_2_regen.txt")

 

-- 5ĽÓ«Ę¦LĄŰ¦A˛{

d.spawn_mob(20359, 421, 452)

d.spawn_mob(20359, 380, 460)

d.spawn_mob(20359, 428, 414)

d.spawn_mob(20359, 398, 392)

d.spawn_mob(20359, 359, 426)

end

end

 

when 2542.kill with pc.in_dungeon() and d.getf("level") == 5 begin

local KILL_COUNT_FOR_DROP_KEY = 50

--if is_test_server() then

--KILL_COUNT_FOR_DROP_KEY = 1

--end

local n =d.getf("count") + 1

d.setf("count", n)

if n == KILL_COUNT_FOR_DROP_KEY then

-- ±Ľ¤UÂę°Í

game.drop_item(50084, 1)

d.setf("count", 0)

end

end

when 20359.take with item.vnum == 30064 and pc.in_dungeon() begin

npc.purge()

item.remove()

d.setf("stone_count", d.getf("stone_count") - 1)

if d.getf("stone_count") <= 0 then

d.setf("level", 6)

d.clear_regen()

d.regen_file("data/dungeon/deviltower6_2_regen.txt")

d.notice("Du hast alle Kisten geöffnet!")

d.notice("Du wirst nun auf die 6te Ebene zum Geisterkönig geportet!")

d.jump_all(special.devil_tower[5][1], special.devil_tower[5][2])

clear_server_timer('devil_stone5_fail1', get_server_timer_arg())

clear_server_timer('devil_stone5_fail2', get_server_timer_arg())

clear_server_timer('devil_stone5_fail3', get_server_timer_arg())

clear_server_timer('devil_stone5_fail', get_server_timer_arg())

else

d.notice("Du hast eine Kiste geöffnet! "..d.getf("stone_count").." verbleiben noch!")

end

end

 

when 2592.kill begin

d.kill_all()

d.check_eliminated()

local reward_alchemist = {20200, 20200, 20200}

d.spawn_mob(reward_alchemist[number(1,3)], 425, 216);

--d.setqf("can_refine", 1)

end

end

end

 

 

 

Czy powie mi ktos co z tym questem jest nie tak? gdy ubijam metki na 4 pietrze i ma juz przeniesc na pietro z pieczeciami wywala z gry pomoze ktos??? oczywiscie z 10x 5

Opublikowano

Witam,

Potrzebuje aby ktoś napisał mi questa polegającego na zmienianiu piosenek.

Np. wgrałem sobie do clienta dodatkowo 10 piosenek i chce aby po wpisaniu komendy inni gracze je usłyszeli, coś na zasadzie piosenki świątecznej.

Użytkownik z4z0l Podpowiedział mi

cmdchat oczywiście zadziała.

przykładowo w queście dodajesz :

 

cmdchat("muzyka", "piosenka1.mp3") -- piosenka1.mp3 znajdująca się w folderze BGM w kliencie

przy czym w game.py musisz dodać :

 

 

"muzyka" : self.__grajmuzyka,

 

oraz :

 

 

 

def __grajmuzyka(self, nazwa):

snd.FadeOutAllMusic()

musicInfo.SaveLastPlayFieldMusic()

snd.FadeInMusic("BGM/" + nazwa)

 

Ale kompletnie nie wiem jak to zastosować w quescie więc zwróciłem się do was o pomoc.

Z góry dziękuje za napisanie takiego questa.

Już nie aktualne :D

8910814572903361049127.png

Opublikowano

Proszę o poprawę questu. Chodzi mi dokładnie o to aby:

  • Gdy zalogujemy się to dostajemy ekwipunek na start.
  • Quest działa tylko raz

Bo teraz działa mi tak że po zalogowaniu nic się nie dzieje, a gdy wbiję 2 lvl to dopiero m idaje eq na start..

 

http://wklej.to/nyubL

Za pomoc limit like

Administrator Serwera Pantheons

Opublikowano

To działa w 100%

Sprawdziłem!!

http://wklej.to/qrBON/text

 

zmień z >= na ==

 

@poprawka.

Użyj tego:

http://wklej.to/ky46f

 

Tylko nie ma rozmowy na początku będę miał chwile to ci zrobię.

 

Łap z napisami itp tak jak chciałeś na 1 lvl quest.

http://wklej.to/hzBP8

 

nie zapomnij dodać do locale_list i zrobić sh make

6fc086389b796c47.jpg
Siedzę na mpc gdy jest czas, dzięki temu dużo się od was uczę dzięki!!

Opublikowano

Wytlumaczy mi dzialanie pc.setqf() i jego kumpla pc.getqf() oraz d.setf() i jego kumpla d.getf(), bo troszku nie ogarniam kiedy to uzyc ;(

Obama wie, co robisz!!!
131894.jpg                                                                                                                                                    4906167742.png

                                                                                                                                                                                                                                                                                      LTE Play Opole

Opublikowano

opisanie tego tak po prostu, jak bedzie dobrze opisane to ogarne ;D

Obama wie, co robisz!!!
131894.jpg                                                                                                                                                    4906167742.png

                                                                                                                                                                                                                                                                                      LTE Play Opole

Opublikowano

Ciężko mi to jakoś logicznie powiedzieć "pc.setqf() i jego kumpla pc.getqf()" pc.setqf zapisuje dane a jego kumpel je odczytuje, podejrzewam ze tamte 2 też są podobne do tych, dam mały przykład z mojego questa na zombie.:

	   when 2502.kill begin
				 local zabij = pc.getqf("zabite") + 1
					 if zabij <= 150 then
						 pc.setqf("zabite", zabij)
						 q.set_counter("Pozostało:", 150-pc.getqf("zabite"))
					 end

 

Więc ja ci zbytnio nie pomogę.

6fc086389b796c47.jpg
Siedzę na mpc gdy jest czas, dzięki temu dużo się od was uczę dzięki!!

Opublikowano

pc.setqf("NazwaZmiennej", 1)

Dla zmiennej o nazwie "NazwaZmiennej" deklaruje wartość 1. Zapisywana ona jest w bazie player.quest dla danego gracza na danym queście. Można do niej przypisywać tylko int (liczby).

 

pc.getqf("NazwaZmiennej")

Jest to wywołanie tej zmiennej np. (tak jak to pisał misiecki2) do zliczania ilości zabitych mobów. Warto dodać żeby na końcu questa jeżeli dana zmienna nie jest potrzebna ustawić ją na 0. Usunie to ją z bazy, a wtedy baza ma mniej rekordów i działa szybciej ;]

Opublikowano

Czy jest możliwość sprawdzenia bonusów gracza?

"Kiedy nie chcesz - szukasz powodów. Gdy chcesz - szukasz sposobów"

Opublikowano

http://www.mpcforum.pl/topic/722458-questitemshop-w-grze/

 

Problem z tym questem.

Po wgraniu nic nie ma u npc. Klikam na NPC i dalej nic help. jak ktoś ma lepszy prosze o udostępienie ale ja mam inny zamiar go wykorzystać + ulepszenie tylko chce aby narazie podstawowy działał.

"Mimo wszystko do normalnego życia jest potrzebna nam druga osoba."


Każdy kiedyś musi...


Koniec z MpcForum.pl


Opublikowano

Czy takie coś np:

local costusebedzie = select("50", "100", "150", "Anuluj")

 

stosuję sie jak zwykłe

locale a =...? i wtedy wyglada to tak:?

if costusebedzie == x then

6fc086389b796c47.jpg
Siedzę na mpc gdy jest czas, dzięki temu dużo się od was uczę dzięki!!

Opublikowano

Czy takie coś np:

local costusebedzie = select("50", "100", "150", "Anuluj")

 

stosuję sie jak zwykłe

locale a =...? i wtedy wyglada to tak:?

if costusebedzie == x then

 

Tak.

Tutaj "nadajesz nazwę" lokalnej:

local nazwa_lokalnej = coś tam

Noi teraz warunki:

if nazwa_lokalnej = * then

KONIEC


-----------------------------------------


2013-08-15

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...