What's new

Pro?ba o NPC - Kapitan

Status
Not open for further replies.

Nestea Flow

Active User
Joined
Jan 20, 2012
Messages
84
Reaction score
4
Siema, ot?? podj??em si? zrobienia projektu mapy i potrzebny jest mi NPC, kt?ry po napisaniu danego tekstu przenosi nas do miasta. Czyli mia?oby to wygl?da? tak. NPC nazywa?by si? "Neiden" i po napisaniu do niego Hi/Powrot/Tak przenosi nas w wyznaczon? pozycj?. Rozmowa mia?aby przebiega? tak:

Nazwa gracza[level]: hi
Neiden: Witaj, [Nazwa Gracza]. Napisz powrot jesli chcesz wrocic do miasta.
Nazwa gracza[level]: powrot
Neiden: Czy na pewno chcesz abym Cie przeniosl do miasta ?
Nazwa gracza[level]: tak
Neiden: Dowidzenia, zycze udanej gry.

Je?eli jakikolwiek skrypter podj??by si? tego, by?bym bardzo wdzi?czny. Je?eli chodzi o wynagrodzenie, to si? zgodz? je?eli zostanie to zrobione dobrze. Pozdrawiam, Libra.

EDIT. Uda?o mi si? samemu zrobi?, tylko mam problem z jego wiadomosciami.

Jego wiadomo?? brzmi tak:

20:16 Neiden: Witaj Libra. Napisz powrot jesli chcesz wrocic do miasta.
20:16 Libra [1]: powrot
20:16 Neiden: Do you want to travel to powrot for 0 gold coins?
20:16 Libra [1]: yes
20:16 Neiden: It was a pleasure doing business with you.

I problem w tym, ?e nie wiem gdzie zmieni? aby nie bra? kasy tylko odrazu przenosi? oraz to jego ostatnie zdanie "20:16 Neiden: It was a pleasure doing business with you."... w .xml npc tego niema ani w .lua ; /
 

Oskar

Forum friend
Joined
Jan 24, 2009
Messages
2,256
Reaction score
331
Odp: Pro?ba o NPC

Odp: Pro?ba o NPC

PHP:
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 msg:lower() == 'powrot' then
	talkState[cid] = 1
	return selfSay('Czy na pewno chcesz abym Cie przeniosl do miasta?', cid)
elseif msg:lower() == 'tak' and talkState[cid] == 1 then
	doTeleportThing(cid, getPlayerMasterPos(cid))
	talkState[cid] = nil
	return selfSay('Dowidzenia, zycze udanej gry.', cid)
else
	return selfSay('Nie rozumiem co do mnie mowisz.', cid)
end
return true
end
npcHandler:setMessage(MESSAGE_GREET, 'Witaj, |PLAYERNAME|. Napisz {powrot} jesli chcesz wrocic do miasta')
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
Edycja nie powinna sprawi? Ci problem?w.
 

DBHayate

Active User
Joined
Apr 3, 2012
Messages
103
Reaction score
6
Odp: Pro?ba o NPC

Odp: Pro?ba o NPC

Jaki silnik ? 8.0 ? 8.54 ?

Tu masz na 8.54 :

Data>NPC>Script>miasto.lua

PHP:
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)

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

local travelNode = keywordHandler:addKeyword({'powrot'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Czy na pewno chcesz abym Cie przeniosl do miasta ? ?'})
	travelNode:addChildKeyword({'yes'}, StdModule.travel, {npcHandler = npcHandler, premium = false, level = 1, cost = 0, destination = {x=1022, y=1022, z=7} })
	travelNode:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = 'Moze innym razem.'})


keywordHandler:addKeyword({'travel'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Przenosze do miasta.'})

npcHandler:addModule(FocusModule:new())

Data>NPC>miasto.xml

i do niego :

PHP:
<?xml version="1.0" encoding="UTF-8"?>
<npc name="Miasto" script="data/npc/scripts/miasto.lua" walkinterval="0" floorchange="0">
<health now="150" max="150"/>
<look typeex="5360"/>
<parameters>
 <parameter key="message_greet" value="Witaj |PLAYERNAME|. Napisz powrot jesli chcesz wrocic do miasta. ?"/>
       <parameter key="message_farewell" value="Zycze milej gry."/>
 <parameter key="message_walkaway" value="Farewell then.." />
 <parameter key="module_shop" value="1" />
 <parameter key="shop_buyable" value="" />
</parameters>
</npc>

~~DBHayate
 
Last edited:

Nestea Flow

Active User
Joined
Jan 20, 2012
Messages
84
Reaction score
4
Odp: Pro?ba o NPC

Odp: Pro?ba o NPC

Dzi?ki wam, ju? sobie poradzi?em. Tylko mam pytanie, czy da rad? zmieni? t? wiadomo?? ?

20:49 Travel: It was a pleasure doing business with you.

Ona pokazuje si? gdy ju? mnie przeniesie do miasta.

PS. Jest to wersja 8.60.
 

DBHayate

Active User
Joined
Apr 3, 2012
Messages
103
Reaction score
6
Odp: Pro?ba o NPC

Odp: Pro?ba o NPC

U?yj mojego kodu, lub poka? Twojego NPC'a to Ci zmienimy.

~~DBHayate
 

Nestea Flow

Active User
Joined
Jan 20, 2012
Messages
84
Reaction score
4
Odp: Pro?ba o NPC

Odp: Pro?ba o NPC

Travel.xml

PHP:
<?xml version="1.0" encoding="UTF-8"?>
<npc name="Travel" script="travel.lua" walkinterval="2000">
	<health now="100" max="100"/>
	<look type="151" head="78" body="70" legs="66" feet="126" addons="0"/>
	<parameters>
		<parameter key="message_greet" value="Witaj, |PLAYERNAME|. Wpisz {travel}." />
		<parameter key="message_farewell" value="Milej podrozy." />
		<parameter key="message_needmoremoney" value="Nie masz wystarczajacej ilosci pieniedzy."/>
		<parameter key="message_decline" value="Dowidzenia, |PLAYERNAME|."/>
	</parameters>
</npc>

travel.lua

PHP:
local keywordHandler = KeywordHandler:new()
        local npcHandler = NpcHandler:new(keywordHandler)
        NpcSystem.parseParameters(npcHandler)
        
        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
        
        local travelNode = keywordHandler:addKeyword({'city'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Czy chcesz powrocic do miasta ?.'})
        	travelNode:addChildKeyword({'tak'}, StdModule.travel, {npcHandler = npcHandler, premium = false, level = 0, cost = 0, destination = {x=1000, y=1000, z=7}, msg = 'Prosze Bardzo.' })
        	travelNode:addChildKeyword({'nie'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = 'Zycze udanej gry.'})
      			
        keywordHandler:addKeyword({'travel'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Moge Cie przeniesc do {City}'})

        npcHandler:addModule(FocusModule:new())
 

Nestea Flow

Active User
Joined
Jan 20, 2012
Messages
84
Reaction score
4
Odp: Pro?ba o NPC - Kapitan

REFRESH !

PS. Wiadomo?? kierowana do MOD Team, skoro temat w z?ym dziale prosz? o przeniesienie do odpowiedniego.
 
Status
Not open for further replies.
Top