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

Problem - Nie zlicza zabitych potworów


Rekomendowane odpowiedzi

Opublikowano

Co jest źle w tym etapie questu. Po wgraniu na serwer, gdy chce wykonać quest zabijam jednego dzikiego psa i wyskakuje, że quest jest wykonany. Chodzi mi, aby zabić 15 dzikich psów a nie jednego. Co jest nie tak?

 

 

state polowanie_dzikie_psy begin
        when letter begin
            send_letter("Pierwsze Zadanie")
        end
        when button or info begin
            say_title("Pierwsze Zadanie")
            say("")
            say("Strażnik Miejski zlecił Ci polowanie na Dzikie ")
            say("Psy. Musisz pokonać aż 15 sztuk. ")
            say("")
            say_reward("Pokonałeś "..pc.getqf("dzikie_psy").." z 15 Dzikich Psów. ")
        end
        when 101.kill begin
            local count = pc.getqf("dzikie_psy") + 1
            if count <= 15 then
            pc.setqf("dzikie_psy", count)
            q.set_counter("Pozostało:", 10 - count)
            if count == 15 then
            say_title("Pierwsze Zadanie")
            say("")
            say("Pokonałeś 15 Dzikich Psów. Udaj się do Strażnika ")
            say("Miejskiego i powiadom go o wykonaniu zadania. ")
            end
            end
            set_state(wroc_do_straznika_miejskiego)
        end
    end

 

Opublikowano
state polowanie_dzikie_psy begin
		when letter begin
			send_letter("Pierwsze Zadanie")
		end
		when button or info begin
			say_title("Pierwsze Zadanie")
			say("")
			say("Strażnik Miejski zlecił Ci polowanie na Dzikie ")
			say("Psy. Musisz pokonać aż 15 sztuk. ")
			say("")
			say_reward("Pokonałeś "..pc.getqf("dzikie_psy").." z 15 Dzikich Psów. ")
		end
		when kill with !npc.is_pc() and npc.get_race() == 101 begin
			local count = pc.getqf("dzikie_psy")
			pc.setqf("dzikie_psy", count+1)
			q.set_counter("Pozostało:", 15 - count)
			if count == 15 then
				say_title("Pierwsze Zadanie")
				say("")
				say("Pokonałeś 15 Dzikich Psów. Udaj się do Strażnika ")
				say("Miejskiego i powiadom go o wykonaniu zadania. ")
				end
				end
				set_state(wroc_do_straznika_miejskiego)
			end
		end

Proszę bardzo, powinno działać.

dCrwk2h.gif

Opublikowano

teraz przy w grywaniu na serwer mam błąd nazwa_questa.quest:66:expecting 'when' or 'function' Abort (core dumped)

 

Już wiem jedno end za dużo było.

 

 

Dalej mam ten sam problem. Zabijam jednego dzikiego psa i wyskakuje zadanie wykonane.

Opublikowano

Quest się kompiluje, ale wciąż nie działa. Po zabiciu dzikiego psa wyskakuje, że ukończone zadanie.Może źle wgrywam?

Opublikowano

wyczyściłem. wgrałem na nowo. i nic ciągle to samo.

 

 

quest pierwsze_zadanie begin
	state start begin
	end
	
	state run begin
		when login or levelup with pc.get_level() >= 1 begin
			set_state(idz_do_straznika_miejskiego)
		end
	end

	state idz_do_straznika_miejskiego begin
		when letter begin
			send_letter("Pierwsze Zadanie")
			local v = find_npc_by_vnum(20354)
			if v != 0 then
			target.vid("__TARGET__", v, "Stranik Miejski")
			end
		end
		when button or info begin
			say_title("Pierwsze Zadanie")
			say("")
			say("Strażnik Miejski ma dla Ciebie pierwsze ")
			say("poważne zadanie, w którym będziesz musiał ")
			say("walczyć. ") 
		end
		when __TARGET__.target.click  or 20354.chat."Pierwsze Zadanie" begin
			target.delete("__TARGET__")
			say_title("Strażnik Miejski: ")
			say("")
			say("Jeszcze nie wiem na co Ciebie stać, dlatego ")
			say("przyszedł czas, by sprawdzić jak władasz ")
			say("bronią. Twoje pierwsze zadanie polegać będzie ")
			say("na polowaniu na Dzikie Psy. ")
			say("Nie są one zbyt silne, więc powinieneś dać ")
			say("sobie z nimi radę. ")
			say("Ruszaj. Im szybciej rozpoczniesz to zadanie, ")
			say("tym szybciej je zakończysz! ")
			
			set_state(polowanie_dzikie_psy)
		end
	end
		
	state polowanie_dzikie_psy begin
        when letter begin
            send_letter("Pierwsze Zadanie")
        end
        when button or info begin
            say_title("Pierwsze Zadanie")
            say()
            say("Strażnik Miejski zlecił Ci polowanie na Dzikie ")
            say("Psy. Musisz pokonać aż 15 sztuk. ")
            say()
            say_reward("Pokonałeś "..pc.getqf("dzikie_psy").." z 15 Dzikich Psów. ")
        end
        when kill with npc.get_race() == 101 begin
            local count = pc.getqf("dzikie_psy")
            if count >= 15 then
                say_title("Pierwsze Zadanie")
                say()
                say("Pokonałeś 15 Dzikich Psów. Udaj się do Strażnika ")
                say("Miejskiego i powiadom go o wykonaniu zadania. ")
                say()
                clear_letter()
                set_state(wroc_do_straznika_miejskiego)
            else
                pc.setqf("dzikie_psy", pc.getqf("dzikie_psy")+1)
                q.set_counter("Pozostało:", 15 - count)
            end
        end
    end
	
    state wroc_do_straznika_miejskiego begin
    end
		
	state wroc_do_straznika_miejskiego begin
		when letter begin
			send_letter("Pierwsze Zadanie Wykonane")
		end
		when button or info begin
			say_title("Pierwsze Zadanie")
			say("")
			say("Udało Ci się wykonać pierwsze zadanie. Idź ")
			say("do Strażnika Miejskiego i powiedz mu o tym. ")
		end
		when __TARGET__.target.click  or 20354.chat."Pierwsze Zadanie" begin
			target.delete("__TARGET__")
			say_title("Strażnik Miejski: ")
			say("")
			say("Widzę, że udało Ci się wykonać zadanie. ")
			say("Udowodniłeś, że potrafisz władać bronią.  ")
			say("Teraz otrzymasz ode mnie Twoją nagrodę. ")
			say("")
			say_reward("Otrzymałeś: ")
			say_reward("1500 Yang")
			
			pc.give_exp2(300)
			pc.change_money(1500)
			
			clear_letter()
				set_state(__COMPLETE__)
				set_quest_state("drugie_zadanie","run")
		end
	end
	
	state __COMPLETE__ begin
	end
end

 

 

 

Jak ktoś może sprawdzić tego questa u siebie? Będę wdzięczny.

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...