Ir para conteúdo

Featured Replies

Postado

Testa ai:

 

Spoiler

local intervalo = 1.5 -- tempo ate o player ser puxado (em segundos)
local exhaust = 1 -- Exhaustion entre usos do item (em segundos)
local chance = 80 -- chance em % de puxar
local itemefeito = 7860 -- item que aparece no cara que foi puxado
local falas = {"Kakuzooo !"}
local monsters = {"Bug", "Wasp", "Centipede"}
local chancebug = 0 -- chance de vir insetos junto com o jogador puxado (em porcentagem)
local chanceband = 0 -- chance de puxar um bandit quanto o puxao falhar (em porcentagem)

------ Nao altera mais nada ------
function mayNotMove(uid, block)
    return doCreatureSetNoMove(uid, block)
end

function canWalk(cid,pos)
    local abc = pos
    abc.stackpos = 253
    if doTileQueryAdd(cid, pos) == 1 and getTilePzInfo(pos) == false and isCreature(getThingFromPos(abc).uid) == false then
        return true
    end
end

function onUse(cid, item, fromPosition, itemEx, toPosition)
    local pos1 = getCreaturePosition(cid) 
    local pos2 = getCreaturePosition(itemEx.uid)
    local poss1 = getCreatureLookPosition(cid)
    local fightcondition = createConditionObject(CONDITION_INFIGHT)
    setConditionParam(fightcondition, CONDITION_PARAM_TICKS, intervalo*1000+100)
                
    local function removeritem1(cid, item, pos, itemEx)
        local itemnapos = getTileItemById(pos2, itemefeito)
        doRemoveItem(itemnapos.uid,1)
    end
    
    local function removeritem2(cid, item, pos)
        local itemnaposs = getTileItemById(poss1, itemefeito)
        doRemoveItem(itemnaposs.uid,1)
    end

    local function doEffect(pos)
    end
     
    local tmp = getCreatureStorage(cid, 23125)
    if getCreatureStorage(cid, 23125) > os.time() then
        return doPlayerSendCancel(cid, "Você precisa esperar ".. tmp - os.time() .." segundos para usar novamente.")
    end
    
    if not isPlayer(itemEx.uid) then
        return doPlayerSendCancel(cid, "Voce so pode puxar jogadores!")
    end
        
    if itemEx.uid == cid then
        return doPlayerSendCancel(cid, "Voce nao pode usar em si mesmo.")
    end
    if getTilePzInfo(pos1) == true or getTilePzInfo(pos2) == true  or getTilePzInfo(poss1) == true then
        return doPlayerSendCancel(cid, "Voce nao pode puxar na protection zone!")
    end
    
    if not canWalk(cid, poss1) then
       return doPlayerSendCancel(cid, "Voce nao pode puxar ele aqui!")
    end
    
    if pos1.x ~= pos2.x and pos1.y ~= pos2.y then
        return doPlayerSendCancel(cid, "Voce nao pode puxar na diagonal!")
    end
    
    local function puxarPlayer(cid, pos, item) -- script por amoeba13
	if getPlayerVocation(cid) == 4 then
        local randomChance = math.random(1, #falas)
        doAddCondition(cid, fightcondition)
        doAddCondition(itemEx.uid, fightcondition)
        doCreatureSay(cid, falas[randomChance], TALKTYPE_ORANGE_1)
        doPlayerSetStorageValue(cid, 23125, os.time()+exhaust)
            addEvent(doTeleportThing, intervalo*1000, itemEx.uid, poss1)
            addEvent(mayNotMove, intervalo*1000, cid, false)
            addEvent(mayNotMove, intervalo*1000, itemEx.uid, false)
            addEvent(removeritem1, intervalo*1000) 
            addEvent(doCreateItem, intervalo*1000, itemefeito, 1, poss1)
            addEvent(removeritem2, intervalo*1000+1500)
            addEvent(doEffect, intervalo*1000)
            addEvent(doEffect, intervalo*1000/2)
            addEvent(doEffect, intervalo*1000/3)
            addEvent(doEffect, intervalo*1000/4)
        doCreateItem(itemefeito, 1, pos2)
        mayNotMove(cid, true)
        mayNotMove(itemEx.uid, true)
        doSendAnimatedText(pos1, "Succes!", TEXTCOLOR_GREEN)
        doPlayerSendTextMessage(itemEx.uid, 27, "Voce foi puxado pelo jogador ".. getCreatureName(cid) .."!")
	else
		doPlayerSendCancel(cid, "Desculpe, somente a vocação Kakuzo pode puxar players.")
	end
    end -- script por amoeba13
    
    local qnts = math.random(1, 100)
    if qnts <= chance and qnts <= chancebug then
        puxarPlayer(cid) 
        local axb = math.random(1, #monsters)
        addEvent(doCreatureSay, intervalo*1000+100, itemEx.uid, "Eu nao vi que isso tinha vindo comigo...", TALKTYPE_ORANGE_1)
        addEvent(doCreateMonster, intervalo*1000+100, monsters[axb], poss1)
    elseif qnts <= chance and qnts > chancebug then
        puxarPlayer(cid)
    elseif qnts > chance and qnts <= chanceband then
        doCreateMonster("Bandit", poss1)
        doCreatureSay(cid, "Nao foi voce que eu puxei!", TALKTYPE_ORANGE_1)
        doSendAnimatedText(pos1, "Fail!", TEXTCOLOR_RED)
        doSendMagicEffect(pos1, CONST_ME_POFF)
        doPlayerSetStorageValue(cid, 23125, os.time()+exhaust)
    elseif qnts > chance then 
        doSendAnimatedText(pos1, "Fail!", TEXTCOLOR_RED)
        doSendMagicEffect(pos1, CONST_ME_POFF)
        doPlayerSetStorageValue(cid, 23125, os.time()+exhaust)
        end
    return true
end

 

 

Obs.: Vai no seu arquivo data/xml/vocations.xml e procura pela vocação Kakuzo, pegue o ID dessa vocação, então volte no script do action e procure por isso:

if getPlayerVocation(cid) == 4 then

No lugar do 4, coloque o id da vocação Kakuzo.

  • Respostas 23
  • Visualizações 980
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • SoyColombiaa
    SoyColombiaa

    É só criar uma condição amigo, bem simples.   No caso, essa parte do script que eu mandei acima, conferiria se a id ad vocação do player for 4, vai adicionar uma espada pra ele. Ids das

Postado
6 minutos atrás, SoyColombiaa disse:

Exatamente, é como eu falei, ao invés de por "4" checando o id da vocation, põe o id que ta na vocations.xml ¬¬'

 

Se vc n viu, ele colocou exatamente oq vc disse:

if getPlayerVocation(cid) == 4 then
     doPlayerAddItem(cid, 2384, 1)
     return true
end

 

Nem todos sabem ficar alterando scripts etc, então tem que se um pouco mais preciso na resposta mano :/

Postado
40 minutos atrás, Sekk disse:

 

Se vc n viu, ele colocou exatamente oq vc disse:


if getPlayerVocation(cid) == 4 then
     doPlayerAddItem(cid, 2384, 1)
     return true
end

 

Nem todos sabem ficar alterando scripts etc, então tem que se um pouco mais preciso na resposta mano :/

Ah eu nem vi o código HEAUHSEUADHUASHEDUAS

Mas poxa, era só ler o resto que eu falei, e não só copiar meu script, @koalla1235

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo