• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!
  • 2026 staff recruitment is open! Check it out and consider applying!

[Lua] Npc - jak zrobić inny msg powitania, na który zareaguje npc (problem xd)

Seminari

Banned User
Joined
Dec 13, 2009
Messages
1,496
Reaction score
34
Location
Poland
Chciałbym zrobić parę npc'ów, które by reagowały wyłącznie np. jak napiszemy 'elo', nie chodzi mi by wszystkie npc na to reagowały tylko niektóre (czyli jak to zrobić do pojedyńczego npc'a w skrypcie .lua, a nie w libie)
Dodatkowo,żeby to się zawierało tak bym mógł po msg, dać dodatkowy warunek..

np.
LUA:
if msg = 'elo' then
        if getstg == 1 then
        selfsay(no czesc)
        elseif getstg == 2 then
        selfsay(witaj moj przyjacielu)
        elseif getstg < 1 then
            if getPlayerItemCount(jakisitemid) >= 20 then
            remove itemy
            zmien stg na 1
            selfsay(witaj nowy graczu)
            else
            selfsay(nie masz jedzenia, nie masz rozmowy cya)


Coś takiego, bo wgl nie rozumiem jak to działa z tym focused itp. w npc'ach, a jak czytam tego liba, to trudno mi wywnioskować jaka jest funkcja na zmianę focus'a (bo chyba to robi, że npc zatrzymuje się i rozpoczyna z nami konwersajce[CHYBA, NIEWIEM])
 
Last edited by a moderator:
Popatrz na gotowe interakcje NPC w czystej rewizji TFS. Jest tam kilka przykładowych plików, w których znajdziesz to, czego potrzebujesz i nie w LUA tylko XML.
 
No tak, ale jeśli bym chciał to koniecznie zrobić w lua, bo też chciałbym doczepić tam dodatkowe warunki? takie jak np. oprócz właściwego msg czy player ma np. kondycje podpalenia itd.?
 
No to możesz na dole skryptu dodać swój kod:

LUA:
if(pukpukal == "no")
npcHandler:setMessage(MESSAGE_GREET, "pukpuk |PLAYERNAME|. popukasz?")
pukpukal(1)
else
npcHandler:setMessage(MESSAGE_GREET, "pukpukales juz")
end
npcHandler:setMessage(MESSAGE_WALKAWAY, "nie pukasz!")
npcHandler:setMessage(MESSAGE_FAREWELL, "come back when you are ready to pukpuk!")
 
npcHandler:setCallback(CALLBACK_GREET, greetCallback)
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

Sorki za brak tabulacji .
 
Back
Top