Ir para conteúdo

runeraserver

Membro
  • Registro em

  • Última visita

Tudo que runeraserver postou

  1. runeraserver postou uma resposta no tópico em Playground (Off-topic)
    Coisa de gente imatura!! Vem aqui, faz downloads, perguntas, resolve todos os problemas, depois de usufruir do fórum se ofende com qualquer coisinha fica postando Adeus TK! Quer sair saia!! vc não fará falta nenhuma pra comunidade, assim sendo poupe seu tempo, ninguém notou que vc entrou, pode sair a vontade
  2. Você bate a pick na pedra? Parece que os scripts dos globais que tem por aí, o pythius é sumonado depois que tu entra no portal
  3. Muito provavelmente, cara, não use OTX.. Tem muito bug e não passa perto da estabilidade do TFS.. Não tem porque usar otx. Se estiver usando TFS 0.4 recomendo essa distro: http://www.tibiaking.com/forum/topic/33395-tfs-04-cast-version-6/ Abraço!!
  4. No data/monster/monstro_que_tu_quer.xml adicione: <script> <event name="aparecertp"/> </script> Vá em data/creaturescript/scripts/login.lua e embaixo de: registerCreatureEvent(cid, "Mail") adicione registerCreatureEvent(cid, "aparecertp") creaturescript.xml adicione <event type="death" name="aparecertp" event="script" value="aparecertp.lua"/> creaturescript/scripts crie um arquivo chamado aparecertp.lua e adicione em bossMonster, o nome que vai executar a ação do tp, tpLoc onde o tp vai aparecer, tpDes pra onde o tp irá mandar e time o tempo que o tp ficará sumonado. local bossMonster = "Pythius the Rotten" local msg = "Tp Open Will Close in 20 Second" local time_ = 20 -- seconds local tp = 1387 local tpLoc = { x=1160, y=995, z=7, stackpos=1 } local tpDes = { x=1144, y=958, z=7 } local function onRemoveTeleport() doRemoveItem(getThingfromPos(tpLoc).uid, 1) end function onKill(cid, target) if isPlayer(cid) and string.lower(getCreatureName(target)) == bossMonster then doCreateTeleport(tp, tpDes, tpLoc) doPlayerSendTextMessage(cid, 19, msg) addEvent(onRemoveTeleport, time_ * 1000) end return true end
  5. Disturbbed, essa jossa dava erro antes de editarmos? Se não, me envia a lib original e o script que chama a função getwinner por favor, acho que é globalevent
  6. Usa esse fera: _Lib_Battle_Info = { Reward = {9971,10}, TeamOne = {name = "Black Assassins", storage = 140120, pos = {x=1262,y=1150,z=6}}, TeamTwo = {name = "Red Barbarians",storage = 140121,pos = {x=1275,y=1150,z=6}}, storage_count = 180400, tpPos = {x=161, y=44, z=7}, limit_Time = 10 -- em minutos } function resetBattle() return setGlobalStorageValue(_Lib_Battle_Info.TeamOne.storage, 0) and setGlobalStorageValue(_Lib_Battle_Info.TeamTwo.storage, 0) end function OpenWallBattle() local B = { {3517,{x=1270, y=1161, z=6, stackpos = 1}}, {3517,{x=1270, y=1162, z=6, stackpos = 1}}, {3517,{x=1270, y=1163, z=6, stackpos = 1}}, {3517,{x=1270, y=1164, z=6, stackpos = 1}} } for i = 1, #B do if getTileItemById(B[i][2], B[i][1]).uid == 0 then doCreateItem(B[i][1], 1, B[i][2]) else doRemoveItem(getThingfromPos(B[i][2]).uid,1) end end end function doBroadCastBattle(type,msg) local players = {} for _, cid in pairs(getPlayersOnline()) do if getPlayerStorageValue(cid, _Lib_Battle_Info.TeamOne.storage) == 1 or getPlayerStorageValue(cid, _Lib_Battle_Info.TeamTwo.storage) == 1 then table.insert(players, cid) end end for i = 1, #players do doPlayerSendTextMessage(players[i],type,msg) end end function removeBattleTp() local t = getTileItemById(_Lib_Battle_Info.tpPos, 1387).uid return t > 0 and doRemoveItem(t) and doSendMagicEffect(_Lib_Battle_Info.tpPos, CONST_ME_POFF) end function getWinnersBattle(storage) local players,str = {},"" for _, cid in pairs(getPlayersOnline()) do if getPlayerStorageValue(cid, storage) == 1 then table.insert(players, cid) end end str = str .. ""..#players.." Player"..(#players > 1 and "s" or "").." do time "..(getGlobalStorageValue(_Lib_Battle_Info.TeamOne.storage) == 0 and _Lib_Battle_Info.TeamTwo.name or _Lib_Battle_Info.TeamOne.name).." venceu o evento Battlefield, todos do time vencedor ganharam ".._Lib_Battle_Info.Reward[2].." "..getItemNameById(_Lib_Battle_Info.Reward[1]).."!" for i = 1, #players do doRemoveCondition(players[i], CONDITION_OUTFIT) doTeleportThing(players[i], getTownTemplePosition(getPlayerTown(players[i]))) setPlayerStorageValue(players[i], storage, -1) setPlayerStorageValue(player[i], 52310, getPlayerStorageValue(cid, 52310) + 3) end resetBattle() OpenWallBattle() return doBroadcastMessage(str) end function CheckEvent(delay) if delay > 0 and getGlobalStorageValue(_Lib_Battle_Info.storage_count) > 0 then doBroadcastMessage("[BattleField Evento] Esta esperando "..getGlobalStorageValue(_Lib_Battle_Info.storage_count).." players para o evento Battlefield começar.") elseif delay == 0 and getGlobalStorageValue(_Lib_Battle_Info.storage_count) > 0 then local players = {} for _, cid in pairs(getPlayersOnline()) do if getPlayerStorageValue(cid, _Lib_Battle_Info.TeamOne.storage) == 1 or getPlayerStorageValue(cid, _Lib_Battle_Info.TeamTwo.storage) == 1 then table.insert(players, cid) end end for i = 1, #players do doRemoveCondition(players[i], CONDITION_OUTFIT) setPlayerStorageValue(player[i], 52310, getPlayerStorageValue(cid, 52310) + 1) doTeleportThing(players[i], getTownTemplePosition(getPlayerTown(players[i]))) setPlayerStorageValue(players[i], getPlayerStorageValue(players[i], _Lib_Battle_Info.TeamOne.storage) == 1 and _Lib_Battle_Info.TeamOne.storage or _Lib_Battle_Info.TeamTwo.storage, -1) end doBroadcastMessage("Evento não pode ser iniciado por falta de jogadores.") setGlobalStorageValue(_Lib_Battle_Info.storage_count, 0) resetBattle() removeBattleTp() end addEvent(CheckEvent, 60000, delay-1) end e no creaturescript/scripts/login.lua if getPlayerStorageValue(cid, 52310) < 0 then setPlayerStorageValue(cid, 52310, 0) end
  7. runeraserver postou uma resposta no tópico em Suporte Tibia OTServer
    movements.xml add: <movevent type="StepIn" actionid="52310" event="script" value="onlypremium.lua"/> onlypremium.lua add: function onStepIn(cid, item, position, fromPos, fromPosition) if not isPremium(cid) then doTeleportThing(cid, fromPosition, true) doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT) doCreatureSay(cid, "Sorry, only Premium players are allowed to pass!", TALKTYPE_MONSTER) doPlayerSendTextMessage(cid, 27, "Go away only premium can enter!.") else doSendMagicEffect(getCreaturePosition(cid), CONST_ME_FIREWORK_RED) doPlayerSendTextMessage(cid, 27, "Welcome to the Premium Side, here can you explore new things and face other creatures.") doCreatureSay(cid, "Welcome Bro!", TALKTYPE_MONSTER) end end Remeres Map Editor coloque o actionid 52310 no tile desejado.
  8. Vou por sim Dani, to fazendo um tuto completo aqui de criação de páginas do facebook, implementação do botão, da área e tudo mais.. Eu posso deixar o tópico aí por enquanto? se não pode excluir depois faço outro, absss
  9. Vai no chat do TK que vou tentar te ajudar
  10. É um assunto meio complexo pois não sabemos até aonde vai os conhecimentos desse 'hacker'. Passe o seu config.lua para accountManager = false
  11. Você ativou o mysql no xampp ou no uniserver?
  12. Funciona das 2 maneiras porém, com uma ideia diferente, como eu falei, banco de dados tem como padrão o value -1 quando nada foi declarado à ele. Levando isso em conta, o script reconhece que o storage está -1 e seta ele pra 0.
  13. Caso tu não declaraste no login.lua storage 52310 = 0, utilize o script abaixo: Obs: Winner ganha 3, loosers ganha 1. _Lib_Battle_Info = { Reward = {9971,10}, TeamOne = {name = "Black Assassins", storage = 140120, pos = {x=1262,y=1150,z=6}}, TeamTwo = {name = "Red Barbarians",storage = 140121,pos = {x=1275,y=1150,z=6}}, storage_count = 180400, tpPos = {x=161, y=44, z=7}, limit_Time = 10 -- em minutos } function resetBattle() return setGlobalStorageValue(_Lib_Battle_Info.TeamOne.storage, 0) and setGlobalStorageValue(_Lib_Battle_Info.TeamTwo.storage, 0) end function OpenWallBattle() local B = { {3517,{x=1270, y=1161, z=6, stackpos = 1}}, {3517,{x=1270, y=1162, z=6, stackpos = 1}}, {3517,{x=1270, y=1163, z=6, stackpos = 1}}, {3517,{x=1270, y=1164, z=6, stackpos = 1}} } for i = 1, #B do if getTileItemById(B[i][2], B[i][1]).uid == 0 then doCreateItem(B[i][1], 1, B[i][2]) else doRemoveItem(getThingfromPos(B[i][2]).uid,1) end end end function doBroadCastBattle(type,msg) local players = {} for _, cid in pairs(getPlayersOnline()) do if getPlayerStorageValue(cid, _Lib_Battle_Info.TeamOne.storage) == 1 or getPlayerStorageValue(cid, _Lib_Battle_Info.TeamTwo.storage) == 1 then table.insert(players, cid) end end for i = 1, #players do doPlayerSendTextMessage(players[i],type,msg) end end function removeBattleTp() local t = getTileItemById(_Lib_Battle_Info.tpPos, 1387).uid return t > 0 and doRemoveItem(t) and doSendMagicEffect(_Lib_Battle_Info.tpPos, CONST_ME_POFF) end function getWinnersBattle(storage) local players,str = {},"" for _, cid in pairs(getPlayersOnline()) do if getPlayerStorageValue(cid, storage) == 1 then table.insert(players, cid) end end str = str .. ""..#players.." Player"..(#players > 1 and "s" or "").." do time "..(getGlobalStorageValue(_Lib_Battle_Info.TeamOne.storage) == 0 and _Lib_Battle_Info.TeamTwo.name or _Lib_Battle_Info.TeamOne.name).." venceu o evento Battlefield, todos do time vencedor ganharam ".._Lib_Battle_Info.Reward[2].." "..getItemNameById(_Lib_Battle_Info.Reward[1]).."!" for i = 1, #players do doRemoveCondition(players[i], CONDITION_OUTFIT) doTeleportThing(players[i], getTownTemplePosition(getPlayerTown(players[i]))) setPlayerStorageValue(players[i], storage, -1) if getPlayerStorageValue(player[i], 52310) < 0 then setPlayerStorageValue(player[i], 52310, 0) end setPlayerStorageValue(player[i], 52310, getPlayerStorageValue(cid, 52310) + 3) end resetBattle() OpenWallBattle() return doBroadcastMessage(str) end function CheckEvent(delay) if delay > 0 and getGlobalStorageValue(_Lib_Battle_Info.storage_count) > 0 then doBroadcastMessage("[BattleField Evento] Esta esperando "..getGlobalStorageValue(_Lib_Battle_Info.storage_count).." players para o evento Battlefield começar.") elseif delay == 0 and getGlobalStorageValue(_Lib_Battle_Info.storage_count) > 0 then local players = {} for _, cid in pairs(getPlayersOnline()) do if getPlayerStorageValue(cid, _Lib_Battle_Info.TeamOne.storage) == 1 or getPlayerStorageValue(cid, _Lib_Battle_Info.TeamTwo.storage) == 1 then table.insert(players, cid) end end for i = 1, #players do doRemoveCondition(players[i], CONDITION_OUTFIT) if getPlayerStorageValue(player[i], 52310) < 0 then setPlayerStorageValue(player[i], 52310, 0) end setPlayerStorageValue(player[i], 52310, getPlayerStorageValue(cid, 52310) + 1) doTeleportThing(players[i], getTownTemplePosition(getPlayerTown(players[i]))) setPlayerStorageValue(players[i], getPlayerStorageValue(players[i], _Lib_Battle_Info.TeamOne.storage) == 1 and _Lib_Battle_Info.TeamOne.storage or _Lib_Battle_Info.TeamTwo.storage, -1) end doBroadcastMessage("Evento não pode ser iniciado por falta de jogadores.") setGlobalStorageValue(_Lib_Battle_Info.storage_count, 0) resetBattle() removeBattleTp() end addEvent(CheckEvent, 60000, delay-1) end
  14. Como assim amigo? Seria uma chest? Quais itens daria?
  15. Exato, se tu quiser que o player continue ganhando a recompensa e mais os storages, tu apenas impementa o código abaixo embaixo do doplayeradditem, se tu não quiser que o player ganha oq ta no doplayeradditem tu apenas substitui. O + 3 é a quantidade de storage que o player irá ganhar setPlayerStorageValue(player, 52310, getPlayerStorageValue(cid, 52310) + 3) No caso da recompensa do perdedor, onde fica esse script que tu me passou? creaturescript? Como os players ganham o storage? Como eles recebem os itens, automático, npc ou alguma action? Testa essa por gentileza: OBS: Retirei as recompensas e deixei somente os storages. _Lib_Battle_Info = { Reward = {9971,10}, TeamOne = {name = "Black Assassins", storage = 140120, pos = {x=1262,y=1150,z=6}}, TeamTwo = {name = "Red Barbarians",storage = 140121,pos = {x=1275,y=1150,z=6}}, storage_count = 180400, tpPos = {x=161, y=44, z=7}, limit_Time = 10 -- em minutos } function resetBattle() return setGlobalStorageValue(_Lib_Battle_Info.TeamOne.storage, 0) and setGlobalStorageValue(_Lib_Battle_Info.TeamTwo.storage, 0) end function OpenWallBattle() local B = { {3517,{x=1270, y=1161, z=6, stackpos = 1}}, {3517,{x=1270, y=1162, z=6, stackpos = 1}}, {3517,{x=1270, y=1163, z=6, stackpos = 1}}, {3517,{x=1270, y=1164, z=6, stackpos = 1}} } for i = 1, #B do if getTileItemById(B[i][2], B[i][1]).uid == 0 then doCreateItem(B[i][1], 1, B[i][2]) else doRemoveItem(getThingfromPos(B[i][2]).uid,1) end end end function doBroadCastBattle(type,msg) local players = {} for _, cid in pairs(getPlayersOnline()) do if getPlayerStorageValue(cid, _Lib_Battle_Info.TeamOne.storage) == 1 or getPlayerStorageValue(cid, _Lib_Battle_Info.TeamTwo.storage) == 1 then table.insert(players, cid) end end for i = 1, #players do doPlayerSendTextMessage(players[i],type,msg) end end function removeBattleTp() local t = getTileItemById(_Lib_Battle_Info.tpPos, 1387).uid return t > 0 and doRemoveItem(t) and doSendMagicEffect(_Lib_Battle_Info.tpPos, CONST_ME_POFF) end function getWinnersBattle(storage) local players,str = {},"" for _, cid in pairs(getPlayersOnline()) do if getPlayerStorageValue(cid, storage) == 1 then table.insert(players, cid) end end str = str .. ""..#players.." Player"..(#players > 1 and "s" or "").." do time "..(getGlobalStorageValue(_Lib_Battle_Info.TeamOne.storage) == 0 and _Lib_Battle_Info.TeamTwo.name or _Lib_Battle_Info.TeamOne.name).." venceu o evento Battlefield, todos do time vencedor ganharam ".._Lib_Battle_Info.Reward[2].." "..getItemNameById(_Lib_Battle_Info.Reward[1]).."!" for i = 1, #players do doRemoveCondition(players[i], CONDITION_OUTFIT) doTeleportThing(players[i], getTownTemplePosition(getPlayerTown(players[i]))) setPlayerStorageValue(players[i], storage, -1) setPlayerStorageValue(player[i], 52310, getPlayerStorageValue(cid, 52310) + 3) end resetBattle() OpenWallBattle() return doBroadcastMessage(str) end function CheckEvent(delay) if delay > 0 and getGlobalStorageValue(_Lib_Battle_Info.storage_count) > 0 then doBroadcastMessage("[BattleField Evento] Esta esperando "..getGlobalStorageValue(_Lib_Battle_Info.storage_count).." players para o evento Battlefield começar.") elseif delay == 0 and getGlobalStorageValue(_Lib_Battle_Info.storage_count) > 0 then local players = {} for _, cid in pairs(getPlayersOnline()) do if getPlayerStorageValue(cid, _Lib_Battle_Info.TeamOne.storage) == 1 or getPlayerStorageValue(cid, _Lib_Battle_Info.TeamTwo.storage) == 1 then table.insert(players, cid) end end for i = 1, #players do doRemoveCondition(players[i], CONDITION_OUTFIT) setPlayerStorageValue(player[i], 52310, getPlayerStorageValue(cid, 52310) + 1) doTeleportThing(players[i], getTownTemplePosition(getPlayerTown(players[i]))) setPlayerStorageValue(players[i], getPlayerStorageValue(players[i], _Lib_Battle_Info.TeamOne.storage) == 1 and _Lib_Battle_Info.TeamOne.storage or _Lib_Battle_Info.TeamTwo.storage, -1) end doBroadcastMessage("Evento não pode ser iniciado por falta de jogadores.") setGlobalStorageValue(_Lib_Battle_Info.storage_count, 0) resetBattle() removeBattleTp() end addEvent(CheckEvent, 60000, delay-1) end
  16. Agora tu me pegou.. não manjo nada de php, malz
  17. ou em config.php altere para $config['site']['newchar_towns'][0] = array(0)
  18. Não está encontrando o NPC, você colou aqui o monstro.xml, cole o npc.xml e npc.lua por favor.. (Pythius the rotten.xml e Pythuius the rotten.lua)
  19. Vai no remeres e altere o town 1 pra town 2
  20. Amigo, então use o que o nosso amigo @Wakon passou, não importa o que tem nos bastidores, importa o que o player enxerga. É padrão do TFS todas as storages começar com Value -1.
  21. level.lua function onUse(cid, item, fromPosition, itemEx, toPosition) if getPlayerStorageValue(cid, 52310) >= 3 then doPlayerAddItem(cid, ID_DA_GOLDEN_LEGS, 1) setPlayerStorageValue(cid, 52310, getPlayerStorageValue(cid, 52310) - 3) doPlayerSendTextMessage(cid,22,"Here is.") else doPlayerSendTextMessage(cid,22,"You not have storage.") end return true end
  22. Não precisa mexer em mods não, atualize apenas o talkaction: function onSay(cid, words, param, channel) if isPlayer(cid) then if getPlayerStorageValue(cid, 52310) < 1 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você tem 0 pontos de seilaoq.") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você tem " .. (getPlayerStorageValue(cid, 52310)) .. " pontos de seilaoq.") end return true end return true end
  23. Ah sim!! Tu usa mods?
  24. Em recompensas: if getPlayerStorageValue(cid, 52310) < 1 then setPlayerStorageValue(cid, 52310, 1) else setPlayerStorageValue(cid, 52310, getPlayerStorageValue(cid, 52310) + 1) end Agora pode testar que ta 100%, testei aqui

Informação Importante

Confirmação de Termo