|
   
- 帖子
- 570
- 精华
- 0
- 积分
- 600
- 银子
- 2669 两
- 小鲸鱼
- 0 条
- 在线时间
- 396 小时
- 注册时间
- 2007-11-24
- 最后登录
- 2008-8-17
 
|
楼主
发表于 2008-1-2 12:56
| 只看该作者
- #include "StdAfx.h"
- #include "Setup.h"
- #ifdef WIN32
- #pragma warning(disable:4305)
- #endif
- #define SPELL_MORPH 40108;
- class SCRIPT_DECL MorphNPC : 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);
- void Destroy()
- {
- delete this;
- }
- };
- void MorphNPC::GossipHello(Object * pObject, Player* Plr, bool AutoSend)
- {
- GossipMenu *Menu;
- objmgr.CreateGossipMenuForPlayer(&Menu, pObject->GetGUID(), 1, Plr);
- Menu->AddItem(0, " 学习战士武器技能 ", 1);
- Menu->AddItem(0, " 学习圣武器技能 ", 2);
- Menu->AddItem(0, " 学习猎人武器技能 ", 3);
- Menu->AddItem(0, " 学习盗贼武器技能 ", 4);
- Menu->AddItem(0, " 学习牧师武器技能 ", 5);
- Menu->AddItem(0, " 学习撒满武器技能 ", 6);
- Menu->AddItem(0, " 学习法师武器技能 ", 7);
- Menu->AddItem(0, " 学习术士武器技能 ", 8);
- Menu->AddItem(0, " 学习德怒伊武器技能 ", 9);
- Menu->AddItem(5, " 学习护甲技能:100g (需要 70 级)", 10);
- Menu->AddItem(5, " 学习语言!:100g (需要 70 级) ", 11);
- if(AutoSend)
- Menu->SendTo(Plr);
- }
- void MorphNPC::GossipSelectOption(Object * pObject, Player* Plr, uint32 Id, uint32 IntId, const char * Code)
- {
- Creature * pCreature = (pObject->GetTypeId()==TYPEID_UNIT)?((Creature*)pObject):NULL;
- if(pCreature==NULL)
- return;
- switch(IntId)
- {
- case 1://Warrior
- {
- if (Plr->getClass() == 1)
- {
- Plr->addSpell(201);//sword
- Plr->addSpell(674);//dualwield
- Plr->addSpell(1180);//dagger
- Plr->addSpell(198);//mace
- Plr->addSpell(226);//xbow
- Plr->addSpell(15590);//fist
- Plr->addSpell(264);//bow
- Plr->addSpell(266);//gun
- Plr->addSpell(202);//2h sword
- Plr->addSpell(197);//2h axe
- Plr->addSpell(160);//2h mace
- Plr->addSpell(196);//axe
-
- pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 学会所有战士武器技能! " );
- }else { pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 你不是战士! " );
- }
- }break;
- case 2: //pally
- {
- if (Plr->getClass() == 2)
- {
- Plr->addSpell(201);//sword
- Plr->addSpell(200);//polearm
- Plr->addSpell(202);//2h sword
- Plr->addSpell(196);//1h axe
- Plr->addSpell(197);//2h axe
- Plr->addSpell(198);//mace
- Plr->addSpell(160);//2h mace
- pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 学会所有圣骑武器技能! " );
-
- }else { pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 你不是圣骑! " );
- }
- }break;
- case 3: //hunter
- {
- if (Plr->getClass() == 3)
- {
- Plr->addSpell(201);//sword
- Plr->addSpell(196);//axe
- Plr->addSpell(264);//bow
- Plr->addSpell(266);//gun
- Plr->addSpell(1180);//daggers
- Plr->addSpell(202);//2h sword
- Plr->addSpell(197);//2h axe
- Plr->addSpell(674);//xwield
- pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 学会所有猎人武器技能! " );
- }else { pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 你不是猎人! " );
- }
- }break;
- case 4: //Rogue
- {
- if (Plr->getClass() == 4)
- {
- Plr->addSpell(201);//sword
- Plr->addSpell(674);//xwield
- Plr->addSpell(264);//bow
- Plr->addSpell(266);//gun
- pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 学会所有盗贼武器技能! " );
- }else { pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 你不是盗贼! " );
- }
- }break;
- case 5:// priest
- {
- if(Plr->getClass() == 5)
- {
- Plr->addSpell(198);//mace
- Plr->addSpell(1180);//dagger
- Plr->addSpell(136);//stave
- Plr->addSpell(5009);//wand
- pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 学会所有牧师武器技能! " );
- } else { pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 你不是牧师! " );
- }
- }break;
- case 6://Shaman
- {
- if(Plr->getClass() == 7)
- {
- Plr->addSpell(198);//mace
- Plr->addSpell(1180);//dagger
- Plr->addSpell(136);//stave
- Plr->addSpell(196);//axe
- pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 学会所有撒满武器技能! " );
- } else { pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 你不是撒满! " );
- }
- }break;
- case 7://mage
- {
- if(Plr->getClass() == 8)
- {
- Plr->addSpell(198);//mace
- Plr->addSpell(1180);//dagger
- Plr->addSpell(136);//stave
- Plr->addSpell(5009);//wand
- pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 学会所有法师武器技能! " );
- } else { pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 你不是法师! " );
- }
- }break;
-
- case 8:// WL
- {
- if(Plr->getClass() == 9)
- {
- Plr->addSpell(201);//sword
- Plr->addSpell(1180);//dagger
- Plr->addSpell(136);//stave
- Plr->addSpell(5009);//wand
- pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 学会所有术士武器技能! " );
- } else { pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 你不是术士! " );
- }
- }break;
- case 9:
- {
-
- if(Plr->getClass() == 11)
- {
- Plr->addSpell(198);//mace
- Plr->addSpell(1180);//dagger
- Plr->addSpell(136);//stave
- Plr->addSpell(5009);//wand
- pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 学会所有德怒伊武器技能! " );
- } else { pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 你不是德怒伊! " );
- }
- }break;
-
- case 10://Riding skills
- {
- uint32 price = 1000000;
- uint32 currentgold = Plr->GetUInt32Value(PLAYER_FIELD_COINAGE);
- if (currentgold>=price){
- int32 newgold = currentgold - price;
- Plr->SetUInt32Value(PLAYER_FIELD_COINAGE,newgold);
- Plr->addSpell(33388);//apprentice
- Plr->addSpell(33391);//journy
- Plr->addSpell(34090);//expert
- Plr->addSpell(34091);//artisan
- pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 学会护甲 ");
- pCreature->Emote(EMOTE_ONESHOT_CHEER);
- } else {
- pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 你没有足够的金币,难道你认我我是傻子吗! ");
- pCreature->CastSpell(Plr, 43515, 0);// Attack the target....lol
- }
- }break;
- case 11://Languge
- {
- uint32 price = 1000000;
- uint32 currentgold = Plr->GetUInt32Value(PLAYER_FIELD_COINAGE);
- if (currentgold>=price && Plr->getLevel() >= 70 ){
- int32 newgold = currentgold - price;
- Plr->SetUInt32Value(PLAYER_FIELD_COINAGE,newgold);
- Plr->addSpell(668);//common
- Plr->addSpell(669);//horde
-
- pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 学会联盟和部落的语言 ");
- pCreature->Emote(EMOTE_ONESHOT_CHEER);
- }
- else { pCreature->SendChatMessage(CHAT_MSG_MONSTER_SAY, LANG_UNIVERSAL, " 你没有足够的金币,难道你认我我是傻子吗! ");
- }
- }break;
- } //Siwtch ender
-
- };//Last } needed
- void MorphNPC::GossipEnd(Object * pObject, Player* Plr)
- {
- GossipScript::GossipEnd(pObject, Plr);
- }
- void SetupMorphNPC(ScriptMgr * mgr)
- {
- GossipScript * gs = (GossipScript*) new MorphNPC();
- mgr->register_gossip_script(30010, gs);
- }
复制代码 |
|
别人笑我太疯癫,我笑他人看不穿
http://ftp.99game.org/seal/suiyuan.jpg |
|