当前位置:首页>>魔兽单机>>正文
T端修改玩家阵营和职业的脚本代码335WOTLK
2013-04-07 12:56:23 作者:网络 来源: 浏览次数:0
摘要:魔兽世界单机:T端修改玩家阵营和职业的脚本代码335WOTLK
此代码是一个用来修改玩家的阵营和职业的脚本代码。。适用于T端trinity 335 

/*
<--------------------------------------------------------------------------->
 - Developer(s): Ghostcrawler336
 - Complete: 100%
 - ScriptName: 'Faction / Race Changer' 
 - Comment: Untested
<--------------------------------------------------------------------------->
*/
#include "ScriptPCH.h"
 
enum  defines
{
 faction_token = 100, // Faction Change Token
 race_token = 100 // Race Change Token
};
 
class npc_changer : public CreatureScript
{
    public:
        npc_changer() : CreatureScript("npc_changer"){}
 
        bool OnGossipHello(Player * pPlayer, Creature * pCreature)
        {
            
            
            pPlayer->ADD_GOSSIP_ITEM(4, "Change My Race ", GOSSIP_SENDER_MAIN, 0);
            pPlayer->ADD_GOSSIP_ITEM(4, "Change My Faction", GOSSIP_SENDER_MAIN, 1);
            pPlayer->PlayerTalkClass->SendGossipMenu(9425, pCreature->GetGUID());
            return true;
        }
 
        bool OnGossipSelect(Player * Player, Creature * Creature, uint32 /*uiSender*/, uint32 uiAction)
        {
            if(!Player)
                return true;
 
            switch(uiAction)
            {
                case 0:
                    if(Player->HasItemCount(race_token, 1))
                    {
                        Player->DestroyItemCount(race_token, 1, true, false);
                        Player->SetAtLoginFlag(AT_LOGIN_CHANGE_RACE);
                        CharacterDatabase.PExecute("UPDATE characters SET at_login = at_login | '128' WHERE guid = %u", Player->GetGUID());
                        Player->GetSession()->SendNotification("You need to relog, to change your race!");
                        Player->PlayerTalkClass->SendCloseGossip();
                    }
                    else
                    {
                        Player->GetSession()->SendNotification("You need atleast one race change token!");
                        Player->PlayerTalkClass->SendCloseGossip();
                    }
                    break;
                case 1:
                    if(Player->HasItemCount(faction_token, 1))
                    {
                        Player->DestroyItemCount(faction_token, 1, true, false);
                        Player->SetAtLoginFlag(AT_LOGIN_CHANGE_FACTION);
                        CharacterDatabase.PExecute("UPDATE characters SET at_login = at_login | '64' WHERE guid = %u", Player->GetGUID());
                        Player->GetSession()->SendNotification("You need to relog, to change your faction!");
                        Player->PlayerTalkClass->SendCloseGossip();
 
                    }
 
                    else
                    {
                        Player->GetSession()->SendNotification("You need atleast one faction change token!");
                        Player->PlayerTalkClass->SendCloseGossip();
                    }
                    break;
            }
            return true;
        }
 
};
 
void AddSC_npc_changer()
{
    new npc_changer();
}


相关报道:

[关闭] [返回顶部]


  返回首页 | 最新资讯 | 资源下载 | 魔兽图片 | 单机文档 | 技术攻略 | 玩家视频
备案号:蜀ICP备2024062380号-1
免责声明:本网站为热爱怀旧WOW的玩家们建立的魔兽世界资料网站,仅供交流和学习使用,非盈利和商用.如有侵权之处,请联系我们,我们会在24小时内确认删除侵权内容,谢谢合作。
Copyright © 2024 - 2024 WOWAII.COM Corporation, All Rights Reserved

机器人国度