- Dołączył
- Marzec 20, 2009
- Posty
- 3
- Liczba reakcji
- 1
Witam. Potrzebuje skryptu na NPC kt?ry sprzedaje PACC na 7 dni. I ten sam NPC ma sprzedawa? promotion je?eli ma si? kupiony PACC.
W ko?cu sam do tego doszed?em. Mo?e komu? si? przyda:
w data/npc/Promotion.xml
w data/npc/scripts/promotion.lua
W ko?cu sam do tego doszed?em. Mo?e komu? si? przyda:
w data/npc/Promotion.xml
Kod:
<?xml version="1.0" encoding="UTF-8"?>
<npc name="Promotion" script="data/npc/scripts/promotion.lua" walkinterval="2000" floorchange="0">
<health now="100" max="100"/>
<look type="133" head="20" body="39" legs="45" feet="7" addons="3"/>
<parameters>
<parameter key="message_greet" value="Witam |PLAYERNAME|. Tu kupisz {premium} oraz {promotion}." />
</parameters>
</npc>
w data/npc/scripts/promotion.lua
Kod:
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
function creatureSayCallback(cid, type, msg)
if(not npcHandler:isFocused(cid)) then
return FALSE
end
if(msgcontains(msg, 'premium'))then
npcHandler:say('Premium kosztuje 10cc i jest na 7 dni. Chcesz kupic premium?', cid)
talkState = 1
elseif(talkState == 1 and msgcontains(msg, 'yes'))then
if(doPlayerRemoveMoney(cid, 100000) == TRUE)then
npcHandler:say('Gratuluje masz premium.', cid)
doPlayerAddPremiumDays(cid, 7)
else
npcHandler:say('Nie masz tyle pieniedzy!', cid)
end
talkState = 0
end
return TRUE
end
local node1 = keywordHandler:addKeyword({'promotion'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Promocja kosztuje 15cc. Chcesz kupic promocje?'})
node1:addChildKeyword({'yes'}, StdModule.promotePlayer, {npcHandler = npcHandler, cost = 150000, level = 5, promotion = 1, text = 'Gratuluje masz promocje.'})
node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Wroc kiedy bedziesz gotowy!', reset = true})
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
Ostatnia edycja:
