Ir para conteúdo

zipter98

Herói
  • Total de itens

    2553
  • Registro em

  • Última visita

  • Dias Ganhos

    73

Tudo que zipter98 postou

  1. zipter98

    Comando pvp on

    A única coisa que não citei foi a tag da talkaction, que achei desnecessário criar, pois pensei que o autor seria capaz de criá-la. E há 3 funções main juntas num mesmo código (eu optei por fazer assim para não precisar criar 3 arquivos, ao invés de apenas um). Portanto, são 3 tags. Como você pôde ver, eu informei as 3 no início do código. E, também, como você não entendeu? Ué, cria um arquivo na pasta citada com extensão .lua, e então coloque o código lá. As tags, no arquivo .xml da respectiva pasta (talkactions - talkactions.xml/creaturescripts - creaturescripts.xml).
  2. Todo código vindo de você é bem vindo, muito obrigado! Uma coisa que observei: no creaturescript, o doPlayerSendTextMessage não ocasionará erro de jogador não encontrado? #EDIT: Ah, antes estava sem o "tipo" de mensagem (no caso do atual código, MESSAGE_INFO_DESCR). O código; belo. A ideia; divertida. O NPC; útil. Não esperava menos do grande Garou/Oneshot.
  3. zipter98

    Comando pvp on

    data/talkactions/scripts local msg = "Agora seu sistema PvP está %s." function onSay(cid, words, param) local _table = { ["on"] = {"ativado", 1}, ["off"] = {"desativado", 0}, } if _table[param:lower()] then local mode = _table[param:lower()] setPlayerStorageValue(cid, 91821, mode[2]) doPlayerSendTextMessage(cid, 27, msg:format(mode[1])) end return true end data/creaturescripts/scripts --[[ Tags: <event type="statschange" name="PvPStats" event="script" value="nome do arquivo.lua"/> <event type="target" name="PvPTarget" event="script" value="nome do arquivo.lua"/> <event type="login" name="PvPLogin" event="script" value="nome do arquivo.lua"/> ]]-- function onTarget(cid, target) if isPlayer(target) and isPlayer(cid) then if getPlayerStorageValue(cid, 91821) < 1 then doPlayerSendCancel(cid, "Você está com o modo PvP desligado. Se quiser atacar outros jogadores, ative-o.") return false end end return true end function onStatsChange(cid, attacker, type, combat, value) if isPlayer(cid) and isPlayer(attacker) and type == STATSCHANGE_HEALTHLOSS then if getPlayerStorageValue(attacker, 91821) < 1 then doPlayerSendCancel(attacker, "Você está com o modo PvP desligado. Se quiser atacar outros jogadores, ative-o.") return false end end return true end function onLogin(cid) registerCreatureEvent(cid, "PvPTarget") registerCreatureEvent(cid, "PvPStats") return true end
  4. zipter98

    Item aleatorio

    Como você não especificou a quantidade dos items aleatórios, coloquei 1 mesmo. Bem, suponho que você saiba fazer o XML. Qualquer erro, só avisar. local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} 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 creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid local trophy = { ["golden"] = {3, 7369}, --{Quantidade de items aleatórios, ID do troféu}, ["silver"] = {2, 7370}, ["bronze"] = {1, 7371}, } local items = {2158, 2156, 2154} if msgcontains(msg, "trophy") or msgcontains(msg, "trofeu") then selfSay("Oh, vejo que você quer trocar algum troféu por recompensas. Qual troféu seria este: {golden}, {silver} ou {bronze}?", cid) talkState[talkUser] = 1 return true elseif talkState[talkUser] == 1 then if trophy[msg:lower()] then local trofeu = trophy[msg:lower()] local id = trofeu[2] if getPlayerItemCount(cid, id) > 0 then for i = 1, trofeu[1] do doPlayerAddItem(cid, items[math.random(#items)], 1) end doPlayerRemoveItem(cid, id, 1) selfSay("Obrigado, aqui estão seus items!", cid) talkState[talkUser] = 0 return true else selfSay("Desculpe, mas você não tem este troféu.", cid) talkState[talkUser] = 0 return true end else selfSay("Desculpe, este troféu não existe.", cid) talkState[talkUser] = 0 return true end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
  5. zipter98

    Yalahar Quest

    Tópico movido para a seção de dúvidas e pedidos resolvidos.
  6. Tópico movido para a seção de dúvidas e pedidos resolvidos.
  7. Tópico movido para a seção de dúvidas e pedidos resolvidos.
  8. Tópico movido para a seção de dúvidas e pedidos resolvidos.
  9. @mateus900 Por favor, evite comentários como "vou testar e já volto", por exemplo. Opte por só responder após já ter testado o(s) código(s), para então relatar se está ou não funcionando.
  10. Tópico movido para a seção de dúvidas e pedidos resolvidos.
  11. Tópico movido para a seção de dúvidas e pedidos resolvidos.
  12. Reputei o Garou (ainda prefiro Oneshot ) por você. Sanado, movido.
  13. Área incorreta, tópico movido. Mais cuidado da próxima vez. PS: Para não cometer mais erros assim, recomendo ler esse manual do fórum.
  14. Área incorreta, tópico movido. Mais cuidado da próxima vez, por favor.
  15. Não entendi: você está divulgando seu servidor ou montando uma equipe? Bem, vou mover para a área respectiva à primeira opção. Se na verdade for a segunda, envie-me uma mensagem privada.
  16. Área incorreta, tópico movido. Mais cuidado da próxima vez. PS: Projeto bem interessante, boa sorte. Pergunta: apenas monsters cards foram feitos?
  17. Área incorreta, tópico movido. Preste mais atenção da próxima vez (além de errar a área, cometeu double topic).
  18. Tópico movido para a seção de dúvidas e pedidos resolvidos.
  19. zipter98

    Gênesis

    O escritor de vocês tem talento, hein.
  20. zipter98

    Evento Zombie

    Tópico movido para a seção de dúvidas e pedidos resolvidos.
  21. zipter98

    Boost pda

    @MaxxSilva Na verdade, o correto é dark mesmo. Como você pode ver, o servidor utilizado pelo autor é PDA. Ou seja, em configuration.lua há essa variável global (a não ser que ele tenha retirado, é claro rs): dark = 11450 11450 é o ID da Darkness stone.
  22. Tópico movido para a seção de dúvidas e pedidos resolvidos.
  23. zipter98

    Evento Zombie

    local config = { playerCount = 2001, -- Global storage for counting the players in the event maxPlayers = 3, -- Max players who can participate } function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor) if getGlobalStorageValue(config.playerCount) < config.maxPlayers then setGlobalStorageValue(config.playerCount, getGlobalStorageValue(config.playerCount)+1) if getGlobalStorageValue(config.playerCount) == config.maxPlayers then doBroadcastMessage("O evento 'Zumbi' foi lotado! E começerá em alguns instantes.", MESSAGE_STATUS_CONSOLE_BLUE) else doBroadcastMessage("O jogador (" .. getPlayerName(cid) .. ") entrou no evento 'Zumbi'! Atualmente " .. getGlobalStorageValue(config.playerCount) .. " jogadores entraram!", MESSAGE_STATUS_CONSOLE_BLUE) doBroadcastMessage("Jogadores restantes para o evento começar: "..config.maxPlayers - getGlobalStorageValue(config.playerCount)..".", MESSAGE_STATUS_CONSOLE_BLUE) end else addEvent(tpBack, 1000, cid, fromPosition) doPlayerSendCancel(cid, "") doBroadcastMessage("[EVENTO ZUMBI MENSAGEM] está cheio. Já existe " .. config.maxPlayers .. " jogadores participando.", MESSAGE_STATUS_CONSOLE_ORANGE) return false end print(getStorage(config.playerCount) .. " Players in the zombie event.") return true end function tpBack(cid, fromPosition) doTeleportThing(cid, fromPosition, true) doSendMagicEffect(getPlayerPosition(cid), CONST_ME_TELEPORT) end
  24. Tenta:
  25. Duel System.lua, por favor. PS: Se não sabe onde é, data/lib.
  • Quem Está Navegando   0 membros estão online

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