Advertisement
Guest User

Logro al entrar [Trinity]

a guest
Dec 3rd, 2012
120
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.87 KB | None | 0 0
  1. #include "ScriptMgr.h"
  2. #include "Player.h"
  3.  
  4. // En este apartado declararemos todo lo que necesitamos.
  5. enum EventLoggin
  6. {
  7.     EVENT_LOGGIN         = 300, // Declaramos la id (id 300 en este caso) del evento que necesitaremos para que inicie y la gente pueda conseguir el logro "sorpresa" al logear.
  8.     ACHIEVEMENT_LOGGIN   = 2398, // Declaramos la id del logro que queremos que los jugadores reciban al logear, en este caso el 4º aniversario de WoW (este y el 5º aniversario son los únicos que se pueden poner en 3.3.5, los que le suceden son ya de la versión de cata).
  9. };
  10.  
  11. class achiev_login : public PlayerScript
  12. {
  13.     public:
  14.         achiev_login () : PlayerScript("achiev_login ") { }
  15.        
  16.         void OnLogin(Player* player) // Funcion "al iniciar sesión" existen otras funciones como OnLogout "al salir", OnTextEmote "al hacer un emote en concreto" y algunas otras opciones que podréis ver en ScriptMGR.cpp.
  17.         {
  18.             if (IsEventActive(EVENT_LOGGIN)) // Chequea que el evento esta activo
  19.             {
  20.                 if (player->HasAchieved(ACHIEVEMENT_LOGGIN)) // Detecta si el jugador ya tiene el logro.
  21.                     return;
  22.  
  23.                 if (AchievementEntry const* achievLogin = GetAchievementStore()->LookupEntry(ACHIEVEMENT_LOGGIN))
  24.                     player->CompletedAchievement(achievLogin); // Da el logro.
  25.             }
  26.         }
  27. };
  28.  
  29. /* SQL
  30. INSERT IGNORE INTO `game_event` (`eventEntry`, `start_time`, `end_time`, `occurence`, `length`, `holiday`, `description`, `world_event`) VALUES('300','2013-01-01 23:59:00','2013-01-02 23:59:00','14400','14400','0','Achievement Loggin','0');
  31.  
  32. -- El evento en este caso empieza el día 1 de enero del 2013 a las 23:59 de la noche y termina al día siguiente prácticamente a las 24 horas podéis alargar el tiempo si deseáis.
  33. */
  34.  
  35. void AddSC_event_login()
  36. {
  37.     new achiev_login();
  38. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement