Ir para conteúdo
  • Cadastre-se

Video Aula - Aprenda ser um scripter.


Posts Recomendados

Pronto, concertei e coloquei mensagens de retorno. :P Agora, preciso aprender como faz pra não ter gold infinito. :trollface:


function onUse(cid, item, fromPosition, itemEx, toPosition)


if getPlayerLevel(cid) >= 200 then

    doPlayerAddItem(cid, 2160, 20)

    doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você ganhou 20 crystal coins.")

   else

   doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você não tem level suficiente.")

 return true

end

 return true

end

@HenriqueFrezza // MSN: [email protected]

tk-melhor.png

Link para o post
Compartilhar em outros sites
  • Respostas 62
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Bom galera, tudo certo? XD Então galera, como todo mundo me pedia ajuda com scripts, decidir criar um canal no youtube focado bastante em como se tornar um script, no canal vai t

Hehe, vou postar tutoriais quase todos os dias, O link está lá acabei de colocar, eu tinha esquecido! Sorry Se inscreve no canal, valeu!

Ae galera, que bom que vocês estão gostando hoje sai duas videos aulas! Corrigindo a galera que fez os script aí: Hayashii: Slaake O ceu tá certo! Porém é mais confiável fazer

Vocês também podem em vez de usar o 'else', fazer uma comparação negativa, exemplo o script acima ^

a comparação dele é o seguinte

if getPlayerLevel(cid) >= 200 then
vamos fazer de forma diferente:
if getPlayerLevel(cid) < 200 then
se o jogador não tem o level 200 então temos que fazer retornar uma mensagem dizendo que não tem level suficiente
function onUse(cid, item, fromPosition, itemEx, toPosition)

if getPlayerLevel(cid) < 200 then

return doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você não tem level suficiente.")

end

	doPlayerAddItem(cid, 2160, 20)

	doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você ganhou 20 crystal coins.")

return true

end

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Link para o post
Compartilhar em outros sites

no caso a função 'doPlayerSendTextMessage' ela exige alguns parâmetros, tal qual definir a cor da mensagem, no caso 'MESSAGE_INFO_DESCR' é aquela mensagem em cor verde no meio da tela, ou ao invés de usar 'MESSAGE_INFO_DESCR' você pode optar por usar o número da cor, que no caso dela é 25.

Para saber mais aqui está a lista:

MESSAGE_FIRST = 18

MESSAGE_STATUS_CONSOLE_RED = MESSAGE_FIRST

MESSAGE_EVENT_ORANGE = 19

MESSAGE_STATUS_CONSOLE_ORANGE = 20

MESSAGE_STATUS_WARNING = 21

MESSAGE_EVENT_ADVANCE = 22

MESSAGE_EVENT_DEFAULT = 23

MESSAGE_STATUS_DEFAULT = 24

MESSAGE_INFO_DESCR = 25

MESSAGE_STATUS_SMALL = 26

MESSAGE_STATUS_CONSOLE_BLUE = 27

MESSAGE_LAST = MESSAGE_STATUS_CONSOLE_BLUE

tanto faz usar

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "msg")
ou
doPlayerSendTextMessage(cid, 25, "msg")

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Link para o post
Compartilhar em outros sites

function onUse (cid, item, itemEx, fromPosition, toPosition)

if getPlayerLevel (cid) >= 2000 then

doPlayerAddItem (cid, 2463,1)

doPlayerSendChannelMessage (cid,' parabens,upe ate o level 20010 agr')

else

doPlayerSendCancel (cid,'Upe ate o level 2000 antes ')

return true

end

if getPlayerLevel (cid) >= 20100 then

doPlayerAddItem (cid, 2647,1)

doPlayerSendChannelMessage (cid,'Tome uma plate legs,upe ate o level 20300')

else

doPlayerSendCancel (cid,'Upe ate o level 20010 pra ganhar recompensa)

return true

end

Fiz certo ?

Editado por Hayashii (veja o histórico de edições)

Se o mundo é mesmo parecido com o que vejo,

Prefiro acreditar no mundo do meu jeito.

( - Renato Russo)

Link para o post
Compartilhar em outros sites

Hayashii

Não..

Veja o porque...

if getPlayerLevel (cid) >= 2000 then

Se for level 2000 ou mais...

if getPlayerLevel (cid) >= 20100 then

Se for level 20100 ou mais..

Ou seja...

Mesmo que eu seja level 20100 e executar esse script, vou pegar o item do lvl 2000, porque

if getPlayerLevel (cid) >= 2000 then

Vou estar mais que 2000... deu pra entender?

^^

2z8t5ef.jpg

p7gkt.jpg

"Quem ri por último é retardado."

"Quem cedo madruga, fica com sono o dia todo."

"Família que reza unida, é religiosa pra caralho."

Link para o post
Compartilhar em outros sites

thalia, vi agora as videos aulas, ficou muito bacana!

Parabéns pelo trabalho, tenho certeza que ajudará muita gente...

Link para o post
Compartilhar em outros sites

Valeu aí Matheus

Esse é o meu objetivo XD

2z8t5ef.jpg

p7gkt.jpg

"Quem ri por último é retardado."

"Quem cedo madruga, fica com sono o dia todo."

"Família que reza unida, é religiosa pra caralho."

Link para o post
Compartilhar em outros sites

Amanha ou segunda!

2z8t5ef.jpg

p7gkt.jpg

"Quem ri por último é retardado."

"Quem cedo madruga, fica com sono o dia todo."

"Família que reza unida, é religiosa pra caralho."

Link para o post
Compartilhar em outros sites

To querendo aprender script para tibia (: fazer um projeto mais pra frente quem sabe...

O video do Lucas e bem explicativo , o do TK faltou um pouco mais de explicação nao sei , mais eu consegui entender bem (: obrigado pelas video aulas tava presisando mt aprender script , continuem assim (: se alguem tiver disponibilidade pra me ajudar ai eu aprendo bem :D to fazendo facul de sistema de informações e eu e um colega de sala estamos querendo fazer algo para ganhar dinheiro de preferencia um servidor hahahaha' que alem de divertido agente aprende muito (: e suas aulas tao me ajudando bastante kkkkkk' ja tinha visto uns post do Lucas sobre tutorial realmente mt bons . Ta de Parabéns manim .

Link para o post
Compartilhar em outros sites

Lucas por favor posta o servidor que você usou pros script com essas talkactions de reload :D e tal , não tenho isso e não sei fazer ;s e o servidor que tou desenvolvendo ta bem fraco e bagunçado com mt scripts inuteis que não sei mt qual posso deletar . TSF eu tento baixar alguns e nunca acho um que esteja bom e acabo baixando servidores horriveis com muita bagunça de desorganização tipo Baik :/ , Manda esse seu ai se puder (:

Link para o post
Compartilhar em outros sites

Olha, eu fiz esse script aki, e gostaria de saber se ta certo, o script é o seguinte, eu to montando um projeto em que vai haver 7 reinos, ai eu criei um comendo para o player poder mudar de reino, vamo supor tem 1 reino de town id 1 e outro de 3, ai ele ta no reino de id 3 e quer ir pro de id 1, ai eu fiz esse, ve se ta certo ai

function onSay(cid, words, param)

doPlayerSetTown(cid, 1)

doPlayerRemoveMoney(cid, 0)

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You belong to the kingdom of Winterfel.")


return true

end
Tag:
<talkaction words="!winterfell" event="script" value="novos/winterfell.lua"/>

Editado por Slaake (veja o histórico de edições)

De boua na lagoa ? *-*



Entrada ao Tibia King:27/05/2012 (02:14)

Link para o post
Compartilhar em outros sites

Você poderia fazer um comando assim acho que ficaria melhor.

Tipow, você pode fazer por coordenada.


function onSay(cid, words, param)


local config = {

pz = false, -- false			 ---- Para teleportar precissa esta protection zone ? True se sim e False se nao.

battle = true, -- true		 -----------  Pessoa com Battle pode se teleportar ? true/false

custo = false, --  false			---- Vai cobrar preço para teleportar ? true/false

need_level = false, -- false		---- só alguns level pode se teleportar ? true/false

premium = true -- true			 ----- precissa ser premium para se teleportar. ? true / false

}


--[[ Config lugares]]--

local lugar = {

["Reino 1"] ={ -- primum

pos = {x=*****, y=***, z=*},level = 1,price = 100}	 -----------  COORDENADA PARA O LOCAL QUE VOCÊ QUER QUE VÁ

}


if (param == "") then

local str = ""

str = str .. "lista de viagem :\n\n"

for name, pos in pairs(lugar) do

str = str..name.."\n"

end

str = str .. ""

doShowTextDialog(cid, 6579, str)

return TRUE

end



local a = lugar[param]

if not(a) then

doPlayerSendTextMessage(cid, 22, "desculpe,este lugar não existe")

doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)

return TRUE

elseif config.pz == true and getTilePzInfo(getCreaturePosition(cid)) == FALSE then

doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"você precisa estar em protection zone pra poder teleportar.")

return TRUE

elseif config.premium == true and not isPremium(cid) then

doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Apenas players com premium account podem teleportar.")

return TRUE

elseif config.battle == true and getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE then

doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Você precisa estar sem battler pra poder teleportar.")

return TRUE

elseif config.need_level == true and getPlayerLevel(cid) < a.level then

doPlayerSendTextMessage(cid, 22, "Desculpe,Voce não tem level. voce precisa "..a.level.." level ou mais para ser teleportado.")

doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)

return TRUE

elseif config.custo == true and doPlayerRemoveMoney(cid, a.price) == FALSE then

doPlayerSendTextMessage(cid, 22, "Desculpe,voce nao tem dinheiro suficiente. Voce precisa "..a.price.." gp para ser teleportado.")

doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)

return TRUE

end

doTeleportThing(cid, a.pos)

doSendMagicEffect(a.pos, CONST_ME_BIGCLOUDS)

return TRUE

end


Para adicionar novos locais é só ir adiconando ali


--[[ Config lugares]]--

local lugar = {

["Reino 1"] ={ -- primum

pos = {x=*****, y=***, z=*},level = 1,price = 100}

}


#TAG


<talkaction words="!winterfell" event="script" value="nomedoarquivo.lua"/>

Eu falei por coordenada pelo motivo que você pode fazer para os jogadores teleportarem para certa hunt tambem.

Ajudei ? +REP

Link para o post
Compartilhar em outros sites
  • 2 weeks later...
  • 3 weeks later...
  • 2 weeks later...


function onSay(cid, words, param)

local pos = getPlayerPosition(cid)

local table_pos = {

{x = pos.x + 1, y = pos.y, z = pos.z},

{x = pos.x - 1, y = pos.y, z = pos.z},

{x = pos.x, y = pos.y + 1, z = pos.z},

{x = pos.x, y = pos.y - 1, z = pos.z},

{x = pos.x + 1, y = pos.y + 1, z = pos.z},

{x = pos.x - 1, y = pos.y - 1, z = pos.z},

{x = pos.x + 1, y = pos.y - 1, z = pos.z},

{x = pos.x - 1, y = pos.y + 1, z = pos.z}

}

for i = 1, #table_pos do

doSendMagicEffect(table_pos[i], math.random(28, 30))

end

if getPlayerLevel(cid) >= 50 and getPlayerTown(cid) ~= 1 then

doPlayerSendTextMessage(cid, 27, "Agora você foi para a cidade " .. getTownName(1) .. ".")

doTeleportThing(cid, getTownTemplePosition(1), true)

doPlayerSetTown(cid, 1)

else

doPlayerSendTextMessage(cid, 28, getPlayerLevel(cid) < 50 and "Você precisa ser level maior que 50 para mudar de cidade." or getPlayerTown(cid) == 1 and "Você já está na cidade de " .. getTownName(1) .. ".")

end

return true

end

ibagen1.png

ibagen2.png

Editado por Skyforever (veja o histórico de edições)

Retirado.

 

Skype: joaoxtibia85.

Link para o post
Compartilhar em outros sites
  • 2 weeks later...

hm, bom script =D

2z8t5ef.jpg

p7gkt.jpg

"Quem ri por último é retardado."

"Quem cedo madruga, fica com sono o dia todo."

"Família que reza unida, é religiosa pra caralho."

Link para o post
Compartilhar em outros sites
  • 1 year later...

Ótimo tutorial, gostei muito...

 

Quando sairá novos videos? aprendi bastante somente com 3 videos :)

 

 

REP + pra você !!!

PoKemon Manins~ ~ Um servidor diferente

 

Em breve, Aguardem !

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.




×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo