Ir para conteúdo

Dwarfer

Membro
  • Registro em

  • Última visita

Solutions

  1. Dwarfer's post in (Resolvido)Remover repetição de fala was marked as the answer   
    -- ASSIM if getPlayerLevel(cid) < 250 then doPlayerSendTextMessage(cid, 20, "Blessings free up to level 250.") for i = 1, 5 do doPlayerAddBlessing(cid, i) end end -- OU ASSIM if getPlayerLevel(cid) < 250 then doSendAnimatedText(getPlayerPosition(cid), "Bless!", COLOR_ORANGE) for i = 1, 5 do doPlayerAddBlessing(cid, i) end end  
     
     
     
  2. Dwarfer's post in (Resolvido)Exana All was marked as the answer   
    local conditions = {CONDITION_FIRE, CONDITION_ENERGY, CONDITION_POISON} -- adicione as conditions que você quer remover local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) function onCastSpell(cid, var) for i, v in pairs(conditions) do doRemoveCondition(cid, v) end doSendMagicEffect(getPlayerPosition(cid), CONST_ME_STUN) return doCombat(cid, combat, var) end  
  3. Dwarfer's post in (Resolvido)[PEDIDO] Clean em uma certa coordenada was marked as the answer   
    Em globalevents/scripts crie um arquivo:
     
    cleanplaces.lua
     
    local areas = { [1] = {{x = 1, y = 1, z = 1}, 2, 2}, [2] = {{x = 1, y = 1, z = 1}, 1, 1}, [3] = {{x = 1, y = 1, z = 1}, 3, 3}, [4] = {{x = 1, y = 1, z = 1}, 3, 3} } function onThink(interval) for i, v in pairs(areas) do for _, pos in ipairs(getArea(unpack(v))) do doCleanTile(pos) doSendMagicEffect(pos, CONST_ME_POFF) end end return true end  
    Em globalevents.xml, adicione a tag: <globalevent name="CleanPlaces" interval="30000" event="script" value="cleanplaces.lua"/>
     
    Edite o interval para o tempo que você quer que o clean seja executado. Coloquei como exemplo 30 segundos.
     
    Para configurar o script:
     
    {{x = 1, y = 1, z = 1}, 2, 2}, --> {{posição do centro da sua área}, variação para a posição X a partir do centro, variação para a posição Y a partir do centro}
     
    Neste caso, está cobrindo uma área de 5x5 sqms. Caso fosse 1,1 seria uma área de 3x3 e por aí vai. É só configurar para a sua área.
     
     
  4. Dwarfer's post in (Resolvido)System Points In Game was marked as the answer   
    Como sempre aparece alguém pedindo algo semelhante, resolvi fazer um básico aqui.
     
    Primeiramente, adicione uma coluna à tabela players de sua database:
    ALTER TABLE `players` ADD `ot_points` INTEGER NOT NULL DEFAULT 0  
    Em seguida, crie um arquivo na pasta lib :
     
    systempoints.lua (ou qualquer nome de sua preferência)
     
     
    Talkaction  
    Em talkactions/scripts crie um arquivo:
     
    pointstalk.lua
     
     
    Adicione a tag em talkactions.xml: <talkaction words="/addpoints;/delpoints;/onpoints;/transfpoints;/helppoints;/points;/getpoints" event="script" value="pointstalk.lua"/>
     
    -- Como usar: -- /addpoints Dwarfer,10 -> adiciona 10 pontos ao player Dwarfer -- /delpoints Dwarfer,10 -> remove 10 pontos do player Dwarfer -- /getpoints Dwarfer -> mostrará quantos pontos o player tem -- /points --> mostrará quantos pontos o próprio player possui -- /transfpoints Dwarfer,10 -> transfere 10 pontos para o player Dwarfer -- /onpoints 10 -> adiciona 10 pontos a todos os players online -- /helppoints -> mostra como devem ser usados os comandos permitidos ao player Actions Baú que dá itens por pontos
     
    Em actions/scripts, crie um arquivo:
     
    chestitemspoints.lua
     
     
    Configuração:
    local t = { points = 20, -- pontos necessários items = {{2160, 5}, {2152, 7}, {2158, 3}}, -- {id do item, quantidade} que será dado ao player time = {5, "sec"} -- tempo para usar o baú novamente } Em actions.xml, adicione a tag: <action actionid="ACTION_ID_DO_BAÚ" script="chestitemspoints.lua" />
     
    Baú que dá pontos somente uma vez
     
    Em actions/scripts, crie um arquivo.lua:
     
    chestpoints.lua
     
     
    Em actions.xml, adicione a tag: <action actionid="ACTION_ID_DO_BAÚ" script="chestpoints.lua" />
     
    NPC  
     
     
    E, antes que peça rsrsrs, um tile que só passa com certa quantidade de pontos.
     
    Movements Em movements/scripts crie um arquivo:
     
    tilepoints.lua
     
     
    Em movements.xml: <movevent type="StepIn" actionid="ACTION_ID_DO_PISO" event="script" value="tilepoints.lua"/>
  5. Dwarfer's post in (Resolvido)Script Inteligente de Invasão para Evento was marked as the answer   
    Segue o mod:
     
     
     
    A configuração é autoexplicativa, mesmo assim, para que não restem dúvidas:
     
     
     
    Adicione no arquivo do boss que será criado na boss area, antes de </monster>:
     
    <script> <event name = "InvasionBossDeath"/> </script>  
    Lembrando que o evento só será executado caso o boss esteja dentro da boss area. 
  6. Dwarfer's post in (Resolvido)Death Cast com 2 tipos e script de house dono was marked as the answer   
    Em creaturescripts/scripts crie um arquivo:
     
     
    Em creaturescripts.xml, adicione a tag: <event type="think" name="Home" event="script" value="NOMEDOSEUARQUIVO.lua"/>
     
    E no login.lua, registre o evento: registerCreatureEvent(cid, "Home")
     
     
    O outro você encontra aqui mesmo no fórum, só é dar uma procurada. 
     
     
  7. Dwarfer's post in (Resolvido)ITEM X LOCAIS X TP was marked as the answer   
    Em actions/scripts crie um arquivo:
     
    levertp.lua
     
     
    Em actions.xml, adicione a tag: <action actionid="ACTION_ID_DA_ALAVANCA" script="levertp.lua" />
     
  8. Dwarfer's post in (Resolvido)Erros em scripts de evento. was marked as the answer   
    Sobre o print que aparece ao iniciar o servidor, no arquivo do globalevents, tira essa linha:
     
         print(getPlayersInBlood().. "Jogadores no Blood Castle")  
  9. Dwarfer's post in (Resolvido)Conflito entre 3 scripts, e 1 erro em outro + conversão was marked as the answer   
    Erro Talkaction: 
     
     
     
    Conversão para SQL:
     
     
     
    Erros no Look:
     
     
     
  10. Dwarfer's post in (Resolvido)Comando Invasao was marked as the answer   
    Em talkactions/scripts crie um arquivo.lua:
     
    placeinvasion.lua
     
     
     
     
    Em talkactions.xml, adicione a tag: <talkaction words="!invasion" event="script" value="placeinvasion.lua"/>
     
    Exemplo para usar o comando: !invasion NO ESTADIO DO VASCO,Demon,50
     
  11. Dwarfer's post in (Resolvido)Reviver (2 Script) was marked as the answer   
    Se configurou os nomes dos arquivos corretamente, vai funcionar. Edite os corpses também, ali eu escrevi qualquer coisa. 
  12. Dwarfer's post in (Resolvido)Quest "Com Guild" was marked as the answer   
    Em actions/scripts:
     
     
     
    Em actions.xml: <action actionid="ACTION_ID_DA_ALAVANCA" script="NOMEDOARQUIVO.lua" />
     
  13. Dwarfer's post in (Resolvido)Sistema Akatsuki "Command" was marked as the answer   
  14. Dwarfer's post in (Resolvido)Erro Raspadinha was marked as the answer   
  15. Dwarfer's post in (Resolvido)Modificar Script de Weapons was marked as the answer   
  16. Dwarfer's post in (Resolvido)Spell mudando outfit was marked as the answer   
    local t = { [1] = {[0] = {lookType = 156}, [1] = {lookType = 152}}, [2] = {[0] = {lookType = 157}, [1] = {lookType = 153}}, [3] = {[0] = {lookType = 158}, [1] = {lookType = 154}}, [4] = {[0] = {lookType = 159}, [1] = {lookType = 155}}, tempo = 15 --tempo em segundos } local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREATTACK) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_FIRE) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 5, 5, 1.4, 2.1) function onCastSpell(cid, var) outfit = getCreatureOutfit(cid) if t[getPlayerVocation(cid)] then outfit.lookType = t[getPlayerVocation(cid)][getPlayerSex(cid)].lookType doSetCreatureOutfit(cid, outfit, t.tempo*1000) end return doCombat(cid, combat, var) end  
  17. Dwarfer's post in (Resolvido)Script contra inatividade was marked as the answer   
    Ahh! Entendi.
     
    local t = { newpos = {x=1,y=1,z=1}, backpos = {x=1,y=1,z=1}, storage = 11111, tempo = 15 -- em segundos } function onUse(cid, item, fromPosition, itemEx, toPosition) doTeleportThing(cid, t.newpos) doSendMagicEffect(t.newpos, CONST_ME_TELEPORT) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Just time " .. t.tempo .. " sec.") addEvent(checkInativity, t.tempo*1000 ,cid) return true end function checkInativity(cid) if isPlayer(cid) then if getPlayerStorageValue(cid, t.storage) == -1 then doTeleportThing(cid, t.backpos) doSendMagicEffect(t.backpos, CONST_ME_TELEPORT) end end end  
  18. Dwarfer's post in (Resolvido)[PEDIDO] Ao matar monstro ser teleportado was marked as the answer   
    Em creaturescripts/scripts:
     
    rewardtp.lua
     
    local new_pos = {x = 1559, y = 1317, z = 7} function onDeath(cid, corpse, deathList) local player = deathList[1] doPlayerSendTextMessage(player, MESSAGE_STATUS_CONSOLE_ORANGE, "Como você ajudou a matar o Fury Tobirama, você será teleportado para a sala de recompensa.") addEvent(doTeleportThing,1,player,new_pos) return true end  
    Em creaturescripts.xml: <event type="death" name="RewardTp" event="script" value="rewardtp.lua"/>
     
    No arquivo do monstro, antes de </monster>, adicione: 
    <script>
    <event name="RewardTp"/>
    </script>
     
  19. Dwarfer's post in (Resolvido)A conversão ficou certa? Ajuda com erro was marked as the answer   
    Se eu não me engano, o SQLITE faz distinção entre os tipos de dados "INT" e "INTEGER". Como o erro datatype mismatch geralmente acontece quando se altera um tipo de dado, mas a tabela não é atualizada, então você pode modificar na sua database o tipo de dado da coluna "sbw_points"  de "INT" para "INTEGER". Pode ser que seja isso, até porque essa linha:
     
    db.query("UPDATE `players` SET `sbw_points`=`sbw_points`+".. score[1][2] .." WHERE `name` = " .. db.escapeString(score[1][1]) .. ";")  
    Coloca o valor score (INTEGER) no campo INT sbw_points.
  20. Dwarfer's post in (Resolvido)Adicionar efeito e texto nessa script was marked as the answer   
    function onUse(cid, item) local p = getPlayerPosition(cid) if getPlayerStorageValue(cid, 13700) ~= -1 then doPlayerSendCancel(cid, "Desculpe, mas você já usou esse item.") doSendMagicEffect(p, CONST_ME_POFF) return true end doCreatureSay(cid, "Você ganhou a magia Utura Gran!", TALKTYPE_ORANGE_1) doSendMagicEffect(p, CONST_ME_MAGIC_BLUE ) setPlayerStorageValue(cid, 13700, 1) doRemoveItem(item.uid, 1) return true end  
  21. Dwarfer's post in (Resolvido)Invasao de Monsters Aleatorios was marked as the answer   
    Crie um arquivo em globalevents.lua:
     
     
     
    E adicione a tag no globalevents.xml:  <globalevent name="RandomInvasao" interval="10800000" event="script" value="NOMEDOSEUARQUIVO.lua"/>
     
    Edite o interval como queira. Tá configurado para acontecer de 3 em 3 horas e remover a cada 1h e meia.
     
     
     
  22. Dwarfer's post in (Resolvido)Npc Points Event e Item Points was marked as the answer   
    Action:
     
     
    Em actions.xml: <action itemid="ID_DO_ITEM" event="script" value="NOMEDOARQUIVO.lua"/>
     
    NPC:
     
     
  23. Dwarfer's post in (Resolvido)Acrescentar função no sistema ppoints was marked as the answer   
    No creaturescripts:
     
     
    E retire a tag  <event type="logout" name="PlayerResetPointsTimer" event="script" value="points.lua"/> do creaturescripts.xml.
     
    No globalevents:
     
     
    No talkactions:
     
     
  24. Dwarfer's post in (Resolvido)Erro Login.lua was marked as the answer   
  25. Dwarfer's post in (Resolvido)[Pedido] NPC DA ITEM APENAS 1 VEZ was marked as the answer   
    Não é que a gente não tenha entendido. Você que não falou nada disso, leia novamente o que você escreveu:
     
     
    Edite as falas como quiser:
     
     

Informação Importante

Confirmação de Termo