Projekt MMO

Czyli tworzymy nasze MMO ;)

  • Nie jesteś zalogowany.
  • Polecamy: Komputery

#1 2009-12-22 13:33:32

Fedake

Nowy użytkownik

Zarejestrowany: 2009-12-21
Posty: 5
Punktów :   

NPC Hagrid + Łódka

NPC Skrypt:

Spoiler:

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}

function onCreatureAppear(cid)                npcHandler:onCreatureAppear(cid)            end
function onCreatureDisappear(cid)            npcHandler:onCreatureDisappear(cid)            end
function onCreatureSay(cid, type, msg)            npcHandler:onCreatureSay(cid, type, msg)        end
function onThink()                    npcHandler:onThink()                    end

function creatureSayCallback(cid, type, msg)
    if(not npcHandler:isFocused(cid)) then
        return false
    end

    local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
    if(msgcontains(msg, 'informacje'))then
        selfSay('BARDZO CIEKAWA RPGOWA HISTORIA KTÓREJ NIE UMIEM WYMYŚLIĆ ', cid)
    if(msgcontains(msg, 'tak') or msgcontains(msg, 'rozumiem')) then
        selfSay('Więc na co czekasz, ruszaj do Hogwartu', cid)
        doPlayerSetStorageValue(cid, 60000, 1)
    end

    return true
end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())




w Hagrid.xml

Spoiler:

<?xml version="1.0" encoding="UTF-8"?>
<npc name="HAGRID" script="ŚCIEŻKA" walkinterval="2000" floorchange="0">
    <health now="100" max="100"/>
    <look type="JEGO LOOKTYPE" head="0" body="0" legs="0" feet="0"/>
    <parameters>
    <parameter key="message_greet" value="Witam cie |PLAYERNAME|. Aby dowiedziec sie wiecej o Hogwarcie zapytaj o {informacje}" />
    <parameter key="message_farewell" value="Zegnaj." />
    <parameter key="message_walkaway" value="Gdzie uciekasz?" />
    </parameters>
</npc>

Kiedy pogadamy z nim i będziemy już mieli Storage Value = 60000(mozna zmienic) Możemy wejść na łódź

Spoiler:

function onStepIn(cid, item, pos)
local boataid = 9999
local tp = {x=999, y=999, z=9}
    if item.actionid == boataid then
        if getPlayerStorageValue(cid, 60000) == 1
            doTeleportThing(cid, tp)
        else
            doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Najpierw porozmawiaj z Hagridem")
        end
    end
    return TRUE
end

boataid = Action ID Kratki która ma tpować
tp = miejsce gdzie ma tpować
W movements.xml

Spoiler:

<movevent type="StepIn" actionid="TUTAJ ACTION ID ŁÓDKI" event="script" value="ŚCIEŻKA" />

Aby dodać jakieś słowa na które mają reagować npc musimy edytować(w TFS) data/npc/lib/npcsystem/npcsystem.lua
Szukamy linijki:     FOCUS_GREETWORDS i tam zmieniamy na co ma reagować npc ;]

Ostatnio edytowany przez Fedake (2009-12-22 14:05:25)

Offline

 

Stopka forum

RSS
Powered by PunBB
© Copyright 2002–2008 PunBB
Polityka cookies - Wersja Lo-Fi

[ Generated in 0.529 seconds, 10 queries executed ]


Darmowe Forum | Ciekawe Fora | Darmowe Fora
www.zgraja.pun.pl www.menadzer2009zuzlowy.pun.pl www.wsbfir.pun.pl www.poczujmagie.pun.pl www.veterans.pun.pl