Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "ScriptMgr.h"
- #include "Player.h"
- // En este apartado declararemos todo lo que necesitamos.
- enum EventLoggin
- {
- 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.
- 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).
- };
- class achiev_login : public PlayerScript
- {
- public:
- achiev_login () : PlayerScript("achiev_login ") { }
- 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.
- {
- if (IsEventActive(EVENT_LOGGIN)) // Chequea que el evento esta activo
- {
- if (player->HasAchieved(ACHIEVEMENT_LOGGIN)) // Detecta si el jugador ya tiene el logro.
- return;
- if (AchievementEntry const* achievLogin = GetAchievementStore()->LookupEntry(ACHIEVEMENT_LOGGIN))
- player->CompletedAchievement(achievLogin); // Da el logro.
- }
- }
- };
- /* SQL
- 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');
- -- 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.
- */
- void AddSC_event_login()
- {
- new achiev_login();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement