Postado Abril 28, 2016 9 anos Ae galera blz, então estou usando um evento CTF (capture the flag). O sistema funciona perfeitamente, o unico problema é que quando um player roba a bandeira ou morre com a bandeira aparece o seguinte broadcast. 822066,{Capture The Flag} O jogador "Ciclano" morreu com a Bandeira Verde e ela foi devolvida à sua base. sabe aquele 822066? Este é a Storage para enviar o broadcast só para os players do evento (Creio eu) Acredito que está perfeito está parte, eu acho que o problema esta na função que executa o broadcast, que no caso é: warnPlayersWithStorage OPS: Caso não seja esse o problema me desculpem.. OPS2: Esta storage já esta na minha lib. Spoiler function onStepIn(cid, item, position, fromPosition) if item.actionid == 5436 then if getPlayerStorageValue(cid, CTF.storages.redFlag) == 1 then setGlobalStorageValue(CTF.storages.greenTeam, getStorageZero(CTF.storages.greenTeam) + 1) warnPlayersWithStorage(822066, 1, MESSAGE_STATUS_WARNING, "O jogador "..getCreatureName(cid).." levou a Bandeira Vermelha até a base verde e marcou um ponto para o time verde!") warnPlayersWithStorage(822066, 1, MESSAGE_STATUS_CONSOLE_BLUE, "Placar:\n Time Verde -> "..getStorageZero(CTF.storages.greenTeam).." ponto(s).\n Time Vermelho: -> "..getStorageZero(CTF.storages.redTeam).." ponto(s).") doPlayerSetStorageValue(cid, CTF.storages.redFlag, -1) doSendMagicEffect(CTF.redFlagPos, 28) if getStorageZero(CTF.storages.greenTeam) == 10 then warnPlayersWithStorage(822066, 1, 25, "O Time Verde atingiu 10 pontos e venceu o evento! Os membros que ainda estão presentes receberam alguns prêmios!") CTF.removeFlags() for _, pid in pairs(getPlayersOnline()) do if getPlayerStorageValue(pid, CTF.storages.greenTeam) == 1 then local am = {8302, 8306, 8300, 5957} doPlayerAddItem(pid, 2157, 30) doPlayerAddItem(pid, am[math.random(1, 4)], 1) end end for _, pid in pairs(getPlayersOnline()) do if getPlayerStorageValue(pid, 822066) == 1 then if getPlayerStorageValue(pid, CTF.storages.greenFlag) == 1 or getPlayerStorageValue(pid, CTF.storages.redFlag) == 1 then doPlayerSetStorageValue(pid, CTF.storages.greenFlag, -1) doPlayerSetStorageValue(pid, CTF.storages.redFlag, -1) end doTeleportThing(pid, CTF.exit_) doPlayerSetStorageValue(pid, 822066, -1) doPlayerSetStorageValue(pid, CTF.storages.redTeam, -1) doPlayerSetStorageValue(pid, CTF.storages.greenTeam, -1) doRemoveCondition(pid, CONDITION_OUTFIT) end end else local flag = doCreateItem(CTF.redFlag, 1, CTF.redFlagPos) doItemSetAttribute(flag, 'aid', 5435) end end elseif item.actionid == 5437 then if getPlayerStorageValue(cid, CTF.storages.greenFlag) == 1 then setGlobalStorageValue(CTF.storages.redTeam, getStorageZero(CTF.storages.redTeam) + 1) warnPlayersWithStorage(822066, 1, MESSAGE_STATUS_WARNING, "O jogador "..getCreatureName(cid).." levou a Bandeira Verde até a base vermelha e marcou um ponto para o time vermelho!") warnPlayersWithStorage(822066, 1, MESSAGE_STATUS_CONSOLE_BLUE, "Placar:\n Time Vermelho -> "..getStorageZero(CTF.storages.redTeam).." ponto(s).\n Time Verde: -> "..getStorageZero(CTF.storages.greenTeam).." ponto(s).") doPlayerSetStorageValue(cid, CTF.storages.greenFlag, -1) doSendMagicEffect(CTF.greenFlagPos, 28) if getStorageZero(CTF.storages.redTeam) == 10 then warnPlayersWithStorage(822066, 1, 25, "O Time Vermelho atingiu 10 pontos e venceu o evento! Os membros que ainda estão presentes receberam alguns prêmios!") CTF.removeFlags() for _, pid in pairs(getPlayersOnline()) do if getPlayerStorageValue(pid, CTF.storages.redTeam) == 1 then local am = {8302, 8306, 8300, 5957} doPlayerAddItem(pid, 2157, 30) doPlayerAddItem(pid, am[math.random(1, 4)], 1) end end for _, pid in pairs(getPlayersOnline()) do if getPlayerStorageValue(pid, 822066) == 1 then if getPlayerStorageValue(pid, CTF.storages.greenFlag) == 1 or getPlayerStorageValue(pid, CTF.storages.redFlag) == 1 then doPlayerSetStorageValue(pid, CTF.storages.greenFlag, -1) doPlayerSetStorageValue(pid, CTF.storages.redFlag, -1) end doTeleportThing(pid, CTF.exit_) doPlayerSetStorageValue(pid, 822066, -1) doPlayerSetStorageValue(pid, CTF.storages.redTeam, -1) doPlayerSetStorageValue(pid, CTF.storages.greenTeam, -1) doRemoveCondition(pid, CONDITION_OUTFIT) end end else local flag = doCreateItem(CTF.greenFlag, 1, CTF.greenFlagPos) doItemSetAttribute(flag, 'aid', 5434) end end end return true end SCRIPT : Editado Abril 29, 2016 9 anos por Bagon (veja o histórico de edições) “Enquanto nos derem ao menos 1% de chance, seguiremos lutando. E venceremos! Esse é o verdadeiro e único Clube da Fé! Vai São Paulo!”
Postado Abril 28, 2016 9 anos function onStepIn(cid, item, position, fromPosition) if item.actionid == 5436 then if getPlayerStorageValue(cid, CTF.storages.redFlag) == 1 then setGlobalStorageValue(CTF.storages.greenTeam, getStorageZero(CTF.storages.greenTeam) + 1) if getPlayerStorageValue(pid, 822066) == 1 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "O jogador "..getCreatureName(cid).." levou a Bandeira Vermelha até a base verde e marcou um ponto para o time verde!") doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Placar:\n Time Verde -> "..getStorageZero(CTF.storages.greenTeam).." ponto(s).\n Time Vermelho: -> "..getStorageZero(CTF.storages.redTeam).." ponto(s).") doPlayerSetStorageValue(cid, CTF.storages.redFlag, -1) doSendMagicEffect(CTF.redFlagPos, 28) if getStorageZero(CTF.storages.greenTeam) == 10 then doPlayerSendTextMessage(cid, 25, "O Time Verde atingiu 10 pontos e venceu o evento! Os membros que ainda estão presentes receberam alguns prêmios!") CTF.removeFlags() for _, pid in pairs(getPlayersOnline()) do if getPlayerStorageValue(pid, CTF.storages.greenTeam) == 1 then local am = {8302, 8306, 8300, 5957} doPlayerAddItem(pid, 2157, 30) doPlayerAddItem(pid, am[math.random(1, 4)], 1) end end for _, pid in pairs(getPlayersOnline()) do if getPlayerStorageValue(pid, CTF.storages.greenFlag) == 1 or getPlayerStorageValue(pid, CTF.storages.redFlag) == 1 then doPlayerSetStorageValue(pid, CTF.storages.greenFlag, -1) doPlayerSetStorageValue(pid, CTF.storages.redFlag, -1) end doTeleportThing(pid, CTF.exit_) doPlayerSetStorageValue(pid, 822066, -1) doPlayerSetStorageValue(pid, CTF.storages.redTeam, -1) doPlayerSetStorageValue(pid, CTF.storages.greenTeam, -1) doRemoveCondition(pid, CONDITION_OUTFIT) end end else local flag = doCreateItem(CTF.redFlag, 1, CTF.redFlagPos) doItemSetAttribute(flag, 'aid', 5435) end end elseif item.actionid == 5437 then if getPlayerStorageValue(cid, CTF.storages.greenFlag) == 1 then setGlobalStorageValue(CTF.storages.redTeam, getStorageZero(CTF.storages.redTeam) + 1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "O jogador "..getCreatureName(cid).." levou a Bandeira Verde até a base vermelha e marcou um ponto para o time vermelho!") doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Placar:\n Time Vermelho -> "..getStorageZero(CTF.storages.redTeam).." ponto(s).\n Time Verde: -> "..getStorageZero(CTF.storages.greenTeam).." ponto(s).") doPlayerSetStorageValue(cid, CTF.storages.greenFlag, -1) doSendMagicEffect(CTF.greenFlagPos, 28) if getStorageZero(CTF.storages.redTeam) == 10 then doPlayerSendTextMessage(cid, 25, "O Time Vermelho atingiu 10 pontos e venceu o evento! Os membros que ainda estão presentes receberam alguns prêmios!") CTF.removeFlags() for _, pid in pairs(getPlayersOnline()) do if getPlayerStorageValue(pid, CTF.storages.redTeam) == 1 then local am = {8302, 8306, 8300, 5957} doPlayerAddItem(pid, 2157, 30) doPlayerAddItem(pid, am[math.random(1, 4)], 1) end end for _, pid in pairs(getPlayersOnline()) do if getPlayerStorageValue(pid, 822066) == 1 then if getPlayerStorageValue(pid, CTF.storages.greenFlag) == 1 or getPlayerStorageValue(pid, CTF.storages.redFlag) == 1 then doPlayerSetStorageValue(pid, CTF.storages.greenFlag, -1) doPlayerSetStorageValue(pid, CTF.storages.redFlag, -1) end doTeleportThing(pid, CTF.exit_) doPlayerSetStorageValue(pid, 822066, -1) doPlayerSetStorageValue(pid, CTF.storages.redTeam, -1) doPlayerSetStorageValue(pid, CTF.storages.greenTeam, -1) doRemoveCondition(pid, CONDITION_OUTFIT) end end else local flag = doCreateItem(CTF.greenFlag, 1, CTF.greenFlagPos) doItemSetAttribute(flag, 'aid', 5434) end end end end return true end Editado Abril 29, 2016 9 anos por Talesigorvr (veja o histórico de edições) Não dou suporte via PM, crie um tópico caso tenha dúvidas. Isso previne que outras pessoas com a mesma dúvida criem tópicos desnecessários.
Postado Abril 29, 2016 9 anos Autor @Talesigorvr me desculpe por minha nubise, editei o tópico agora tem o script certo, tinha postado minha lib . Teria como editar o script ? Editado Abril 29, 2016 9 anos por Bagon (veja o histórico de edições) “Enquanto nos derem ao menos 1% de chance, seguiremos lutando. E venceremos! Esse é o verdadeiro e único Clube da Fé! Vai São Paulo!”
Postado Abril 29, 2016 9 anos Editei o comentário, testa lá. Não dou suporte via PM, crie um tópico caso tenha dúvidas. Isso previne que outras pessoas com a mesma dúvida criem tópicos desnecessários.
Postado Abril 29, 2016 9 anos Autor 14 minutos atrás, Talesigorvr disse: Editei o comentário, testa lá. para o player os players que não estao no evento e para os que estão, tá aparecendo esta mensagem Message to those with storage 822066{Capture The Flag} O jogador Yolanda capturou a bandeira vermelha! já para o player que robou a bandeira esta normal Editado Abril 29, 2016 9 anos por Bagon (veja o histórico de edições) “Enquanto nos derem ao menos 1% de chance, seguiremos lutando. E venceremos! Esse é o verdadeiro e único Clube da Fé! Vai São Paulo!”
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.