Ir para conteúdo

[pedido] Tenho Pedidos De Script E Talkaction


bxkbxk

Posts Recomendados

Ola gente... eu denovo :p

 

Tenho alguns pedidos sobre Sript e talkaction.

 

1°-Voce fala [Exemplo] !item, dai vc ganha um item, mas perde um item[exemplo, crystal coin]?

 

2°-Um script que a cada 1 hora ou 2 hora da clean no server

 

3°-Por exemplo, um talkaction que vc compra uma magia, tipo !blastspell, dai vc perde um certo item [exemplo, crystal coin], mas vc pod soltar o blast spell...

 

E otra coisa, se o Macryzius ler este topico, me responda uma coisa,

Naquele topico anterior Topico, voce disse o talkaction completo, mas me explique 3 coisas [xD]

1-O que exatamente precisa por nessa parte:

if(getPlayerVocation(cid) > 4) then [Eh o ID da classe?]

 

2-Tem que por 4 talkaction para cada vocaçao?

 

3-Como resolve este erro:

[15/08/2009 20:52:18] Warning: [Event::loadScript] Can not load script. data/talkactions/scripts/blastkina.lua

[15/08/2009 20:52:18] data/talkactions/scripts/blastkina.lua:17: 'end' expected (to close 'if' at line 2) near '<eof>'

 

 

 

 

Agradecido desde ja

Link para o comentário
Compartilhar em outros sites

1°Script

 

function onSay(cid, words, param)

itemid = 2160 -- cristal coin, no caso o item que da em troca
item = 2160 -- item que ganha
itemname = getItemNameById(item)
itemidname = getItemNameById(itemid)

if doRemoveItem(cid, itemid, [b]1[/b]) == TRUE then -- 1 e igual a quantidade
doPlayerAddItem(cid, item, 1)
doPlayerSendTextMessage(cid, 22, "Você comprou um(a) "..itemname..".")
else
doPlayerSendTextMessage(cid, 22, "Você precisa de um(a) "..itemidname.." para ganhar um(a) "..itemname..".")
end
return TRUE
end

<talkaction words="!item" script="nomedoscript.lua"/>

 

Não testei, qualquer bug posta ae.

 

Script 2:

O seu servidor tem a pasta globalevents?

Se tiver, vem um script no TFS assim:

function executeClean()
doCleanMap()
doBroadcastMessage("Game map cleaned, next clean in 2 hours.")
return TRUE
end

function onThink(interval, lastExecution)
doBroadcastMessage("Game map cleaning within 30 seconds, please pick up your items!")
addEvent(executeClean, 30000)
return TRUE
end

<globalevent name="clean" interval="7200" event="script" value="clean.lua"/>

 

Dai só configurar como quizer...

 

A da magia nao sei fazer...

E sobre o bug do Marcryzius

[15/08/2009 20:52:18] Warning: [Event::loadScript] Can not load script. data/talkactions/scripts/blastkina.lua

[15/08/2009 20:52:18] data/talkactions/scripts/blastkina.lua:17: 'end' expected (to close 'if' at line 2) near '<eof>'

Um erro muito normal.

Só adicionar um end no script que creio eu que irá funcionar.

 

Abraços!

Link para o comentário
Compartilhar em outros sites

Vlwws, vo testa jah jah edito...

 

function onSay(cid, words, param)
if isPremium(cid) == TRUE then
if getPlayerStorageValue(cid, 1020) == 50 then
if(getPlayerVocation(cid) > 11) then
if(doPlayerRemoveItem(cid, 8839,50) == TRUE) then
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "msg.")
setPlayerPromotionLevel(cid, 1)
else
doPlayerSendTextMessage(cid,22, "item.")
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
end
else
doPlayerSendCancel(cid, "promot.")
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
end
return TRUE
end
end
end

Vc pode me responder esta? tipo esse eh um talkaction que precisa ter um item pra virar 2° promotion...

mas na parte if(getPlayerVocation(cid) > 11) then, tem de botar a id da vocation? [em negrito]

Link para o comentário
Compartilhar em outros sites

/z\ up:

retorne a função e não ao if.

 

wiltry

isso não e erro no meu script.

 

topico:

1ª)

você ponhe o id da vocação maxima que pode ter promotion tipo existe normalmente 4 vocações e cada uma existe uma promotion.

 

então seria assim

if(getPlayerVocation(cid) <= 4) then

que no caso seria vocação 4 ou menor.

 

2ª)

não.

esse script serve pra todas as vocações.

 

3ª) esse erro e não bug e causado pela falta do end pra fechar o if.

Editado por Marcryzius
Link para o comentário
Compartilhar em outros sites

Olha como esta o script:

function onSay(cid, words, param)

itemid = 8839
item = 2306
itemname = getItemNameById(item)
itemidname = getItemNameById(itemid)

if doRemoveItem(cid, item, 65) == TRUE then
doPlayerAddItem(cid, itemid, 1)
doPlayerSendTextMessage(cid, 22, "Você comprou um(a) "..itemname..".")
else
doPlayerSendTextMessage(cid, 22, "Você precisa de um(a) "..itemidname.." para ganhar um(a) "..itemname..".")
end
return TRUE
end

 

No caso o "itemid" seria 8839, e o "item" seria 2306,

Eu tenho os 65 "itemid" mas aparece:

16:33 Você precisa de um(a) Pereba de Reset para ganhar um(a) blast healing rune.

[itemid: pereba de reset]

[item:blast healing rune]

E eu nao ganho nada :p plz explica ae xP

Link para o comentário
Compartilhar em outros sites

function onSay(cid, words, param)

itemid = 8839
item = 2306
itemname = getItemNameById(item)
itemidname = getItemNameById(itemid)

if doPlayerRemoveItem(cid, item, 65) == TRUE then
doPlayerAddItem(cid, itemid, 1)
doPlayerSendTextMessage(cid, 22, "Você comprou um(a) "..itemname..".")
else
doPlayerSendTextMessage(cid, 22, "Você precisa de 65 "..itemidname.." para ganhar um(a) "..itemname..".")
end
return TRUE
end

 

Olhe como esta o talkaction. Ainda nao funciona, eu falo o comando

mas aparece "Voce precisa de 65 perebas de reset para ganhar um(a) blast healing rune"

Mas eu tenho mais q 65! E nao ganho nada :p tem algo de errado?

Link para o comentário
Compartilhar em outros sites

Ahh, um erro aqui de coerencia.

Troca por isso:

 

function onSay(cid, words, param)

itemid = 8839 -- id do item que o player vai ganhar
item = 2306 -- no caso, o ID da pereba
itemname = getItemNameById(item)
itemidname = getItemNameById(itemid)

if doPlayerRemoveItem(cid, item, 65) == TRUE then
doPlayerAddItem(cid, itemid, 1)
doPlayerSendTextMessage(cid, 22, "Você comprou um(a) "..itemidname..".")
else
doPlayerSendTextMessage(cid, 22, "Você precisa de 65 "..itemname.." para ganhar um(a) "..itemidname..".")
end
return TRUE
end

 

Acho que agora da.

flw

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...