[Help] Making Mounter menu

Shout-Out

User Tag List

Results 1 to 1 of 1
  1. #1
    rojam1's Avatar Member
    Reputation
    1
    Join Date
    Mar 2008
    Posts
    25
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    [Help] Making Mounter

    Ok i have a portable mounter and it works fine but how can i make the mounts fly? here is source
    Code:
    #include "StdAfx.h"
    #include "Setup.h"
    
    #ifdef WIN32
    #pragma warning(disable:4305)        // warning C4305: 'argument' : truncation from 'double' to 'float'
    #endif
    
    //Defining Warper
    class SCRIPT_DECL Mounter : public GossipScript{
      public:
        void GossipHello(Object * pObject, Player* Plr, bool AutoSend);
        void GossipSelectOption(Object * pObject, Player* Plr, uint32 Id, uint32 IntId, const char * Code);
        void GossipEnd(Object * pObject, Player* Plr){ GossipScript::GossipEnd(pObject, Plr); }
        void Destroy(){ delete this; }
    };
    
    void Mounter::GossipHello(Object* pObject, Player * Plr, bool AutoSend){
      if(Plr->CombatStatus.IsInCombat()){
        Plr->BroadcastMessage("You are in combat!");
      }else{
        GossipMenu *Menu;
        objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 2593, Plr);
    
        //////////////////////////////////////////////
      float  Speed     = 9.7;
      uint32 displayid = 0;
      uint32 eventid   = 5;
      bool   flytf     = false;
    
        flytf = true; eventid = 3; displayid = 0; Speed = 9.7;
        if(Plr->m_MountSpellId)
            Plr->RemoveAura(Plr->m_MountSpellId);
    
        Plr->SetUInt32Value( UNIT_FIELD_MOUNTDISPLAYID , 0);
        
        WorldPacket fly(836, 13);
        Plr->m_setflycheat = false;
        fly << Plr->GetNewGUID();
        fly << uint32(5);
        Plr->SendMessageToSet(&fly, true);
        Plr->SetPlayerSpeed(RUN,     Speed);
        Plr->SetPlayerSpeed(SWIM,    Speed);
        Plr->SetPlayerSpeed(RUNBACK, Speed);
        Plr->SetPlayerSpeed(FLY,     Speed);
        ////////////////////////////////////////
        Menu->AddItem(0, "Mount Raptor",                  1);
        Menu->AddItem(0, "Mount Raptor on Roids(level 70)", 2);
        Menu->AddItem(0, "Mount Netherspite",			 3);
        Menu->AddItem(0, "Mount NetherDrake",			 4);
        Menu->AddItem(0, "Dismount",                   100);   
        if(AutoSend) Menu->SendTo(Plr);
      }
    };
    //Defining Cases
    void Mounter::GossipSelectOption(Object* pObject, Player* Plr, uint32 Id, uint32 IntId, const char * Code)
    {
      float  Speed     = 9.7;
      uint32 displayid = 0;
      uint32 eventid   = 5;
      bool   flytf     = false;
      switch(IntId){
        case 1:{ 
          if(Plr->getLevel() >= 60){
          /*  flytf = true;*/ eventid = 3; displayid = 1337; Speed = 10;
            /*WorldPacket fly(835, 13);
            Plr->m_setflycheat = true;
            fly << Plr->GetNewGUID();
            fly << uint32(2);*/
        //    Plr->SendMessageToSet(&fly, true);
            Plr->SetPlayerSpeed(RUN,     Speed);
            Plr->SetPlayerSpeed(SWIM,    Speed);
            Plr->SetPlayerSpeed(RUNBACK, Speed);
            Plr->SetPlayerSpeed(FLY,     Speed);
            Plr->SetUInt32Value(UNIT_FIELD_MOUNTDISPLAYID, displayid);
            Plr->Gossip_Complete();
          }else {
            Plr->BroadcastMessage("You need to be atleast level 60 to ride this baby");  
            Plr->Gossip_Complete();
          }
          
        }break;
        case 2:{ 
            if(Plr->getLevel() >= 70){
           /* flytf = true;*/ eventid = 3; displayid = 19911; Speed = 20;
            /*WorldPacket fly(835, 13);
            Plr->m_setflycheat = true;
            fly << Plr->GetNewGUID();
            fly << uint32(2);*/
            //Plr->SendMessageToSet(&fly, true);
            Plr->SetPlayerSpeed(RUN,     Speed);
            Plr->SetPlayerSpeed(SWIM,    Speed);
            Plr->SetPlayerSpeed(RUNBACK, Speed);
            Plr->SetPlayerSpeed(FLY,     Speed);
            Plr->SetUInt32Value(UNIT_FIELD_MOUNTDISPLAYID, displayid);
            Plr->Gossip_Complete();
            }else {
            Plr->BroadcastMessage("You need to be atleast level 70 to ride this baby");  
            Plr->Gossip_Complete();
          }
               } break;
    case 3:{ 
            if(Plr->getLevel() >= 70){
           /* flytf = true;*/ eventid = 3; displayid = 15363; Speed = 20;
            /*WorldPacket fly(835, 13);
            Plr->m_setflycheat = true;
            fly << Plr->GetNewGUID();
            fly << uint32(2);*/
            //Plr->SendMessageToSet(&fly, true);
            Plr->SetPlayerSpeed(RUN,     Speed);
            Plr->SetPlayerSpeed(SWIM,    Speed);
            Plr->SetPlayerSpeed(RUNBACK, Speed);
            Plr->SetPlayerSpeed(FLY,     Speed);
            Plr->SetUInt32Value(UNIT_FIELD_MOUNTDISPLAYID, displayid);
            Plr->Gossip_Complete();
            }else {
            Plr->BroadcastMessage("You need to be atleast level 70 to ride this baby");  
            Plr->Gossip_Complete();
          }
               } break;
    case 4:{
            if(Plr->getLevel() >= 70){
            /* flytf = true;*/ eventid = 3; displayid = 19607; Speed = 20;
            /*WorldPacket fly(835, 13);
            Plr->m_setflycheat = true;
            fly << Plr->GetNewGUID();
            fly << uint32(2);*/
            //Plr->SendMessageToSet(&fly, true);
            Plr->SetPlayerSpeed(RUN,     Speed);
            Plr->SetPlayerSpeed(SWIM,    Speed);
            Plr->SetPlayerSpeed(RUNBACK, Speed);
            Plr->SetPlayerSpeed(FLY,     Speed);
            Plr->SetUInt32Value(UNIT_FIELD_MOUNTDISPLAYID, displayid);
            Plr->Gossip_Complete();
            }else {
            Plr->BroadcastMessage("You need to be atleast level 70 to ride this baby");  
            Plr->Gossip_Complete();
          }
               } break;
    
    case 50:
        {
        
        /* flytf = true;*/ eventid = 3; displayid = 0; Speed = 9.1;
        if(Plr->m_MountSpellId)
            Plr->RemoveAura(Plr->m_MountSpellId);
    
        Plr->SetUInt32Value( UNIT_FIELD_MOUNTDISPLAYID , 0);
        
    /*    WorldPacket fly(836, 13);
        Plr->m_setflycheat = false;
        fly << Plr->GetNewGUID();
        fly << uint32(5);
        Plr->SendMessageToSet(&fly, true);*/
        Plr->SetPlayerSpeed(RUN,     Speed);
        Plr->SetPlayerSpeed(SWIM,    Speed);
        Plr->SetPlayerSpeed(RUNBACK, Speed);
        Plr->SetPlayerSpeed(FLY,     Speed);
        
        Plr->BroadcastMessage("You are Now un-mounted"); 
        Plr->Gossip_Complete();
        //m_target->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_MOUNTED_TAXI);
               }break;
      }
      
    
    }
    
    void SetupMounter(ScriptMgr *mgr){
      mgr->register_item_gossip_script(49996, (GossipScript*) new Mounter());
    }

    [Help] Making Mounter

Similar Threads

  1. [Help] Making Server Public
    By IcyHot in forum World of Warcraft Emulator Servers
    Replies: 14
    Last Post: 11-25-2007, 10:15 PM
  2. Need help making a animated Gif
    By freezer1012 in forum Art & Graphic Design
    Replies: 3
    Last Post: 11-06-2007, 03:03 PM
  3. Help Making Server Public[Antix]
    By Fuynuns93 in forum World of Warcraft Emulator Servers
    Replies: 3
    Last Post: 10-03-2007, 04:13 PM
  4. Could use some help making my server public.
    By Zonagle in forum World of Warcraft Emulator Servers
    Replies: 1
    Last Post: 09-18-2007, 07:51 PM
  5. [Help]Making People GM's
    By Nemesis Kkc in forum World of Warcraft Emulator Servers
    Replies: 5
    Last Post: 09-15-2007, 08:31 AM
All times are GMT -5. The time now is 06:02 PM. Powered by vBulletin® Version 4.2.3
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Google Authenticator verification provided by Two-Factor Authentication (Free) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search