HE
action

[Action] Lucky Item

Por Henrique Moura, 07 de dez. de 2009 em Actions e Talkactions

script
7
1.4k
Henrique MouraH
07 de dezembro de 2009 às 16:45

Lucky Item

 

Dentro da pasta data/actions/scripts copie algum arquivo, cole, renomei-o para luckyman.lua e abra-o. Apague tudo o que estiver dentro e cole o seguinte:

 

-- lucky scroll by kakilo -- quarto script

function onUse(cid, item, frompos, item2, topos)
local item = {2160, 2152, 2148} -- Items que o jogador receberá - no caso gold,platinum e crystal coins
local chance = math.random (1, 3) -- ficará randomizado ele podera receber desde crystal coin até gold coin
local valorchance = math.random (1, 10) -- valor , no caso será de 1 à 10 a quantidade de moedas que ele receberá

            doPlayerAdditem(cid, item[chance], valorchance)
            doSendMagicEffect(getCreaturePosition(cid), CONST_ME_FIREWORK_RED) -- Efeito de sucesso
            doPlayerSendTextMessage(cid, 22, 'Voce usou o item e recebeu algo em troca.') -- Mensagem que o jogador receberá quando usar o item
            doPlayerRemoveItem(item.uid, 1)
end

 

A explicação já se encontra dentro do script!

 

Entre na pasta data/actions e abra um arquivo chamado actions.xml, cole isto abaixo de alguma linha:

<action itemid="1111" script="luckyman.lua"/>

 

Explicação:

Laranja - ID do item à ser usado pelo jogador, ao usar este item ele receberá as moedas(lembrando ele receberá só um tipo de moeda) em certo valor.

Exemplo: o jogador usa o item e recebe 10 platinum coins ou 2 crystal ou 5 gold coins, e por aí vai.

 

Isso ae galera, qualquer coisa só postar aê que eu dou uma forcinha!

Script não testado, qualquer erro me comunicar com urgência!

 

Abração!

 

Créditos : KaKilo

Editado Dezembro 8 por KaKilo

morgado4everM
07 de dezembro de 2009 às 16:56

-- lucky scroll by kakilo -- quarto script -- remaked by kazz

local ITEMS = {2160, 2152, 2148}
local MIN, MAX = 1, 10 -- quantidade mínima, quantidade máxima

function onUse(cid, item, frompos, item2, topos)
CHANCE = math.random (1, #ITEMS)
COUNT = math.random (MIN, MAX)
    doPlayerAdditem(cid, ITEMS[CHANCE], COUNT)
    doPlayerSendTextMessage(cid, 22, "Voce usou ganhou " .. COUNT .. " " .. getItemNameById(ITEMS) .. "(s).")
    doPlayerRemoveItem(item.uid, 1)
end

 

Não tenho certeza se ao utilizar: math.random (1, #ITEMS) ele pega como #ITEMS a quantidade máxima do array, caso contrário substitua por 3.

 

Sem mais, Kazz.

Editado Dezembro 7 por morgado4ever

gkaonicx72G
07 de dezembro de 2009 às 17:20

Opa parabéns pelo script Kakilo, estou vendo que você esta aprendendo rápido em. Seria legal se você colocasse algum tipo de efeito (animação) estilo fogos artificiais após ganhar o dinheiro. Ai poderia variar dependendo do tipo de moeda.

 

Continue assim, estou vendo que você tem futuro.

Até mais.

LorDzL
08 de dezembro de 2009 às 14:06

o.O', curti, mais preferia se fosse pelo dado, ae dependendo do numero a pessoa poderia ganhar um item,

Sò podendo jogar 1 vez a cada 2 dias

por exemplo .-.

 

Abraços

\Mattheus ~*\
08 de dezembro de 2009 às 14:14

Outro script bem feito, e inovador, gostei o random que você botou, acho que você poderia fazer uns Tutoriais, acho que ajudaria muitas pessoas.

 

Abraços.

rockstar96R
08 de dezembro de 2009 às 14:17

diquinhas pra voce amico

 

usa as variaveis como variaveis locais pq assim elas vao ficar atrapalhando outros scripts e ocupando memoria do pc

Henrique MouraH
08 de dezembro de 2009 às 14:21

Obrigado pela dica, já inserido.

 

Abraços.