Ir para conteúdo

bepokemon

Visconde
  • Total de itens

    273
  • Registro em

  • Última visita

  • Dias Ganhos

    4

Tudo que bepokemon postou

  1. Antes de mais nada, tente ser mais objetivo no título de seus tópicos, pois desta forma você está infringindo as regras. Também, nesses casos de erros em scripts sempre mande a mensagem que você recebe ao abrir o servidor ou ao fazer a ação. (No caso, ao fazer Login). Muitas vezes o próprio console já explica certinho qual é o erro do código. Sim, existe uma parte do código "cortada", assim retornando um erro. function onLogin(cid) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Bem-vindo ao Shadow-Hell OTServer. Quer ser VIP? Então acesse já www.shadow-hell.com, e viva um novo mundo de aventuras. Veja as vantagens em nosso site.") doSendAnimatedText(getThingPos(cid), "Loguei!", 180) doSendMagicEffect(getThingPos(cid), 10) return TRUE end Tente mudar para isto e ver oque acontece.
  2. Poste todos os scripts aqui. O !vipdays, o do item e o do tile. Bem provável que seja apenas um problema nas storages, que por estarem diferentes não funcionam em conjunto. =)
  3. Desculpe me... Nao sei o que me deu, e quase impossivel conseguirem me ajudar se eu nao postar o script ;D Vou testar aqui e falo se deu certo Pelo oque eu entendi o erro não está no script.lua, e sim no arquivo XML. Poste também o conteúdo do mesmo. =)
  4. Sobre o player_id, isto se dá porque ele está tentando criar um player com um ID já existente. A solução é colocar em ordem os players existentes arrumados por ID. (Não sei exatamente como concertar esse erro, já que o account manager é todo em C++)
  5. function isCreatureFromPos(pos) pos.stackpos = 253 return isCreature(getThingFromPos(pos).uid) and true or false end
  6. Só pra reforçar a explicação: Ele quer um Script/Sistema/Trecho de mapa/etc ... Algo do seu server que apenas seu server tem e que possa ser postado aqui. O melhor conteúdo então terá uma semana no Ekz-Mídia.
  7. Lembrando que você pode usar a ferramenta de pesquisa do fórum ou fazer um pedido na seção correta. Seu tópico foi reportado e logo será movido.
  8. cara da pra vc me explica aonde colocar isso ; n entendo nada de script ;s ( se funfa semana q vem vc ganha +rep ) Eu não faço nada por Rep+ e sim pela comunidade. =) De qualquer maneira você precisa setar um actionid para a caixa (pelo MapEditor) e então adicionar este script em um arquivo LUA dentro de: data/actions/scripts com um nome (não se esqueça este nome). Após fazer isso coloque esta tag em data/actions/actions.xml: <action actionid="ID COLOCADO NO MAP EDITOR" event="script" value="NOME DO ARQUIVO.lua"/>
  9. Script: function onCastSpell(cid, var) if getCreatureName(getCreatureTarget(cid)) == 'NomeDaCreature' then return doConvinceCreature(cid, getCreatureTarget(cid)), TRUE else return doPlayerSendCancel(cid, 'You can\'t control this creature.'), FALSE end end Tag: <instant name="" words="" lvl="" mana="" range="3" needtarget="1" blockwalls="1" exhaustion="2000" needlearn="0" event="script" value="script.lua"> <vocation id="1;2"/> </instant> Qualquer dúvida poste aqui mesmo para que possamos te ajudar.
  10. Primeiramente poste o script para que possamos editar. Já o code seria algo mais ou menos assim: if(msgcontains(msg, 'hi') and talkState[talkUser] < 1) then if getPlayerLevel(cid) < 8 then selfSay('CHILD! COME BACK WHEN YOU HAVE GROWN UP!',cid) talkState[talkUser] = 0 return true end selfSay(string.upper(getPlayerName(cid))..', ARE YOU PREPARED TO FACE YOUR DESTINY?',cid) talkState[talkUser] = 1 end
  11. Caso precise de algum tipo de action pode usar esta seção de pedidos. Ou a ferramenta de pesquisa do fórum.
  12. Devo lembrar que o autor do tópico não entra já fazem 4 dias. Vou pedir que não postem muitos pedidos enquanto o membro não entrar para evitar flood neste tópico. Obrigado desde já.
  13. Adicionei a tag no meu Post. Lembrando que eu dei apenas um chute e que não está configurada corretamente. Você precisa me dizer exatamente aonde você quer que seja salvo o nome.
  14. Você substituiu os 'itemid' pelo ID do item que você quer?
  15. Script: function onUse(cid, item, pos, itemEx, topos) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, 'It\'s empty. You should try using the king statue.') return true end
  16. Deve funcionar, não testei: function onDeath(cid, corpse, deathList) for _,killer in ipairs(deathList) do if isPlayer(killer) then break return TRUE end end doCreatureSetDropLoot(cid, false) return TRUE end Tag: <event type="death" name="noDropMonster" event="script" value="noDropMonster.lua"/> Login.lua: registerCreatureEvent(cid, "noDropMonster")
  17. Se ele possuir um website com todas as informações de como fazer login em seu servidor ou se explicar que é via hamachi ao meu ver não terá problemas.
  18. Você poderia postar o Link de onde você tirou este sistema e/ou postar o sistema dentro da tag: [code][/[color=#ff0000]*[/color]code] * Lembre-se de retirar este asterísco. Assim poderemos ajuda-lo.
  19. Até onde sei não sei da existência do novo NPC system para 8.2-. Você deve consultar isto na seção de de Programação, lá devem poder te orientar melhor.
  20. Seu tópico tem um título que não está de acordo com as regras. O título deve EXPLICAR o conteúdo do seu tópico. Ou seja, deve mudar o seu título para que todos possam entender que você precisa de ajuda em seu Site/Account Manager.
  21. Sistema de Twitter 100% feito por mim para o Bellumera: *Me perdoem a falta de identação no script. Nome do servidor: Bellumera IP: bellumera.com Website: http://bellumera.com/
  22. A primeira é porque você está usando um combat sem parâmetros: local combatx = createCombatObject() local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_EFFECT, 255) setCombatParam(combat1, COMBAT_PARAM_DISTANCEEFFECT, 53) setCombatFormula(combat1, COMBAT_FORMULA_SKILL, -3.3, -4, -3, -3) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, 53) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -9.8, -9, -9.7, -9) local combat3 = createCombatObject() setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat3, COMBAT_PARAM_EFFECT, 53) local arr1 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 1, 1, 0, 3, 0, 1, 1, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} } local arr2 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 1, 1, 1, 3, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} } local arr3 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 1, 1, 1, 3, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} } local area1 = createCombatArea(arr1) local area2 = createCombatArea(arr2) local area3 = createCombatArea(arr3) local areax = createCombatArea(arr1) setCombatArea(combatx, area1) setCombatArea(combat1, area1) setCombatArea(combat2, area2) setCombatArea(combat3, area3) function onTargetTile(cid, pos) doCombat(cid,combat1,positionToVariant(pos)) end setCombatCallback(combatx, CALLBACK_PARAM_TARGETTILE, "onTargetTile") function onCastSpell(cid, var) doCombat(cid, combat1, var) doCombat(cid, combat2, var) return doCombat(cid, combat3, var) end local combat = createCombatObject() arr = { {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, } local area = createCombatArea(arr) setCombatArea(combat, area) function spellCallback(param) if param.count > 0 or math.random(0, 1) == 1 then doSendMagicEffect(param.pos, CONST_ME_HITBYFIRE) doAreaCombatHealth(param.cid, COMBAT_FIREDAMAGE, param.pos, 13, 50, 50, CONST_ME_EXPLOSIONHIT) end if(param.count < 5) then param.count = param.count + 1 addEvent(spellCallback, math.random(1000, 4000), param) end end function onTargetTile(cid, pos) local param = {} param.cid = cid param.pos = pos param.count = 0 spellCallback(param) end setCombatCallback(combat, CALLBACK_PARAM_TARGETTILE, "onTargetTile") function onCastSpell(cid, var) return doCombat(cid, combat, var) end
  23. Primeiramente vou pedir que você troque o Título do seu tópico, sendo mais específico em relação ao seu tópico (dizendo no título oque você precisa em relação a ele), pois na atual forma não está dentro das regras. #Topic Tente assim ._. (Desculpa, ) -- ExpHit por Stage by Uissu local rateExp = getConfigValue('rateExperience') or 1 local useStages = true local tableStages = { -- {min,max or -1,rate} {1,75,200},{76,150,100},{151,200,50},{201,275,35},{276,300,25},{301,350,15},{351,375,10},{376,400,5},{401,425,3},{426,-1,1} } 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) function getPlayerStageRate(cid, table) -- by Uissu for _,v in ipairs(table) do if getPlayerLevel(cid) >= v[1] and (v[2] == -1 or getPlayerLevel(cid) <= v[2]) then rate = v[3] break end end return rate end 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 stageRate = getPlayerStageRate(cid, tableStages) local expg = CalculeExp(getCreatureMaxHealth(cid), getMonsterInfo(getCreatureName(cid)).experience * rateExp, value) doSendAnimatedText(getThingPos(sid), useStages and expg * stageRate or expg, 215) doPlayerAddExp(sid, useStages and expg * stageRate or 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
  24. bepokemon

    Guild

    Primeiramente seu tópico deve ter um Título mais específico para oque você deseja em seu pedido. Mude o Título para algo que defina oque você quer. O tópico estará reportado de qualquer maneira. =) Existem diversas formas de você fazer isso. Como por exemplo setando um storage global de acordo com a guild ID de alguém ou por algum parâmetro; Por guild id (/comando PlayerName): function onSay(cid, words, param) if isPlayer(getPlayerByName(param)) then setGlobalStorageValue(storage, getPlayerGuildId(getPlayerByName(param))) doPlayerSendTextMessage(cid, 18, 'Storage set to: '..getPlayerGuildId(getPlayerByName(param)) else doPlayerSendCancel(cid, 'Player not found.') end return true end Apenas setando um valor (/comando valor): function onSay(cid, words, param) return tonumber(param) and setGlobalStorageValue(storage, param) or true end Apartir daí você já tem o ID da "guild que tem acesso a tal área" guardado. Agora só criar um movement para permitir a entrada apenas de quem for da guild tal. function onStepIn(cid, item, position, fromPosition) if getPlayerGuildId(cid) ~= getGlobalStorageValue(storage) then doPlayerSendCancel(cid, 'You\'re not allowed to enter this area.') doTeleportThing(cid, fromPosition, 1) else doPlayerSendTextMessage(cid, 18, 'Welcome back, '..getPlayerName(cid)..'. This is the '..getPlayerGuildName(cid)..' area, hope you enjoy.') end return true end
  25. Hmm, no caso para distro você precisaria perguntar isto aqui. Mas posso fazer para você em lua. Só preciso saber exatamente aonde é e oque você quer que eu salve. Exemplo: Na tabela Players o valor Old_Name igual ao primeiro nome do player .. Vou deixar pronto para se quiser editar. Oldname.lua: function onLogin(cid) if getPlayerStorageValue(cid, 23112) == -1 then setPlayerStorageValue(cid, 23112, 1) db.executeQuery("UPDATE `table` SET `old_name` = '"..getCreatureName(cid).."' WHERE `old_name` = '' and `name` = '"..getCreatureName(cid).."';") end return true end Tag: <event type="login" name="OldName" script="oldname.lua"/>
  • Quem Está Navegando   0 membros estão online

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