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

LUA - od Zera do Skryptera !


Badar

Rekomendowane odpowiedzi

Opublikowano

Specjalnie to sprawdziłem i u mnie wywaliło błąd.

 

http://desmond.image....png&res=medium

 

Na 100% zadziała to ale w czystym lua, ale wątpię aby tutaj.

 

 

quest testicho begin
state start begin
when 20011.chat."TABLICA" begin
local tabliczka = {19,29}
for tablica = 1, 2 do
pc.give_item2(tabliczka[tablica])
end
end
end
end

W ten sposób działa, ale używając zamiast '2' : '..tabliczka..' czy łatewa to nie zadziała.

Dobrze Cię zrozumiałem ?

 

@edit

dodatkowo dodaj :

d.set_warp_at_eliminate -- ustala warp po wyeliminowaniu potworów np. : d.set_warp_at_eliminate(2, d.get_map_index(), (2048+103), (6656+430), "data/dungeon/trolo/trolo_resp1.txt") -- 2 oznacza po jakim czasie (w sekundach) ma przenosić, zamiast "data/dungeon..." można użyć każdej innej funkcji

 

 

table.foreachi :

local t = {" = jeden" , " = dwa" , " = trzy"}
table.foreachi(t, say)

 

efekt :

forea.png

 

Nie widzę zastosowania ale zawsze będzie dodatkiem.

Tak samo można użyć table.foreach

table.foreach({" = jeden" , " = dwa" , " = trzy"}, say)

Efekt ten sam.

 

 

table.insert :

local tabela = {}
table.insert(tabela, 1, "tekst")
table.insert(tabela, 2, "HEHE")

for i = 1, 2 do
say(i.." = "..tabela[i])
end

efekt :

insertl.png

 

Oczywiście można użyć innego zastosowania, to są tylko przykłady.

 

table.remove :

local tabela = {"test", "test2", "test3", "test4"}
table.remove(tabela, 1)
for i = 1, 4 do
say(i.." = "..tabela[i])
end

 

efekt :

removeb.png

 

Mam nadzieję, że się przyda. peace.

 

 

edit2@

 

select_table :

local tabela = {"WYNIK 1" , "WYNIK 2" , "WYNIK 3" , "WYNIK 4"}
local sprawdz = select_table(tabela)
if sprawdz == 1 then
say("Wybrałeś jedynkę.")
elseif sprawdz == 2 then
say("Wybrałeś dwójkę.")
end

 

efekt :

 

selectc.png

 

Dodaj to wszystko do swojego tutka oraz dodaj, że funkcje typu os. trzeba najpierw wgrać do quest_functions, inaczej pokażę błąd, że nieznana funkcja (po prostu dzieciom odkrywam niebo).

 

To moduł "table" -- miałem go dziś dodac, ale bardzo Ci dziękuję za przypomnienie :)

 

Co do dopisania - myślałem, że to oczywiste .

 

Chodziło mi o co innego jak mówimy o pętli for - look teraz do topika

  • Odpowiedzi 75
  • Dodano
  • Ostatniej odpowiedzi
Opublikowano

To co dodałeś próbowałem i nie działa jak trzeba. Wyświetla pustego say'a. Na moje to trzeba odczytać ile jest tych wartości w tabeli i zastąpić zmienną zamiast tego 'tabliczka'. Z dodawaniem rób co chcesz, Twój cyrk - Twoje małpy.

 

stronę pod metina w htmlu chcesz robić? xD

 

Jakby nie patrzeć html'a też trzeba użyć. Poprawnie byłoby pewnie dla Ciebie jakby napisał php ;)

 

umarł

Opublikowano

To co dodałeś próbowałem i nie działa jak trzeba. Wyświetla pustego say'a. Na moje to trzeba odczytać ile jest tych wartości w tabeli i zastąpić zmienną zamiast tego 'tabliczka'. Z dodawaniem rób co chcesz, Twój cyrk - Twoje małpy.

 

 

 

Jakby nie patrzeć html'a też trzeba użyć. Poprawnie byłoby pewnie dla Ciebie jakby napisał php ;)

 

Hehehe, jakoś nigdy małp nie lubiłem ^^ .

 

No nic, z tą pętlą for coś jeszcze pokminię - nie ma innej opcji ;f .

 

Ale i tak dzięki za wkład, zawsze przyda się opinia innego questera =)

Opublikowano

jak napisze mi wszystkie skrypty w html to zwracam szacunek.

Nie ma takiej opcji, ale chodziło mi raczej przykładowo o formularze (które jakby nie patrzeć można zrobić w ten sposób :

echo'<input type="submit" name="wyniki" value=" Pokaż wszystkie wyniki"></tr>';

)

Mam nadzieję, że zrozumiałeś ;d

 

umarł

Opublikowano

Więc jak użyjesz chociażby <title> nie używając html ? Musisz użyć na pewno funkcji z html'a inaczej nie ma szans na moje.

 

umarł

Opublikowano

Ojj Badar Pro

:D:D:D

 

Przyda się na pewno dla początkujących

;))

 

Mam Już GG naprawione więc napiszę do ciebie w pewnej sprawie ; )

 

A co do tematu Jeszcze raz:

 

Dla początkujących jest świetnie napisane, nawet dla zaawansowanych się przyda parę przypomnień i Dodatkowe Funkcję.

 

 

Pozdrawiam, AmOs

1355920968-U274371.jpg

 

Obiecanki Cacanki z 2008 roku

:D

Opublikowano

d.revived -- funkcja która ''aktywuje'' zadanie . Można ją wykorzystać przykładowo

Gdy osoba będzie na kordach 10 10 to dzięki funkcji d.revived reaktywujemy quest x

nie umieszczamy linków zewnętrznych.

Opublikowano

stronę pod metina w htmlu chcesz zrobić? xD

Można nawet w PhotoShop'ie, ważne aby ją oskrytptować w php

xD

screenshot_10.jpg


Opublikowano

Jpd, musicie tu offtopować? -.-

 

@Max do jutra jednak skończę tutka

 

@Down - żeby nie było, że mój post był spamem, hahah ;d .

 

Już zmienione ;>

Opublikowano

Dlaczego jako 2. punkt są tablice? Dlaczego jako 4. są pętle? Już nie będę wspominał o modułach.. Przecież to są rzeczy których w 90% questów nawet nie użyjemy = niepotrzebny mindfuck dla początkujących. Co do skryptera, no niech będzie ale lepiej by było gdyby jednak było wspomniane coś o questach, ktoś nowy nie musi wiedzieć, że questy to skrypty i że są pisane w języku lua.

 

P.S: http://www.mpcforum....-quest-writera/

Koniec z MPCForum.pl i ogółem z metinem

:D

 

sunp.png

Sygnatura wykonana przez

Isuribi aka Amelka.

Opublikowano

Dlaczego jako 2. punkt są tablice? Dlaczego jako 4. są pętle? Już nie będę wspominał o modułach.. Przecież to są rzeczy których w 90% questów nawet nie użyjemy = niepotrzebny mindfuck dla początkujących. Co do skryptera, no niech będzie ale lepiej by było gdyby jednak było wspomniane coś o questach, ktoś nowy nie musi wiedzieć, że questy to skrypty i że są pisane w języku lua.

 

P.S: http://www.mpcforum....-quest-writera/

 

No widziałem ten tutorial dawno, ale postanowiłem napisać własny .

 

Jest nie dokończony - fakt, dokończę go na dniach .

 

Ja osobiście używam modułu os, io, table i math ^^.

 

Przerobię go ciutkę, co nie co jeszcze dodam i każdy newbie załapie .

 

Osobiście zawsze wyznawałem zasadę "Jak się uczyć to na całego ".

 

@Des - dzięki za słowa uznania ^^...

 

 

@Jeśli macie jakieś pomysły na zmiany / rozwinięcie - piszcie, ja z chęcią propozycje przeczytam :)

Opublikowano

cmdchat() uruchamia zarejestrowane skrypty w game.py (funk. __ServerCommand_Build). Więc jeśli chcesz zrobić lua-python to jest to najlepsze rozwiązanie.

Przykładowy quest:

 

quest ceemde begin
state start begin
when login with pc.getqf("lapa") == 0 begin
pc.setqf("lapa", 1)
cmdchat("okno")
end
end
end

 

Chyba nie muszę opisywać co ten quest robi.

 

Teraz trzeba edytować game.py

Więc lecimy do funkcji __ServerCommand_Build i rejestrujemy nową komendę:

"nazwakomendy" : self.__funkcjakomendy,

 

Teraz dodajemy funkcje w game.py, przykładowo:

import nazwaskryptu
def __funkcjakomendy(self):
self.jakasnazwa = nazwaskryptu.najblizszyclass()
self.jakasnazwa.Show()

sygnatura niezgodna z regulaminem forum mpc rozdział II pkt. 7

Opublikowano

Ostatnia aktualizacja : 29.02.2012 godzina : 20:20

Planowane zakończenie poprawek : 1.02.2012 godzina : 21:00

 

z tego wynika że skończysz 28 dni wcześniej, niż zacząłeś =D

Opublikowano

Ostatnia aktualizacja : 29.02.2012 godzina : 20:20

Planowane zakończenie poprawek : 1.02.2012 godzina : 21:00

 

z tego wynika że skończysz 28 dni wcześniej, niż zacząłeś =D

 

Hahaha, ale fejspalma strzeliłem :<.

 

Dzieki, już poprawiam xD

Opublikowano

Dobre! Badarku, Dzieki Tobie umiem juz napisac questa *Hello Badar*. Dzieki Ci.. Haha.: d.

 

Dobry TuT jest co czytac.:]

34127134971236946388.png

Opublikowano

Ja go skończyć muszę, jutro leci update ^^

 

@Endy - jutro dodam w przykładach o tym all, jak i objaśnie każdą funkcję, bo ciągle nie mam czasu -.-

 

Bez spiny ;p

Opublikowano

Od zera do skryptera?

 

Weź zmień ten tytuł czlowieku i sie nie osmieszaj.

To, co zaprezentowałeś to nic innego jak podstawy PODSTAW.

 

LUA-SQL?

 

Wiesz chociaż co to kurwa jest?

Człowieku, LUA SQL?!!!

 

Dałeś funkcję, która raz, jest w kurwę obrzydliwa, to dwa, jest w chuj mało wydajna - czy Twoim zdaniem LUA_SQL polega na tym że:

 

1) Pobieramy dane ze zmiennych.

2) Używamy LOKALNEGO POŁĄCZENIA MYSQL do wywołania zapytania.

3) ZAPISUJEMY wynik zapytania do pliku.

4) Zwracamy wynik z pliku.

 

Człowieku, Ty jesteś chyba psychicznie chory. Sprawdź jakie to gówno będzie miało performance, nawet na i7 a dopiero później pozwól sobie dzielić się nim z innymi.

Poza tym, po CHUJ zmienna z hasłem przy każdym zapytaniu?

Można to zrobić o wiele lepiej, pomijając zapis do pliku, ale najpierw trzeba znać LUA.

 

Poczytaj trochę:

http://www.keplerproject.org/luasql/

 

Nie wspomnę już o tym, że Twoje "pro questy" można napisać o wiele krócej - ale najpierw trzeba dobrze znać LUA!

 

Żenada, wychodzę! I przestań grać wszech-wiedzącego, bo tak się zgnoiłeś, że aż mi się srać zachciało.

Przestań obrażać ludzi swoimi gówienkami wygrzebanymi z pomiędzy zębów.

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...