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 03-04-2011, 11:22 PM   #1
allanalcantara
Banido
 
Avatar de allanalcantara
 
Registrado em: Nov 2009
Localização: Fortaleza-ce
Posts: 325
Agradeceu: 125
Agradecido 203 Vezes em 82 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
Enviar mensagem via Windows Live Messenger para allanalcantara Enviar mensagem via Skype para allanalcantara
Nome Real: Allan Alcântara de Alencar

Inventório de allanalcantara

Icon14 Quiz Event

bom estou aqui mais uma vez, disponibilizando mais outro MOD, sendo que esse é um evento.
depois que o ví achei meio que estranho ... mas bem enteressante. kkkkkk
evento quiz. - ele funcionano epilogue mas com adaptações ele possa funcionar para interlude.

então ai vai ...

Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
if (command.equalsIgnoreCase("3") && QuizEvent._quizRunning)
      {
         QuizEvent.setAnswer(activeChar, 3);
      }
      return true;
   }
   
   /**
    * 
    * @see com.l2jserver.gameserver.handler.IVoicedCommandHandler#getVoicedCommandList()
    */
   public String[] getVoicedCommandList()
   {
      new QuizEvent();
      return _voicedCommands;
   }
}
next code:

Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
package custom.QuizEvent;

import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
import com.l2jserver.gameserver.Announcements;
import javolution.util.FastMap;
import com.l2jserver.gameserver.ThreadPoolManager;
import com.l2jserver.util.Rnd;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;


import org.w3c.dom.Document;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import java.io.File;
import com.l2jserver.Config;




/**
 * 
 * @author Rizel
 *
 */
public class QuizEvent
{
   public static boolean                      _quizRunning;
   private static String                      _question;
   private static String                      _answer1;
   private static String                      _answer2;
   private static String                      _answer3;
   private static int                         _rightanswer;
   private static FastMap<L2PcInstance,Integer>    _players;
   private static int                         status;
   private static int                         announced;
   private static ThreadPoolManager             tpm;
   private static AutoEventTask               task;
   private static String[][]                   _questions;
   private static int i = 0;
   private static final int STATUS_NOT_IN_PROGRESS = 0;
   private static final int STATUS_ASK = 1;
   private static final int STATUS_ANSWER = 2;
   private static final int STATUS_END = 3;
   
   //----------------------------------------------------------------------------
   //------------------------------ CONFIG --------------------------------------
   //----------------------------------------------------------------------------
   
   //Number of questions per event
   private static int _questionNumber = 3;
   
   //The Item ID of the reward
   private static int _rewardID = 57;
   
   //The ammount of the reward
   private static int _rewardCount = 1000;
   
   //Wait for the first event after the server start (in seconds)
   private static int _initWait = 60;
   
   //Time for answer the question (in seconds)
   private static int _answerTime = 10;
   
   //Time between two event (in seconds)
   private static int _betweenTime = 60;
   
   
   
   public QuizEvent()
   {
      tpm = ThreadPoolManager.getInstance();
      status = STATUS_NOT_IN_PROGRESS;
      task = new AutoEventTask();
      announced = 0;
      _quizRunning = false;
      _question = "";
      _answer1 = "";
      _answer2 = "";
      _answer3 = "";
      _rightanswer = 0;
      _players = new FastMap<L2PcInstance,Integer>(100);
      _questions = new String[20][];
      includeQuestions();
      tpm.scheduleGeneral(task, _initWait*1000);
      
   }
         
   
   
   private void includeQuestions()
   {
      
      
      File questionFile = new File(Config.DATAPACK_ROOT, "data/scripts/custom/QuizEvent/QuizEvent.xml");
      Document doc = null;
      try
      {
         DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
         dbf.setIgnoringComments(true);
         dbf.setValidating(false);
         DocumentBuilder db = dbf.newDocumentBuilder();
         doc = db.parse(questionFile);
         
         for (Node root = doc.getFirstChild(); root != null; root = root.getNextSibling())
         {
            if ("list".equalsIgnoreCase(root.getNodeName()))
            {
               
               for (Node child = root.getFirstChild(); child != null; child = child.getNextSibling())
               {
            
                  if ("question".equalsIgnoreCase(child.getNodeName()))
                  {
                     int id, correct;
                     String ask, answer1, answer2, answer3;
                     NamedNodeMap attrs = child.getAttributes();
                     
                     id = Integer.parseInt(attrs.getNamedItem("id").getNodeValue());
                     correct = Integer.parseInt(attrs.getNamedItem("correct").getNodeValue());
                     ask = attrs.getNamedItem("ask").getNodeValue();
                     answer1 = attrs.getNamedItem("answer1").getNodeValue();
                     answer2 = attrs.getNamedItem("answer2").getNodeValue();
                     answer3 = attrs.getNamedItem("answer3").getNodeValue();
                     
                     _questions[id] = new String[]{ ask, answer1, answer2, answer3, ""+correct }; 
                     i++;
                  
                     
                  }
               }
            }
         }
      }
      catch (Exception e)
      {
         
      }
   }
   
   
   
   
   
   
   private class AutoEventTask implements Runnable
   {
      @Override
      public void run()
      {
         switch (status)
         {
         case STATUS_NOT_IN_PROGRESS:
            announceStart();
            break;
         case STATUS_ASK:   
               if (announced < _questionNumber)
               {
               announceQuestion();
               }
               else
               {
               status = STATUS_END;
               tpm.scheduleGeneral(task, 3000);
               }
            break;
         case STATUS_ANSWER:
            announceCorrect();
            break;
         case STATUS_END:
            endEvent();
            break;
         default:
            break;
            
         }
      }
   }
   
   
   
   //Get a random question from the quiz_event table   
   private static void selectQuestion()
   {
      int id = Rnd.get(i)+1;
      _question = _questions[id][0];      
      _answer1 = _questions[id][1];
      _answer2 = _questions[id][2];
      _answer3 = _questions[id][3];
      _rightanswer = Integer.parseInt(""+_questions[id][4]);
   }
   
   
   
   //Announce the question
   private static void announceQuestion()
   {

      selectQuestion();
      Announcements.getInstance().announceToAll("-----------------");
      Announcements.getInstance().announceToAll("Question: "+_question);
      Announcements.getInstance().announceToAll("-----------------");
      Announcements.getInstance().announceToAll("1: "+_answer1);
      Announcements.getInstance().announceToAll("2: "+_answer2);
      Announcements.getInstance().announceToAll("3: "+_answer3);
      Announcements.getInstance().announceToAll("-----------------");
      
      status = STATUS_ANSWER;
      tpm.scheduleGeneral(task, _answerTime*1000);
   }
   
   
   
   //Announce the correct answer
   private static void announceCorrect()
   {
      Announcements.getInstance().announceToAll("-----------------");
      Announcements.getInstance().announceToAll("The correct answer was: "+_rightanswer);
      Announcements.getInstance().announceToAll("-----------------");
      announced++;
      giveReward();
      status = STATUS_ASK;
      tpm.scheduleGeneral(task, 5000);
   }
   
   
   private static void announceStart()
   {
      _quizRunning = true;
      _players.clear();
      Announcements.getInstance().announceToAll("Quiz Event begins! "+_questionNumber+" questions. "+_answerTime+" secs for answer each. ");
      Announcements.getInstance().announceToAll("Type . and the number of the correct answer to the chat. (Like: .1)");
      Announcements.getInstance().announceToAll("Get Ready!");
            
      status = STATUS_ASK;
      tpm.scheduleGeneral(task, 5000);
   }
   
   //Add a player and its answer
   public static void setAnswer(L2PcInstance player, int answer)
   {
      if( _players.containsKey(player) )
         player.sendMessage("You already choosen an aswer!: "+_players.get(player));
      else
      _players.put(player, answer);
   }
   
   
   private static void endEvent()
   {
      _quizRunning = false;
      Announcements.getInstance().announceToAll("The Quiz Event is over!");
      announced = 0;
      status = STATUS_NOT_IN_PROGRESS;
      tpm.scheduleGeneral(task, _betweenTime*1000);
   }
   
   
   
   private static void giveReward()
   {      
      for( L2PcInstance p: _players.keySet())
      {
         if(_players.get(p) == _rightanswer)
            {
            p.sendMessage("Your answer was correct!");
            p.addItem("Quiz", _rewardID, _rewardCount, p, true);
            }
            else
            {
            p.sendMessage("Your answer was not correct!");
            }

         
      }
      _players.clear();
   }
}
bom ... eu não tenho muitas informações sobre ele, mas creio que seja bem legal!

Arquivos Anexados
Tipo de Arquivo: txt Quiz Event.txt (8.8 KB, 26 visualizações) Baixar
allanalcantara está offline  
Links Patrocinados
Antigo 20-04-2011, 12:54 PM   #2
mend3
Membro - Coronel
 
Avatar de mend3
 
Registrado em: Dec 2008
Localização: Campo Grande
Posts: 185
Agradeceu: 97
Agradecido 1,929 Vezes em 100 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
Meu Estado:
Enviar mensagem via ICQ para mend3 Enviar mensagem via Windows Live Messenger para mend3 Enviar mensagem via Yahoo para mend3 Enviar mensagem via Skype para mend3
Pontos: 7,143, Nível: 55
Pontos: 7,143, Nível: 55 Pontos: 7,143, Nível: 55 Pontos: 7,143, Nível: 55
Atividade: 0%
Atividade: 0% Atividade: 0% Atividade: 0%

Nome Real: Victor Mendonça

Inventório de mend3

Padrão

Cara, na boa, pra Ctrl C + Ctrl V tá bem pobre hein? Cade diff? Cadê classes a serem alteradas? Informações do mod?

mend3 está offline   Responder com Citação
Os Seguintes 3 Usuários disseram Obrigado(a) para mend3 por gostarem deste post :
luisa (20-04-2011), ManoeL-ADM (20-04-2011), out (20-04-2011)
Antigo 26-04-2011, 01:58 PM   #3
allanalcantara
Banido
 
Avatar de allanalcantara
 
Registrado em: Nov 2009
Localização: Fortaleza-ce
Posts: 325
Agradeceu: 125
Agradecido 203 Vezes em 82 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
Enviar mensagem via Windows Live Messenger para allanalcantara Enviar mensagem via Skype para allanalcantara
Nome Real: Allan Alcântara de Alencar

Inventório de allanalcantara

Padrão

como disse peguei de um forum, e achei meio estranho o mod ... mas acabei postando aqui. como disse funfa em epilogo que vi lá nos post e tão funcionando . então não venha com essa de ctrl+c ctrl+v como eu disse sem muitas informações,
mas creio que seja :

EVENTO QUIZ. O ADMIN OU GM SEI, INICIA O EVENTO( OU AUTOMATICAMENTE ),
O PLAYER RESPONDE E SE FOR CERTO GANHA UM ITEM.
NÃO TESTEI NÃO SEI COMO FUNCIONA, MAS LENDO OS CODE DA PRA SABER COMO FUNFA. SEN ÃO TIVER COMPLETO NÃO SE PREOCUPE IREI OLHAR SE ESTÁ FALTANDO ALGO.

--'. qualquer coisa pode reclamar. u.u'

allanalcantara 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 11:13 PM.