[HowTo]Make a Warper NPC

Experienced Elementalist
Joined
Jun 22, 2007
Messages
276
Reaction score
0
OK! ... this is my WARPER NPC guide .. now first things you guise'l have ta know is,

1. You need C++ knowledge for this.**Or ya can copy my stuff xD**

2. You need visual studio C++ 2005 with SDK addons or Visual Studio 2003.NET proffessional ... (please google this im not supplying links ...)

3. ... Erm ... thats it ... !

***************
*STARTING!*
***************

STEP 1 :

Ok first you go into your Ascent source code ... go into the scripts source ... Im just gonna shoiw u how to integrate it into your original gossip scripts ...
coz making a standalone DLL ... is a lil bit more complicated ... not enough time to explain that now ...
the scripts should be in *ascent_source*/src/scripts/ ... here you just open the project file (scripts2005.sln or scripts2003.sln depending on your version) ...

STEP 2 :

ok now that ur in there open up GuardGossip.cpp thats where ima make the warp npc ...

Now ... ima make the warp NPC right @ the end ... after evrything but before the declerations ....

Code:
        case 27: //Tailoring
            {
                Plr->Gossip_SendPOI(-4711.54, -12386.7, 6, 6, 0, "Odesyus' Landing, Tailor");
                SendQuickMenu(2593);
            }break;
        }
    }
};

[color=red]THIS IS WHERE THE CODE WILL BE[/color]

void SetupGuardGossip(ScriptMgr * mgr)
{
    /* Guard List */
    mgr->register_gossip_script(1423,  &GoldshireGuard::Create);        // Stormwind Guard 
    mgr->register_gossip_script(68,    &StormwindGuard::Create);        // Stormwind City Guard
    mgr->register_gossip_script(1976,  &StormwindGuard::Create);        // Stormwind City Patroller
    mgr->register_gossip_script(4262,  &DarnassusGuard::Create);        // Darnassus Sentinel
P.S : this part is right @ the bottom ...

MAKE VERY SURE YOU DONT OVERWRITE ANYTHING!!!

ok ... STEP 3 :

Here we will make the actual script ...

Code:
class SCRIPT_DECL [color=red]Warper[/color] : public GossipScript
{
public:
    ADD_GOSSIP_FACTORY_FUNCTION([color=red]Warper[/color]);
    void GossipHello(Creature * pCreature, Player * Plr, bool AutoSend)
    {
        GossipMenu *Menu;
        objmgr.CreateGossipMenuForPlayer(&Menu, pCreature->GetGUID(), 2593, Plr);
        Menu->AddItem(0, "Main Citie's", 1);
           if(AutoSend)
            Menu->SendTo(Plr);
    }

<-----These are the declerations and all + the first menu its gonna show ...

THE LINES IN GREEN ARE MY COMMENT ,,, DONT ADD IT 2 THE WARPER SCRIPT !!!

RED LINES ARE IMPORTANT SO PAY ATTENTION!!!

Code:
class SCRIPT_DECL [color=red]Warper[/color] : public GossipScript
{
public:
    ADD_GOSSIP_FACTORY_FUNCTION([color=red]Warper[/color]);
    void GossipHello(Creature * pCreature, Player * Plr, bool AutoSend)
    {
        GossipMenu *Menu;
        objmgr.CreateGossipMenuForPlayer(&Menu, pCreature->GetGUID(), 2593, Plr);
        Menu->AddItem(0, "Main Citie's", [color=red]1[/color]); [color=green]THIS IS HOW U LINK ITEMS WITH FUNCTIONS[/color]
           if(AutoSend)
            Menu->SendTo(Plr);
    }



void GossipSelectOption(Creature* pCreature, Player* Plr, uint32 Id, uint32 IntId)[color=green]DECLARING THE SELECT MENU[/color]
    {
        GossipMenu * Menu;
        switch(IntId)
        {


case [color=red]1[/color]:[color=green]THIS IS HOW U LINK ITEMS WITH FUNCTIONS[/color]

             {
                 objmgr.CreateGossipMenuForPlayer(&Menu, pCreature->GetGUID(), 2593, Plr);[color=green]DECLARES THIS CASES MENU[/color]
                 if (Plr->GetTeam() < 1) [color=green]DESTINGUISHES BETWEEN HORDE/ALLIANCE[/color]
                 {
                 Menu->AddItem(2, "Stormwind", 2); [color=green]*AGAIN LINKS AN ITEM WITH A CASE AND FUNCTION*[/color]
                 Menu->AddItem(2, "Ironforge", 3); [color=green]*AGAIN LINKS AN ITEM WITH A CASE AND FUNCTION*[/color]
                 Menu->AddItem(2, "Exodar", 4); [color=green]*AGAIN LINKS AN ITEM WITH A CASE AND FUNCTION*[/color]
                 Menu->AddItem(2, "Darnassus", 5); [color=green]*AGAIN LINKS AN ITEM WITH A CASE AND FUNCTION*[/color]
                 }
                 else
                 {
                 Menu->AddItem(2, "Orgrimar", 6);[color=green]*AGAIN LINKS AN ITEM WITH A CASE AND FUNCTION*[/color]
                 Menu->AddItem(2, "Thunder Bluff", 7);[color=green]*AGAIN LINKS AN ITEM WITH A CASE AND FUNCTION*[/color]
                 Menu->AddItem(2, "Silvermoon City", 8);[color=green]*AGAIN LINKS AN ITEM WITH A CASE AND FUNCTION*[/color]
                 Menu->AddItem(2, "Undercity", 9);[color=green]*AGAIN LINKS AN ITEM WITH A CASE AND FUNCTION*[/color]
                 }
                 Menu->SendTo(Plr);[color=green]SENDS THE MENU TO THE PLAYER!!! NB!!![/color]
             }break;
             
             case 5:[color=green]*AGAIN LINKS AN ITEM WITH A CASE AND FUNCTION*[/color]
             {
                 Plr->EventTeleport(0, -8831.61, 622.666, 93.7787);
                 Plr->Gossip_Complete();
             }break;

         case 6:[color=green]*AGAIN LINKS AN ITEM WITH A CASE AND FUNCTION*[/color]
             {
                 Plr->EventTeleport(0, -4804.45, -1101.14, 498.807);
                 Plr->Gossip_Complete();
             }break;

         case 7:[color=green]*AGAIN LINKS AN ITEM WITH A CASE AND FUNCTION*[/color]
             {
                 Plr->EventTeleport(530, -3796.24, -11710.9, -105.45);
                 Plr->Gossip_Complete();
             }break;

         case 8:[color=green]*AGAIN LINKS AN ITEM WITH A CASE AND FUNCTION*[/color]
             {
                 Plr->EventTeleport(1, 9952.07, 2278.46, 1341.39);
                 Plr->Gossip_Complete();
             }break;

         case 9:[color=green]*AGAIN LINKS AN ITEM WITH A CASE AND FUNCTION*[/color]
             {
                 Plr->EventTeleport(1, 1499.55, -4406.91, 23.1642);
                 Plr->Gossip_Complete();
             }break;

         case 10:[color=green]*AGAIN LINKS AN ITEM WITH A CASE AND FUNCTION*[/color]
             {
                 Plr->EventTeleport(1, -1195.88, -56.5582, 160.034);
                 Plr->Gossip_Complete();
             }break;

         case 11:[color=green]*AGAIN LINKS AN ITEM WITH A CASE AND FUNCTION*[/color]
             {
                 Plr->EventTeleport(530, 9492.45, -7279.12, 14.3036);
                 Plr->Gossip_Complete();
             }break;

         case 12:[color=green]*AGAIN LINKS AN ITEM WITH A CASE AND FUNCTION*[/color]
             {
                 Plr->EventTeleport(0, 1615.1, 239.786, -62.0774);
                 Plr->Gossip_Complete();
             }break;

}
}
}; [color=green]THIS FINISHES OFF THE WARPER CODE[/color]


So thats the warper code and how ur final product should look like ... BUT WAIT ...

You still have to link it to an NPC in the DB ... so here goes right after that code if ya did it correctly ... you should see this ....

Code:
void SetupGuardGossip(ScriptMgr * mgr)
{
    /* Guard List */
    mgr->register_gossip_script(1423,  &GoldshireGuard::Create);        // Stormwind Guard 
    mgr->register_gossip_script(68,    &StormwindGuard::Create);        // Stormwind City Guard
    mgr->register_gossip_script(1976,  &StormwindGuard::Create);        // Stormwind City Patroller
    mgr->register_gossip_script(4262,  &DarnassusGuard::Create);        // Darnassus Sentinel
    mgr->register_gossip_script(5624,  &UndercityGuard::Create);        // Undercity Guardian
    mgr->register_gossip_script(3571,  &DolanaarGuard::Create);            // Teldrassil Sentinel
    mgr->register_gossip_script(16222, &SilvermoonGuard::Create);        // Silvermoon City Guardian
    mgr->register_gossip_script(16733, &ExodarGuard::Create);            // Exodar Peacekeeper
    mgr->register_gossip_script(20674, &ExodarGuard::Create);            // Shield of Velen
    mgr->register_gossip_script(3296, &OrgrimmarGuard::Create);            // Orgrimmar Grunt
    mgr->register_gossip_script(3084, &ThunderbluffGuard::Create);        // Bluffwatcher
    mgr->register_gossip_script(3222, &BloodhoofGuard::Create);            // Brave Wildrunner
    mgr->register_gossip_script(3224, &BloodhoofGuard::Create);            // Brave Cloudmane
    mgr->register_gossip_script(3220, &BloodhoofGuard::Create);            // Brave Darksky
    mgr->register_gossip_script(3219, &BloodhoofGuard::Create);            // Brave Leaping Deer
    mgr->register_gossip_script(3217, &BloodhoofGuard::Create);            // Brave Dawneagle
    mgr->register_gossip_script(3215, &BloodhoofGuard::Create);            // Brave Strongbash
    mgr->register_gossip_script(3218, &BloodhoofGuard::Create);            // Brave Swiftwind
    mgr->register_gossip_script(3221, &BloodhoofGuard::Create);            // Brave Rockhorn
    mgr->register_gossip_script(3223, &BloodhoofGuard::Create);            // Brave Rainchaser
    mgr->register_gossip_script(3212, &BloodhoofGuard::Create);            // Brave Ironhorn
    mgr->register_gossip_script(5953, &RazorHillGuard::Create);            // Razor Hill Grunt
    mgr->register_gossip_script(5725, &BrillGuard::Create);                // Deathguard Lundmark
    mgr->register_gossip_script(1738, &BrillGuard::Create);                // Deathguard Terrence
    mgr->register_gossip_script(1652, &BrillGuard::Create);                // Deathguard Burgess
    mgr->register_gossip_script(1746, &BrillGuard::Create);                // Deathguard Cyrus
    mgr->register_gossip_script(1745, &BrillGuard::Create);                // Deathguard Morris
    mgr->register_gossip_script(1743, &BrillGuard::Create);                // Deathguard Lawrence
    mgr->register_gossip_script(1744, &BrillGuard::Create);                // Deathguard Mort
    mgr->register_gossip_script(1496, &BrillGuard::Create);                // Deathguard Dillinger
    mgr->register_gossip_script(1742, &BrillGuard::Create);                // Deathguard Bartholomew
    mgr->register_gossip_script(5595, &IronforgeGuard::Create);            // Ironforge Guard
    mgr->register_gossip_script(727,  &KharanosGuard::Create);            // Ironforge Mountaineer
    mgr->register_gossip_script(16221,&FalconwingGuard::Create);        // Silvermoon Guardian
    mgr->register_gossip_script(18038,&AzureWatchGuard::Create);        // Azuremyst Peacekeeper
    [color=red]mgr->register_gossip_script(8000004, &Warper::Create);[/color] [color=green]JUST ADD THIS LINE LINKING THE NPC WITH THE FUNCTION :D [/color]             // NEUTRAL TP

NOW ... Press F7 to compile and THERE U GO! ... the new gossipscripts DLL should be in the release file :D (remember to put it on release and not debug :D)

Now you still need an NPC heres the one I made ... just import it ...

Code:
INSERT INTO creature_names
(entry, creature_name, Subname, Flags1, type, Family, Rank, unk4, SpellDataID, male_displayid, female_displayid, unknown_int1, unknown_int2, unknown_float1, unknown_float2, Civilian, Leader)
VALUES
(8000004, "Teleporter", "WARPER", 0, 1, 0, 1, 0, 0, 15302, 0, 0, 0, 1, 1, 0, 0);

INSERT INTO creature_proto
(entry, minlevel, maxlevel, faction, minhealth, maxhealth, mana, scale, npcflags, attacktime, mindamage, maxdamage, rangedattacktime, rangedmindamage, rangedmaxdamage, mountdisplayid, item1slotdisplay, item1info1, item1info2, item2slotdisplay, item2info1, item2info2, item3slotdisplay, item3info1, item3info2, respawntime, resistance0_armor, resistance1, resistance2, resistance3, resistance4, resistance5, resistance6, combat_reach, bounding_radius, auras, boss, money, invisibility_type, death_state, walk_speed, run_speed, fly_speed, extra_a9_flags)
VALUES
(8000004, 100, 100, 35, 50000, 50000, 50000, 1, 1, 1000, 500, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120000, 0, 100, 100, 100, 100, 100, 100, 0, 0, 0, 1, 100000000, 0, 0, 2.5, 8, 14, 0);

You can add more warper NPC's by adding the NPC's ID to the declerations :D ....
e.g. :
Code:
mgr->register_gossip_script(1000005,&Warper::Create); [color=green]TO REG NPC ID 1000005 TO THE SCRIPT ...[/color]
then all you have to do is import an NPC with flags set 2 1 and ID being 1000005 :D

thats it ... heres the link to this exact script (WORKS!) Just copy the Dll file into your script_bin folder ... YES over write the old gossip scripts ...(Just make a backup of it incase its incompatible (very old revs wont work))

Heres the NPC's SQL that u have to inport ...
Code:
INSERT INTO creature_names
(entry, creature_name, Subname, Flags1, type, Family, Rank, unk4, SpellDataID, male_displayid, female_displayid, unknown_int1, unknown_int2, unknown_float1, unknown_float2, Civilian, Leader)
VALUES
(8000004, "Teleporter", "WARPER", 0, 1, 0, 1, 0, 0, 15302, 0, 0, 0, 1, 1, 0, 0);

INSERT INTO creature_proto
(entry, minlevel, maxlevel, faction, minhealth, maxhealth, mana, scale, npcflags, attacktime, mindamage, maxdamage, rangedattacktime, rangedmindamage, rangedmaxdamage, mountdisplayid, item1slotdisplay, item1info1, item1info2, item2slotdisplay, item2info1, item2info2, item3slotdisplay, item3info1, item3info2, respawntime, resistance0_armor, resistance1, resistance2, resistance3, resistance4, resistance5, resistance6, combat_reach, bounding_radius, auras, boss, money, invisibility_type, death_state, walk_speed, run_speed, fly_speed, extra_a9_flags)
VALUES
(8000004, 100, 100, 35, 50000, 50000, 50000, 1, 1, 1000, 500, 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120000, 0, 100, 100, 100, 100, 100, 100, 0, 0, 0, 1, 100000000, 0, 0, 2.5, 8, 14, 0);

And is the link :D for the DLL


HOPE THIS HELPED SOME PPL :D

MIZUKI
 
Last edited:
Nice work;P
But if you don't clearly understand Scripting then you wont understand anything:P
Well I don't clearly understand so:P
But you probably learn it fast:P
 
Heeey, This is a nice NPC but I got a question. Do you think that you could make one that goes to all or alot of instances (Higher Lvled Ones) Because I already made Portals to go to the citys. I don't got the source or I might be able to do it, that and I am kinda lazy X.x

I am j/w though, Thanks in Advance

_Coltain-
 
These are the ones that I would like but but if they seem like to many, I would like just the lvl 70 ones and all the raids if possible, Please. If not thats ok. By the way, I got them from WowHead and if you want me to thin it out some more I will. I am deeply appreciated of you for doing this.

Thanks in Advance,

_Coltain-


Name -- Level
Auchindoun: Shadow Labyrinth -- 70
Caverns of Time: The Black Morass -- 70
Coilfang Reservoir: The Steamvault -- 70
Hellfire Citadel: The Shattered Halls -- 70
Tempest Keep: The Arcatraz -- 70
Tempest Keep: The Botanica -- 70
Tempest Keep: The Mechanar -- 70
Auchindoun: Sethekk Halls -- 67 - 69
Caverns of Time: Old Hillsbrad Foothills -- 66 - 68
Auchindoun: Auchenai Crypts -- 65 - 67
Auchindoun: Mana-Tombs -- 64 - 66

Black Temple -- 70
Blackwing Lair -- 60
Caverns of Time: Hyjal Summit -- 70
Coilfang Reservoir: Serpentshrine Cavern -- 70
Gruul's Lair -- 70
Hellfire Citadel: Magtheridon's Lair -- 70
Karazhan -- 70
Molten Core -- 60
Naxxramas -- 60
Onyxia's Lair -- 60
Ruins of Ahn'Qiraj -- 60
Tempest Keep: The Eye -- 70
Temple of Ahn'Qiraj -- 60
 
il make this but ima thin it out to only the 70's il do this 2morz im @ work 2 morow so u can expect them uploaded by 2morrow same time as now : 1am night al!
 
Oh I forgot could you make one to the entrance of Hyjal please. And thanks a ton for making those for me ^.^

Thanks in Advance,

_Coltain-
 
but the whole point of this tutorial is for you guys to make you own warp npc instead of asking him to make it for you...

if you look on there are a lot more samples of warp npc, I suggest you guys read every post and then try it yourself !!!!
 
Kira explains the whole idea of these NPC's and how to create them if im right. And what's the problem, are you upset about Kira sharing knowledge? (would be a personal problem if yes)
 
lol ... some ppl dont have VSC++ xD ... and cant make it but would love to have 1 .. but yea the general idea ... learn how to make 1 xD

... but il make 1 with all those areas and post it 4 evry1 xD :D

BUT THATS MY LAST RELEASE :p ... I just came of work so il do it 2 morrow :D

~Mizuki~
 
awsome thanks heaps for that i have been hunting all day for info on it but one thing i have wrong i use sqlyog so the command lines are diff now that is fine have modified them im just wondering will this stop the dll from working cause i can spawn the teleporter but he doesnt do anything:( infact all he asks is how he can help me??
sorry im a total nub when it comes to doing this stuff i did give it ago but i come here cause i failed
 
@ sataniceaden .... did you copy the DLL file into your script bin folder ... if its not there it wont work ... and yes if you change the creatures ID it will stop him from functioning ... coz over here :

Code:
mgr->register_gossip_script([color=red]8000004[/color], &Warper::Create);

it registers the code with only this NPC :D
 
Nice guide. Kira I am also South African btw:)
Kira, please can you help me out ? I added you on msn- and it doesn't have anything to do with this guide I just wanted to ask you a few things:)
 
uhh ok im sorta lost i think my files may be different i can only find ccp files not snv files
mabey cause im not using ascent core this is because ascent doesnt like this comp too much to explain but after 7diff version not working yet working on my p3 i gave up
ok here is what i have i just dont know how to put it in my gossip file :(

Code:
class SCRIPT_DECL TeleportNPC : public GossipScript
{
public:
    ADD_GOSSIP_FACTORY_FUNCTION(TeleportNPC);
    void GossipHello(Creature * pCreature, Player * Plr, bool AutoSend)
    {
        GossipMenu *Menu;
        objmgr.CreateGossipMenuForPlayer(&Menu, pCreature->GetGUID(), 1, Plr);

		Menu->AddItem(5, "Set Bindpoint Here", 98);
		if (Plr->GetTeam() > 0) 
		{ Menu->AddItem(0, "Horde Cities", 1); } 
		else
		{ Menu->AddItem(0, "Alliance Cities", 2); }
        Menu->AddItem(0, "Outland Locations", 3);

        if(AutoSend)
            Menu->SendTo(Plr);
    }

    void GossipSelectOption(Creature* pCreature, Player* Plr, uint32 Id, uint32 IntId)
    {
        GossipMenu * Menu;
        switch(IntId)
        {
        case 0:     // Return to start
				GossipHello(pCreature, Plr, true);
            break;

		case 98:     // BINDER
				Plr->GetSession()->SendInnkeeperBind(pCreature);
			break;

        case 1:     // Horde
                objmgr.CreateGossipMenuForPlayer(&Menu, pCreature->GetGUID(), 1, Plr);
                Menu->AddItem(5, "Silvermoon", 4);
                Menu->AddItem(5, "Orgrimmar", 5);
                Menu->AddItem(5, "Thunderbluff", 6);
                Menu->AddItem(5, "UnderCity", 7);
				Menu->AddItem(0, "[Back]", 99);
                Menu->SendTo(Plr);
            break;

        case 2:     // Alliance
                objmgr.CreateGossipMenuForPlayer(&Menu, pCreature->GetGUID(), 1, Plr);
                Menu->AddItem(5, "The Exodar", 8);
                Menu->AddItem(5, "Stormwind", 9);
                Menu->AddItem(5, "Ironforge", 10);
                Menu->AddItem(5, "Darnassus", 11);
				Menu->AddItem(0, "[Back]", 99);
                Menu->SendTo(Plr);
            break;

        case 3:     // Outland
	        if(Plr->getLevel() < 60)
	        {
				pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, "You do not qualify for entry to Outland." );
                Plr->Gossip_Complete();
			}else{
                objmgr.CreateGossipMenuForPlayer(&Menu, pCreature->GetGUID(), 1, Plr);
                Menu->AddItem(5, "Hellfire Peninsula", 12);
                Menu->AddItem(5, "Zangermarsh", 13);
                Menu->AddItem(5, "Nagrand", 14);
                Menu->AddItem(5, "Blades Edge Mountains", 15);
                Menu->AddItem(5, "Netherstorm", 16);
                Menu->AddItem(5, "Terokkar Forest", 17);
                Menu->AddItem(5, "Shadowmoon Valley", 18);
				Menu->AddItem(0, "[Back]", 99);
                Menu->SendTo(Plr);
			}
            break;

            //////////////////
            // Horde submenu
            ////////

        case 4://Silvermoon
            {
                Plr->EventTeleport(530, 9400.486328, -7278.376953, 14.206780);

            }break;

        case 5://Orgrimmar
            {
                Plr->EventTeleport(1, 1371.068970, -4370.801758, 26.052483);
            }break;

        case 6://ThunderBluff
            {
                Plr->EventTeleport(1, -1304.569946, 205.285004, 68.681396);
            }break;

        case 7://UnderCity
            {
                Plr->EventTeleport(0, 2050.203125, 285.650604, 56.994549);
            }break;

            ////////////////
            // Alliance Menu
            ////////

        case 8: //Exodar
            {
                Plr->EventTeleport(530, -4072.202393, -12014.337891, -1.277277);
            }break;

        case 9: //Stormwind
            {
                Plr->EventTeleport(0, -9100.480469, 406.950745, 92.594185);
            }break;

        case 10: //Ironforge
            {
                Plr->EventTeleport(0, -5028.265137, -825.976563, 495.301575);
            }break;

        case 11: //Darnassus
            {
                Plr->EventTeleport(1, 9985.907227, 1971.155640, 1326.815674);
            }break;

            ////////////////
            // Outland Menu
            ////////

        case 12: //Hellfire Peninsula
            {
                Plr->EventTeleport(530, -248.160004, 922.348999, 84.379799);
            }break;

        case 13: //Zangermarsh
            {
                Plr->EventTeleport(530, -225.863632, 5405.927246, 22.346397);
            }break;

        case 14: //Nagrand
            {
                Plr->EventTeleport(530, -468.232330, 8418.666016, 28.031298);

            }break;

        case 15: //Blades Edge Mountains
            {
                Plr->EventTeleport(530, 1471.672852, 6828.047852, 107.759239);

            }break;

        case 16: //Netherstorm
            {
                Plr->EventTeleport(530, 3396.123779, 4182.208008, 137.097992);

            }break;

        case 17: //Terokkar Forest
            {
                Plr->EventTeleport(530, -1202.426636, 5313.692871, 33.774723);

            }break;

        case 18: //Shadowmoon Valley
            {
                Plr->EventTeleport(530, -2859.522461, 3182.34773, 10.008426);

            }break;
		case 99: //main menu
			{
				objmgr.CreateGossipMenuForPlayer(&Menu, pCreature->GetGUID(), 1, Plr);

				Menu->AddItem(5, "Set Bindpoint Here", 98);
				if (Plr->GetTeam() > 0) 
				{ Menu->AddItem(0, "Horde Cities", 1); } 
				else
				{ Menu->AddItem(0, "Alliance Cities", 2); }
				Menu->AddItem(0, "Outland Locations", 3);
				Menu->SendTo(Plr);
			}
        }
    }
};

void SetupCustom_Teleporters(ScriptMgr * mgr)
{
    /* Teleporter List */
    mgr->register_gossip_script(30001, &TeleportNPC::Create);          // Osciron
}

im gathering ill need c++ editing program again sigh oh can i ask what does tortise do ??
 
If you dont compile on ur own ... its imposible to do this ... you need to compile it together with the whole ascent source code ... otherwise it wont work ... to compile you'l need visual studio 2005 ... u can get that @ the microsoft site or by googling its completely free ... along with that u need the SDK 2003 server addon .... otherwise ascent cant compile ... all of this can be found @ microsoft its free ...

U can get the source file from the svn link ... you need to open tortoise svn then go to the ascent branch and download the source there ....
 
Back