Você não é registrado, por favor registre-se para ter acesso ao conteúdo completo.
Caso seja registrado, efetue login.
Esqueceu sua senha? Clique aqui
Recomendamos o uso do Mozilla Firefox para uma melhor visualização.    


Início Postados Hoje Marcar Fóruns Como Lidos Álbums Banidos SE Team Medalhas
Voltar   Secret Experience > Área L2J > [L2J] Downloads > [Lineage] Java Mods
Registrar Loteria VIPStaff SERegras do fórum Comunidade Arcade Postados Hoje Pesquisar Experience
   

Secret Experience.NET   Secret Experience Corporation - Welcome To The Real World
     Anúncios SE

Resposta
 
Ferramentas do Tópico Modos de Exibição
Antigo 02-07-2009, 10:10 PM   #1
KaL
Amigo SE
 
Avatar de KaL
 
Registrado em: Dec 2008
Localização: São Paulo
Posts: 1,188
Agradeceu: 162
Agradecido 1,768 Vezes em 486 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
Meu Estado:
Pontos: 9,136, Nível: 64
Pontos: 9,136, Nível: 64 Pontos: 9,136, Nível: 64 Pontos: 9,136, Nível: 64
Atividade: 16%
Atividade: 16% Atividade: 16% Atividade: 16%

Nome Real: Victor

Inventório de KaL

Padrão Vote para o próximo Auto Event

Este Mod habilita a votação dos players para qual será o próximo Auto Event ( TvT ou CTF ). Não há necessidade de alteração no mesmo.

Vá na pasta src/main/java/com/l2jfree/gameserver/model/entity/events e crie o arquivo EventVoteVariable.java
Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
/*
 * This program is free software: you can redistribute it and/or modify it under
 * the terms of the GNU General Public License as published by the Free Software
 * Foundation, either version 3 of the License, or (at your option) any later
 * version.
 * 
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
 * details.
 * 
 * You should have received a copy of the GNU General Public License along with
 * this program. If not, see <http://www.gnu.org/licenses/>.
 */
package com.l2jfree.gameserver.model.entity.events;


/**
 * 
 * @author Rizel
 * 
 */

public class EventVoteVariable
{
	public int								_voteCountCTF = 0;
	public int								_voteCountTvT = 0;
	private int								_voteCount = 0;
	
	public int getVoteCount(String name)
	{
		
		if (name == "tvt")
		{
			_voteCount = _voteCountTvT;
		}
		
		if (name == "ctf")
		{
			_voteCount = _voteCountCTF;
		}
		
		return  _voteCount;
	}
	
	public void increaseVoteCount(String name)
	{
		if (name == "tvt")
		{
			_voteCountTvT = _voteCountTvT+1;
		}
		
		if (name == "ctf")
		{
			_voteCountCTF = _voteCountCTF+1;
		}
	}
}
Ainda nesta pasta, crie o arquivo StartEvent.java
Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
/*
 * This program is free software: you can redistribute it and/or modify it under
 * the terms of the GNU General Public License as published by the Free Software
 * Foundation, either version 3 of the License, or (at your option) any later
 * version.
 * 
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
 * details.
 * 
 * You should have received a copy of the GNU General Public License along with
 * this program. If not, see <http://www.gnu.org/licenses/>.
 */
package com.l2jfree.gameserver.model.entity.events;


import com.l2jfree.tools.random.Rnd;
import com.l2jfree.gameserver.model.entity.events.TvT;
import com.l2jfree.gameserver.model.entity.events.CTF;
import com.l2jfree.gameserver.model.entity.events.EventVoteVariable;
/**
 * 
 * @author Rizel
 * 
 */

public class StartEvent
{
	
	public static void startEvent()
	{
		EventVoteVariable e = new EventVoteVariable();
		
		
		if (e.getVoteCount("tvt") > e.getVoteCount("ctf"))
		{
		TvT.loadData();
		TvT.autoEvent();
		}

		if (e.getVoteCount("ctf") > e.getVoteCount("tvt"))
		{
		CTF.loadData();
		CTF.autoEvent();
		}

		if (e.getVoteCount("tvt") == e.getVoteCount("ctf"))
		{
			if (Rnd.get(1) == 1)
				{
				TvT.loadData();
				TvT.autoEvent();
				}
			else
				{
				CTF.loadData();
				CTF.autoEvent();
				}
	}
	}
}
Vá na pasta src/main/java/com/l2jfree/gameserver/handler/voicedcommandhandler e crie o arquivo EventVote.java

Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
/*
 * This program is free software: you can redistribute it and/or modify it under
 * the terms of the GNU General Public License as published by the Free Software
 * Foundation, either version 3 of the License, or (at your option) any later
 * version.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
 * details.
 *
 * You should have received a copy of the GNU General Public License along with
 * this program. If not, see <http://www.gnu.org/licenses/>.
 */
package com.l2jfree.gameserver.handler.voicedcommandhandlers;


import com.l2jfree.Config;
import com.l2jfree.gameserver.handler.IVoicedCommandHandler;
import com.l2jfree.gameserver.model.actor.instance.L2PcInstance;
import com.l2jfree.gameserver.model.entity.events.EventVoteVariable;
import java.util.StringTokenizer;
/**
 *
 * @author Rizel
 */
public class EventVote implements IVoicedCommandHandler
{
	private static final String[] VOICED_COMMANDS = {"vote_tvt", "vote_ctf"};
	
	/**
	 * 
	 * @see net.sf.l2j.gameserver.handler.IVoicedCommandHandler#useVoicedCommand(java.lang.String, net.sf.l2j.gameserver.model.actor.instance.L2PcInstance, java.lang.String)
	 */
	public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target)
	{
		EventVoteVariable e = new EventVoteVariable();
		if(command.startsWith("vote_tvt"))
	    {
				
				if (activeChar._voteEvent == false)
				{
					e.increaseVoteCount("tvt");
					activeChar._voteEvent = true;
					activeChar.sendMessage("You succesfully voted for the TvT event. TvT: " + e.getVoteCount("tvt") + " CTF: " + e.getVoteCount("ctf") + ".");
				}
				else
				{
					activeChar.sendMessage("You have already voted for an event.");	
				}
				return true;
				
	    }
		
		
		if(command.startsWith("vote_ctf"))
	    {
				if (activeChar._voteEvent == false)
				{
					e.increaseVoteCount("ctf");
					activeChar._voteEvent = true;
					activeChar.sendMessage("You succesfully voted for the CTF event. TvT: " + e.getVoteCount("tvt") + " CTF: " + e.getVoteCount("ctf") + ".");
				}
				
				else
				{
					activeChar.sendMessage("You have already voted for an event.");	
				}
				return true;
	    }
				
				

		return false;
		}
		
		
	
	
	/**
	 * 
	 * @see net.sf.l2j.gameserver.handler.IVoicedCommandHandler#getVoicedCommandList()
	 */
	public String[] getVoicedCommandList()
	{
		return VOICED_COMMANDS;
	}
}
Vá na pasta src/main/java/com/l2jfree/gameserver/handler e abra o arquivo VoicedCommandHandler.java e adicione esta linha :

Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
_datatable = new FastMap<String, IVoicedCommandHandler>();
		registerVoicedCommandHandler(new CastleDoors());
		registerVoicedCommandHandler(new Hellbound());
		registerVoicedCommandHandler(new Banking());
+		registerVoicedCommandHandler(new EventVote());
Vá na pasta src/main/java/com/l2jfree/gameserver/model/entity/events/TvT.java e adicione esta linha :

Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
public static void cleanTvT()
	{
		_log.info("TvT : Cleaning players.");
		for (L2PcInstance player : _players)
		{
			if (player != null)
			{
				removePlayer(player);
				if (_savePlayers.contains(player.getName()))
					_savePlayers.remove(player.getName());
				player._inEventTvT = false;
+				player._voteEvent = false;
			}
		}
Vá na pasta src/main/java/com/l2jfree/gameserver/model/entity/CTF.java e adicione esta linha :

Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
public static void cleanCTF()
	{
		_log.info("CTF : Cleaning players.");
		for (L2PcInstance player : _players)
		{
			if (player != null)
			{
				if (player._haveFlagCTF)
					removeFlagFromPlayer(player);
				else
					player.getInventory().destroyItemByItemId("", CTF._FLAG_IN_HAND_ITEM_ID, 1, player, null);
				player._haveFlagCTF = false;
				removePlayer(player);
				if (_savePlayers.contains(player.getName()))
					_savePlayers.remove(player.getName());
				player._inEventCTF = false;
+				player._voteEvent = false;
			}
		}
Vá na pasta src/main/java/com/l2jfree/gameserver/model/actor/instance/L2PcInstance.java e adicione esta linha :

Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
	/** TvT Engine parameters */
	public String							_teamNameTvT, _originalTitleTvT;
	public int								_originalNameColorTvT, _countTvTkills, _countTvTdies, _originalKarmaTvT;
	public boolean							_inEventTvT				= false;
+	public boolean							_voteEvent				= false;
Datapack :
Vá na pasta gameserver/data/cron e crie o arquivo nextevent.py
Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
import sys
from com.l2jfree.gameserver.model.entity.events import StartEvent
StartEvent.startEvent()
Agora abra o database, vá na tabela globaltasks e crie esta nova linha :
Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
4	jython	TYPE_FIXED_SHEDULED	   0	300000	3600000	nextevent.py
Obs.: Onde está azul, é o tempo de duração da votação.
Onde está verde, é o intervalo entre uma votação e outra.
Ambos setados em Milisegundos.

Como funciona o Mod :

InGame, o player digita .vote_tvt para votar no TvT, ou .vote_ctf para votar no CTF.
Após o tempo de votação ( azul ), será feita a contagem dos votos, e o evento vencedor será iniciado.
Em caso de empate, o evento é sorteado.

Creditos : Rizel

__________________
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]

[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
KaL está offline  
Os Seguintes 4 Usuários disseram Obrigado(a) para KaL por gostarem deste post :
Drako (03-03-2010), l2blackice (30-11-2009), lSantana (06-08-2009), mend3 (04-12-2010)
Links Patrocinados
Antigo 29-11-2009, 12:40 AM   #2
Aquilis
Membro - Aspirante
 
Avatar de Aquilis
 
Registrado em: Aug 2009
Localização: Curitiba
Posts: 73
Agradeceu: 47
Agradecido 15 Vezes em 14 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
Nome Real: Felipe

Inventório de Aquilis

Padrão

Funciona msm?

Aquilis está offline   Responder com Citação
Antigo 30-11-2009, 02:37 PM   #3
l2blackice
Membro - Major
 
Avatar de l2blackice
 
Registrado em: Aug 2009
Localização: Brasilia
Posts: 134
Agradeceu: 381
Agradecido 10 Vezes em 8 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
Meu Estado:
Nome Real: Wanderson dos Santos

Inventório de l2blackice

Padrão

sera que vc nao tem para l2jarchid

l2blackice está offline   Responder com Citação
Antigo 29-01-2010, 10:27 AM   #4
Amigo SE
 
Avatar de vicfelipe
 
Registrado em: Nov 2008
Localização: Fim de Mundo chamado: Hortolândia
Posts: 778
Agradeceu: 434
Agradecido 2,796 Vezes em 416 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
Meu Estado:
Enviar mensagem via Windows Live Messenger para vicfelipe Enviar mensagem via Skype para vicfelipe
Nome Real: Victor Felipe Alencastro

Inventório de vicfelipe

Padrão

Já utilizei em packs apartir do emu e funciona, creio que funcione também no archid.

__________________
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
vicfelipe está offline   Responder com Citação
Resposta


Regras para Posts
Você não pode postar novos tópicos
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar seus posts

Código [IMG] Sim
Código HTML Não

Ir para...


Horários baseados na GMT -3. Agora são 12:54 AM.