Hello & Welcome to our community. Is this your first visit? Register
Follow us on
Follow us on Facebook Follow us on Twitter Watch us on YouTube


MMOCoin

Likes Likes:  0
Results 1 to 3 of 3
  1. #1
    Banned

    Join Date
    Aug 2008
    Location
    Scotland
    Posts
    652
    Post Thanks / Like
    Rep Power
    0
    Reputation
    103

    [LUA] Faction Change


    Register to remove this ad
    Well, I've recently decided to try out LUA and make an NPC that allows a faction change. I've scripted it, however I'm not 100% sure if it works yet.

    Short explination...

    You have an NPC that allows a faction change to 1 of 4 pre-designated factions. You can change what factions are available, and what display ID's you can pick for each faction. Say you pick Horde, and your currently alliance, it'll give you the option of a list of Displays you'd like to be used for that factions. It also makes the other factions on the list change to "At War" so you can have new factions PvP'ing (But ofc, the factions are already In-game, like Argent Dawn etc)

    Like i said, not sure if it works yet, would be nice if someone could test and report back with any errors for me to fix.

    ----------

    Download

    Faction Change LUA - Pastebin

    ----------

    Code:
    --[[ 
            Changing a faction for a player
            This may or may not work. 
            Testing
        ]]
    
        
    -- Variables
    local NPC_ID = 50033
    
    -- On Triggers
    function GossipOnTalk(Unit, Event, player)
        Unit:GossipCreateMenu(100, player, 0)
        Unit:GossipMenuAddItem(0, "Alliance", 1, 0)
        Unit:GossipMenuAddItem(0, "Horde", 2, 0)
        Unit:GossipMenuAddItem(0, "Scourge", 3, 0)
        Unit:GossipMenuAddItem(0, "Worgen", 4, 0)
        Unit:GossipMenuAddItem(0, "I'd like another faction", 500, 0)
        Unit:GossipSendMenu(player)
    end
    
    function GossipOnSelect(Unit, Event, player, id, intid, code, pMisc)
        if (intid == 1) then
        Unit:GossipCreateMenu(100, player, 0)
        Unit:GossipMenuAddItem(0, "Male Human", 5, 0)
        Unit:GossipMenuAddItem(0, "Female Human", 6, 0)
        Unit:GossipMenuAddItem(0, "Male Dwarf", 7, 0)
        Unit:GossipMenuAddItem(0, "Female Dwarf", 8, 0)
        Unit:GossipMenuAddItem(0, "Male Gnome", 9, 0)
        Unit:GossipMenuAddItem(0, "Female Gnome", 10, 0)
        Unit:GossipMenuAddItem(0, "Male Night Elf", 11, 0)
        Unit:GossipMenuAddItem(0, "Female Night Elf", 12, 0)
        Unit:GossipMenuAddItem(0, "Male Draenei", 13, 0)
        Unit:GossipMenuAddItem(0, "Female Draenei", 14, 0)
        Unit:GossipMenuAddItem(0, "Male Orc", 15, 0)
        Unit:GossipMenuAddItem(0, "Female Orc", 16, 0)
        Unit:GossipMenuAddItem(0, "Male Undead", 17, 0)
        Unit:GossipMenuAddItem(0, "Female Undead", 18, 0)
        Unit:GossipMenuAddItem(0, "Male Troll", 19, 0)
        Unit:GossipMenuAddItem(0, "Female Troll", 20, 0)
        Unit:GossipMenuAddItem(0, "Male Tauren", 21, 0)
        Unit:GossipMenuAddItem(0, "Female Tauren", 22, 0)
        Unit:GossipMenuAddItem(0, "Male Blood Elf", 23, 0)
        Unit:GossipMenuAddItem(0, "Female Blood Elf", 24, 0)
        Unit:GossipMenuAddItem(0, "I'd like to join another faction", 500, 0)
        Unit:GossipSendMenu(player)    
                player:SetFaction(72)
                player:SetPlayerAtWar(76, 1)
                player:SetPlayerAtWar(528, 1)
                playerSetPlayerAtWar(68, 1)
                player:SendBroadcastMessage("Your now a member of the Alliance!")
                
        end
    end    
        if (intid == 2) then
        Unit:GossipCreateMenu(100, player, 0)
        Unit:GossipMenuAddItem(0, "Male Human", 25, 0)
        Unit:GossipMenuAddItem(0, "Female Human", 26, 0)
        Unit:GossipMenuAddItem(0, "Male Dwarf", 27, 0)
        Unit:GossipMenuAddItem(0, "Female Dwarf", 28, 0)
        Unit:GossipMenuAddItem(0, "Male Gnome", 29, 0)
        Unit:GossipMenuAddItem(0, "Female Gnome", 30, 0)
        Unit:GossipMenuAddItem(0, "Male Night Elf", 31, 0)
        Unit:GossipMenuAddItem(0, "Female Night Elf", 32, 0)
        Unit:GossipMenuAddItem(0, "Male Draenei", 33, 0)
        Unit:GossipMenuAddItem(0, "Female Draenei", 34, 0)
        Unit:GossipMenuAddItem(0, "Male Orc", 35, 0)
        Unit:GossipMenuAddItem(0, "Female Orc", 36, 0)
        Unit:GossipMenuAddItem(0, "Male Undead", 37, 0)
        Unit:GossipMenuAddItem(0, "Female Undead", 38, 0)
        Unit:GossipMenuAddItem(0, "Male Troll", 39, 0)
        Unit:GossipMenuAddItem(0, "Female Troll", 30, 0)
        Unit:GossipMenuAddItem(0, "Male Tauren", 41, 0)
        Unit:GossipMenuAddItem(0, "Female Tauren", 42, 0)
        Unit:GossipMenuAddItem(0, "Male Blood Elf", 43, 0)
        Unit:GossipMenuAddItem(0, "Female Blood Elf", 44, 0)
        Unit:GossipMenuAddItem(0, "I'd like to join another faction", 500, 0)
        Unit:GossipSendMenu(player)        
                player:SetFaction(76)
                player:SetPlayerAtWar(72, 1)
                player:SetPlayerAtWar(528, 1)
                player:SetPlayerAtWar(68, 1)
                player:SendBroadcastMessage("Your now a member of the Horde!")
                
        end
        
        if (intd == 3) then
        Unit:GossipCreateMenu(100, player, 0)
        Unit:GossipMenuAddItem(0, "Skeletal Soldier", 45, 0)
        Unit:GossipMenuAddItem(0, "Blighted Zombie", 46, 0)
        Unit:GossipMenuAddItem(0, "Darkfallen Archmage (Caster)", 47, 0)
        Unit:GossipMenuAddItem(0, "Darkfallen Blood Knight (Melee)", 48, 0)
        Unit:GossipMenuAddItem(0, "Servant of the Throne (Caster)", 49, 0)
        Unit:GossipMenuAddItem(0, "I'd like to join another faction", 500, 0)
        Unit:GossipSendMenu(player)        
                player:SetFaction(529)
                player:SetPlayerAtWar(72, 1)
                player:SetPlayerAtWar(76, 1)
                player:SetPlayerAtWar(68, 1)
                player:SendBroadcastMessage("Your now a member of the Scourge!")
                
        end
    
        if (intid == 4) then
        Unit:GossipCreateMenu(100, player, 0)
        Unit:GossipMenuAddItem(0, "Bloodmoon Worgen", 50, 0)
        Unit:GossipMenuAddItem(0, "Nightbane Worgen", 51, 0)
        Unit:GossipMenuAddItem(0, "I'd like to join another faction", 500, 0)
        Unit:GossipSendMenu(player)        
                player:SetFaction(68)
                player:SetPlayerAtWar(72, 1)
                player:SetPlayerAtWar(76, 1)
                player:SetPlayerAtWar(68, 1)
                player:SendBroadcastMessage("Your now a member of the Worgen!")
                
        end
    
    
    
    --[[ Changing Displays ]]--
    
    if (intid == 5) then
        player:SetModel(49)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    if (intid == 6) then
        player:SetModel(49)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    if (intid == 7) then
        player:SetModel(52)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 8) then
        player:SetModel(52)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 9) then
        player:SetModel(1563)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 10) then
        player:SetModel(1563)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 11) then
        player:SetModel(55)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 12) then
        player:SetModel(55)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 13) then
        player:SetModel(16125)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 14) then
        player:SetModel(16125)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 15) then
        player:SetModel(51)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 16) then
        player:SetModel(51)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 17) then
        player:SetModel(57)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 18) then
        player:SetModel(57)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 19) then
        player:SetModel(1478)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 20) then
        player:SetModel(1478)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 21) then
        player:SetModel(59)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 22) then
        player:SetModel(59)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 23) then
        player:SetModel(15476)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 24) then
        player:SetModel(15476)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 25) then
        player:SetModel(49)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 26) then
        player:SetModel(49)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 27) then
        player:SetModel(52)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 28) then
        player:SetModel(52)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 29) then
        player:SetModel(1563)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 30) then
        player:SetModel(1563)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 31) then
        player:SetModel(55)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 32) then
        player:SetModel(55)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 33) then
        player:SetModel(16125)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 34) then
        player:SetModel(16125)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 35) then
        player:SetModel(51)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 36) then
        player:SetModel(51)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 37) then
        player:SetModel(57)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 38) then
        player:SetModel(57)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 39) then
        player:SetModel(1478)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 40) then
        player:SetModel(1478)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 41) then
        player:SetModel(59)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    if (intid == 42) then
        player:SetModel(59)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    if (intid == 43) then
        player:SetModel(15476)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 44) then
        player:SetModel(15476)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 45) then
        player:SetModel(30616)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 46) then
        player:SetModel(10970)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 47) then
        player:SetModel(30713)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 48) then
        player:SetModel(31025)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    if (intid == 49) then
        player:SetModel(26919)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    
    if (intid == 50) then
        player:SetModel(26787)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
    end
    
    if (intid == 51) then
        player:SetModel(657)
            Unit:GossipCreateMenu(100, player, 0)
            Unit:GossipMenuAddItem(0, "I'd like another Race please.", 500, 0)
            Unit:GossipSendMenu(player)
            player:GossipComplete()
    end
    
    
    
    -- RegisterUnitEvents
    RegisterUnitGossipEvent(50033, 1, "GossipOnTalk")
    RegisterUnitGossipEvent(50033, 2, "GossipOnSelect")



    › See More: [LUA] Faction Change
    Last edited by Avidgamer; 13-03-10 at 10:48 AM.

  2. #2
    Banned

    Join Date
    Aug 2008
    Location
    Scotland
    Posts
    652
    Post Thanks / Like
    Rep Power
    0
    Reputation
    103
    Update

    Fixed a couple of errors. Should work as intended now.

  3. #3
    Sergeant
    Dr. Fallen's Avatar
    Join Date
    Mar 2010
    Location
    Turkey
    Posts
    74
    Post Thanks / Like
    Rep Power
    15
    Reputation
    64

    Register to remove this ad
    useful good for quests or bgS




  4. Related Threads - Scroll Down after related threads if you are only interested to view replies for above post/thread

 

 

Visitors found this page by searching for:

LUA changing faction

lua faction changet

Changing factions with LUA

playersetplayeratwar

arcemu lua change npc faction

SEO Blog

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
All times are GMT -5. The time now is 01:40 PM.
Powered by vBulletin® Copyright ©2000-2024, Jelsoft Enterprises Ltd.
See More links by ForumSetup.net. Feedback Buttons provided by Advanced Post Thanks / Like (Lite) - vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.
vBulletin Licensed to: MMOPro.org