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

Przenośne sklepy


Rekomendowane odpowiedzi

Opublikowano

Siemano.


Dzisiaj daje Wam do użytku quest 'Przenośne Sklepy'.

Polega na tym, że po kliknięciu w item mamy do wyboru wszystkie sklepy z opcją Dalej/Wróć/Wyjdź.

 

quest przenosny_sklep begin
		state start begin
			function first_shop()
				local shopy = {
							[1] = {1,  "Sklep nr 1"},
							[2] = {2,  "Sklep nr 2"},
							[3] = {3,  "Sklep nr 3"},
							[4] = {4,  "Sklep nr 4"},
							[5] = {5,  "Sklep nr 5"},
							[6] = {6,  "Sklep nr 6"},
							}
				local lista = {}
				for i=1, table.getn(shopy) do
					table.insert(lista, shopy[i][2]) 
				end
				table.insert(lista, "Dalej")
				table.insert(lista, "Wyjdz ")
				say_title("Sklepy:")
				local select = select_table(lista)
				if select == table.getn(lista)-1 then
					przenosny_sklep.second_shop()
				else
					npc.open_shop(shopy[select][1])
					setskin("NOWINDOW")
				end
			end
			function second_shop()
				local shopsy = {
							[1] = {7,   "Sklep nr 7"},
							[2] = {8,   "Sklep nr 8"},
							[3] = {9,   "Sklep nr 9"},
							[4] = {10,  "Sklep nr 10"},
							[5] = {11,  "Sklep nr 11"},
							[6] = {12,  "Sklep nr 12"},
							}
				local listas = {}
				for i=1, table.getn(shopsy) do
					table.insert(listas, shopsy[i][2]) 
				end
				table.insert(listas, "Wroc ")
				table.insert(listas, "Wyjdz ")
				say_title("Sklepy:")	
				local selectt = select_table(listas)
				if selectt == table.getn(listas)-1 then 
					przenosny_sklep.first_shop()
				else
					npc.open_shop(shopsy[selectt][1])
					setskin("NOWINDOW")
				end
			end
			when 80009.use begin
				przenosny_sklep.first_shop()
			end
		end
	end

 

http://wklej.to/GqK1v

 

Pozdrawiam.

 

Podziękowania dla Nexicoll za cenne wskazówki :D

727881401622271220780.jpeg
Opublikowano

Tak Z4z0l też mówi tak jak ja że to nie działa ;)

testowałem , gdy wybiorę z listy np sklep 1 to nic się nie dzieje po wybraniu

bo działa otwieranie sklepu tylko na npc a nie na item

konto usuniete

Opublikowano

Tak Z4z0l też mówi tak jak ja że to nie działa ;)

testowałem , gdy wybiorę z listy np sklep 1 to nic się nie dzieje po wybraniu

bo działa otwieranie sklepu tylko na npc a nie na item

Da się, diffem.

Opublikowano

Jacy wy przyjebani 1up i 2up/

Napisałem że go mam? Napisałem że się da tak samo jak z is i depo z daleka......... Pajace.

Już tak nie spinaj zwieraczy bo Ci żyłka pęknie.

Co do questa, to ja bym zamienił to Sklep nr x to bym zamienł na pętle szczerze. Ale to już kwestia i wola twórcy.

gwo9.jpg


Opublikowano

Faktycznie, z4z0l ma rację, choć nie do końca.

Przez item faktycznie nie da się otworzyć sklepu, jednak można POD WARUNKIEM, że uprzednio otwieraliśmy jakiegoś handlarza.

Bezpośrednio po zalogowaniu item nic nam nie da, jednak otwierając handlarkę a dopiero później klikając w item wszystko powinno działać.

 

Jeśli uważacie, że quest się przyda to korzystajcie...(?)

Jeśli nie, można zamknąć.

727881401622271220780.jpeg
Opublikowano

Gdyby on działał faktycznie po samej interakcji w item, to nie ma problemu. Ja nie widzę żadnego zastosowania, przykładowo będąc na mapie bez npc, które mają w sobie "sklep" to to już jest kompletnie nieprzydatne.

 

PS. słuchaj Nexicolla - daleko zajdziesz. Testuj sam, nie wyręczaj się nikim.

 

umarł

Opublikowano

Ja bym pod to raczej napisał nową funkcję, nie wiem czy będzie działać tak jak powinno, czy w ogóle będzie działać, ale tak z rana się kiepsko myśli.

 

function item_shop(vnum)
	ilosc = mysql_query("player", "SELECT COUNT(item_vnum) FROM shop_item where shop_vnum = '"..vnum.."';")
	shop = mysql_query("player", "SELECT item_vnum, count FROM shop_item where shop_vnum = '"..vnum.."';")
	
		local tablica = {}
		for i=1, tonumber(ilosc[1][1]) do
			if shop[i][2] > 1 then
				nazwa = tonumber(shop[i][2]).."x "..item_name(tonumber(shop[i][1])
			else
				nazwa = item_name(tonumber(shop[i][1]))
			end
			table.insert(lista, nazwa, shop[i][1], shop[i][2]) 
		end
		table.insert(lista, "Zakończ")
		say("wybierz")
		local wybor = select_table(lista)
		if wybor = table.getn(lista) then
			return
		else
			say("Wybrałeś przedmiot!")
			say("Nazwa: "..lista[wybor][2])
			say("ilosc: "..lista[wybor][3])
		end
end
  • 3 tygodnie później...
Opublikowano

 

Ja bym pod to raczej napisał nową funkcję, nie wiem czy będzie działać tak jak powinno, czy w ogóle będzie działać, ale tak z rana się kiepsko myśli.

 

function item_shop(vnum)
	ilosc = mysql_query("player", "SELECT COUNT(item_vnum) FROM shop_item where shop_vnum = '"..vnum.."';")
	shop = mysql_query("player", "SELECT item_vnum, count FROM shop_item where shop_vnum = '"..vnum.."';")
	
		local tablica = {}
		for i=1, tonumber(ilosc[1][1]) do
			if shop[i][2] > 1 then
				nazwa = tonumber(shop[i][2]).."x "..item_name(tonumber(shop[i][1])
			else
				nazwa = item_name(tonumber(shop[i][1]))
			end
			table.insert(lista, nazwa, shop[i][1], shop[i][2]) 
		end
		table.insert(lista, "Zakończ")
		say("wybierz")
		local wybor = select_table(lista)
		if wybor = table.getn(lista) then
			return
		else
			say("Wybrałeś przedmiot!")
			say("Nazwa: "..lista[wybor][2])
			say("ilosc: "..lista[wybor][3])
		end
end

 

Może trochę serwer mulić.

Lepiej zrobić tablicę w queście i tam dać itemy.

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...