Informatikai Barkács Fórum

WORLD OF WARCRAFT SZERVER => Script => A témát indította: zack01 Dátum 2011 július 01, 07:49:50 DÉLUTÁN

Cím: Token váltó
Írta: zack01 Dátum 2011 július 01, 07:49:50 DÉLUTÁN
bocsi az új témáért, de úgy gondoltam ez sokaknak segíthet.
Valaki tudna nekem segíteni abba,hogy hogyan lehet gossip menüvel váltó npc-t csinálni?(pl. 15000 honor legyen 50 BOJ.)
Ha ez egyáltalán lehetséges akk plz help!
Cím: Re:Token váltó
Írta: IrOn Dátum 2011 július 01, 07:58:56 DÉLUTÁN
miért nem csinálod meg questtel? (az egyszerübb)
Cím: Re:Token váltó
Írta: zack01 Dátum 2011 július 01, 09:58:18 DÉLUTÁN
gossip egyszerűbb a playereknek..
ezért gondoltam gossippal, de ha nem lehet maradok a questnnél
Cím: Re:Token v
Írta: Davidoff Dátum 2011 július 02, 04:55:41 DÉLUTÁN
Idézetet írta: zack01 Dátum 2011 július 01, 09:58:18 DÉLUTÁN
gossip egyszer?bb a playereknek..
ez
Cím: Re:Token váltó
Írta: Cleaver93 Dátum 2011 július 03, 11:08:08 DÉLELŐTT
Csináld, Questel, én is azzal csináltam, kicsit macerás, vagy vendorral, én elkeztem questel, de szentem egyszerűbb egy vendorral pl: 12000 honor legyen 50 BOJ =  .npc add item 29434 0 0 2588. de ehez át kell álítanod hogy a BOJ-t 50-es csomagban lehessen állítani, de egyszerűbb kissebb packban, pl: 5-ösével adni, és a player majd kiválasztja hogy mennyit szeretne venni, csak a stackable-t kell átállítani a DB-be és kész...
Cím: Re:Token váltó
Írta: Archangel Dátum 2011 július 03, 12:43:08 DÉLUTÁN
//Item swap npc Created by Chronic
//

#include "ScriptPCH.h"

#define SWAP_ITEM1_GIVE   111 //Írd át a 111-es számokat arra az id-re, amire cserélni szeretnél. a GIVE amit ad, a TAKE amit elvesz.
#define SWAP_ITEM1_TAKE   111
#define SWAP_ITEM2_GIVE   111
#define SWAP_ITEM2_TAKE   111
#define SWAP_ITEM3_GIVE   111
#define SWAP_ITEM3_TAKE   111
#define SWAP_ITEM4_GIVE   111
#define SWAP_ITEM4_TAKE   111
#define SWAP_ITEM5_GIVE   111
#define SWAP_ITEM5_TAKE   111
#define SWAP_ITEM6_GIVE   111
#define SWAP_ITEM6_TAKE   111
#define SWAP_ITEM7_GIVE   111
#define SWAP_ITEM7_TAKE   111
#define SWAP_ITEM8_GIVE   111
#define SWAP_ITEM8_TAKE   111
#define SWAP_ITEM9_GIVE   111
#define SWAP_ITEM9_TAKE   111
#define SWAP_ITEM10_GIVE   111
#define SWAP_ITEM10_TAKE   111

class npc_Swap_Item : public CreatureScript
{
public:
    npc_Swap_Item() : CreatureScript("npc_Swap_Item") { }

    bool OnGossipHello(Player *player, Creature *_creature)
    {
        if (player->isInCombat())
        {
            player->CLOSE_GOSSIP_MENU();
            _creature->MonsterWhisper("Combatban vagy!", player->GetGUID());
            return true;
        }
        else
        {
                player->ADD_GOSSIP_ITEM( 10, "CSERE 1"                    , GOSSIP_SENDER_MAIN, 22);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 2"                              , GOSSIP_SENDER_MAIN, 24);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 3"                          , GOSSIP_SENDER_MAIN, 26);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 4"                               , GOSSIP_SENDER_MAIN, 28);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 5"                         , GOSSIP_SENDER_MAIN, 30);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 6"                          , GOSSIP_SENDER_MAIN, 32);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 7"                           , GOSSIP_SENDER_MAIN, 34);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 8"                             , GOSSIP_SENDER_MAIN, 36);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 9"                         , GOSSIP_SENDER_MAIN, 38);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 10"                         , GOSSIP_SENDER_MAIN, 40);
        }

        player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
        return true;
    }

    bool TryToSellItem(Player *player, Creature *_creature, unsigned int reqID, unsigned int rewardID)
    {
        if (player->HasItemCount( reqID, 1, false ))
        {
            player->CLOSE_GOSSIP_MENU();

            //no room
            uint32 noSpaceForCount = 0;

            //No room in bags
            ItemPosCountVec dest;
            uint8 msg = player->CanStoreNewItem( NULL_BAG, NULL_SLOT, dest, rewardID, 1, &noSpaceForCount );
             unsigned int count = 1;
            if( msg != EQUIP_ERR_OK )                               
                count -= noSpaceForCount;

            if( count == 0 || dest.empty())                         
            {
                ChatHandler(player).PSendSysMessage(LANG_ITEM_CANNOT_CREATE, rewardID, noSpaceForCount );
                return false;
            }
            player->DestroyItemCount(reqID, 1, true, false);
            Item* item = player->StoreNewItem( dest, rewardID, true, Item::GenerateItemRandomPropertyId(rewardID));

            return true;
        }

        player->CLOSE_GOSSIP_MENU();
        _creature->MonsterWhisper("Item Traded!", player->GetGUID());
        return false;
    }

    bool OnGossipSelect(Player *player, Creature *_creature, uint32 sender, uint32 uiAction)
    {
        if (sender == GOSSIP_SENDER_MAIN)
        {
            player->PlayerTalkClass->ClearMenus();
            switch(uiAction)
            {
            case 11://[Main Menu]
                player->ADD_GOSSIP_ITEM( 10, "CSERE 1"                    , GOSSIP_SENDER_MAIN, 22);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 2"                              , GOSSIP_SENDER_MAIN, 24);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 3"                          , GOSSIP_SENDER_MAIN, 26);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 4"                               , GOSSIP_SENDER_MAIN, 28);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 5"                         , GOSSIP_SENDER_MAIN, 30);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 6"                          , GOSSIP_SENDER_MAIN, 32);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 7"                           , GOSSIP_SENDER_MAIN, 34);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 8"                             , GOSSIP_SENDER_MAIN, 36);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 9"                         , GOSSIP_SENDER_MAIN, 38);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 10"                         , GOSSIP_SENDER_MAIN, 40);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 22://Swap Item 1
                return TryToSellItem(player, _creature, SWAP_ITEM1_TAKE, SWAP_ITEM1_GIVE);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 24://Swap Item 2
                return TryToSellItem(player, _creature, SWAP_ITEM2_TAKE, SWAP_ITEM2_GIVE);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 26://Swap Item 3
                return TryToSellItem(player, _creature, SWAP_ITEM3_TAKE, SWAP_ITEM3_GIVE);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 28://Swap Item 4
                return TryToSellItem(player, _creature, SWAP_ITEM4_TAKE, SWAP_ITEM4_GIVE);


                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 30://Swap Item 5
                return TryToSellItem(player, _creature, SWAP_ITEM5_TAKE, SWAP_ITEM5_GIVE);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 32://Swap Item 6
                return TryToSellItem(player, _creature, SWAP_ITEM6_TAKE, SWAP_ITEM6_GIVE);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 34://Swap Item 7
                return TryToSellItem(player, _creature, SWAP_ITEM7_TAKE, SWAP_ITEM7_GIVE);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 36://Swap Item 8
                return TryToSellItem(player, _creature, SWAP_ITEM8_TAKE, SWAP_ITEM8_GIVE);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 38://Swap Item 9
                return TryToSellItem(player, _creature, SWAP_ITEM9_TAKE, SWAP_ITEM9_GIVE);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 40://Swap Item 10
                return TryToSellItem(player, _creature, SWAP_ITEM10_TAKE, SWAP_ITEM10_GIVE);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;
   }
    }
};

void AddSC_npcSwap_Item()
{
    new npc_Swap_Item();
}


Main menuba "CSERE 1" et átírod, az id-ket is. Kommentbe le van írva az elején. Ha nem sikerül szólj.
Cím: Re:Token váltó
Írta: zack01 Dátum 2011 július 04, 10:33:36 DÉLUTÁN
ez most hülye kérdés lesz!
ezt hova kell importálni?<kicsit még kezdő vok ilyen téren>
Cím: Re:Token váltó
Írta: Archangel Dátum 2011 július 04, 10:51:55 DÉLUTÁN
Ha revisiont forgatsz be, akkor bele kell tenned ide:
X:\[TRINITY FORRÁSKÓD MAPPA NEVE]\src\server\scripts\Custom

Utána bele kell írnod a cmakelists.txt fájlba.
X:\[TRINITY FORRÁSKÓD MAPPA NEVE]\src\server\scripts\Custom\CMakeLists.txt

set(scripts_STAT_SRCS
 ${scripts_STAT_SRCS}
Custom/TokenTrader.cpp
)

message("  -> Prepared: Custom")

Itt majd a váltód nevét be kell helyettesítened, melyet egy .cpp fájlba másoltál és nevet adtál neki. A példában a "TokenTrader" nevet választottam.
Ezek után már csak Cmake-el elkészíted a Projectet, és leforgatod a compileredbe. (Visual Studio C++)

Ennyi  ;)

SZERK.: Elnézést, de kimaradt az a rész, hogy be kell írni a scriptet a scriptloadrbe.
X:\[TRINITY FORRÁSKÓD MAPPA NEVE]\src\server\game\Scripting\ScriptLoader.cpp

Ezket a sorokat:

#ifdef SCRIPTS
/* This is where custom scripts' loading functions should be declared. */

#endif

void AddCustomScripts()
{
#ifdef SCRIPTS
    /* This is where custom scripts should be added. */

#endif
}

Cseréljük ki ezekre:

#ifdef SCRIPTS
/* This is where custom scripts' loading functions should be declared. */
AddSC_npc_Swap_Item();
#endif

void AddCustomScripts()
{
#ifdef SCRIPTS
    /* This is where custom scripts should be added. */
void AddSC_npc_Swap_Item();
#endif
}
Cím: Re:Token váltó
Írta: zack01 Dátum 2011 augusztus 30, 05:01:11 DÉLUTÁN
Ha ehhez még hozzá akarok adni vagy kivenni belőle akkor mennyit kell módosítanom? ???
Cím: Re:Token váltó
Írta: ident Dátum 2011 augusztus 31, 08:31:42 DÉLELŐTT
Idézetet írta: zack01 Dátum 2011 augusztus 30, 05:01:11 DÉLUTÁN
Ha ehhez még hozzá akarok adni vagy kivenni belőle akkor mennyit kell módosítanom? ???

A define sorokban a GIVE/TAKE-hez újat adni

#define SWAP_ITEM11_GIVE   111
#define SWAP_ITEM11_TAKE   111

és

player->ADD_GOSSIP_ITEM( 10, "CSERE 11"                              , GOSSIP_SENDER_MAIN, 42);

és

           case 42://Swap Item 11
               return TryToSellItem(player, _creature, SWAP_ITEM11_TAKE, SWAP_ITEM11_GIVE);

               player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());        
               break;

ehhez is, a számozást látod a mintában, de átírtam itt is.

Átrakom script témába.
Cím: Re:Token váltó
Írta: Endurance Dátum 2012 augusztus 18, 12:11:57 DÉLELŐTT
Sziasztok!

A következő problémám van. Szervert szeretnék leforgatni és betettem egy Costum scriptet, úgy ahogy itt a fórumon le van írva ( http://infobarkacs.hu/index.php/topic,6631.0.html ). Viszont a CMake hibát dob ki.. :(.

1 Kép: http://postimage.org/image/7ansoapef/

2 Kép (CMake): http://i46.tinypic.com/sxhona.jpg

Miért dobja ki az Error t? Ha valaki tudna segíteni megköszönném.

Cím: Re:Token váltó
Írta: zerus Dátum 2012 augusztus 18, 02:04:19 DÉLUTÁN
Idézetet írta: Endurance Dátum 2012 augusztus 18, 12:11:57 DÉLELŐTT
Sziasztok!

A következő problémám van. Szervert szeretnék leforgatni és betettem egy Costum scriptet, úgy ahogy itt a fórumon le van írva ( http://infobarkacs.hu/index.php/topic,6631.0.html ). Viszont a CMake hibát dob ki.. :(.

1 Kép: http://postimage.org/image/7ansoapef/

2 Kép (CMake): http://i46.tinypic.com/sxhona.jpg

Miért dobja ki az Error t? Ha valaki tudna segíteni megköszönném.

A második képen tisztán látszódik hogy mi a baj. Nem találja a forrás fájlt, rosszul adtad meg az útvonalat.
Ami az első képen is látszódik, mivel a cmake-ben Custom/akármi.cpp útvonalt adtál meg, miközben egymás mellett van a két fájl.
Cím: Re:Token váltó
Írta: Endurance Dátum 2012 augusztus 18, 02:25:28 DÉLUTÁN
A probléma az volt, hogy nem cpp hanem cc volt a fájl. Megoldódott
Cím: Re:Token váltó
Írta: Dark Dátum 2012 augusztus 21, 06:47:47 DÉLUTÁN
Sziasztok nekem is van olyan problémám hogy lehet én vagyok a hülye biztos de

itt van a script ugye :


//Item swap npc Created by Chronic
//

#include "ScriptPCH.h"

#define SWAP_ITEM1_GIVE   38186 //Írd át a 111-es számokat arra az id-re, amire cserélni szeretnél. a GIVE amit ad, a TAKE amit elvesz.
#define SWAP_ITEM1_TAKE   20560
#define SWAP_ITEM2_GIVE   38186
#define SWAP_ITEM2_TAKE   20558
#define SWAP_ITEM3_GIVE   38186
#define SWAP_ITEM3_TAKE   20559
#define SWAP_ITEM4_GIVE   38186
#define SWAP_ITEM4_TAKE   29024
#define SWAP_ITEM5_GIVE   20560
#define SWAP_ITEM5_TAKE   38186
#define SWAP_ITEM6_GIVE   20558
#define SWAP_ITEM6_TAKE   38186
#define SWAP_ITEM7_GIVE   20559
#define SWAP_ITEM7_TAKE   38186
#define SWAP_ITEM8_GIVE   29024
#define SWAP_ITEM8_TAKE   38186
#define SWAP_ITEM9_GIVE   49426
#define SWAP_ITEM9_TAKE   47241
#define SWAP_ITEM10_GIVE   47241
#define SWAP_ITEM10_TAKE   49426

class npc_Swap_Item : public CreatureScript
{
public:
    npc_Swap_Item() : CreatureScript("npc_Swap_Item") { }

    bool OnGossipHello(Player *player, Creature *_creature)
    {
        if (player->isInCombat())
        {
            player->CLOSE_GOSSIP_MENU();
            _creature->MonsterWhisper("Combatban vagy!", player->GetGUID());
            return true;
        }
        else
        {
                player->ADD_GOSSIP_ITEM( 10, "CSERE 1"                    , GOSSIP_SENDER_MAIN, 22);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 2"                              , GOSSIP_SENDER_MAIN, 24);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 3"                          , GOSSIP_SENDER_MAIN, 26);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 4"                               , GOSSIP_SENDER_MAIN, 28);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 5"                         , GOSSIP_SENDER_MAIN, 30);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 6"                          , GOSSIP_SENDER_MAIN, 32);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 7"                           , GOSSIP_SENDER_MAIN, 34);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 8"                             , GOSSIP_SENDER_MAIN, 36);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 9"                         , GOSSIP_SENDER_MAIN, 38);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 10"                         , GOSSIP_SENDER_MAIN, 40);
        }

        player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
        return true;
    }

    bool TryToSellItem(Player *player, Creature *_creature, unsigned int reqID, unsigned int rewardID)
    {
        if (player->HasItemCount( reqID, 1, false ))
        {
            player->CLOSE_GOSSIP_MENU();

            //no room
            uint32 noSpaceForCount = 0;

            //No room in bags
            ItemPosCountVec dest;
            uint8 msg = player->CanStoreNewItem( NULL_BAG, NULL_SLOT, dest, rewardID, 1, &noSpaceForCount );
             unsigned int count = 1;
            if( msg != EQUIP_ERR_OK )                               
                count -= noSpaceForCount;

            if( count == 0 || dest.empty())                         
            {
                ChatHandler(player).PSendSysMessage(LANG_ITEM_CANNOT_CREATE, rewardID, noSpaceForCount );
                return false;
            }
            player->DestroyItemCount(reqID, 1, true, false);
            Item* item = player->StoreNewItem( dest, rewardID, true, Item::GenerateItemRandomPropertyId(rewardID));

            return true;
        }

        player->CLOSE_GOSSIP_MENU();
        _creature->MonsterWhisper("Item Traded!", player->GetGUID());
        return false;
    }

    bool OnGossipSelect(Player *player, Creature *_creature, uint32 sender, uint32 uiAction)
    {
        if (sender == GOSSIP_SENDER_MAIN)
        {
            player->PlayerTalkClass->ClearMenus();
            switch(uiAction)
            {
            case 11://[Main Menu]
                player->ADD_GOSSIP_ITEM( 10, "CSERE 1"                    , GOSSIP_SENDER_MAIN, 22);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 2"                              , GOSSIP_SENDER_MAIN, 24);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 3"                          , GOSSIP_SENDER_MAIN, 26);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 4"                               , GOSSIP_SENDER_MAIN, 28);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 5"                         , GOSSIP_SENDER_MAIN, 30);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 6"                          , GOSSIP_SENDER_MAIN, 32);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 7"                           , GOSSIP_SENDER_MAIN, 34);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 8"                             , GOSSIP_SENDER_MAIN, 36);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 9"                         , GOSSIP_SENDER_MAIN, 38);
                player->ADD_GOSSIP_ITEM( 10, "CSERE 10"                         , GOSSIP_SENDER_MAIN, 40);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 22://Swap Item 1
                return TryToSellItem(player, _creature, SWAP_ITEM1_TAKE, SWAP_ITEM1_GIVE);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 24://Swap Item 2
                return TryToSellItem(player, _creature, SWAP_ITEM2_TAKE, SWAP_ITEM2_GIVE);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 26://Swap Item 3
                return TryToSellItem(player, _creature, SWAP_ITEM3_TAKE, SWAP_ITEM3_GIVE);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 28://Swap Item 4
                return TryToSellItem(player, _creature, SWAP_ITEM4_TAKE, SWAP_ITEM4_GIVE);


                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 30://Swap Item 5
                return TryToSellItem(player, _creature, SWAP_ITEM5_TAKE, SWAP_ITEM5_GIVE);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 32://Swap Item 6
                return TryToSellItem(player, _creature, SWAP_ITEM6_TAKE, SWAP_ITEM6_GIVE);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 34://Swap Item 7
                return TryToSellItem(player, _creature, SWAP_ITEM7_TAKE, SWAP_ITEM7_GIVE);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 36://Swap Item 8
                return TryToSellItem(player, _creature, SWAP_ITEM8_TAKE, SWAP_ITEM8_GIVE);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 38://Swap Item 9
                return TryToSellItem(player, _creature, SWAP_ITEM9_TAKE, SWAP_ITEM9_GIVE);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;

            case 40://Swap Item 10
                return TryToSellItem(player, _creature, SWAP_ITEM10_TAKE, SWAP_ITEM10_GIVE);

                player->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, _creature->GetGUID());         
                break;
   }
    }
};

void AddSC_npcSwap_Item()
{
    new npc_Swap_Item();
}


és az lenne a gondom hogy,
például azt szeretném hogy ne 1 db. itemért cseréljen 1 et hanem pl 2 vegyen el és 1 et adjon azt hogy lehet beállítani ?
Cím: Re:Token váltó
Írta: Azzeroth Dátum 2014 december 12, 07:24:31 DÉLUTÁN
Üdv.

Nekem lenne egy olyan kérdésem, hogy mi van akkor, ha például:
Egy értéket akarok kiolvasni adatbázisból, perpillanat kredit és azt akarom mondjuk token-re váltani?
Vagy Arena/Honor pontot tokenné?
Ebben tudna valaki segíteni?
Megköszönnöm!!