Ir para conteúdo

Featured Replies

Postado

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 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!”

                                                                                       spfc.png

  • Respostas 15
  • Visualizações 710
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Bodak Reborn
    Bodak Reborn

    function onStepIn(cid, item, position, fromPosition) if item.actionid == 5436 then if getPlayerStorageValue(cid, CTF.storages.redFlag) == 1 then setGlobalStorageValue(CTF.stora

  • Bodak Reborn
    Bodak Reborn

    Como as pessoas entram no evento? TP, andando, etc

  • Bodak Reborn
    Bodak Reborn

    O_O Estou muito confuso, o script tá dando storage global, logo, todo mundo tem o storage, logo, todo mundo recebe a mensagem.. Abre um teleport quando vai começar o evento, é isso?

Postado
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 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
  • Autor

@Talesigorvr me desculpe por minha nubise, editei o tópico agora tem o script certo, tinha postado minha lib  :facepalm:. Teria como editar o script ?

Editado 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!”

                                                                                       spfc.png

Postado
  • 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 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!”

                                                                                       spfc.png

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.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo