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

[Quest] kupowanie potek bez potrzeby pojscia do m1 (v2.0 FINAL)


Rekomendowane odpowiedzi

Opublikowano

Quest pozwala kupić potki w dowolnym miejscu w grze.

 

Dzialanie questa:

1. Klikamy w "kup potki" na liscie questów.

2. Wybieramy jakie potki chcemy kupić.

3. Quest sprawdza czy mamy wystarczajaca ilosc yang.

4. Jezeli nie mamy wystarczajacej ilosci yang wyswietla sie informacja : "Niestety, ale nie masz Wystarczającej ilości Yang. ".

5. Jezeli mamy to otrzymujemy potki i jest pobierana potrzebna ilosc yang.

6. Okienko questa sie zamyka.

 

Quest:

quest potki begin
   state start begin
       when login or levelup with pc.get_level() >= 1 begin
           set_state( gotoinfomation )
       end
   end
   state gotoinfomation begin
       when letter begin
           send_letter("Kup potki")
       end
       when button or info begin
           -----------------------------
	    local brak_kasa = "Niestety, ale nie masz Wystarczającej ilości Yang. "
	    -----------------------------
	    local red_potki_200 = 32000
           local red_potki_1000 = 160000
           local blue_potki_200 = 64000
           local blue_potki_1000 = 320000
           local green_potki_200 = 100000
           local green_potki_1000 = 500000
	    -----------------------------
           say_title("Kup potki")
               local s = select ( "200 Duze Czerwone 32k" , "1000 Duze Czerwone 160k" , "200 Duze Niebieskie 64k" , "1000 Duze Niebieskie 320k" , "200 Duze Zielone 100k" , "1000 Duze Zielone 500k" , "Anuluj" )
                   if 1 == s then
                       if pc.get_money() >= red_potki_200 then
                           pc.give_item2(27003, 200)
                           pc.change_money(-32000)
                       else
					    say(brak_kasa)
				    end
                   elseif 2 == s then
                       if pc.get_money() >= red_potki_1000 then
                           pc.give_item2(27003, 200)
                           pc.give_item2(27003, 200)
                           pc.give_item2(27003, 200)
                           pc.give_item2(27003, 200)
                           pc.give_item2(27003, 200)
                           pc.change_money(-160000)
                       else
					    say(brak_kasa)
				    end
                   elseif 3 == s then
                       if pc.get_money() >= blue_potki_200 then
                           pc.give_item2(27006, 200)
                           pc.change_money(-64000)
                       else
					    say(brak_kasa)
				    end
                   elseif 4 == s then
                       if pc.get_money() >= blue_potki_1000 then
                           pc.give_item2(27006, 200)
                           pc.give_item2(27006, 200)
                           pc.give_item2(27006, 200)
                           pc.give_item2(27006, 200)
                           pc.give_item2(27006, 200)
                           pc.change_money(-320000)
                       else
					    say(brak_kasa)
				    end
                   elseif 5 == s then
                       if pc.get_money() >= green_potki_200 then
                           pc.give_item2(27102, 200)
                           pc.change_money(-100000)
                       else
					    say(brak_kasa)
				    end
                   elseif 6 == s then
                       if pc.get_money() >= green_potki_1000 then
                           pc.give_item2(27102, 200)
                           pc.give_item2(27102, 200)
                           pc.give_item2(27102, 200)
                           pc.give_item2(27102, 200)
                           pc.give_item2(27102, 200)
                           pc.change_money(-500000)
                       else
					    say(brak_kasa)
				    end
                   end
               end
       end
end

 

W calosci napisany przeze mnie, 100% dziala. Jezeli bylo to sorry. :D

Opublikowano

sadze ze jezeli pierscien teleportacji moze przenosic z mapy na mape oszczedzajac nasz czas to quest tez chyba moze zaoszczedzic czas. Quest ma pomagac w sytuacjach np. gdy idziemy na ripa, na mapkach skonczyly nam sie poty, bysmy musieli logac do m1 i rozpoczynac dt od poczatku, z questem nie mamy tego problemu.

Opublikowano

sadze ze jezeli pierscien teleportacji moze przenosic z mapy na mape oszczedzajac nasz czas to quest tez chyba moze zaoszczedzic czas. Quest ma pomagac w sytuacjach np. gdy idziemy na ripa, na mapkach skonczyly nam sie poty, bysmy musieli logac do m1 i rozpoczynac dt od poczatku, z questem nie mamy tego problemu.

Tylko po co zaśmiecać dział?

Opublikowano

Można zmieścić w ~30 linijkach :D

Można to zrobić na tablicach i zrobić dynamiczne dodawanie rekordów. Ale po co taki quest wogóle?

ePc0b.jpg

mcn_cc.pl - banda złodziei

;)

Piszę questy na zamówienie - Zostanę questerem na serwerze dedykowanym - Na zlecenie napiszę questy - Zakoduję stronę HTML5/CSS3

Opublikowano

quest sklep_z_itemami begin
       state start begin
               when 20011.chat."Sklep z przedmiotami" begin
                       local przedmioty = {
                               {27003, 50},
                               {27006, 80},
                               {27102, 200},
                       }
                       say_title("Nazwa npc:")
                       say("Witaj, zajmuje się sprzedażą przedmiotów.")
                       say("Oto co mogę Ci zaoferować:")
                       local a = select(item_name(przedmioty[1][1]), item_name(przedmioty[2][1]), item_name(przedmioty[3][1]), "Anuluj")
                       if a == 4 then
                               return
                       end
                       local koszt = przedmioty[a][2]
                       say("Koszt zakupu jednej misktury to "..koszt.." Yang.")
                       say("Chcesz kupić?")
                       local b = select("Tak", "Nie")
                       if b == 1 then
                               say("Wpisz ile sztuk chcesz kupić:")
                               local input = tonumber(input())
                               if input < 0 or input > 200 or not tonumber(input()) or input == "" then
                                       say("Nie możesz mi psuć questa!")
                               elseif pc.get_gold() < input*koszt then
                                       say("Masz za mało yang!")
                               else
                                       pc.give_item2(przedmioty[a][1], input)
                                       pc.change_gold(-input*koszt)
                               end
                       end
               end
       end
end

 

quest @Sunushi'ego z jego tematu o tablicach. Przerobić na letter i gra gitara :) No i on ma tylko 34 linijki

Opublikowano

Tego też się da swoją drogą skrócić, np wywalić zmienną z tak/nie, tego if a == 4, i można dodać dynamiczne dodawanie rekordów do tablicy.

ePc0b.jpg

mcn_cc.pl - banda złodziei

;)

Piszę questy na zamówienie - Zostanę questerem na serwerze dedykowanym - Na zlecenie napiszę questy - Zakoduję stronę HTML5/CSS3

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...