Jump to content

Recommended Posts

TFS 0.4  8.60

 

Lugar que quero que ele volte quando acabar a roleta: {x = 573, y = 55, z = 15}

 

 

 

FOTO:

Spoiler

image.thumb.png.112bdb96aa4590a6d4a1e6b2dc9723bb.png

 

 

 

 

Queria Coloca para o char não se mover enquanto estiver roletando e quando acabar ele ser teleportado para o começo!

 

 

SCRIPT:

Spoiler

function onUse(cid, item)

local possitem = {
{x = 569, y = 48, z = 15, id = 2160, count = 10}, -- poss de cada item, id e quantidade
{x = 571, y = 48, z = 15, id = 2160, count = 50}, -- poss de cada item, id e quantidade
{x = 574, y = 46, z = 15, id = 2160, count = 100}, -- poss de cada item, id e quantidade
{x = 570, y = 48, z = 15, id = 2160, count = 0}, -- poss de cada item, id e quantidade
{x = 575, y = 48, z = 15, id = 2160, count = 0}, -- poss de cada item, id e quantidade
{x = 577, y = 46, z = 15, id = 2160, count = 0}, -- poss de cada item, id e quantidade
{x = 571, y = 46, z = 15, id = 2160, count = 0}, -- poss de cada item, id e quantidade
{x = 569, y = 46, z = 15, id = 12632, count = 1}, -- poss de cada item, id e quantidade
{x = 577, y = 48, z = 15, id = 12654, count = 1}, -- poss de cada item, id e quantidade
{x = 573, y = 48, z = 15, id = 12678, count = 1}, -- poss de cada item, id e quantidade
{x = 576, y = 46, z = 15, id = 12680, count = 1}, -- poss de cada item, id e quantidade
{x = 577, y = 47, z = 15, id = 12694, count = 1}, -- poss de cada item, id e quantidade
{x = 572, y = 46, z = 15, id = 12695, count = 1}, -- poss de cada item, id e quantidade
{x = 569, y = 47, z = 15, id = 13394, count = 1}, -- poss de cada item, id e quantidade
{x = 575, y = 46, z = 15, id = 12780, count = 100}, -- poss de cada item, id e quantidade
{x = 572, y = 48, z = 15, id = 12757, count = 1}, -- poss de cada item, id e quantidade
{x = 574, y = 48, z = 15, id = 2159, count = 1}, -- poss de cada item, id e quantidade
{x = 573, y = 46, z = 15, id = 5957, count = 1} -- poss de cada item, id e quantidade
}

local config = {
tempo = 30, -- tempo de espera para jogar 
custo = 1000000, -- custo para jogar
str = 21887, -- nao mexa
}

local size = #possitem

if getPlayerStorageValue(cid, config.str) < os.time() and getPlayerMoney(cid) >= config.custo then
doPlayerRemoveMoney(cid, config.custo)
setPlayerStorageValue(cid, config.str, os.time() + config.tempo)
doSendMagicEffect(getThingPos(cid), 12)
 
    for i = 1, size  do
        index = math.random(#possitem)
        sorteio = possitem[index]
 
        addEvent(doSendMagicEffect, 2000+400*(i-1), sorteio, 423)
        table.remove(possitem, index)
    end
 
        addEvent(doPlayerAddItem, 2000+400*size, cid, sorteio.id, sorteio.count)
        else
        doPlayerSendTextMessage(cid, 22, "Espere 30 segundos para jogar novamente, e tenha 100 Golds em sua bp!")
        doSendMagicEffect(getThingPos(cid), 4)
        end
        end

 

 

Link to post
Share on other sites

  • 1 month later...

Está ai, adicionei também uma mensagem falando o premio que a pessoa ganhou e também fale caso não ganhe nada

 

Spoiler
function onUse(ciditem)
    local teleport = {x = 573, y = 55, z = 15}
 
    local possitem = {
        {x = 569, y = 48, z = 15, id = 2160, count = 10}, -- poss de cada item, id e quantidade
        {x = 571, y = 48, z = 15, id = 2160, count = 50}, -- poss de cada item, id e quantidade
        {x = 574, y = 46, z = 15, id = 2160, count = 100}, -- poss de cada item, id e quantidade
        {x = 570, y = 48, z = 15, id = 2160, count = 0}, -- poss de cada item, id e quantidade
        {x = 575, y = 48, z = 15, id = 2160, count = 0}, -- poss de cada item, id e quantidade
        {x = 577, y = 46, z = 15, id = 2160, count = 0}, -- poss de cada item, id e quantidade
        {x = 571, y = 46, z = 15, id = 2160, count = 0}, -- poss de cada item, id e quantidade
        {x = 569, y = 46, z = 15, id = 12632, count = 1}, -- poss de cada item, id e quantidade
        {x = 577, y = 48, z = 15, id = 12654, count = 1}, -- poss de cada item, id e quantidade
        {x = 573, y = 48, z = 15, id = 12678, count = 1}, -- poss de cada item, id e quantidade
        {x = 576, y = 46, z = 15, id = 12680, count = 1}, -- poss de cada item, id e quantidade
        {x = 577, y = 47, z = 15, id = 12694, count = 1}, -- poss de cada item, id e quantidade
        {x = 572, y = 46, z = 15, id = 12695, count = 1}, -- poss de cada item, id e quantidade
        {x = 569, y = 47, z = 15, id = 13394, count = 1}, -- poss de cada item, id e quantidade
        {x = 575, y = 46, z = 15, id = 12780, count = 100}, -- poss de cada item, id e quantidade
        {x = 572, y = 48, z = 15, id = 12757, count = 1}, -- poss de cada item, id e quantidade
        {x = 574, y = 48, z = 15, id = 2159, count = 1}, -- poss de cada item, id e quantidade
        {x = 573, y = 46, z = 15, id = 5957, count = 1-- poss de cada item, id e quantidade
    }
 
    local config = {
        tempo = 30-- tempo de espera para jogar 
        custo = 1000000-- custo para jogar
        str = 21887 -- nao mexa
    }
 
    local size = #possitem
 
    local function result(ciditemcount)
        doCreatureSetNoMove(cid, false)
        doTeleportThing(cid, teleport)
        if (count > 0then
            doPlayerSendTextMessage(cid, 20"Voce ganhou " .. count .. " " ..
                                        getItemNameById(item) .. ".")
            doPlayerAddItem(cid, item, count)
        else
            doPlayerSendTextMessage(cid, 20,
                                    "Voce nao ganhou nada, tente novamente.")
        end
    end
 
    if getPlayerStorageValue(cid, config.str) < os.time() and
        getPlayerMoney(cid) >= config.custo then
        doPlayerRemoveMoney(cid, config.custo)
        setPlayerStorageValue(cid, config.stros.time() + config.tempo)
        doSendMagicEffect(getThingPos(cid), 12)
        doCreatureSetNoMove(cid, true)
        for i = 1, size do
            index = math.random(#possitem)
            sorteio = possitem[index]
            addEvent(doSendMagicEffect, 2000 + 400 * (i - 1), sorteio, 423)
            table.remove(possitem, index)
        end
        addEvent(result, 2000 + 400 * size, cid, sorteio.id, sorteio.count)
    else
        doPlayerSendTextMessage(cid, 22"Espere " .. tempo ..
                                    " segundos para jogar novamente, e tenha 100 Golds em sua bp!")
        doSendMagicEffect(getThingPos(cid), 4)
    end
end

 

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Similar Content

    • By jenison06
      .Qual servidor ou website você utiliza como base? 
      pokestorm
      Qual o motivo deste tópico? 
      Alguem adapta contagem de ball no meu sistema de catch esse so conta 1 ball msmo tendo jogado 100
      Está surgindo algum erro? Se sim coloque-o aqui. 
      Action ( Catch.lua)
      Lib (catch system.lua)
      talkactions (checathc.lua)
       
      function onSay(cid, words, param, channel)
      if param == "" then return true end
       getBrokesIn(cid, param)
      return true
      end
    • By Shiaanimm
      .Qual servidor ou website você utiliza como base? 
      pokemasterX
      Qual o motivo deste tópico? 
      pedido de ajuda
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
    • By jenison06
      .Qual servidor ou website você utiliza como base? 
      pokestorm
      Qual o motivo deste tópico? 
      Ajuda com Adaptação
       
      Salve Galera queria saber se é possivel fazer com que o npc troca o item pelo pokemon como abaixo e apenas aceitar a troca se setar o Nick no pokemon
       
      Você tem o código disponível? Se tiver publique-o aqui: 
      Abaixo Npc que troca Item por poke
      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(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid local questSt = 6650 local checkQuest = getPlayerStorageValue(cid,questSt) local playerPos = getCreaturePosition(cid) local playerLevel = getPlayerLevel(cid) local questLevel = 100 local tab = { [1] = {fName = "Dome Fossil", fId = 8776, pName = "Kabuto"}, [2] = {fName = "Helix Fossil", fId = 8777, pName = "Omanyte"}, [3] = {fName = "Ancient Fossil", fId = 8775, pName = "Aerodactyl"}, } if(msgcontains(msg, 'Harry')) then if checkQuest < 1 then -- Quer saber mais selfSay('Sorry, but I have nothing to talk to you.', cid) elseif checkQuest >= 1 and checkQuest <= 3 then -- Quer saber mais mas já fez a Parte 1. selfSay('Oh! How is my husband? Is he fine? There are two years since I last seen him! By the way, are you here to give me {something}?', cid) talkState[talkUser] = 1 else -- Quer saber mais mas já fez a Parte Final. selfSay('How are you doing with your ancient pokémon?', cid) end elseif(msgcontains(msg, 'Something') and talkState[talkUser] == 1) then -- Tem algo pra dar talkState[talkUser] = 2 selfSay('Yes, as I expected. Let me check one thing.', cid) selfSay('As I see, Harry has given you the '..tab[checkQuest].fName..'. After many years of study and dedication, I discovered a method to bring fossils back to life. Do you want me to transform your '..tab[checkQuest].fName..' into '..tab[checkQuest].pName..'? Just say {yes} or {no}.', cid) elseif talkState[talkUser] == 2 then if msgcontains(msg, 'Yes') then -- Quer transformar o fossil if getPlayerItemCount(cid, tab[checkQuest].fId) >= 1 then selfSay('Fine then! There it is, your '..tab[checkQuest].fName..' has been transformed into '..tab[checkQuest].pName..'! Congratulations!', cid) if #getPlayerPokeballs(cid) >= 6 then local newpokeball = doCreatePokeball(tab[checkQuest].pName, 2469) doPlayerSendMailByName(getCreatureName(cid), newpokeball) doPlayerSendTextMessage(cid, 27, "You are holding six pokémons, your ("..tab[checkQuest].pName..") will be teleported to the Pokemon Center!") else local newpokeball = doCreatePokeball(tab[checkQuest].pName, 2470) doPlayerAddItemEx(cid, newpokeball) end doPlayerRemoveItem(cid, tab[checkQuest].fId, 1) doSendMagicEffect(playerPos, 162) doSendMagicEffect(playerPos, 28) addEvent(doSendMagicEffect, 600, playerPos, 29) addEvent(doSendMagicEffect, 1200, playerPos, 28) setPlayerStorageValue(cid, questSt, 4) else selfSay("Sorry, but you have no "..tab[checkQuest].fName.." with you.",cid) end talkState[talkUser] = 0 elseif msgcontains(msg, 'No') then -- Nao quer transformar o fossil selfSay('Right then. Then come back when you want it!', cid) talkState[talkUser] = 1 end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())    
      Npc Nick que uso na Base
      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 talkState = {} function creatureSayCallback(cid, _type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid NickQuestStorage = 8850 NickQuestBookId = 1955 NickQuestGameBoyId = 2630 local questStatus = getPlayerStorageValue(cid, NickQuestStorage) local playerLevel = getPlayerLevel(cid) if msgcontains(msg, "nicknames") then if isPremium(cid) then if playerLevel >=50 then if questStatus == -1 then selfSay("Before I give nicknames to your pokemons, can you do some favours to me?", cid) selfSay("I need a book that I lent to Albert, because it contains so much information that I use in my job. Last time I visited Albert he was living in a little house, in the east of Viridian.", cid) setPlayerStorageValue(cid, NickQuestStorage, 0) elseif questStatus == 0 then selfSay("I need a book that I lent to Albert, because it contains so much information that I use in my job. Last time I visited Albert he was living in a little house, in the east of Viridian.", cid) elseif questStatus == 1 then if doPlayerRemoveItem(cid, NickQuestBookId, 1) then setPlayerStorageValue(cid, NickQuestStorage, 2) selfSay("Thank you! I was really missing this book. Now just one more favour, can you get my Game Boy, which is with Ralf? I left with him to fix it, his workshop is in Celadon.", cid) else selfSay("I need a book that I lent to Albert, because it contains so much information that I use in my job. Last time I visited Albert he was living in a little house, in the east of Viridian.", cid) end elseif questStatus == 2 then selfSay("Can you get my Game Boy, which is with Ralf? I left with him to fix it, his workshop is in Celadon.", cid) elseif questStatus == 3 then if doPlayerRemoveItem(cid, NickQuestGameBoyId, 1) then setPlayerStorageValue(cid, NickQuestStorage, 4) selfSay("Thank you VERY MUCH! Now my son won't cry no more and I can do my job tranquil. Do you want me to give {nicknames} to your pokemons?", cid) else selfSay("Can you get my Game Boy, which is with Ralf? I left with him to fix it, his workshop is in Celadon.", cid) end elseif questStatus >= 4 then selfSay("Oh, ok. Would you like to {give} or {remove} a nickname?", cid) talkState[talkUser] = 1 end else selfSay("Sorry, come back when you are level 50 or higher.", cid) end else selfSay("Hey, I'm so sorry, but you must be premium account to give nicknames to your pokemons", cid) end elseif talkState[talkUser] == 1 then if msgcontains(msg, "give") then selfSay("Oh, ok. Which nickname would you like to give to the pokemon in the slot?", cid) talkState[talkUser] = 2 elseif msgcontains(msg, "remove") then selfSay("Oh, ok. You want to remove the nickname to the pokemon in the slot for 5K?", cid) talkState[talkUser] = 3 end elseif talkState[talkUser] == 2 then local msg = msg:trim() if msg:len() < 4 then selfSay("This nickname is too short.", cid) elseif msg:len() > 15 then selfSay("This nickname is too long.", cid) elseif not isValidName(msg) then selfSay("This name contains invalid symbols.", cid) elseif getMonsterPokedex(msg, false) then selfSay("You can't use other's pokemon name.", cid) else selfSay("Would you like to give the nickname \""..msg.."\" to the pokemon in the slot for 10K?", cid) talkState[talkUser] = msg end elseif talkState[talkUser] == 3 then if msgcontains(msg, "yes") then local pokeball = getPlayerSlotItem(cid, CONST_SLOT_FEET) if isPokeballOut(pokeball.itemid) then selfSay("Call your pokemon back before changing his nickname.", cid) elseif isPokeballIn(pokeball.itemid) then if doPlayerRemoveMoney(cid, 500000) then local pokeballInfo = getPokeballInfo(pokeball.uid) setPokeballDescription(pokeball.uid, pokeballInfo.name, false, pokeballInfo.health, pokeballInfo.healthmax) selfSay("Now your pokemon not have a nickname!", cid) else selfSay("Sorry, you don't have 5K.", cid) end else selfSay("There's no pokeball in the slot!", cid) end else selfSay("Ok then.", cid) end talkState[talkUser] = 0 elseif type(talkState[talkUser]) == "string" then if msgcontains(msg, "yes") then local pokeball = getPlayerSlotItem(cid, CONST_SLOT_FEET) if isPokeballOut(pokeball.itemid) then selfSay("Call your pokemon back before changing his nickname.", cid) elseif isPokeballIn(pokeball.itemid) then if doPlayerRemoveMoney(cid, 1000000) then local pokeballInfo = getPokeballInfo(pokeball.uid) setPokeballDescription(pokeball.uid, pokeballInfo.name, talkState[talkUser], pokeballInfo.health, pokeballInfo.healthmax) selfSay("Now your pokemon have a new nickname! Enjoy it :)", cid) else selfSay("Sorry, you don't have 10K.", cid) end else selfSay("There's no pokeball in the slot!", cid) end elseif msgcontains(msg, "no") then selfSay("Why not? This nickname was so good!", cid) end talkState[talkUser] = 0 else talkState[talkUser] = 0 end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())  
    • By MIzakinha
      Olá, senhores!
       
      Estou com um script que quando o player compra a VIP no meu servidor, a conta dele vai ficar com essa VIP durante 30 dias e ele vai ganhar uma storage (que vai servir para varias coisas, mas isso não importa aqui).
       
      Bom, o problema é que quando os 30 dias de VIP acabar, o player continua com a storage.
       
      Preciso de um script que retire essa storage quando os dias de VIP acabar. Alguém pode me ajudar com isso?
       
       
    • By stauro
      .Qual servidor ou website você utiliza como base? 
       
      Qual o motivo deste tópico? 
       
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
      O erro é o seguinte, se usar a energy bomb no chão e o monstro passar por cima, ele não leva dano. Se vc atacar o bicho com a runa, ele levará o dano pelo target, contudo, se continuar passando por cima, não acontece nada. Não sei mais o que fazer, com a firebomb funciona perfeitamente, comparei os scripts e não vejo diferença. Energy Bomb: Não funciona local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_ENERGYHIT) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGYBALL) setCombatParam(combat, COMBAT_PARAM_CREATEITEM, 1495) local area = createCombatArea(AREA_SQUARE1X1) setCombatArea(combat, area) function onCastSpell(cid, var) return doCombat(cid, combat, var) end Poison Bomb: Não funciona local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_GREEN_RINGS) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_POISON) setCombatParam(combat, COMBAT_PARAM_CREATEITEM, 1496) local area = createCombatArea(AREA_SQUARE1X1) setCombatArea(combat, area) function onCastSpell(cid, var) return doCombat(cid, combat, var) end Fire Bomb: Funciona local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HITBYFIRE) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_FIRE) setCombatParam(combat, COMBAT_PARAM_CREATEITEM, 1492) local area = createCombatArea(AREA_SQUARE1X1) setCombatArea(combat, area) function onCastSpell(cid, var) return doCombat(cid, combat, var) end  
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
  • Recently Browsing   0 members

    No registered users viewing this page.


×
×
  • Create New...

Important Information

Confirmação de Termo