Ir para conteúdo

Black Fenix

Membro
  • Registro em

  • Última visita

Tudo que Black Fenix postou

  1. Eu to com uma script de uma spells e eu queria que quando o player usasse ela em outro player ele desse uma LookType por x segundos qual variavel eu poderia inserir na minha spells?
  2. @Sttorm o erro persiste [26/05/2018 11:28:38] [Error - Npc interface] [26/05/2018 11:28:38] data/npc/scripts/mysticSystem.lua:onCreatureSay [26/05/2018 11:28:38] Description: [26/05/2018 11:28:38] data/npc/scripts/mysticSystem.lua:25: attempt to index local 'a' (a nil value) [26/05/2018 11:28:38] stack traceback: [26/05/2018 11:28:38] data/npc/scripts/mysticSystem.lua:25: in function 'callback' [26/05/2018 11:28:38] data/npc/lib/npcsystem/npchandler.lua:390: in function 'onCreatureSay' [26/05/2018 11:28:38] data/npc/scripts/mysticSystem.lua:19: in function <data/npc/scripts/mysticSystem.lua:19>
  3. quando o player conversa com o npc da o seguinte error [26/05/2018 11:07:43] [Error - Npc interface] [26/05/2018 11:07:43] data/npc/scripts/mysticSystem.lua:onCreatureSay [26/05/2018 11:07:43] Description: [26/05/2018 11:07:43] data/npc/scripts/mysticSystem.lua:25: attempt to index local 'a' (a nil value) [26/05/2018 11:07:43] stack traceback: [26/05/2018 11:07:43] data/npc/scripts/mysticSystem.lua:25: in function 'callback' [26/05/2018 11:07:43] data/npc/lib/npcsystem/npchandler.lua:390: in function 'onCreatureSay' [26/05/2018 11:07:43] data/npc/scripts/mysticSystem.lua:19: in function <data/npc/scripts/mysticSystem.lua:19> e quando o player nao tem a vocation o npc nao fala nada
  4. @Sttorm se nao for pedi demais poderia fazer essa promotion em tal LVL: e depois que fizesse desse kick no player so para fechar em chave de ouro
  5. @Sttorm agora ta tudo ok porem ele nao ta ganhado o bonus de mana e hp
  6. @Sttorm na tabela ta tudo certo eu fiz 2 vocation ficou assim local t = { [569] = {570, 1006, 3000, 3000}, -- {old vocation} = {New vocation, looktype, life extra, mana extra} [174] = {571, 50, 3000, 3000} } testei o npc com as duas vocation e ele me da a mesma looktype no caso a looktype que ele me da e uma que eu nunca vi
  7. @Sttorm Agora ele me deu uma outra looktype
  8. @Sttorm Funcionou a parte de trocar a vocation porem nao troca a looktype deu o seguinte error: [25/05/2018 19:41:26] [Error - Npc interface] [25/05/2018 19:41:26] data/npc/scripts/mysticSystem.lua:onCreatureSay [25/05/2018 19:41:26] Description: [25/05/2018 19:41:26] attempt to index a number value [25/05/2018 19:41:26] stack traceback: [25/05/2018 19:41:26] [C]: in function 'doSetCreatureOutfit' [25/05/2018 19:41:26] data/npc/scripts/mysticSystem.lua:29: in function 'callback' [25/05/2018 19:41:26] data/npc/lib/npcsystem/npchandler.lua:390: in function 'onCreatureSay' [25/05/2018 19:41:26] data/npc/scripts/mysticSystem.lua:18: in function <data/npc/scripts/mysticSystem.lua:18>
  9. @Sttorm varias vocation poderiam fazer isso mesmo por um tabela
  10. Se alguem poder fazer essa script para mim eu agradeço é mais o menos assim é normalmente igual ao promotion so que tipo assim o player fala Hi o npc fala "Voce quer fazer super promotion ?" ai o player fala yes , ai o npc vai pedir X item com X quantidade , o npc ira remover o x item do player e da a ele a super promotion, o npc vai trocar a vocação dele tipo quem for vocation 255 e falar com o npc ganha a vocation 256, com X looktype e ganha mais 3000 de hp e mp ! Agradeço a quem conseguir
  11. Olá ! eu to precisando de uma spell de paralyze da seguinte forma , que eu possa escolher o tempo que o player vai ficar paralisado e quanto de velocidade ele vai ficar
  12. Funcionou!! vlw ? ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Edit :@Sttorm aproveitando esse topico você poderia me ajudar em outra coisinha uma action que só pode-se entrar no portal depois q o evento acabasse
  13. @Sttorm tipo quando esta acontecendo o evento, e os players morrem de dentro do evento eles volta para o inicio do evento , entao mesmo com o evento acabado e o player morrem fora, eles voltam para dentro do inicio do evento como se ainda estivecem participando
  14. @Sttorm no caso essa nova script continua sendo um tile abaixo do tp certo? pq se for assim o player continua participando do evento porem nao consta nenhum erro na distro
  15. @Sttorm Sim inclusive ja esta funcionando tudo so a parte se o player querer desistir do evento nao funcionar pois se botar somente um portal normal quando ele morre ele volta para o evento
  16. @Sttorm Cara eu testei aqui e deu o seguinte Erro [23/05/2018 10:35:55] [Error - MoveEvents Interface] [23/05/2018 10:35:55] data/movements/scripts/ip.lua:onStepIn [23/05/2018 10:35:55] Description: [23/05/2018 10:35:55] data/movements/scripts/ip.lua:2: attempt to index global 'CTF' (a nil value) [23/05/2018 10:35:55] stack traceback: [23/05/2018 10:35:55] data/movements/scripts/ip.lua:2: in function <data/movements/scripts/ip.lua:1>
  17. Enfim eu to com uma script do Capture the flag porem eu gostaria de uma script de um portal que ao entrar nele disistisse do evento Segue o script do evento :: --[[ Capture The Flag System Author: Maxwell Denisson(MaXwEllDeN) Version: 2.0 Contact: [email protected] ]] CTF_LIB = { waitpos = {x = 70, y = 1065, z = 7}, -- Posição da sala de espera tppos = {x = 1019, y = 887, z = 7}, -- Onde o TP vai aparecer days = {1, 3, 4 ,6}, -- Dias que o evento vai abrir xp_percent = 0.5, -- Porcentagem de exp que o player vai ganhar timeclose = 2, -- Tempo, em minutos, para iniciar o CTF winp = 5, -- Quantos pontos uma equipe precisa marcar para vencer teams = { ["Vermelho"] = { temple = 2, -- TownID da equipe vermelha outfit = {lookType = 749}, flag = { id = 1435, flag_pos = {x = 102, y = 952, z = 7}, -- Posição onde a bandeira vermelha vai ser criada gnd_pos = {x = 100, y = 954, z = 7}, -- Onde os players da equipe vermelha entregarão a bandeira. }, }, ["Verde"] = { temple =1, -- TownID da equipe verde outfit = {lookType = 747}, flag = { id = 1437, flag_pos = {x = 146, y = 951, z = 7}, -- Posição onde a bandeira verde vai ser criada gnd_pos = {x = 144, y = 953, z = 7}, -- Onde os players da equipe verde entregarão a bandeira. }, }, }, } local CTF = CTF_LIB function CTF.getMembers() local members = {} for _, cid in pairs(getPlayersOnline()) do if getPlayerStorageValue(cid, 16700) ~= -1 then table.insert(members, cid) end end return members end function CTF.getTeamMembers(team) local members = {} for _, cid in pairs(CTF.getMembers()) do if getPlayerStorageValue(cid, 16700) == team then table.insert(members, cid) end end return members end function CTF.removePlayer(uid) doPlayerSetTown(uid, getPlayerStorageValue(uid, 16701)) doTeleportThing(uid, getTownTemplePosition(getPlayerStorageValue(uid, 16701))) doRemoveCondition(uid, CONDITION_OUTFIT) doCreatureAddHealth(uid, getCreatureMaxHealth(uid)) doCreatureAddMana(uid, getCreatureMaxMana(uid)) setPlayerStorageValue(uid, 16701, -1) setPlayerStorageValue(uid, 16700, -1) return true end function CTF.addPlayer(uid) local team = CTF.getTeamLivre() local n_team = CTF.teams[team] setPlayerStorageValue(uid, 16700, team) setPlayerStorageValue(uid, 16701, getPlayerTown(uid)) doPlayerSetTown(uid, n_team.temple) doTeleportThing(uid, CTF.waitpos) doPlayerSendTextMessage(uid, 22, "Você agora faz parte do time ".. team .. ".") local outfit = getCreatureOutfit(uid) for i, v in pairs(n_team.outfit) do outfit[i] = v end registerCreatureEvent(uid, "CTFLogout") registerCreatureEvent(uid, "CTFAttack") registerCreatureEvent(uid, "CTFCombat") registerCreatureEvent(uid, "CTFDeath") doSetCreatureOutfit(uid, outfit, -1) return true end function CTF.getTeamLivre() local teams = {} for i, _ in pairs(CTF.teams) do table.insert(teams, {i, #CTF.getTeamMembers(i)}) end if (teams[1][2] < teams[2][2]) then return teams[1][1] elseif (teams[1][2] > teams[2][2]) then return teams[2][1] end return teams[math.random(2)][1] end function CTF.broadCast(msg, class) for _, uid in pairs(CTF.getMembers()) do doPlayerSendTextMessage(uid, class or 20, msg) end return true end function CTF.getFlagTeam(flag) for i, v in pairs(CTF.teams) do if v.flag.id == flag then return i end end return "" end local score_sto = {} local a = 0 for i, _ in pairs(CTF.teams) do score_sto[i] = 42314 + a a = a + 1 end function CTF.createFlags() for i, v in pairs(CTF.teams) do local flag = doCreateItem(v.flag.id, 1, v.flag.flag_pos) doItemSetAttribute(flag, "aid", 63218) v.flag.gnd_pos.stackpos = 0 local gnd = getThingFromPos(v.flag.gnd_pos).uid doItemSetAttribute(gnd, "aid", 63200) doItemSetAttribute(gnd, "team", i) setGlobalStorageValue(score_sto[i], 0) end return true end function CTF.removeFlags() for i, v in pairs(CTF.teams) do local flag = doFindItemInPos({v.flag.id}, v.flag.flag_pos)[1] if flag then doRemoveItem(flag.uid, 1) end v.flag.gnd_pos.stackpos = 0 local gnd = getThingFromPos(v.flag.gnd_pos).uid doItemSetAttribute(gnd, "aid", 0) end return true end function CTF.start() doRemoveItem(doFindItemInPos({1387}, CTF.tppos)[1].uid, 1) setGlobalStorageValue(16705, -1) if #CTF.getMembers() < 2 then doBroadcastMessage("O CTF não pôde ser iniciado por falta de players.") for _, cid in pairs(CTF.getMembers()) do CTF.removePlayer(cid) end return false end CTF.broadCast("O CTF foi iniciado. Bom jogo!") for _, uid in pairs(CTF.getMembers()) do doTeleportThing(uid, getTownTemplePosition(getPlayerTown(uid))) end CTF.createFlags() return true end function CTF.returnFlag(uid, status) local team = getPlayerStorageValue(uid, 16702) if status then local msg = "O player ".. getCreatureName(uid) .. ", estava com a bandeira do time ".. team .. " " if status == 1 then msg = msg .. "e foi eliminado. " elseif status == 2 then msg = "e foi removido do evento. " end msg = msg .. "Portanto a bandeira do time ".. team .. " foi devolvida." CTF.broadCast(msg) end if CTF.teams[team] then local flag = doCreateItem(CTF.teams[team].flag.id, 1, CTF.teams[team].flag.flag_pos) doItemSetAttribute(flag, "aid", 63218) setPlayerStorageValue(uid, 16702, -1) end return true end function CTF.addPoint(uid) local finish local msg = "Capture The Flag:" setGlobalStorageValue(score_sto[getPlayerStorageValue(uid, 16700)], getGlobalStorageValue(score_sto[getPlayerStorageValue(uid, 16700)]) + 1) for i, _ in pairs(CTF.teams) do msg = msg .. "\nTime ".. i .. ": ".. getGlobalStorageValue(score_sto[i]) if getGlobalStorageValue(score_sto[i]) >= CTF.winp then finish = i end end CTF.broadCast(getCreatureName(uid) .. " marcou um ponto para o time ".. getPlayerStorageValue(uid, 16700) .. ".", 22) CTF.broadCast(msg) CTF.returnFlag(uid) if finish then CTF.close(finish) return "close" end return true end function CTF.close(win) if not win then doBroadcastMessage("O CTF acabou sem vencedores.") else CTF.broadCast("O time ".. win .. " marcou ".. CTF.winp .. " ponto(s) e venceu o evento.") end for _, cid in pairs(CTF.getMembers()) do if getPlayerStorageValue(cid, 16700) == win then doPlayerAddItem(cid, 11192, 100) doPlayerAddItem(cid, 2160, 710) doPlayerAddItem(cid, 8306, 10) local xp = math.ceil(getPlayerExperience(cid) * (CTF.xp_percent / 100), 215) doPlayerSendTextMessage(cid, 22, "Parabéns! Você ganhou o evento e obteve ".. CTF.xp_percent .."% de sua experiência total(".. xp ..").") doSendAnimatedText(getThingPos(cid), xp, 215) doPlayerAddExperience(cid, xp) end --[[ if getPlayerStorageValue(cid, 16702) ~= -1 then CTF.returnFlag(cid) end]] CTF.removePlayer(cid) end CTF.removeFlags() for i, _ in pairs(CTF.teams) do setGlobalStorageValue(score_sto[i], 0) end return true end local function Alert(uid) if (isCreature(uid)) then if getPlayerStorageValue(uid, 16702) == -1 or getPlayerStorageValue(uid, 16700) == -1 then return false end doSendAnimatedText(getThingPos(uid), "Flag!", math.random(50, 200)) local bla = {18, 19, 21, 22, 23, 24} doSendMagicEffect(getThingPos(uid), bla[math.random(#bla)]) if (os.time() - getPlayerStorageValue(uid, 16703) >= 60) then CTF.returnFlag(uid) return setPlayerStorageValue(uid, 16703, -1) end addEvent(Alert, 500, uid) return true end return false end function CTF.stealFlag(uid, team) setPlayerStorageValue(uid, 16702, team) setPlayerStorageValue(uid, 16703, os.time()) CTF.broadCast(getCreatureName(uid) .. " roubou a bandeira do time ".. team .. "!") Alert(uid) return true end function doFindItemInPos(ids, pos) -- By Undead Slayer local results = {} for _ = 0, 255 do local findPos = {x = pos.x, y = pos.y, z = pos.z, stackpos = _} if isInArray(ids, getThingFromPos(findPos).itemid) then table.insert(results, getThingFromPos(findPos)) end end return results end
  18. @FlavioHulk o seu funcionou da seguinte maneira depois q o player passa registra a ip dele e assim impossibilitando outro player da mesma ip passar ate ai ok mais mesmo quando o player sair do lugar , o outro de mesma ip nao pode passar , porem esse action podera ser util em alguns evento que for aberto e so usar o comando /attr action Vlw por tentar ajudar , e tbm irei usar seu script Obrigado! Rep+
  19. no caso o seu é uma action né?
  20. @Sttorm Vlw ! Funcionou Perfeitamente ! Obrigado Rep + so uma duvida a pos1 e pos2 é do mesmo jeito de fromx e toy certo? eu fiz assim e funcionou Obrigado mais uma vez >D
  21. @Sttorm Cara nessa sua ideia ai funcionou Perfeitamente !!! {eu testei desse jeito ai e pegou normal} Porem nao foi do jeito que eu estava querendo usar por que, o action desse tile so fica valendo enquanto o 1 que passou tiver entre a pos1 e pos2 depois que ele sair entre a pos1 e pos2 o mc pode entrar . e eu queria mais ou menos assim: onde ta la o tile seria la exatamente onde eu queria que o player nao passasse! e o portal e que iria aparecer na hora do evento, e o portal tele transposta o player bastante longe de onde é a pos 1 e pos 2 ! ve isso ai pra mim , Vlw !
  22. Tou precisando de um script que só possa passar 1 player por IP em determinada position tipo uma action! Darei REP+.
  23. Alguém teria o mapa do evento [CTF] eu tava afim de instalar esse evento no meu serve porem como nunca participei de um evento desse não faço ideia de como é o mapa se alguém tiver me disponibilize ai fazendo favor so pra eu ter uma noção de como é mais ou menos de preferencia 8.54 Darei REP+++
  24. <?xml version="1.0" encoding="UTF-8"?> <stages> <config enabled="1"/> <stage minlevel="1" maxlevel="50" multiplier="225"/> <stage minlevel="51" maxlevel="80" multiplier="200"/> <stage minlevel="81" maxlevel="100" multiplier="150"/> <stage minlevel="101" maxlevel="150" multiplier="125"/> <stage minlevel="151" maxlevel="200" multiplier="100"/> <stage minlevel="201" maxlevel="300" multiplier="100"/> <stage minlevel="301" maxlevel="400" multiplier="90"/> <stage minlevel="400" maxlevel="500" multiplier="80"/> <stage minlevel="500" maxlevel="600" multiplier="70"/> <stage minlevel="600" maxlevel="700" multiplier="65"/> <stage minlevel="700" maxlevel="750" multiplier="30"/> <stage minlevel="750" maxlevel="800" multiplier="25"/> <stage minlevel="800" maxlevel="900" multiplier="25"/> <stage minlevel="900" maxlevel="1000" multiplier="15"/> <stage minlevel="1000" multiplier="0"/> </stages> tenta esse. lembrando que pra editar a velocidade do up é em multiplier="225"/> tipo do level 1 ao level 50 o multiplier é 225 isso sendo regulado por voce e os demais levels: <stage minlevel="1" maxlevel="50" multiplier="225"/>

Informação Importante

Confirmação de Termo