1
0
mirror of https://github.com/SmallJoker/exchange_shop.git synced 2024-11-14 22:50:22 +01:00

Mod update and cleanup

This commit is contained in:
Maksim 2022-07-10 18:04:21 +03:00
parent 22f035735f
commit 522d163434
30 changed files with 825 additions and 162 deletions

View File

@ -2,11 +2,8 @@ exchange_shop = {}
exchange_shop.storage_size = 5 * 4
exchange_shop.shopname = "exchange_shop:shop"
-- Internationalisaton
exchange_shop.S = minetest.get_translator_auto("ru")
exchange_shop.FS = function(...)
return minetest.formspec_escape(exchange_shop.S(...))
end
-- Internationalisation
exchange_shop.S = minetest.get_translator("exchange_shop")
local modpath = minetest.get_modpath("exchange_shop")
dofile(modpath .. "/shop_functions.lua")

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Магазин за обмен
Exchange Shop:=Магазин за обмен:
Exchange Shop: "@1"=Магазин за обмен: "@1"
Owned by @1=Собственост на @1
Current stock:=Текуща наличност:
You need:=Имате нужда от:
You give:=Вие давате:
Exchange=Обмен
You get:=Получавате:
Income=Доходи
Outgoing=Изходящ
Use (E) + (Right click) for customer interface=Използвайте (E) + (щракване с десния бутон на мишката) за клиентски интерфейс
Cannot dig exchange shop: one or multiple stocks are in use.=Не може да се изкопае магазин за обмен: използват се един или няколко склада.
Exchange shop: Insert your trade goods into 'Outgoing'.=Магазин за обмяна на валута: Въведете търговските си стоки в "Изходящи".
# shop_functions.lua
One or multiple ejection fields are filled.=Попълнени са едно или няколко полета за изхвърляне.
Please empty them or contact the shop owner.=Моля, изпразнете ги или се свържете със собственика на магазина.
The field '@1' can not contain multiple times the same items.=Полето "@1" не може да съдържа няколко пъти едни и същи елементи.
Please contact the shop owner.=Моля, свържете се със собственика на магазина.
The stock in this shop is full.=Складовите наличности в този магазин са пълни.
This shop is sold out.=Този магазин е разпродаден.
You do not have enough space in your inventory.=Нямате достатъчно място в инвентара си.
You do not have the required items.=Не разполагате с необходимите елементи.
Warning! Stacks are overflowing somewhere!=Предупреждение! Някъде стековете са препълнени!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Výměnný obchod
Exchange Shop:=Výměnný obchod:
Exchange Shop: "@1"=Výměnný obchod: "@1"
Owned by @1=Vlastní @1
Current stock:=Aktuální stav zásob:
You need:=Potřebujete:
You give:=Vy dáváte:
Exchange=Výměna
You get:=Získáte:
Income=Příjmy
Outgoing=Odchozí
Use (E) + (Right click) for customer interface=Použijte (E) + (pravé tlačítko myši) pro zákaznické rozhraní
Cannot dig exchange shop: one or multiple stocks are in use.=Nelze vykopat směnárnu: používá se jedna nebo více zásob.
Exchange shop: Insert your trade goods into 'Outgoing'.=Výměnný obchod: Vložte své obchodní zboží do položky "Odchozí".
# shop_functions.lua
One or multiple ejection fields are filled.=Je vyplněno jedno nebo více polí pro vysunutí.
Please empty them or contact the shop owner.=Vyprázdněte je nebo kontaktujte majitele obchodu.
The field '@1' can not contain multiple times the same items.=Pole "@1" nemůže obsahovat vícekrát stejné položky.
Please contact the shop owner.=Kontaktujte prosím majitele obchodu.
The stock in this shop is full.=Zásoby v tomto obchodě jsou plné.
This shop is sold out.=Tento obchod je vyprodán.
You do not have enough space in your inventory.=V inventáři nemáte dostatek místa.
You do not have the required items.=Nemáte požadované položky.
Warning! Stacks are overflowing somewhere!=Pozor! Někde přetékají stohy!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Byttebutik
Exchange Shop:=Byttebutik:
Exchange Shop: "@1"=Byttebutik: "@1"
Owned by @1=Ejet af @1
Current stock:=Nuværende lager:
You need:=Det skal du bruge:
You give:=Du giver:
Exchange=Udveksling
You get:=Du får:
Income=Indkomst
Outgoing=Udgående
Use (E) + (Right click) for customer interface=Brug (E) + (Højreklik) til kundegrænseflade
Cannot dig exchange shop: one or multiple stocks are in use.=Kan ikke åbne en byttebutik: en eller flere lagre er i brug.
Exchange shop: Insert your trade goods into 'Outgoing'.=Byttebutik: Indsæt dine byttevarer i "Udgående".
# shop_functions.lua
One or multiple ejection fields are filled.=Et eller flere udsmidningsfelter er udfyldt.
Please empty them or contact the shop owner.=Tøm dem venligst eller kontakt butiksejeren.
The field '@1' can not contain multiple times the same items.=Feltet "@1" kan ikke indeholde flere gange de samme elementer.
Please contact the shop owner.=Kontakt venligst butiksejeren.
The stock in this shop is full.=Lageret i denne butik er fyldt op.
This shop is sold out.=Denne butik er udsolgt.
You do not have enough space in your inventory.=Du har ikke nok plads i dit inventar.
You do not have the required items.=Du har ikke de nødvendige elementer.
Warning! Stacks are overflowing somewhere!=Advarsel! Stakkene flyder over et sted!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Tauschbörse
Exchange Shop:=Tauschbörse:
Exchange Shop: "@1"=Shop umtauschen: "@1"
Owned by @1=Im Besitz von @1
Current stock:=Aktueller Bestand:
You need:=Sie benötigen:
You give:=Sie geben:
Exchange=Austausch
You get:=Sie erhalten:
Income=Einkommen
Outgoing=Ausgehend von
Use (E) + (Right click) for customer interface=Verwenden Sie (E) + (Rechtsklick) für die Kundenschnittstelle
Cannot dig exchange shop: one or multiple stocks are in use.=Tauschbörse kann nicht gegraben werden: ein oder mehrere Bestände sind in Gebrauch.
Exchange shop: Insert your trade goods into 'Outgoing'.=Tauschbörse: Legen Sie Ihre Handelswaren in "Ausgehend" ein.
# shop_functions.lua
One or multiple ejection fields are filled.=Ein oder mehrere Auswurffelder sind gefüllt.
Please empty them or contact the shop owner.=Bitte leeren Sie sie oder kontaktieren Sie den Geschäftsinhaber.
The field '@1' can not contain multiple times the same items.=Das Feld '@1' kann nicht mehrmals die gleichen Elemente enthalten.
Please contact the shop owner.=Bitte wenden Sie sich an den Geschäftsinhaber.
The stock in this shop is full.=Das Lager in diesem Geschäft ist voll.
This shop is sold out.=Dieses Geschäft ist ausverkauft.
You do not have enough space in your inventory.=Sie haben nicht genug Platz in Ihrem Inventar.
You do not have the required items.=Sie verfügen nicht über die erforderlichen Gegenstände.
Warning! Stacks are overflowing somewhere!=Achtung! Die Stapel laufen irgendwo über!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Κατάστημα ανταλλαγής
Exchange Shop:=Κατάστημα ανταλλαγής:
Exchange Shop: "@1"=Κατάστημα ανταλλαγής: "@1"
Owned by @1=Ανήκει στον @1
Current stock:=Τρέχον απόθεμα:
You need:=Χρειάζεστε:
You give:=Εσείς δίνετε:
Exchange=Ανταλλαγή
You get:=Παίρνετε:
Income=Εισόδημα
Outgoing=Εξερχόμενο
Use (E) + (Right click) for customer interface=Χρησιμοποιήστε (E) + (δεξί κλικ) για τη διεπαφή πελάτη
Cannot dig exchange shop: one or multiple stocks are in use.=Δεν μπορεί να σκάψει κατάστημα ανταλλαγής: ένα ή περισσότερα αποθέματα είναι σε χρήση.
Exchange shop: Insert your trade goods into 'Outgoing'.=Κατάστημα ανταλλαγής: Εισάγετε τα εμπορεύματά σας στο 'Εξερχόμενο'.
# shop_functions.lua
One or multiple ejection fields are filled.=Συμπληρώνονται ένα ή περισσότερα πεδία εκτίναξης.
Please empty them or contact the shop owner.=Παρακαλούμε αδειάστε τα ή επικοινωνήστε με τον ιδιοκτήτη του καταστήματος.
The field '@1' can not contain multiple times the same items.=Το πεδίο '@1' δεν μπορεί να περιέχει πολλές φορές τα ίδια στοιχεία.
Please contact the shop owner.=Επικοινωνήστε με τον ιδιοκτήτη του καταστήματος.
The stock in this shop is full.=Το απόθεμα σε αυτό το κατάστημα είναι πλήρες.
This shop is sold out.=Αυτό το κατάστημα έχει εξαντληθεί.
You do not have enough space in your inventory.=Δεν έχετε αρκετό χώρο στην απογραφή σας.
You do not have the required items.=Δεν έχετε τα απαιτούμενα στοιχεία.
Warning! Stacks are overflowing somewhere!=Προειδοποίηση! Οι στοίβες ξεχειλίζουν κάπου!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Tienda de intercambio
Exchange Shop:=Tienda de intercambio:
Exchange Shop: "@1"=Tienda de intercambio: "@1"
Owned by @1=Propiedad de @1
Current stock:=Acciones actuales:
You need:=Lo necesitas:
You give:=Tú das:
Exchange=Intercambio
You get:=Lo tienes:
Income=Ingresos
Outgoing=Saliente
Use (E) + (Right click) for customer interface=Utilice (E) + (clic derecho) para la interfaz del cliente
Cannot dig exchange shop: one or multiple stocks are in use.=No se puede cavar la tienda de intercambio: una o varias existencias están en uso.
Exchange shop: Insert your trade goods into 'Outgoing'.=Tienda de intercambio: Introduce tus productos de intercambio en "Salir".
# shop_functions.lua
One or multiple ejection fields are filled.=Se rellenan uno o varios campos de expulsión.
Please empty them or contact the shop owner.=Por favor, vacíelos o póngase en contacto con el propietario de la tienda.
The field '@1' can not contain multiple times the same items.=El campo '@1' no puede contener varias veces los mismos elementos.
Please contact the shop owner.=Póngase en contacto con el propietario de la tienda.
The stock in this shop is full.=Las existencias de esta tienda están llenas.
This shop is sold out.=Esta tienda está agotada.
You do not have enough space in your inventory.=No tiene suficiente espacio en su inventario.
You do not have the required items.=No tiene los elementos necesarios.
Warning! Stacks are overflowing somewhere!=¡Atención! ¡Las pilas están desbordadas en algún lugar!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Vahetuspood
Exchange Shop:=Vahetuspood:
Exchange Shop: "@1"=Vahetuspood: "@1"
Owned by @1=Omanik @1
Current stock:=Praegune varu:
You need:=Sa pead:
You give:=Sa annad:
Exchange=Exchange
You get:=Saate:
Income=Sissetulek
Outgoing=Väljaminev
Use (E) + (Right click) for customer interface=Kasutage (E) + (paremklõps) kliendi kasutajaliidese jaoks
Cannot dig exchange shop: one or multiple stocks are in use.=Ei saa kaevata vahetuspoodi: üks või mitu varu on kasutusel.
Exchange shop: Insert your trade goods into 'Outgoing'.=Vahetuspood: Sisestage oma kauplemiskaubad "Väljaminevale".
# shop_functions.lua
One or multiple ejection fields are filled.=Täidetud on üks või mitu väljaviskevälja.
Please empty them or contact the shop owner.=Palun tühjendage need või võtke ühendust poe omanikuga.
The field '@1' can not contain multiple times the same items.=Väli '@1' ei saa sisaldada mitu korda samu elemente.
Please contact the shop owner.=Palun võtke ühendust poe omanikuga.
The stock in this shop is full.=Selle poe varud on täis.
This shop is sold out.=See pood on välja müüdud.
You do not have enough space in your inventory.=Teil ei ole piisavalt ruumi oma inventari jaoks.
You do not have the required items.=Teil ei ole nõutavaid esemeid.
Warning! Stacks are overflowing somewhere!=Hoiatus! Hunnikud on kuskil üleval!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Vaihtokauppa
Exchange Shop:=Vaihtokauppa:
Exchange Shop: "@1"=Vaihtokauppa: "@1"
Owned by @1=Omistaa @1
Current stock:=Nykyinen varasto:
You need:=Tarvitset:
You give:=Sinä annat:
Exchange=Vaihto
You get:=Saat:
Income=Tulot
Outgoing=Lähtevät
Use (E) + (Right click) for customer interface=Käytä (E) + (hiiren kakkospainiketta) asiakkaan käyttöliittymää varten.
Cannot dig exchange shop: one or multiple stocks are in use.=Ei voi kaivaa vaihtokauppaa: yksi tai useampi varasto on käytössä.
Exchange shop: Insert your trade goods into 'Outgoing'.=Vaihtokauppa: Aseta kauppatavarasi kohtaan 'Lähtevät'.
# shop_functions.lua
One or multiple ejection fields are filled.=Yksi tai useampi heittokenttä on täytetty.
Please empty them or contact the shop owner.=Tyhjennä ne tai ota yhteyttä kaupan omistajaan.
The field '@1' can not contain multiple times the same items.=Kenttä '@1' ei voi sisältää useita kertoja samoja kohteita.
Please contact the shop owner.=Ota yhteyttä myymälän omistajaan.
The stock in this shop is full.=Kaupan varastot ovat täynnä.
This shop is sold out.=Tämä kauppa on loppuunmyyty.
You do not have enough space in your inventory.=Varastossasi ei ole tarpeeksi tilaa.
You do not have the required items.=Sinulla ei ole tarvittavia tuotteita.
Warning! Stacks are overflowing somewhere!=Varoitus! Pinot pursuavat jostain!

View File

@ -1,33 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Title:=Titre :
Set=Définir
You give:=Vous donnez :
You get:=Vous recevez :
Exchange=Échanger
You need:=Vous avez besoin de
Current stock:=Stock affiché :
Income=Entrée
Outgoing=Sortie
Use (E) + (Right click) for customer interface=Utilisez (E) + (Clic droit) pour afficher l'interface du client
Exchange Shop=Boutique d'échange
Exchange Shop:=Boutique d'échange :
Exchange Shop: "@1"=Boutique d'échange : "@1"
Owned by @1=Propriété de @1
Exchange Shop:=Boutique d'échange :
Exchange Shop=Boutique d'échange
Exchange shop (constructing)=Boutique d'échange (en construction)
Cannot dig exchange shop: one or multiple stocks are in use.=Un ou plusieurs stocks sont en cours d'utilisation, impossible d'enlever la boutique d'échange.
Exchange shop: Insert your trade goods into 'Outgoing'.=Boutique d'échange : Insérez ce que vous souhaitez échanger dans 'Sortie'
Current stock:=Stock affiché :
You need:=Vous avez besoin de
You give:=Vous donnez :
Exchange=Échanger
You get:=Vous recevez :
Income=Entrée
Outgoing=Sortie
Use (E) + (Right click) for customer interface=Utiliser (E) + (clic droit) pour l'interface client
Cannot dig exchange shop: one or multiple stocks are in use.=Impossible de creuser le magasin d'échange : un ou plusieurs stocks sont en cours d'utilisation.
Exchange shop: Insert your trade goods into 'Outgoing'.=Boutique d'échange : Insérez vos biens d'échange dans 'Outgoing'.
# shop_functions.lua
One or multiple ejection fields are filled.=Un ou plusieurs champs déjection sont remplis.
Please empty them or contact the shop owner.=Veuillez les vider ou contactez le propriétaire de la boutique.
The field '@1' can not contain multiple times the same items.=Le champ '@1' ne peux contenir plusieurs fois les mêmes éléments.
The field '@1' can not contain multiple times the same items.=Le champ '@1' ne peux contenir plusieurs fois les mêmes éléments.
Please contact the shop owner.=Veuillez contacter le propriétaire de la boutique.
The stock in this shop is full. =Le stockage de cette boutique est saturé.
Please contact the shop owner.=Veuillez contacter le propriétaire de la boutique.
This shop is sold out.=Cette boutique est en rupture de stock.
You do not have enough space in your inventory.=Vous manquez de place dans votre inventaire.
You do not have the required items.=Vous ne disposez pas des éléments demandés.
One or multiple ejection fields are filled.=Un ou plusieurs champs d'éjection sont remplis.
Please empty them or contact the shop owner.=Veuillez les vider ou contacter le propriétaire du magasin.
The field '@1' can not contain multiple times the same items.=Le champ '@1' ne peut pas contenir plusieurs fois les mêmes éléments.
Please contact the shop owner.=Veuillez contacter le propriétaire du magasin.
The stock in this shop is full.=Le stock de ce magasin est plein.
This shop is sold out.=Cette boutique est épuisée.
You do not have enough space in your inventory.=Vous n'avez pas assez d'espace dans votre inventaire.
You do not have the required items.=Vous n'avez pas les éléments requis.
Warning! Stacks are overflowing somewhere!=Attention ! Les piles débordent quelque part !

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Exchange Shop
Exchange Shop:=Cserebolt:
Exchange Shop: "@1"=Cserebolt: "@1"
Owned by @1=Tulajdonos @1
Current stock:=Jelenlegi készlet:
You need:=Szükséged van rá:
You give:=Te adsz:
Exchange=Exchange
You get:=Megkapod:
Income=Jövedelem
Outgoing=Kimenő
Use (E) + (Right click) for customer interface=Használja az (E) + (jobb klikk) gombot az ügyfélfelülethez.
Cannot dig exchange shop: one or multiple stocks are in use.=Nem lehet kiásni a csereüzletet: egy vagy több készlet van használatban.
Exchange shop: Insert your trade goods into 'Outgoing'.=Cserebolt: Tegye be a kereskedelmi árut a "Kimenő" menüpontba.
# shop_functions.lua
One or multiple ejection fields are filled.=Egy vagy több kilövési mező van kitöltve.
Please empty them or contact the shop owner.=Kérjük, ürítse ki őket, vagy lépjen kapcsolatba a bolt tulajdonosával.
The field '@1' can not contain multiple times the same items.=A '@1' mező nem tartalmazhat többször ugyanazt az elemet.
Please contact the shop owner.=Kérjük, vegye fel a kapcsolatot az üzlet tulajdonosával.
The stock in this shop is full.=A bolt készletei megteltek.
This shop is sold out.=Ez a bolt már elfogyott.
You do not have enough space in your inventory.=Nincs elég hely a leltárban.
You do not have the required items.=Nem rendelkezik a szükséges elemekkel.
Warning! Stacks are overflowing somewhere!=Figyelem! Valahol túlcsordulnak a halmok!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Toko Pertukaran
Exchange Shop:=Toko Pertukaran:
Exchange Shop: "@1"=Toko Pertukaran: "@1"
Owned by @1=Dimiliki oleh @1
Current stock:=Stok saat ini:
You need:=Anda perlu:
You give:=Anda berikan:
Exchange=Pertukaran
You get:=Anda mendapatkannya:
Income=Pendapatan
Outgoing=Keluar
Use (E) + (Right click) for customer interface=Gunakan (E) + (Klik kanan) untuk antarmuka pelanggan
Cannot dig exchange shop: one or multiple stocks are in use.=Tidak bisa menggali toko pertukaran: satu atau beberapa stok sedang digunakan.
Exchange shop: Insert your trade goods into 'Outgoing'.=Tukar toko: Masukkan barang dagangan Anda ke dalam 'Outgoing'.
# shop_functions.lua
One or multiple ejection fields are filled.=Satu atau beberapa bidang ejeksi diisi.
Please empty them or contact the shop owner.=Silakan kosongkan atau hubungi pemilik toko.
The field '@1' can not contain multiple times the same items.=Bidang '@1' tidak bisa berisi beberapa kali item yang sama.
Please contact the shop owner.=Silakan hubungi pemilik toko.
The stock in this shop is full.=Stok di toko ini sudah penuh.
This shop is sold out.=Toko ini sudah terjual habis.
You do not have enough space in your inventory.=Anda tidak memiliki cukup ruang dalam inventaris Anda.
You do not have the required items.=Anda tidak memiliki item yang diperlukan.
Warning! Stacks are overflowing somewhere!=Peringatan! Tumpukan meluap di suatu tempat!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Negozio di scambio
Exchange Shop:=Negozio di scambio:
Exchange Shop: "@1"=Negozio di scambio: "@1"
Owned by @1=Di proprietà di @1
Current stock:=Stock attuale:
You need:=È necessario:
You give:=Tu dai:
Exchange=Scambio
You get:=Ottenete:
Income=Reddito
Outgoing=In uscita
Use (E) + (Right click) for customer interface=Utilizzare (E) + (clic destro) per l'interfaccia del cliente
Cannot dig exchange shop: one or multiple stocks are in use.=Impossibile scavare il negozio di scambio: uno o più stock sono in uso.
Exchange shop: Insert your trade goods into 'Outgoing'.=Negozio di scambio: Inserire le merci di scambio in "Uscita".
# shop_functions.lua
One or multiple ejection fields are filled.=Vengono riempiti uno o più campi di espulsione.
Please empty them or contact the shop owner.=Si prega di svuotarli o di contattare il proprietario del negozio.
The field '@1' can not contain multiple times the same items.=Il campo '@1' non può contenere più volte gli stessi elementi.
Please contact the shop owner.=Si prega di contattare il proprietario del negozio.
The stock in this shop is full.=Il magazzino di questo negozio è pieno.
This shop is sold out.=Questo negozio è esaurito.
You do not have enough space in your inventory.=Lo spazio a disposizione nell'inventario non è sufficiente.
You do not have the required items.=Non si dispone degli elementi richiesti.
Warning! Stacks are overflowing somewhere!=Attenzione! Le pile stanno traboccando da qualche parte!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=交換ショップ
Exchange Shop:=交換ショップです。
Exchange Shop: "@1"=交換ショップです。"@1"
Owned by @1=所有者:@1
Current stock:=現在の在庫です。
You need:=必要です。
You give:=与えるのです。
Exchange=交換
You get:=得ることができます。
Income=収入
Outgoing=アウトゴーイング
Use (E) + (Right click) for customer interface=カスタマーインターフェースの場合、(E)+(右クリック)を使用します。
Cannot dig exchange shop: one or multiple stocks are in use.=交換ショップを掘ることができない1つまたは複数のストックが使用中である。
Exchange shop: Insert your trade goods into 'Outgoing'.=交換ショップです。交易品を「出庫」に入れる。
# shop_functions.lua
One or multiple ejection fields are filled.=1つまたは複数の排出フィールドが埋まっている。
Please empty them or contact the shop owner.=空けていただくか、店主までご連絡ください。
The field '@1' can not contain multiple times the same items.=フィールド'@1'に同じ項目を複数回入れることはできません。
Please contact the shop owner.=ショップオーナーにお問い合わせください。
The stock in this shop is full.=当店の在庫は満杯です。
This shop is sold out.=このショップは売り切れました。
You do not have enough space in your inventory.=インベントリに十分なスペースがない。
You do not have the required items.=必要なアイテムがない。
Warning! Stacks are overflowing somewhere!=警告!書庫がどこかで溢れてる!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Mainų parduotuvė
Exchange Shop:=Mainų parduotuvė:
Exchange Shop: "@1"=Mainų parduotuvė: "@1"
Owned by @1=Priklauso @1
Current stock:=Dabartinės atsargos:
You need:=Jums reikia:
You give:=Jūs duodate:
Exchange=Keitimasis
You get:=Jūs gaunate:
Income=Pajamos
Outgoing=Išeinantis
Use (E) + (Right click) for customer interface=Naudokite (E) + (dešiniuoju pelės mygtuku spustelėkite) klientų sąsajai
Cannot dig exchange shop: one or multiple stocks are in use.=Negalima iškasti mainų parduotuvės: naudojama viena arba kelios atsargos.
Exchange shop: Insert your trade goods into 'Outgoing'.=Mainų parduotuvė: Į "Išeinančias" įkelkite savo prekybos prekes.
# shop_functions.lua
One or multiple ejection fields are filled.=Užpildomas vienas arba keli išmetimo laukai.
Please empty them or contact the shop owner.=Ištuštinkite juos arba susisiekite su parduotuvės savininku.
The field '@1' can not contain multiple times the same items.=Lauke "@1" negali būti tų pačių elementų kelis kartus.
Please contact the shop owner.=Kreipkitės į parduotuvės savininką.
The stock in this shop is full.=Šios parduotuvės atsargos yra pilnos.
This shop is sold out.=Ši parduotuvė išparduota.
You do not have enough space in your inventory.=Jūsų inventoriuje nepakanka vietos.
You do not have the required items.=Neturite reikiamų elementų.
Warning! Stacks are overflowing somewhere!=Įspėjimas! Kažkur perpildytos krūvos!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Maiņas veikals
Exchange Shop:=Maiņas veikals:
Exchange Shop: "@1"=Maiņas veikals: "@1"
Owned by @1=pieder @1
Current stock:=Pašreizējais krājums:
You need:=Jums ir nepieciešams:
You give:=Jūs sniedzat:
Exchange=Exchange
You get:=Jūs saņemat:
Income=Ienākumi
Outgoing=izejošais
Use (E) + (Right click) for customer interface=Izmantojiet (E) + (klikšķiniet ar peles labo pogu), lai izveidotu klienta saskarni
Cannot dig exchange shop: one or multiple stocks are in use.=Nevar izrakt maiņas veikalu: tiek izmantots viens vai vairāki krājumi.
Exchange shop: Insert your trade goods into 'Outgoing'.=Maiņas veikals: Ievietojiet savas tirdzniecības preces sadaļā "Izejošās".
# shop_functions.lua
One or multiple ejection fields are filled.=Ir aizpildīts viens vai vairāki izmešanas lauki.
Please empty them or contact the shop owner.=Lūdzu, iztukšojiet tos vai sazinieties ar veikala īpašnieku.
The field '@1' can not contain multiple times the same items.=Laukā "@1" nevar būt vairākas reizes vieni un tie paši elementi.
Please contact the shop owner.=Lūdzu, sazinieties ar veikala īpašnieku.
The stock in this shop is full.=Krājumi šajā veikalā ir pilni.
This shop is sold out.=Šis veikals ir izpārdots.
You do not have enough space in your inventory.=Jūsu inventārā nav pietiekami daudz vietas.
You do not have the required items.=Jums nav nepieciešamo elementu.
Warning! Stacks are overflowing somewhere!=Brīdinājums! Kaudzes kaut kur ir pārpildītas!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Ruilwinkel
Exchange Shop:=Ruilwinkel:
Exchange Shop: "@1"=Ruilwinkel: "@1"
Owned by @1=Eigendom van @1
Current stock:=Huidige voorraad:
You need:=Je hebt het nodig:
You give:=Jij geeft:
Exchange=Uitwisseling
You get:=Je krijgt:
Income=Inkomen
Outgoing=Uitgaand
Use (E) + (Right click) for customer interface=Gebruik (E) + (Rechts klikken) voor klanteninterface
Cannot dig exchange shop: one or multiple stocks are in use.=Kan ruilwinkel niet graven: een of meer voorraden zijn in gebruik.
Exchange shop: Insert your trade goods into 'Outgoing'.=Ruilwinkel: Plaats uw handelsgoederen in 'Uitgaand'.
# shop_functions.lua
One or multiple ejection fields are filled.=Een of meer uitwerpvelden zijn gevuld.
Please empty them or contact the shop owner.=Leeg ze alsjeblieft of neem contact op met de eigenaar van de winkel.
The field '@1' can not contain multiple times the same items.=Het veld '@1' kan niet meerdere keren dezelfde items bevatten.
Please contact the shop owner.=Neem contact op met de eigenaar van de winkel.
The stock in this shop is full.=De voorraad in deze winkel is vol.
This shop is sold out.=Deze winkel is uitverkocht.
You do not have enough space in your inventory.=Je hebt niet genoeg ruimte in je inventaris.
You do not have the required items.=U heeft niet de vereiste spullen.
Warning! Stacks are overflowing somewhere!=Waarschuwing! De stapels zijn ergens overvol!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Sklep wymiany
Exchange Shop:=Sklep wymiany:
Exchange Shop: "@1"=Sklep wymiany: "@1"
Owned by @1=Właściciel: @1
Current stock:=Aktualny stan magazynowy:
You need:=Potrzebne są:
You give:=Ty dajesz:
Exchange=Wymiana
You get:=Otrzymasz:
Income=Dochód
Outgoing=Wychodzące
Use (E) + (Right click) for customer interface=Użyj (E) + (prawy przycisk myszy) dla interfejsu klienta
Cannot dig exchange shop: one or multiple stocks are in use.=Nie można wykopać sklepu z wymianą: jeden lub wiele zapasów jest w użyciu.
Exchange shop: Insert your trade goods into 'Outgoing'.=Sklep wymiany: Włóż swoje towary handlowe do 'Outgoing'.
# shop_functions.lua
One or multiple ejection fields are filled.=Jedno lub wiele pól wyrzutowych jest wypełnionych.
Please empty them or contact the shop owner.=Proszę je opróżnić lub skontaktować się z właścicielem sklepu.
The field '@1' can not contain multiple times the same items.=Pole "@1" nie może zawierać wielokrotnie tych samych elementów.
Please contact the shop owner.=Prosimy o kontakt z właścicielem sklepu.
The stock in this shop is full.=Zapasy w tym sklepie są pełne.
This shop is sold out.=Ten sklep jest wyprzedany.
You do not have enough space in your inventory.=Nie masz wystarczająco dużo miejsca w swoim magazynie.
You do not have the required items.=Nie masz wymaganych elementów.
Warning! Stacks are overflowing somewhere!=Uwaga! Stosy gdzieś się przepełniają!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Loja de troca
Exchange Shop:=Loja de troca:
Exchange Shop: "@1"=Loja de troca: "@1"
Owned by @1=Propriedade de @1
Current stock:=Stock actual:
You need:=Precisa:
You give:=Dá:
Exchange=Troca
You get:=Recebe:
Income=Rendimento
Outgoing=Saída
Use (E) + (Right click) for customer interface=Usar (E) + (clique direito) para a interface do cliente
Cannot dig exchange shop: one or multiple stocks are in use.=Não é possível cavar loja de troca: um ou vários stocks estão em uso.
Exchange shop: Insert your trade goods into 'Outgoing'.=Loja de câmbio: Insira os seus bens comerciais em 'Outgoing'.
# shop_functions.lua
One or multiple ejection fields are filled.=Um ou vários campos de ejecção são preenchidos.
Please empty them or contact the shop owner.=Por favor, esvaziá-los ou contactar o proprietário da loja.
The field '@1' can not contain multiple times the same items.=O campo '@1' não pode conter várias vezes os mesmos itens.
Please contact the shop owner.=Por favor contacte o proprietário da loja.
The stock in this shop is full.=O stock nesta loja está cheio.
This shop is sold out.=Esta loja está esgotada.
You do not have enough space in your inventory.=Não tem espaço suficiente no seu inventário.
You do not have the required items.=Não tem os artigos necessários.
Warning! Stacks are overflowing somewhere!=Advertência! As pilhas estão a transbordar em algum lugar!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Magazin de schimb valutar
Exchange Shop:=Magazin de schimb:
Exchange Shop: "@1"=Magazin de schimb: "@1"
Owned by @1=Deținută de @1
Current stock:=Stoc curent:
You need:=Aveți nevoie de:
You give:=Tu dai:
Exchange=Schimbul
You get:=Veți primi:
Income=Venituri
Outgoing=Ieșire
Use (E) + (Right click) for customer interface=Utilizați (E) + (clic dreapta) pentru interfața cu clientul
Cannot dig exchange shop: one or multiple stocks are in use.=Nu se poate săpa magazinul de schimb: unul sau mai multe stocuri sunt în curs de utilizare.
Exchange shop: Insert your trade goods into 'Outgoing'.=Magazin de schimb: Introduceți mărfurile de schimb în "Ieșire".
# shop_functions.lua
One or multiple ejection fields are filled.=Se completează unul sau mai multe câmpuri de ejecție.
Please empty them or contact the shop owner.=Vă rugăm să le goliți sau să contactați proprietarul magazinului.
The field '@1' can not contain multiple times the same items.=Câmpul "@1" nu poate conține de mai multe ori aceleași elemente.
Please contact the shop owner.=Vă rugăm să contactați proprietarul magazinului.
The stock in this shop is full.=Stocul din acest magazin este plin.
This shop is sold out.=Acest magazin este epuizat.
You do not have enough space in your inventory.=Nu aveți suficient spațiu în inventar.
You do not have the required items.=Nu aveți elementele necesare.
Warning! Stacks are overflowing somewhere!=Atenție! Stivele se revarsă pe undeva!

View File

@ -13,5 +13,19 @@ Exchange=Обменять
You get:=Вы получите:
Income=Полученное
Outgoing=Продаваемое
Title:=Название:
Set=Устан.
Use (E) + (Right click) for customer interface=Используйте (E) + (щелчок правой кнопкой мыши) для интерфейса клиента
Cannot dig exchange shop: one or multiple stocks are in use.=Невозможно выкопать Обменный Магазин: используется одна или несколько ячеек.
Exchange shop: Insert your trade goods into 'Outgoing'.=Обменный Магазин: Вставьте свои торговые товары в 'Исходящие'.
# shop_functions.lua
One or multiple ejection fields are filled.=Одно или несколько полей выброса заполнены.
Please empty them or contact the shop owner.=Пожалуйста, опустошите их или свяжитесь с владельцем магазина.
The field '@1' can not contain multiple times the same items.=Поле '@1' не может содержать несколько раз одни и те же предметы.
Please contact the shop owner.=Пожалуйста, свяжитесь с владельцем магазина.
The stock in this shop is full.=Склад в этом магазине полный.
This shop is sold out.=Этот магазин распродан.
You do not have enough space in your inventory.=У вас недостаточно места в инвентаре.
You do not have the required items.=У вас нет необходимых предметов.
Warning! Stacks are overflowing somewhere!=Внимание! Где-то переполнены склад!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Výmena tovaru
Exchange Shop:=Výmena tovaru:
Exchange Shop: "@1"=Výmena tovaru: "@1"
Owned by @1=Vo vlastníctve @1
Current stock:=Aktuálne zásoby:
You need:=Potrebujete:
You give:=Vy dávate:
Exchange=Výmena
You get:=Získate:
Income=Príjmy
Outgoing=Odchádzajúci
Use (E) + (Right click) for customer interface=Použite (E) + (pravé tlačidlo myši) pre zákaznícke rozhranie
Cannot dig exchange shop: one or multiple stocks are in use.=Nemožno vykopať výmenný obchod: používa sa jedna alebo viacero zásob.
Exchange shop: Insert your trade goods into 'Outgoing'.=Výmena tovaru: Vložte svoj obchodný tovar do položky "Odchádzajúci".
# shop_functions.lua
One or multiple ejection fields are filled.=Vyplní sa jedno alebo viacero vysúvacích polí.
Please empty them or contact the shop owner.=Vyprázdnite ich alebo kontaktujte majiteľa obchodu.
The field '@1' can not contain multiple times the same items.=Pole "@1" nemôže obsahovať viackrát rovnaké položky.
Please contact the shop owner.=Obráťte sa na majiteľa obchodu.
The stock in this shop is full.=Zásoby v tomto obchode sú plné.
This shop is sold out.=Tento obchod je vypredaný.
You do not have enough space in your inventory.=V inventári nemáte dostatok miesta.
You do not have the required items.=Nemáte požadované položky.
Warning! Stacks are overflowing somewhere!=Varovanie! Niekde pretekajú stohy!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Trgovina Exchange Shop
Exchange Shop:=Izmenjevalnica:
Exchange Shop: "@1"=Trgovina z menjalnicami: "@1"
Owned by @1=V lasti @1
Current stock:=Trenutna zaloga:
You need:=Potrebujete:
You give:=Vi dajete:
Exchange=Izmenjava
You get:=Dobili boste:
Income=Prihodki
Outgoing=Odhajajoči
Use (E) + (Right click) for customer interface=Uporabite (E) + (desni klik) za uporabniški vmesnik
Cannot dig exchange shop: one or multiple stocks are in use.=Ni mogoče izkopati menjalnice: v uporabi je ena ali več zalog.
Exchange shop: Insert your trade goods into 'Outgoing'.=Menjalnica: Vstavite svoje trgovsko blago v "Odhodno".
# shop_functions.lua
One or multiple ejection fields are filled.=Zapolnjeno je eno ali več polj za izmet.
Please empty them or contact the shop owner.=Izpraznite jih ali se obrnite na lastnika trgovine.
The field '@1' can not contain multiple times the same items.=Polje "@1" ne more večkrat vsebovati istih elementov.
Please contact the shop owner.=Obrnite se na lastnika trgovine.
The stock in this shop is full.=Zaloga v tej trgovini je polna.
This shop is sold out.=Ta trgovina je razprodana.
You do not have enough space in your inventory.=V inventarju nimate dovolj prostora.
You do not have the required items.=Nimate zahtevanih elementov.
Warning! Stacks are overflowing somewhere!=Opozorilo! Nekje so kupi prepolni!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Växelbutik
Exchange Shop:=Bytesbutik:
Exchange Shop: "@1"=Bytesbutik: "@1"
Owned by @1=Ägs av @1
Current stock:=Nuvarande lager:
You need:=Du behöver:
You give:=Du ger:
Exchange=Utbyte
You get:=Du får:
Income=Inkomst
Outgoing=Utgående
Use (E) + (Right click) for customer interface=Använd (E) + (högerklick) för kundgränssnittet
Cannot dig exchange shop: one or multiple stocks are in use.=Kan inte gräva en bytesbutik: ett eller flera lager är i bruk.
Exchange shop: Insert your trade goods into 'Outgoing'.=Bytesbutik: Sätt in dina handelsvaror i "Outgoing".
# shop_functions.lua
One or multiple ejection fields are filled.=Ett eller flera utkastningsfält är fyllda.
Please empty them or contact the shop owner.=Töm dem eller kontakta butiksägaren.
The field '@1' can not contain multiple times the same items.=Fältet "@1" kan inte innehålla samma objekt flera gånger.
Please contact the shop owner.=Kontakta butiksägaren.
The stock in this shop is full.=Lageret i butiken är fullt.
This shop is sold out.=Den här butiken är slutsåld.
You do not have enough space in your inventory.=Du har inte tillräckligt med utrymme i din inventarieförteckning.
You do not have the required items.=Du har inte de nödvändiga artiklarna.
Warning! Stacks are overflowing somewhere!=Varning! Staplarna svämmar över någonstans!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Değişim Mağazası
Exchange Shop:=Değişim Dükkanı:
Exchange Shop: "@1"=Değişim Dükkanı: "@1"
Owned by @1=Sahibi @1
Current stock:=Mevcut stok:
You need:=İhtiyacın var:
You give:=Sen ver:
Exchange=Değişim
You get:=Alacaksın:
Income=Gelir
Outgoing=Giden
Use (E) + (Right click) for customer interface=Müşteri arayüzü için (E) + (Sağ tık) kullanın
Cannot dig exchange shop: one or multiple stocks are in use.=Değişim mağazası kazılamıyor: bir veya birden fazla stok kullanımda.
Exchange shop: Insert your trade goods into 'Outgoing'.=Takas dükkanı: Ticaret mallarınızı 'Giden' kısmına yerleştirin.
# shop_functions.lua
One or multiple ejection fields are filled.=Bir veya birden fazla fırlatma alanı doldurulur.
Please empty them or contact the shop owner.=Lütfen bunları boşaltın veya mağaza sahibiyle iletişime geçin.
The field '@1' can not contain multiple times the same items.='@1' alanı aynı öğeleri birden fazla kez içeremez.
Please contact the shop owner.=Lütfen mağaza sahibiyle iletişime geçin.
The stock in this shop is full.=Bu dükkandaki stok dolu.
This shop is sold out.=Bu dükkan tükendi.
You do not have enough space in your inventory.=Envanterinizde yeterli yer yok.
You do not have the required items.=Gerekli öğelere sahip değilsiniz.
Warning! Stacks are overflowing somewhere!=Dikkat! Yığınlar bir yerlerden taşıyor!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Обмінний Магазин
Exchange Shop:=Обмінний Магазин:
Exchange Shop: "@1"=Обмінний Магазин: "@1"
Owned by @1=Власник: @1
Current stock:=Склад:
You need:=Вам потрібно:
You give:=Ви віддасте:
Exchange=Обміняти
You get:=Ви отримаєте:
Income=Отримане
Outgoing=Продається
Use (E) + (Right click) for customer interface=Використовуйте (E) + (клацання правою кнопкою миші) для інтерфейсу клієнта
Cannot dig exchange shop: one or multiple stocks are in use.=Неможливо викопати Обмінний Магазин: використовується один або кілька осередків.
Exchange shop: Insert your trade goods into 'Outgoing'.=Обмінний Магазин: Вставте свої торгові товари в 'Вихідні'.
# shop_functions.lua
One or multiple ejection fields are filled.=Один або кілька полів викиду заповнені.
Please empty them or contact the shop owner.=Будь ласка, спустошіть їх або зв'яжіться із власником магазину.
The field '@1' can not contain multiple times the same items.=Поле '@1' не може містити кілька разів ті самі предмети.
Please contact the shop owner.=Будь ласка, зв'яжіться із власником магазину.
The stock in this shop is full.=Склад у цьому магазині повний.
This shop is sold out.=Цей магазин розпродано.
You do not have enough space in your inventory.=У вас недостатньо місця у інвентарі.
You do not have the required items.=У вас немає потрібних предметів.
Warning! Stacks are overflowing somewhere!=Увага! Десь переповнено склад!

View File

@ -0,0 +1,31 @@
# textdomain: exchange_shop
# shop.lua
Exchange Shop=Cửa hàng trao đổi
Exchange Shop:=Cửa hàng trao đổi:
Exchange Shop: "@1"=Cửa hàng trao đổi: "@1"
Owned by @1=Chủ sở hữu: @1
Current stock:=Thành phần:
You need:=Bạn cần:
You give:=Bạn sẽ trao đi:
Exchange=Trao đổi
You get:=Bạn sẽ nhận được:
Income=Nhận
Outgoing=Đã bán
Use (E) + (Right click) for customer interface=Sử dụng (E) + (nhấp chuột phải) cho giao diện máy khách
Cannot dig exchange shop: one or multiple stocks are in use.=Không thể đào Cửa hàng trao đổi: một hoặc nhiều ô được sử dụng.
Exchange shop: Insert your trade goods into 'Outgoing'.=Cửa hàng trao đổi: Dán các thương phẩm của bạn vào 'Hộp thư đi'.
# shop_functions.lua
One or multiple ejection fields are filled.=Một hoặc nhiều trường ngoại lệ được điền.
Please empty them or contact the shop owner.=Vui lòng làm trống chúng hoặc liên hệ với chủ cửa hàng.
The field '@1' can not contain multiple times the same items.=Trường '@1' không được chứa các mục giống nhau nhiều lần.
Please contact the shop owner.=Vui lòng liên hệ với chủ cửa hàng.
The stock in this shop is full.=Kho trong cửa hàng này đã đầy.
This shop is sold out.=Cửa hàng này đã được bán hết.
You do not have enough space in your inventory.=Bạn không có đủ dung lượng trong kho của mình.
You do not have the required items.=Bạn không có các mục cần thiết.
Warning! Stacks are overflowing somewhere!=Chú ý! Nơi nào đó tràn kho!

View File

@ -1,33 +0,0 @@
# textdomain: exchange_shop
# shop.lua
Title:=
Set=
You give:=
You get:=
Exchange=
You need:=
Current stock:=
Income=
Outgoing=
Use (E) + (Right click) for customer interface=
Exchange Shop: \"@1\"=
Owned by @1=
Exchange shop:=
Exchange Shop=
Exchange shop (constructing)=
Cannot dig exchange shop: one or multiple stocks are in use.=
Exchange shop: Insert your trade goods into 'Outgoing'.=
# shop_functions.lua
One or multiple ejection fields are filled.=
Please empty them or contact the shop owner.=
The field '@1' can not contain multiple times the same items.=
The field '@1' can not contain multiple times the same items.=
Please contact the shop owner.=
The stock in this shop is full.=
Please contact the shop owner.=
This shop is sold out.=
You do not have enough space in your inventory.=
You do not have the required items.=
Warning! Stacks are overflowing somewhere!=

121
shop.lua
View File

@ -6,9 +6,10 @@ This code is based on the idea of Dan Duncombe's exchange shop
]]
local S = exchange_shop.S
local FS = exchange_shop.FS
local shop_positions = {}
local tconcat = table.concat
local function get_exchange_shop_formspec(mode, pos, meta)
local name = "nodemeta:" .. pos.x .. "," .. pos.y .. "," .. pos.z
meta = meta or minetest.get_meta(pos)
@ -19,11 +20,6 @@ local function get_exchange_shop_formspec(mode, pos, meta)
end
local function make_slots(x, y, w, h, list, label)
-- local arrow = "default_arrow_bg.png"
-- if list == "cust_ow" then
-- arrow = arrow .. "\\^\\[transformFY"
-- end
local slots_image = ""
for _x = 1, w do
for _y = 1, h do
@ -32,7 +28,7 @@ local function get_exchange_shop_formspec(mode, pos, meta)
end
end
return table.concat({
return tconcat({
("label[%f,%f;%s]"):format(x, y - 0.5, label),
-- ("image[%f,%f;0.6,0.6;shop_front.png]"):format(x + 0.15, y + 0.3),
-- ("image[%f,%f;0.6,0.6;%s]"):format(x + 0.15, y + 0.0, arrow),
@ -46,31 +42,18 @@ local function get_exchange_shop_formspec(mode, pos, meta)
end
if mode == "customer" then
local overflow = false -- not meta:get_inventory():is_empty("cust_ej")
-- customer
local formspec = (
"size[9,8.75]" ..
"item_image[0,-0.1;1,1;".. exchange_shop.shopname .. "]" ..
"label[0.9,0.1;" .. S("Exchange Shop") .. "]" ..
default.gui_close_btn() ..
make_slots(1, 1.1, 2, 2, "cust_ow", FS("You give:")) ..
"button[3,3.2;3,1;exchange;" .. FS("Exchange") .. "]" ..
make_slots(6, 1.1, 2, 2, "cust_og", FS("You get:"))
make_slots(1, 1.1, 2, 2, "cust_ow", S("You give:")) ..
"button[3,3.2;3,1;exchange;" .. S("Exchange") .. "]" ..
make_slots(6, 1.1, 2, 2, "cust_og", S("You get:"))
)
-- Insert fallback slots
local inv_pos = 4.75
--[[if overflow then
formspec = (formspec ..
"label[0.7,4;" .. FS("Ejected items:") .. "\n" .. FS("Remove me!") .. "]" ..
"item_image[3,4;1,1;default:cell]" ..
"item_image[4,4;1,1;default:cell]" ..
"item_image[5,4;1,1;default:cell]" ..
"item_image[6,4;1,1;default:cell]" ..
"list[" .. name .. ";cust_ej;3,4;4,1;]"
)
inv_pos = 5
end]]
local main_image = ""
for x = 1, 9 do
@ -82,15 +65,13 @@ local function get_exchange_shop_formspec(mode, pos, meta)
formspec = formspec ..
main_image ..
"list[current_player;main;0," .. inv_pos .. ";9,4;]" ..
(overflow and listring("cust_ej") or "")
"list[current_player;main;0," .. inv_pos .. ";9,4;]"
return formspec
end
if mode == "owner_custm" or mode == "owner_stock" then
local overflow = not meta:get_inventory():is_empty("custm_ej")
-- local title = meta:get_string("title")
-- owner
local formspec = (
@ -98,12 +79,9 @@ local function get_exchange_shop_formspec(mode, pos, meta)
"item_image[0,-0.1;1,1;".. exchange_shop.shopname .. "]" ..
"label[0.9,0.1;" .. S("Exchange Shop") .. "]" ..
default.gui_close_btn("9.3,-0.1") ..
-- "field[0.3,0.65;3,0.5;title;" .. FS("Title:") .. ";" .. title .. "]" ..
-- "field_close_on_enter[title;false]" ..
-- "button[2.8,0.3;1,0.61;set_title;" .. FS("Set") .. "]" ..
make_slots(0.1, 2, 2, 2, "cust_ow", FS("You need:")) ..
make_slots(2.6, 2, 2, 2, "cust_og", FS("You give:")) ..
"label[5,0.4;" .. FS("Current stock:") .. "]"
make_slots(0.1, 2, 2, 2, "cust_ow", S("You need:")) ..
make_slots(2.6, 2, 2, 2, "cust_og", S("You give:")) ..
"label[5,0.4;" .. S("Current stock:") .. "]"
)
if overflow then
@ -113,7 +91,7 @@ local function get_exchange_shop_formspec(mode, pos, meta)
"item_image[2.1,4.4;1,1;default:cell]" ..
"item_image[3.1,4.4;1,1;default:cell]" ..
"list[" .. name .. ";custm_ej;0.1,4.4;4,1;]" ..
"label[0.1,5.3;" .. FS("Ejected items:") .. " " .. FS("Remove me!") .. "]" ..
"label[0.1,5.3;" .. S("Ejected items:") .. " " .. S("Remove me!") .. "]" ..
listring("custm_ej")
)
end
@ -129,14 +107,14 @@ local function get_exchange_shop_formspec(mode, pos, meta)
local arrow = "default_arrow_bg.png"
if mode == "owner_custm" then
formspec = (formspec ..
"button[6.25,5.25;2.4,0.5;view_stock;" .. FS("Income") .. "]" ..
"button[6.25,5.25;2.4,0.5;view_stock;" .. S("Income") .. "]" ..
stock_image ..
"list[" .. name .. ";custm;5,1;5,4;]" ..
listring("custm"))
arrow = arrow .. "\\^\\[transformFY"
else
formspec = (formspec ..
"button[6.25,5.25;2.4,0.5;view_custm;" .. FS("Outgoing") .. "]" ..
"button[6.25,5.25;2.4,0.5;view_custm;" .. S("Outgoing") .. "]" ..
stock_image ..
"list[" .. name .. ";stock;5,1;5,4;]" ..
listring("stock"))
@ -151,7 +129,7 @@ local function get_exchange_shop_formspec(mode, pos, meta)
end
formspec = formspec ..
-- "label[1,5.4;" .. FS("Use (E) + (Right click) for customer interface") .. "]" ..
-- "label[1,5.4;" .. S("Use (E) + (Right click) for customer interface") .. "]" ..
main_image ..
"image[8.65,5.2;0.6,0.6;" .. arrow .. "]" ..
"list[current_player;main;0.5,6;9,4;]"
@ -173,28 +151,12 @@ minetest.register_on_player_receive_fields(function(sender, formname, fields)
return
end
if (fields.quit and fields.quit ~= "") or
minetest.get_node(pos).name ~= exchange_shop.shopname then
if fields.quit or minetest.get_node(pos).name ~= exchange_shop.shopname then
shop_positions[player_name] = nil
return
end
local meta = minetest.get_meta(pos)
local title = meta:get_string("title")
local shop_owner = meta:get_string("owner")
local ftitle = fields.title
if ftitle and exchange_shop.has_access(meta, player_name) then
-- Limit title length
ftitle = ftitle:sub(1, 80)
if title ~= ftitle then
local title_text = (ftitle and ftitle ~= "") and
S("Exchange Shop: \"@1\"", ftitle) or S("Exchange Shop")
meta:set_string("infotext", title_text .. "\n" .. S("Owned by @1", shop_owner))
meta:set_string("title", minetest.formspec_escape(ftitle))
end
end
if fields.exchange then
local shop_inv = meta:get_inventory()
local player_inv = sender:get_inventory()
@ -213,9 +175,8 @@ minetest.register_on_player_receive_fields(function(sender, formname, fields)
minetest.show_formspec(player_name, "exchange_shop:shop_formspec",
get_exchange_shop_formspec("customer", pos, meta))
end
end
if (fields.view_custm or fields.view_stock)
and exchange_shop.has_access(meta, player_name) then
elseif (fields.view_custm or fields.view_stock)
and not minetest.is_protected(pos, player_name) then
local mode = "owner_stock"
if fields.view_custm then
mode = "owner_custm"
@ -233,32 +194,32 @@ minetest.register_node(exchange_shop.shopname, {
"shop_side.png", "shop_front.png"
},
paramtype2 = "facedir",
groups = {choppy=2, oddly_breakable_by_hand=2},
groups = {choppy = 2, oddly_breakable_by_hand = 2},
sounds = default.node_sound_wood_defaults(),
after_place_node = function(pos, placer)
local meta = minetest.get_meta(pos)
local owner = placer:get_player_name()
meta:set_string("owner", owner)
meta:set_string("infotext", S("Exchange Shop") .. "\n" .. S("Owned by @1", owner))
end,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("infotext", S("Exchange shop (constructing)"))
meta:set_string("owner", "")
local inv = meta:get_inventory()
inv:set_size("stock", exchange_shop.storage_size) -- needed stock for exchanges
inv:set_size("custm", exchange_shop.storage_size) -- stock of the customers exchanges
inv:set_size("custm_ej", 4) -- ejected items if shop has no inventory room
inv:set_size("cust_ow", 2*2) -- owner wants
inv:set_size("cust_og", 2*2) -- owner gives
inv:set_size("cust_ej", 4) -- ejected items if player has no inventory room
inv:set_size("cust_ow", 2 * 2) -- owner wants
inv:set_size("cust_og", 2 * 2) -- owner gives
end,
can_dig = function(pos, player)
local meta = minetest.get_meta(pos)
local inv = meta:get_inventory()
if inv:is_empty("stock") and inv:is_empty("custm")
and inv:is_empty("cust_ow") and inv:is_empty("custm_ej")
and inv:is_empty("cust_og") and inv:is_empty("cust_ej") then
and inv:is_empty("cust_og") then
return true
end
if player then
@ -267,12 +228,13 @@ minetest.register_node(exchange_shop.shopname, {
end
return false
end,
on_rightclick = function(pos, _, clicker)
local meta = minetest.get_meta(pos)
local player_name = clicker:get_player_name()
local meta = minetest.get_meta(pos)
local mode = "customer"
if exchange_shop.has_access(meta, player_name) and
if not minetest.is_protected(pos, player_name) and
not clicker:get_player_control().aux1 then
mode = "owner_custm"
end
@ -280,36 +242,31 @@ minetest.register_node(exchange_shop.shopname, {
minetest.show_formspec(player_name, "exchange_shop:shop_formspec",
get_exchange_shop_formspec(mode, pos, meta))
end,
allow_metadata_inventory_move = function(pos, _, _, _, _, count, player)
local meta = minetest.get_meta(pos)
if exchange_shop.has_access(meta, player:get_player_name()) then
return count
end
return 0
local player_name = player:get_player_name()
return not minetest.is_protected(pos, player_name) and count or 0
end,
allow_metadata_inventory_put = function(pos, listname, _, stack, player)
local player_name = player:get_player_name()
if listname == "custm" then
minetest.chat_send_player(player_name,
S("Exchange shop: Insert your trade goods into 'Outgoing'."))
return 0
end
local meta = minetest.get_meta(pos)
if exchange_shop.has_access(meta, player_name)
and listname ~= "cust_ej"
if not minetest.is_protected(pos, player_name)
and listname ~= "custm_ej" then
return stack:get_count()
end
return 0
end,
allow_metadata_inventory_take = function(pos, listname, _, stack, player)
local meta = minetest.get_meta(pos)
if exchange_shop.has_access(meta, player:get_player_name())
or listname == "cust_ej" then
return stack:get_count()
end
return 0
end,
allow_metadata_inventory_take = function(pos, _, _, stack, player)
local player_name = player:get_player_name()
return not minetest.is_protected(pos, player_name) and stack:get_count() or 0
end
})
minetest.register_craft({

View File

@ -1,15 +1,5 @@
local S = exchange_shop.S
function exchange_shop.has_access(meta, player_name)
local owner = meta:get_string("owner")
if player_name == owner or owner == "" then
return true
end
local privs = minetest.get_player_privs(player_name)
return privs.server or privs.protection_bypass
end
-- Tool wear aware replacement for contains_item.
function exchange_shop.list_contains_item(inv, listname, stack)
local count = stack:get_count()
@ -72,8 +62,7 @@ function exchange_shop.list_remove_item(inv, listname, stack)
end
function exchange_shop.exchange_action(player_inv, shop_inv, pos)
if not shop_inv:is_empty("cust_ej")
or not shop_inv:is_empty("custm_ej") then
if not shop_inv:is_empty("custm_ej") then
return S("One or multiple ejection fields are filled.") .. " " ..
S("Please empty them or contact the shop owner.")
end
@ -159,9 +148,6 @@ function exchange_shop.exchange_action(player_inv, shop_inv, pos)
player_inv:add_item("main", stack)
else
minetest.item_drop(stack, nil, pos)
-- Move to ejection field
-- shop_inv:add_item("cust_ej", stack)
-- fully_exchanged = false
end
end
if not fully_exchanged then