Ir para conteúdo

pollyaninha

Campones
  • Total de itens

    27
  • Registro em

  • Última visita

Histórico de Reputação

  1. Upvote
    pollyaninha recebeu reputação de Akatsukyi em Buffs   
    Nossa fiquei com dó ,do manizin kkk ri muito aki \o/
  2. Upvote
    pollyaninha deu reputação a Vodkart em Npc de Itens Vips.   
    local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid 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 greetCallback(cid) talkState[talkUser] = 0 return true end function creatureSayCallback(cid, type, msg) local talkUser,msg = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid,string.lower(msg) if(not npcHandler:isFocused(cid)) then return false end local money = 1000000 local trade = { {id=5944, buy=100, name="Soul Orb"}, {id=8925, buy=50000, name="Solar Axe"}, {id=2413, buy=2240, name="Broadsword"} } local items = {} for _, item in ipairs(trade) do items[item.id] = {item_id = item.id, buyPrice = item.buy, sellPrice = 0, subType = 0, realName = item.name} end local onBuy = function(cid, item, subType, amount, ignoreCap, inBackpacks) if items[item].buyPrice ~= 0 then doPlayerRemoveMoney(cid, amount * items[item].buyPrice) if isItemStackable(items[item].item_id) then doPlayerAddItem(cid, items[item].item_id, amount) else for i = 1, amount do doPlayerAddItem(cid, items[item].item_id, 1) end end end end if msgcontains(msg, 'trade') and doPlayerRemoveMoney(cid, money) then openShopWindow(cid, trade, onBuy, onSell) else selfSay("sorry, u need "..money.." gps to talk with me.", cid) end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
     
     
     
    OBS: qual a versão do seu server pollyana?
  3. Upvote
    pollyaninha deu reputação a MaXwEllDeN em getTableInAlphabeticalOrder   
    Author: MaXwEllDeN[Maxwell Alcantara(Eu)]
     
    Galera, eu estava vasculhando aqui e achei essa função que eu fiz a um tempão, esse código tá bem "POGGADO".
     

    function getInAOrder(tabl) local dat = {} local tab = {} local tab2 = {["A"] = 1, ["Ä"] = 1, ["Ã"] = 1, ["Â"] = 1, ["À"] = 1, ["Á"] = 1, ["B"] = 2, ["C"] = 3, ["D"] = 4, ["E"] = 5, ["Ë"] = 5, ["Ê"] = 5, ["À"] = 5, ["F"] = 6, ["G"] = 7, ["H"] = 8, ["I"] = 9, ["Ï"] = 9, ["Ì"] = 9, ["Í"] = 9, ["Î"] = 9,["J"] = 10, ["K"] = 11, ["L"] = 12, ["M"] = 13, ["N"] = 14, ["Ñ"] = 14, ["O"] = 15, ["Ö"] = 15, ["Ó"] = 15, ["Ò"] = 15, ["Ô"] = 15, ["Õ"] = 15,["P"] = 16, ["Q"] = 17, ["R"] = 18, ["S"] = 19, ["T"] = 20, ["U"] = 21, ["V"] = 22, ["W"] = 23, ["X"] = 24, ["Y"] = 25, ["Z"] = 26 } for a = 1,26 do table.insert(tab, {}) end for a, b in pairs(tabl) do if (tab2[b:sub(1, 1):upper()]) then table.insert(tab[tab2[b:sub(1, 1):upper()]], b) else table.insert(tab[#tab2], b) end end for a, b in ipairs(tab) do for c, d in ipairs(b) do table.insert(dat, d) end end return dat end
     
    O que a função faz é organizar uma tabela em ordem alfabética. Se você rodar isso:

    local t = {"Socket", "Lua", "C++", "Linux", "windows", "ubuntu", "C", "Delphi", "Mint" "Alfa", "Ômega", "PHP", "HTML"} for a, b in pairs(getInAOrder(t)) do print(b) end
     
    irá ser retornado isso:
     

    Alfa C++ C Delphi HTML Lua Linux Mint Ômega PHP Socket ubuntu windows
     
    Não liguem pra gambiarra, faz muito tempo que eu fiz ela .-.
  4. Upvote
    pollyaninha deu reputação a Oneshot em Dual Wield   
    Tendo visto a crescente quantidade de pedidos por armas que possam ser usadas simultaneamente nas duas mãos, resolvi criar um tutorial apenas para esclarecer que esse código já existe compilado nas mais recentes revisões do The Forgotten Server.
     
    Você pode escolher quais itens poderão ser equipamentos nas duas mãos e claro restringir esses itens depois para apenas uma vocação.
     

     
    1. Para criar seu item que pode ser equipado nas duas mãos, abra o items.xml e navegue até o ID do item desejado. Por exemplo, mostrarei abaixo o ID da Magic Sword:
     

    <item id="2400" article="a" name="magic sword"> <attribute key="description" value="It is the Sword of Valor." /> <attribute key="weight" value="4200" /> <attribute key="defense" value="35" /> <attribute key="attack" value="48" /> <attribute key="weaponType" value="sword" /> <attribute key="extradef" value="3" /> </item>
     
    2. Adicione o atributo dualwield com valor 1 no código XML do item.
     

    <item id="2400" article="a" name="magic sword"> <attribute key="description" value="It is the Sword of Valor." /> <attribute key="weight" value="4200" /> <attribute key="defense" value="35" /> <attribute key="attack" value="48" /> <attribute key="weaponType" value="sword" /> <attribute key="extradef" value="3" /> <attribute key="dualwield" value="1" /> </item>
     

     




     

    Pelo que pude testar os danos não se somam, mas sim são causados dois ataques ao invés de um, ou seja a velocidade de ataque do jogador aumenta.


     
    Funciona com qualquer tipo de arma, desde swords até rods e wands.
     

    Funcional em: The Forgotten Server 0.4 rev3777 em diante


  5. Upvote
    pollyaninha deu reputação a MaXwEllDeN em Elvish bow and Crystal arrow   
    local item_id = 2160 -- Id do arco que tem que estar equipado function onEquip(cid, item, slot) if (getPlayerSlotItem(cid, 5).uid < 1 and getPlayerSlotItem(cid, 6).uid < 1) or (getPlayerSlotItem(cid, 5).itemid ~= item_id and getPlayerSlotItem(cid, 6).itemid ~= item_id) then doPlayerSendCancel(cid, "Você deve ter ".. getItemNameById(item_id) .. " equipado para poder utilizar este arrow.") return false end return true end
  6. Upvote
    pollyaninha deu reputação a gonorreiaswat em Exp Por Hit..   
    Instalação
    Primeiramente abra a pasta de seu ot, e procure pelo arquivo config.lua e procure por essas 2 linhas :

    experienceStages = false rateExperience = 50
    se o experienceStages tiver ativado mude para false, pois o sistema ainda não tem suporte á Stages.
    e é muito importante o rateExperience tiver como 0, pois ela sera configurada, em outro local agora.
    exemplo:
     

    experienceStages = false rateExperience = 0
     
    agora entre na pasta creaturescripts/scripts e crie um arquivo lua, chamado exphit.lua e cole o seguinte código:
     

    -- Exp por Hit By: xOtServx -- rateExp = 2 -- agora vc configura o rate de exp do server. ------------------------------ function CalculeExp(monsterhp, exptotal, hit) local x = hit <= monsterhp and math.ceil(exptotal * hit / monsterhp) or 0 local x2 = x - 20 + math.random(20) return x2 > 0 and x2 or 0 end function isSummon(uid) return uid ~= getCreatureMaster(uid) or false end function onStatsChange(cid, attacker, type, combat, value) if type == STATSCHANGE_HEALTHLOSS then if isMonster(cid) then if isCreature(attacker) then local sid = isSummon(attacker) == true and getCreatureMaster(attacker) or attacker if isPlayer(sid) then local expg = CalculeExp(getCreatureMaxHealth(cid), getMonsterInfo(getCreatureName(cid)).experience * rateExp, value) doPlayerSendTextMessage(sid, 23, "You gain "..expg.." exp.") doPlayerAddExp(sid, expg) end end end elseif type == STATSCHANGE_HEALTHGAIN then return false end return true end function onCombat(cid, target) if isMonster(target) and not isSummon(target) and not isPlayer(target) then registerCreatureEvent(target, "ExpGain") end return true end
     
    na mesma pasta procure pelo arquivo login.lua, e em cima de return true, adc a seguinte linha:
     

    registerCreatureEvent(cid, "ExpHit")
     
    volte na pasta anterior creaturescripts, e procure pelo arquivo creaturescritps.xml e cole as 2 tags:
     

    <event type="statschange" name="ExpGain" event="script" value="exphit.lua"/> <event type="combat" name="ExpHit" event="script" value="exphit.lua"/>
     
     
     
    Pronto, configurado para 2x a Exp.
     
    Acredito que será necessário remover essa "tag"

    local x2 = x - 20 + math.random(20)
    Porque ela faz a exp variar.
     
     
    Abraços :smile_positivo:
     
    espero que funfe!
  7. Upvote
    pollyaninha deu reputação a Wiltry em Morre E Cai O Caração   
    Tenta assim, em creaturescripts/playerdeath, embaixo de

    if isPlayer(killer) == TRUE then byPlayer = TRUE
    Você coloca isso:

    pos = getCreaturePosition(cid) nomoedomorto = getCreatureName(cid) nomedoassassino = getCreatureName(killer) heart = doCreateItem(HEARTID, 1, pos) doDecayItem(heart) doSetItemSpecialDescription(heart, "This is the heart of "..nomedomorto..", morto por "..nomedoassassino..")
  8. Upvote
    pollyaninha deu reputação a Filippe Ferreira em Juntando Um Mapa Ao Outro: Rme   
    Juntando um mapa ao outro no RME


     
    Abra o RME com o mapa que você quer copiar, após isso vá em File/Open e procure o mapa em que você quer colar outro.
     



     
    E então ficara os dois no mesmo RME, só que em abas diferentes:
     



     
    Feito isso vá no mapa que você quer copiar, no canto terá um quadradinho, clique nele, o mesmo vai virar um lápis;
     



     
    Continue no mapa que deseja copiar, e então segura shift e arraste o mouse por cima da área que você quer copiar, ele ficará escuro após selecionar como na foto abaixo:
     



     
    Depois é só apertar ctrl + v no mapa que você quer colar.
  9. Upvote
    pollyaninha deu reputação a dragonlorde em [Encerrado] [ Resolvido ]Como Reseto Só O Level No Meu Ot?   
    Se os dados seu Ot forem organizados em Sqlite entao abra..
    Va la encima onde diz tools e procure por SQL Editor ou algo do estilo entao coloque isso:
    UPDATE `players` SET `level` = 0;
     
    Entao todos os players do seu OT vao ter level 0
     
    Obs: Faça isso quando seu ot tiver offline ¬¬
     
    vale agradecer...
    REP me ++ ali embaxo no simbolo de "+" verde se eu ajudei
  10. Upvote
    pollyaninha deu reputação a Vilden em Troca O Templo (Todos Tipos)   
    Olá galera hoje vou colocar aqui 3 scripts muito boas, não sei se já tem aqui no Xtibia
    mais estarei postando elas do mesmo jeito, as 3 são de autoria minha.
     
     
    Legenda:
     
    * Todas as scripts são simples e não tem nenhuma ação a não ser mudar de templo e aparecer tal mensagem.
     
     
     
     

    Primeiro - Troca de Templo por Tele


    Explicação: Ao entrar no tele você muda o templo do character para qual informa na script a sugestão é que você redirecione o tele para o templo escolhido.
     
     
     
     
     
     
     

    Segundo - Troca de Templo Usando Comando


    Explicação: Ao usar o comando você muda para qualquer templo, você deve indicar o id do templo exemplo, !temple 1 ira muda o player de templo para a cidade de id 1
     
     
     
     
     
     
     
     
    Terceiro - Troca de Templo clicando

    Explicação: Ao clica em tal local você muda para um templo definido na script, a sugestão é que seja numa estátua
     
     
     
     
     
     
    Legenda Geral:
     
     
     
     
    .::Créditos::.
    Vilden
     
     
     
     
    *Lembrando que essas scripts são mais simples possíveis caso queiram que eu adicione
    alguma ação nela só pedir, caso os scripters de plantão souberem de alguma mais avançada post
    abaixo, muito obrigado pela atenção.
  11. Upvote
    pollyaninha deu reputação a zimbituba em Temples Change   
    Exclusivo ao XTibia - Temples Change

    Não é permitido levar para outro fórum sem minha autorização ou créditos.
    Caso for postar em outro fórum me mande o link que eu lhe paço até o BBCCODE pra nao precisar Reformatar.
     
    E ai galera vim trazer até vocês um script que eu fiz e que é muito
    procurado, mais que poucos funcionam O Temples Change, ou sejá o player
    passa no portal e vira morador da cidade esse funciona eu testei nas versões Aries 0.4.0, 0.4.5 e Devland. Então vamos lá...
     
    Abra a pasta data/movements/scripts e crie lá um arquivo com o nome de Temples.lua.
     
    Agora coloque isto dentro do arquivo:
     
     
    Explicando
    Em vermelho são as actions id que serão colocadas nos portais dos templos
    Em rosa é a mensagem que irá aparecer ao player quando virar morador
    Em verde é a ação que fazcom que o player vire morador e os números é o número da cidade que está no mapeditor.
     
    Lembrando meu mapa possui 6 cidades por isso possui esses 6 temples
     
    Agora no movements.xml adicione isto
     
     
    Em amarelo é o id do portal, espero que gostem
    Até a próxima
  12. Upvote
    pollyaninha deu reputação a Thony402 em Sistema De Quest Com O Nme De Quem Obteu Ele   
    Eae To Aqui Pra Ensinar Vocês a colocar aqueles sistema famoso no pbot q os items fiquam assim "Esse Item Foi Obtido Por Thony" (Suposição)
    Vamos ao Script ele é uma Simples Actions
     
     
     
    Vamos Explicar
     
    Vermelho = Esse é o Unique id é o numero que voce ira colocar la no mapa editor muito importante
    Roxo = Essa é a Storage Eu não sei muito bem o q significa mais pelo q eu entendi ela é tipo um numero que cadastra no seu char depois de fazer a quest é o impede voce de fazer ela mais de uma vez, isso é muito importante q as duas storage da script sejam as mesma e que não exista outra storage dessa no ot se não ficara bugada
    Azul = Isso é digamos outro coisa que não se pode faltar funciona como uma marcação aonde vc ira colocar no "doSetItemSpecialDescription(item1," na hora de colokar o "local item1" se voce quiser colocar mais de 1 item coloque na frente do
    "doPlayerAddItem(cid,7436,1)" mais não o que ja está e sim o novo, só colcoar "local item2 = doPlayerAddItem(cid,7436,1)"
    Verde = isso é mais opicional, digamos que voce queri refinar o item dando mais attack só colokar depois da virgula a quantidade de attack que voce ira refinar
    Azul Claro = Nessa Parte é aonde voce ira escrever a descrção do item esse \n é para mudar de linha ,nesse lugar voce pode escrever o que quiser É isso ae Ai depois a Vem a Tag que é a mais facil
    <action uniqueid="2017" script="angel.lua" />
     
    É Só isso, Muito Facil não pra mim no começo era muito dificil tambem
     
    Ah esse script pegou muito bem no Allisow 3.6
     
    Esse script foi muito demorado para montar então se quiser fazer outro post não seja ganancioso xD
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...