• 🎉 Hey there! I've just launched my brand new server voting platform — Metin2 P Servers 🚀

Not answered Questing Problem, functions not work

Member
Jun
Threads
1
18
0
1

AD: Mt2009 - Mobile & PC - 30 January 2026 CHECK THE PRESENTATION!

Hi friends, i have a great problem, my quest:

Code:
quest gm_panel begin
    state start begin
        when letter with pc.is_gm() begin
            send_letter("GM: Adminpanel")
        end

        when info or button with pc.is_gm() begin
            function mainmenu()
                say_title("GM: Adminpanel")
                say("")
                say_reward("Bitte wähle deine Option")
                local mainmenu = select("GM Sets","GM Menü", "Player Management", "Game Settings", "Event Panel", "Abbrechen")
                if mainmenu == 1 then
                    gm_panel.gmsetsmenu()
                elseif mainmenu == 2 then
                    gm_panel.gmmenu()
                elseif mainmenu == 3 then
                    gm_panel.playermanagement()
                elseif mainmenu == 4 then
                    gm_panel.gamesettings()
                elseif mainmenu == 5 then
                    gm_panel.eventpanel()
                elseif mainmenu == 6 then
                    return
                end
            end

            -- Beginn von GM Sets
            function gmsetsmenu() -- GM Sets Seite 1
                say_title("GM: Adminpanel - GM Sets (1)")
                say("")
                local gmsetsmenu = select("GM Items geben", "P Skills geben", "Millitärgaul geben", "Reittier rufen", "Frisuren geben", "Weiter","Zurück", "Abbrechen")
                if gmsetsmenu == 1 then -- GM Items geben
                    gm_panel.gmgiveitems()
                elseif gmsetsmenu == 2 then -- P Skills geben
                    gm_panel.pskills()
                elseif gmsetsmenu == 3 then -- Millitärgaul geben
                    gm_panel.milligaul()
                elseif gmsetsmenu == 4 then -- Reittiere rufen
                    gm_panel.reittiere()
                elseif gmsetsmenu == 5 then -- Frisuren geben
                    gm_panel.frisuren()
                elseif gmsetsmenu == 6 then -- Weiter
                    gm_panel.gmsetsmenu2()
                elseif gmsetsmenu == 7 then -- Zurück
                    gm_panel.mainmenu()
                elseif gmsetsmenu == 8 then -- Abbrechen
                    return
                end
            end

            function gmsetsmenu2() -- GM Sets Seite 2
                say_title("GM: Adminpanel - GM Sets (2)")
                say("")
                local gmsetsmenu2 = select("Char Bonus geben", "Rang ändern", "Zurück", "Abbrechen")
                if gmsetsmenu2 == 1 then -- Char Bonus geben
                    gm_panel.charbonus()
                elseif gmsetsmenu2 == 2 then -- Rang ändern
                    gm_panel.rang_aendern()
                elseif gmsetsmenu2 == 3 then -- Zurück
                    gm_panel.gmsetsmenu()
                elseif gmsetsmenu2 == 4 then -- Abbrechen
                    return
                end
            end

            function gmgiveitems() -- Items geben Function
                if pc.get_job() == 0 then -- Krieger Item Set
                    pc.give_item2("40002", 1)
                    pc.give_item2("40003", 1)
                    pc.give_item2("189", 1)
                    pc.give_item2("279", 1)
                    pc.give_item2("11299", 1)
                    pc.give_item2("12019", 1)
                    pc.give_item2("14229", 1)
                    pc.give_item2("16229", 1)
                    pc.give_item2("15419", 1)
                    pc.give_item2("17229", 1)
                    pc.give_item2("12289", 1)
                    pc.give_item2("13149", 1)
                    chat("Du hast das Krieger Item Set erhalten.")
                    send_letter("GM: Adminpanel")
                elseif pc.get_job() == 1 then -- Ninja Item Set
                    pc.give_item2("40002", 1)
                    pc.give_item2("40003", 1)
                    pc.give_item2("1139", 1)
                    pc.give_item2("4049", 1)
                    pc.give_item2("2179", 1)
                    pc.give_item2("2169", 1)
                    pc.give_item2("12029", 1)
                    pc.give_item2("11499", 1)
                    pc.give_item2("14229", 1)
                    pc.give_item2("16229", 1)
                    pc.give_item2("15419", 1)
                    pc.give_item2("17229", 1)
                    pc.give_item2("12409", 1)
                    pc.give_item2("13149", 1)
                    chat("Du hast das Ninja Item Set erhalten.")
                    send_letter("GM: Adminpanel")
                elseif pc.get_job() == 2 then -- Sura Item Set
                    pc.give_item2("40002", 1)
                    pc.give_item2("40003", 1)
                    pc.give_item2("12039", 1)
                    pc.give_item2("11699", 1)
                    pc.give_item2("14229", 1)
                    pc.give_item2("16229", 1)
                    pc.give_item2("15419", 1)
                    pc.give_item2("17229", 1)
                    pc.give_item2("12549", 1)
                    pc.give_item2("13149", 1)
                    pc.give_item2("289", 1)
                    pc.give_item2("3129", 1)
                    pc.give_item2("279", 1)
                    chat("Du hast das Sura Item Set erhalten.")
                    send_letter("GM: Adminpanel")
                elseif pc.get_job() == 3 then -- Schamane Item Set
                    pc.give_item2("40002", 1)
                    pc.give_item2("40003", 1)
                    pc.give_item2("12049", 1)
                    pc.give_item2("11899", 1)
                    pc.give_item2("14229", 1)
                    pc.give_item2("16229", 1)
                    pc.give_item2("15419", 1)
                    pc.give_item2("17229", 1)
                    pc.give_item2("12689", 1)
                    pc.give_item2("13149", 1)
                    pc.give_item2("5129", 1)
                    pc.give_item2("7199", 1)
                    chat("Du hast das Schamanen Item Set erhalten.")
                    send_letter("GM: Adminpanel")
                end
            end

            function pskills() -- P Skills geben
                if pc.get_job() == 0 then -- Krieger Skills
                    pc.set_skill_level(1, 40)
                    pc.set_skill_level(2, 40)
                    pc.set_skill_level(3, 40)
                    pc.set_skill_level(4, 40)
                    pc.set_skill_level(5, 40)
                    pc.set_skill_level(137, 20)
                    pc.set_skill_level(138, 20)
                    pc.set_skill_level(139, 20)
                    pc.set_skill_level(131, 10)
                    pc.set_skill_level(129, 40)
                    pc.set_skill_level(128, 20)
                    pc.set_skill_level(130, 21)
                    pc.set_skill_level(127, 20)
                    pc.set_skill_level(126, 20)
                    pc.set_skill_level(124, 40)
                    pc.set_skill_level(121, 40)
                    pc.set_skill_level(122, 2)
                    pc.set_skill_level(17, 40)
                    pc.set_skill_level(18, 40)
                    pc.set_skill_level(19, 40)
                    pc.set_skill_level(20, 40)
                    pc.set_skill_level(16, 40)
                    chat("Dir wurden P Skills gegeben.")
                    send_letter("GM: Adminpanel")
                elseif pc.get_job() == 1 then -- Ninja Skills
                    pc.set_skill_level(46, 40)
                    pc.set_skill_level(47, 40)
                    pc.set_skill_level(48, 40)
                    pc.set_skill_level(49, 40)
                    pc.set_skill_level(50, 40)
                    pc.set_skill_level(137, 20)
                    pc.set_skill_level(138, 20)
                    pc.set_skill_level(139, 20)
                    pc.set_skill_level(140, 20)
                    pc.set_skill_level(131, 10)
                    pc.set_skill_level(130, 21)
                    pc.set_skill_level(129, 40)
                    pc.set_skill_level(128, 20)
                    pc.set_skill_level(127, 20)
                    pc.set_skill_level(126, 20)
                    pc.set_skill_level(124, 40)
                    pc.set_skill_level(121, 40)
                    pc.set_skill_level(122, 2)
                    pc.set_skill_level(49, 40)
                    pc.set_skill_level(50, 40)
                    pc.set_skill_level(48, 40)
                    pc.set_skill_level(47, 40)
                    pc.set_skill_level(46, 40)
                    chat("Dir wurden P Skills gegeben.")
                    send_letter("GM: Adminpanel")
                elseif pc.get_job() == 2 then -- Sura Skills
                    pc.set_skill_level(61, 40)
                    pc.set_skill_level(62, 40)
                    pc.set_skill_level(63, 40)
                    pc.set_skill_level(64, 40)
                    pc.set_skill_level(65, 40)
                    pc.set_skill_level(66, 40)
                    pc.set_skill_level(137, 20)
                    pc.set_skill_level(138, 20)
                    pc.set_skill_level(139, 20)
                    pc.set_skill_level(130, 21)
                    pc.set_skill_level(131, 10)
                    pc.set_skill_level(129, 40)
                    pc.set_skill_level(128, 20)
                    pc.set_skill_level(127, 20)
                    pc.set_skill_level(126, 20)
                    pc.set_skill_level(124, 40)
                    pc.set_skill_level(121, 40)
                    pc.set_skill_level(122, 2)
                    pc.set_skill_level(76, 40)
                    pc.set_skill_level(77, 40)
                    pc.set_skill_level(78, 40)
                    pc.set_skill_level(79, 40)
                    pc.set_skill_level(80, 40)
                    pc.set_skill_level(81, 40)
                    chat("Dir wurden P Skills gegeben.")
                    send_letter("GM: Adminpanel")
                elseif pc.get_job() == 3 then -- Schamane Skills
                    pc.set_skill_level(91, 40)
                    pc.set_skill_level(92, 40)
                    pc.set_skill_level(93, 40)
                    pc.set_skill_level(94, 40)
                    pc.set_skill_level(95, 40)
                    pc.set_skill_level(96, 40)
                    pc.set_skill_level(137, 20)
                    pc.set_skill_level(138, 20)
                    pc.set_skill_level(139, 20)
                    pc.set_skill_level(131, 10)
                    pc.set_skill_level(130, 21)
                    pc.set_skill_level(129, 40)
                    pc.set_skill_level(128, 20)
                    pc.set_skill_level(127, 20)
                    pc.set_skill_level(126, 20)
                    pc.set_skill_level(124, 40)
                    pc.set_skill_level(121, 40)
                    pc.set_skill_level(122, 2)
                    pc.set_skill_level(106, 40)
                    pc.set_skill_level(107, 40)
                    pc.set_skill_level(108, 40)
                    pc.set_skill_level(109, 40)
                    pc.set_skill_level(110, 40)
                    pc.set_skill_level(111, 40)
                    chat("Dir wurden P Skills gegeben.")
                    send_letter("GM: Adminpanel")
                end
            end

            function milligaul() -- Millitärgaul geben
                pc.set_skill_level(131, 10) -- Pferderufen Lv. 10
                horse.set_level(21) -- Pferd Lv. 21
                horse.summon() -- Pferd rufen
                horse.ride() -- Pferd reiten
                pc.give_item2(50053, 1)
                chat("Dein Pferd ist nun auf Level 21")
                chat("Dein Pferderufen ist nun auf Level 10")
                chat("Dein Pferd wurde gerufen")
                chat("Du hast Waffenperfdebuch erhalten")
                send_letter("GM: Adminpanel")
            end

            function reittiere() -- Reittiere rufen
                local reittiere = select("Keiler","Wölfe","Tiger","Löwen","Hirsche","Arabisches Pferd","Zurück","Abbrechen")
                if reittiere == 1 then
                    gm_panel.reittierekeiler()
                elseif reittiere == 2 then
                    gm_panel.reittierewolf()
                elseif reittiere == 3 then
                    gm_panel.reittieretiger()
                elseif reittiere == 4 then
                    gm_panel.reittierelowe()
                elseif reittiere == 5 then
                    gm_panel.reittierehirsch()
                elseif reittiere == 6 then
                    pc.mount(20119, 1800)
                    chat("Reittier wurde gerufen.!")
                elseif reittiere == 7 then
                    gm_panel.gmsetsmenu()
                elseif reittiere == 8 then
                    return
                end
            end

            function reittierekeiler() -- Reittiere Keiler
                say_title("Wähle ein Reittier aus")
                local reittierekeiler = select("Wildes Keiler","Roter Keiler","Brauner Keiler","Orangener Keiler","Zurück","Abbrechen")
                if reittierekeiler == 1 then
                    pc.mount(20110, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierekeiler == 2 then
                    pc.mount(20115, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierekeiler == 3 then
                    pc.mount(20201, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierekeiler == 4 then
                    pc.mount(20209, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierekeiler == 5 then
                    gm_panel.reittiere()
                elseif reittierekeiler == 6 then
                    return
                end
            end

            function reittierewolf() -- Reittiere Wolf
                say_title("Wähle ein Reittier aus ")
                local reittierewolf = select("Wilder Wolf","Schwarzer Wolf","Brauner Wolf","Orangener Wolf","Zurück","Abbrechen")
                if reittierewolf == 1 then
                    pc.mount(20111, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierewolf == 2 then
                    pc.mount(20116, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierewolf == 3 then
                    pc.mount(20202, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierewolf == 4 then
                    pc.mount(20210, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierewolf == 5 then
                    gm_panel.reittiere()
                elseif reittierewolf == 6 then
                    return
                end
            end

            function reittieretiger() -- Reittiere Tiger
                say_title("Wähle ein Reittier aus ")
                local reittieretiger = select("Wilder Tiger","Schwarzroter Tiger","Brauner Tiger","Orangener Tiger","Weiter","Zurück","Abbrechen")
                if reittieretiger == 1 then
                    pc.mount(20111, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger == 2 then
                    pc.mount(20116, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger == 3 then
                    pc.mount(20202, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger == 4 then
                    pc.mount(20210, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger == 5 then
                    gm_panel.reittieretiger2()
                elseif reittieretiger == 6 then
                    gm_panel.reittiere()
                elseif reittieretiger == 7 then
                    return
                end
            end

            function reittieretiger2() -- Reittiere Tiger Seite 2
                local reittieretiger2 = select("Blauer Tiger","Roter Tiger","Goldener Tiger","Grüner Tiger","Grauer Tiger","Weißer Tiger","Zurück","Abbrechen")
                if reittieretiger2 == 1 then
                    pc.mount(20120, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger2 == 2 then
                    pc.mount(20121, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger2 == 3 then
                    pc.mount(20122, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger2 == 4 then
                    pc.mount(20123, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger2 == 5 then
                    pc.mount(20124, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger2 == 6 then
                    pc.mount(20125, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger2 == 7 then
                    gm_panel.reittieretiger()
                elseif reittieretiger2 == 8 then
                    return
                end
            end

            function reittierelowe() -- Reittiere Löwe
                say_title("Wähle ein Reittier aus ")
                local reittierelowe = select("Wilder Löwe","Schwarzer Löwe","Brauner Löwe","Orangener Löwe","Zurück","Abbrechen")
                if reittierelowe == 1 then
                    pc.mount(20113, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierelowe == 2 then
                    pc.mount(20118, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierelowe == 3 then
                    pc.mount(20204, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierelowe == 4 then
                    pc.mount(20212, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierelowe == 5 then
                    gm_panel.reittiere()
                elseif reittierelowe == 6 then
                    return
                end
            end

            function reittierehirsch() -- Reittiere Hirsch
                say_title("Wähle ein Reittier aus ")
                local reittierehirsch = select("Wilder Hirsch","Schwarzroter Hirsch","Heller Hirsch","Brauner Hirsch","Zurück","Abbrechen")
                if reittierehirsch == 1 then
                    pc.mount(20213, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierehirsch == 2 then
                    pc.mount(20214, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierehirsch == 3 then
                    pc.mount(20215, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierehirsch == 4 then
                    pc.mount(20216, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierehirsch == 5 then
                    gm_panel.reittiere()
                elseif reittierehirsch == 6 then
                    return
                end
            end

            function frisuren() -- Frisuren geben
                if pc.get_job() == 0 then -- Krieger
                    if pc.get_sex() == 1 then -- Weiblich
                        pc.give_item2("75013", 1)
                        pc.give_item2("75014", 1)
                        pc.give_item2("75015", 1)
                        pc.give_item2("75016", 1)
                        pc.give_item2("75017", 1)
                        pc.give_item2("75018", 1)
                        pc.give_item2("75019", 1)
                        pc.give_item2("75020", 1)
                        pc.give_item2("74013", 1)
                        chat("Dir wurden weibliche Krieger Frisuren gegeben.")
                        send_letter("GM: Adminpanel")
                    else -- Männlich
                        pc.give_item2("74014", 1)
                        pc.give_item2("74015", 1)
                        pc.give_item2("74016", 1)
                        pc.give_item2("74017", 1)
                        pc.give_item2("74018", 1)
                        pc.give_item2("74019", 1)
                        pc.give_item2("74020", 1)
                        chat("Dir wurden männliche Krieger Frisuren gegeben.")
                        send_letter("GM: Adminpanel")
                    end
                elseif pc.get_job() == 1 then -- Ninja
                    if pc.get_sex() == 1 then -- Weiblich
                        pc.give_item2("74263", 1)
                        pc.give_item2("74264", 1)
                        pc.give_item2("74265", 1)
                        pc.give_item2("74266", 1)
                        pc.give_item2("74267", 1)
                        pc.give_item2("74268", 1)
                        pc.give_item2("74269", 1)
                        pc.give_item2("74270", 1)
                        chat("Dir wurden weibliche Ninja Frisuren gegeben.")
                        send_letter("GM: Adminpanel")
                    else -- Männlich
                        pc.give_item2("75213", 1)
                        pc.give_item2("75214", 1)
                        pc.give_item2("75215", 1)
                        pc.give_item2("75216", 1)
                        pc.give_item2("75217", 1)
                        pc.give_item2("75218", 1)
                        pc.give_item2("75219", 1)
                        pc.give_item2("75220", 1)
                        chat("Dir wurden männliche Ninja Frisuren gegeben.")
                        send_letter("GM: Adminpanel")
                    end
                elseif pc.get_job() == 2 then -- Sura
                    if pc.get_sex() == 1 then -- Weiblich
                        pc.give_item2("75413", 1)
                        pc.give_item2("75414", 1)
                        pc.give_item2("75415", 1)
                        pc.give_item2("75416", 1)
                        pc.give_item2("75417", 1)
                        pc.give_item2("75418", 1)
                        pc.give_item2("75419", 1)
                        pc.give_item2("75420", 1)
                        chat("Dir wurden weibliche Sura Frisuren gegeben.")
                        send_letter("GM: Adminpanel")
                    else -- Männlich
                        pc.give_item2("74513", 1)
                        pc.give_item2("74514", 1)
                        pc.give_item2("74515", 1)
                        pc.give_item2("74516", 1)
                        pc.give_item2("74517", 1)
                        pc.give_item2("74518", 1)
                        pc.give_item2("74519", 1)
                        pc.give_item2("74520", 1)
                        chat("Dir wurden männliche Sura Frisuren gegeben.")
                        send_letter("GM: Adminpanel")
                    end
                elseif pc.get_job() == 3 then -- Schamane
                    if pc.get_sex() == 1 then -- Weiblich
                        pc.give_item2("74763", 1)
                        pc.give_item2("74764", 1)
                        pc.give_item2("74765", 1)
                        pc.give_item2("74766", 1)
                        pc.give_item2("74767", 1)
                        pc.give_item2("74768", 1)
                        pc.give_item2("74769", 1)
                        pc.give_item2("74770", 1)
                        chat("Dir wurden weibliche Schamanen Frisuren gegeben.")
                        send_letter("GM: Adminpanel")
                    else -- Männlich
                        pc.give_item2("75613", 1)
                        pc.give_item2("75614", 1)
                        pc.give_item2("75615", 1)
                        pc.give_item2("75616", 1)
                        pc.give_item2("75617", 1)
                        pc.give_item2("75618", 1)
                        pc.give_item2("75619", 1)
                        pc.give_item2("75620", 1)
                        chat("Dir wurden männliche Schamanen Frisuren gegeben.")
                        send_letter("GM: Adminpanel")
                    end
                end
            end

            function charbonus() -- Char Bonus geben
                local charbonus = select("Bewegungsgeschwindigkeit", "Angriffsgeschwindigkeit", "Zaubergeschwindigkeit", "Angriffswert", "TP + TP Regeneration", "Stark gegen..", "Verteidigung", "Zurück")
                if charbonus == 1 then
                    gm_panel.bewegungsgeschwindigkeit()
                elseif charbonus == 2 then
                    gm_panel.angriffsgeschwindigkeit()
                elseif charbonus == 3 then
                    gm_panel.zaubergeschwindigkeit()
                elseif charbonus == 4 then
                    gm_panel.angriffswert()
                elseif charbonus == 5 then
                    gm_panel.tpundtpregeneration()
                elseif charbonus == 6 then
                    gm_panel.starkgegen()
                elseif charbonus == 7 then
                    gm_panel.verteidigung()
                elseif charbonus == 8 then
                    gm_panel.gmsetsmenu()
                end
            end

            function bewegungsgeschwindigkeit() -- Char Bonus Bewegungsgeschwindigkeit
                local bewegungsgeschwindigkeit = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück","Abbrechen")
                if bewegungsgeschwindigkeit == 1 then
                    affect.add_collect(apply.MOV_SPEED, 100, 60*60*24*365*10*10)
                    chat("Dir wurden 100 Bewegungsgeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif bewegungsgeschwindigkeit == 2 then
                    affect.add_collect(apply.MOV_SPEED, 250, 60*60*24*365*10)
                    chat("Dir wurden 250 Bewegungsgeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif bewegungsgeschwindigkeit == 3 then
                    affect.add_collect(apply.MOV_SPEED, 500, 60*60*24*365*10)
                    chat("Dir wurden 500 Bewegungsgeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif bewegungsgeschwindigkeit == 4 then
                    affect.add_collect(apply.MOV_SPEED, 1000, 60*60*24*365*10)
                    chat("Dir wurden 1.000 Bewegungsgeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif bewegungsgeschwindigkeit == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.MOV_SPEED, value, 60*60*24*365*10)
                        chat("Dir wurden " .. value .. " Bewegungsgeschwindigkeit gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif bewegungsgeschwindigkeit == 6 then
                    gm_panel.charbonus()
                elseif bewegungsgeschwindigkeit == 7 then
                    return
                end
            end

            function angriffsgeschwindigkeit() -- Char Bonus Angriffsgeschwindigkeit
                local angriffsgeschwindigkeit = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück","Abbrechen")
                if angriffsgeschwindigkeit == 1 then
                    affect.add_collect(apply.ATT_SPEED, 100, 60*60*24*365)
                    chat("Dir wurden 100 Angriffsgeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif angriffsgeschwindigkeit == 2 then
                    affect.add_collect(apply.ATT_SPEED, 250, 60*60*24*365)
                    chat("Dir wurden 250 Angriffsgeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif angriffsgeschwindigkeit == 3 then
                    affect.add_collect(apply.ATT_SPEED, 500, 60*60*24*365)
                    chat("Dir wurden 500 Angriffsgeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif angriffsgeschwindigkeit == 4 then
                    affect.add_collect(apply.ATT_SPEED, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Angriffsgeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif angriffsgeschwindigkeit == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATT_SPEED, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Angriffsgeschwindigkeit gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif angriffsgeschwindigkeit == 6 then
                    gm_panel.charbonus()
                elseif angriffsgeschwindigkeit == 7 then
                    return
                end
            end

            function zaubergeschwindigkeit() -- Char Bonus Zaubergeschwindigkeit
                local zaubergeschwindigkeit = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if zaubergeschwindigkeit == 1 then
                    affect.add_collect(apply.CAST_SPEED, 100, 60*60*24*365)
                    chat("Dir wurden 100 Zaubergeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif zaubergeschwindigkeit == 2 then
                    affect.add_collect(apply.CAST_SPEED, 250, 60*60*24*365)
                    chat("Dir wurden 250 Zaubergeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif zaubergeschwindigkeit == 3 then
                    affect.add_collect(apply.CAST_SPEED, 500, 60*60*24*365)
                    chat("Dir wurden 500 Zaubergeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif zaubergeschwindigkeit == 4 then
                    affect.add_collect(apply.CAST_SPEED, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Zaubergeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif zaubergeschwindigkeit == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.CAST_SPEED, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Zaubergeschwindigkeit gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif zaubergeschwindigkeit == 6 then
                    gm_panel.charbonus()
                elseif zaubergeschwindigkeit == 7 then
                    return
                end
            end

            function angriffswert() -- Char Bonus Angriffswert
                local angriffswert = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if angriffswert == 1 then
                    affect.add_collect(apply.ATT_BONUS, 100, 60*60*24*365)
                    chat("Dir wurden 100 Angriffswert gegeben.")
                    send_letter("GM: Adminpanel")
                elseif angriffswert == 2 then
                    affect.add_collect(apply.ATT_BONUS, 250, 60*60*24*365)
                    chat("Dir wurden 250 Angriffswert gegeben.")
                    send_letter("GM: Adminpanel")
                elseif angriffswert == 3 then
                    affect.add_collect(apply.ATT_BONUS, 500, 60*60*24*365)
                    chat("Dir wurden 500 Angriffswert gegeben.")
                    send_letter("GM: Adminpanel")
                elseif angriffswert == 4 then
                    affect.add_collect(apply.ATT_BONUS, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Angriffswert gegeben.")
                    send_letter("GM: Adminpanel")
                elseif angriffswert == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATT_BONUS, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Angriffswert gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif angriffswert == 6 then
                    gm_panel.charbonus()
                elseif angriffswert == 7 then
                    return
                end
            end

            function tpundtpregeneration() -- Char Bonus TP + TP Regeneration
                local tp_reg = select("10.000 + 2.500", "25.000 + 5.000", "50.000 + 10.000", "100.000 + 20.000", "Selbst eingeben", "Zurück", "Abbrechen")
                if tp_reg == 1 then
                    affect.add_collect(apply.MAX_HP, 10000, 60*60*24*365)
                    affect.add_collect(apply.HP_REGEN, 2500, 60*60*24*365)
                    chat("Dir wurden 10.000 TP und 2.500 TP Regeneration gegeben.")
                    send_letter("GM: Adminpanel")
                elseif tp_reg == 2 then
                    affect.add_collect(apply.MAX_HP, 25000, 60*60*24*365)
                    affect.add_collect(apply.HP_REGEN, 5000, 60*60*24*365)
                    chat("Dir wurden 25.000 TP und 5.000 TP Regeneration gegeben.")
                    send_letter("GM: Adminpanel")
                elseif tp_reg == 3 then
                    affect.add_collect(apply.MAX_HP, 50000, 60*60*24*365)
                    affect.add_collect(apply.HP_REGEN, 10000, 60*60*24*365)
                    chat("Dir wurden 50.000 TP und 10.000 TP Regeneration gegeben.")
                    send_letter("GM: Adminpanel")
                elseif tp_reg == 4 then
                    affect.add_collect(apply.MAX_HP, 100000, 60*60*24*365)
                    affect.add_collect(apply.HP_REGEN, 20000, 60*60*24*365)
                    chat("Dir wurden 100.000 TP und 20.000 TP Regeneration gegeben.")
                    send_letter("GM: Adminpanel")
                elseif tp_reg == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    say("")
                    say_reward("TP")
                    local value_hp = tonumber(input())
                    say_reward("TP Regeneration")
                    local value_hp_regen = tonumber(input())
                    if value_hp and value_hp_regen then
                        affect.add_collect(apply.MAX_HP, value_hp, 60*60*24*365)
                        affect.add_collect(apply.HP_REGEN, value_hp_regen, 60*60*24*365)
                        chat("Dir wurden " .. value_hp .. " TP und " ..value_hp_regen .. " TP Regeneration gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif tp_reg == 6 then
                    gm_panel.charbonus()
                elseif tp_reg == 7 then
                    return
                end
            end

            function starkgegen() -- Char Bonus Stark gegen..
                local starkgegen = select("Stark gegen PVM", "Stark gegen PVP", "Zurück","Abbrechen")
                if starkgegen == 1 then
                    gm_panel.starkgegen_pvm()
                elseif starkgegen == 2 then
                    gm_panel.starkgegen_pvp()
                elseif starkgegen == 3 then
                    gm_panel.charbonus()
                elseif starkgegen == 4 then
                    return
                end
            end

            function starkgegen_pvm() -- Char Bonus Stark gegen PVM..
                local starkgegen_pvm = select("Stark gegen Halbmenschen", "Stark gegen Orks", "Stark gegen Untote", "Stark gegen Monster","Weiter","Zurück", "Abbrechen")
                if starkgegen_pvm == 1 then
                    gm_panel.starkgegen_halbmenschen()
                elseif starkgegen_pvm == 2 then
                    gm_panel.starkgegen_orks()
                elseif starkgegen_pvm == 3 then
                    gm_panel.starkgegen_untote()
                elseif starkgegen_pvm == 4 then
                    gm_panel.starkgegen_monster()
                elseif starkgegen_pvm == 5 then
                    gm_panel.starkgegen2_pvm()
                elseif starkgegen_pvm == 6 then
                    gm_panel.starkgegen()
                elseif starkgegen_pvm == 7 then
                    return
                end
            end

            function starkgegen2_pvm() -- Char Bonus Stark gegen..
                local starkgegen2_pvm = select("Stark gegen Tiere", "Stark gegen Esoterische", "Stark gegen Teufel", "Zurück","Abbrechen")
                if starkgegen2_pvm == 1 then
                    gm_panel.starkgegen2_tiere()
                elseif starkgegen2_pvm == 2 then
                    gm_panel.starkgegen2_esoterische()
                elseif starkgegen2_pvm == 3 then
                    gm_panel.starkgegen2_teufel()
                elseif starkgegen2_pvm == 4 then
                    gm_panel.starkgegen_pvm()
                elseif starkgegen2_pvm == 5 then
                    return
                end
            end

            function starkgegen_halbmenschen()
                local starkgegen_halbmenschen = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen_halbmenschen == 1 then
                    affect.add_collect(apply.ATTBONUS_HUMAN, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Halbmenschen gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_halbmenschen == 2 then
                    affect.add_collect(apply.ATTBONUS_HUMAN, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Halbmenschen gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_halbmenschen == 3 then
                    affect.add_collect(apply.ATTBONUS_HUMAN, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Halbmenschen gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_halbmenschen == 4 then
                    affect.add_collect(apply.ATTBONUS_HUMAN, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Halbmenschen gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_halbmenschen == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_HUMAN, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Halbmenschen gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen_halbmenschen == 6 then
                    gm_panel.starkgegen_pvm()
                elseif starkgegen_halbmenschen == 7 then
                    return
                end
            end

            function starkgegen_orks()
                local starkgegen_orks = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen_orks == 1 then
                    affect.add_collect(apply.ATTBONUS_ORC, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Orks gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_orks == 2 then
                    affect.add_collect(apply.ATTBONUS_ORC, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Orks gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_orks == 3 then
                    affect.add_collect(apply.ATTBONUS_ORC, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Orks gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_orks == 4 then
                    affect.add_collect(apply.ATTBONUS_ORC, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Orks gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_orks == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_ORC, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Orks gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen_orks == 6 then
                    gm_panel.starkgegen_pvm()
                elseif starkgegen_orks == 7 then
                    return
                end
            end

            function starkgegen_untote()
                local starkgegen_untote = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen_untote == 1 then
                    affect.add_collect(apply.ATTBONUS_UNDEAD, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Untote gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_untote == 2 then
                    affect.add_collect(apply.ATTBONUS_UNDEAD, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Untote gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_untote == 3 then
                    affect.add_collect(apply.ATTBONUS_UNDEAD, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Untote gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_untote == 4 then
                    affect.add_collect(apply.ATTBONUS_UNDEAD, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Untote gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_untote == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_UNDEAD, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Untote gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen_untote == 6 then
                    gm_panel.starkgegen_pvm()
                elseif starkgegen_untote == 7 then
                    return
                end
            end

            function starkgegen_monster()
                local starkgegen_monster = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen_monster == 1 then
                    affect.add_collect(apply.ATTBONUS_MONSTER, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Monster gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_monster == 2 then
                    affect.add_collect(apply.ATTBONUS_MONSTER, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Monster gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_monster == 3 then
                    affect.add_collect(apply.ATTBONUS_MONSTER, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Monster gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_monster == 4 then
                    affect.add_collect(apply.ATTBONUS_MONSTER, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Monster gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_monster == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_MONSTER, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Monster gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen_monster == 6 then
                    gm_panel.starkgegen_pvm()
                elseif starkgegen_monster == 7 then
                    return
                end
            end

            function starkgegen2_tiere()
                local starkgegen2_tiere = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen2_tiere == 1 then
                    affect.add_collect(apply.ATTBONUS_ANIMAL, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Tiere gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_tiere == 2 then
                    affect.add_collect(apply.ATTBONUS_ANIMAL, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Tiere gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_tiere == 3 then
                    affect.add_collect(apply.ATTBONUS_ANIMAL, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Tiere gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_tiere == 4 then
                    affect.add_collect(apply.ATTBONUS_ANIMAL, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Tiere gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_tiere == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_ANIMAL, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Tiere gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen2_tiere == 6 then
                    gm_panel.starkgegen2_pvm()
                elseif starkgegen2_tiere == 7 then
                    return
                end
            end

            function starkgegen2_esoterische()
                local starkgegen2_esoterische = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen2_esoterische == 1 then
                    affect.add_collect(apply.ATTBONUS_MILGYO, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Esoterische gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_esoterische == 2 then
                    affect.add_collect(apply.ATTBONUS_MILGYO, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Esoterische gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_esoterische == 3 then
                    affect.add_collect(apply.ATTBONUS_MILGYO, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Esoterische gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_esoterische == 4 then
                    affect.add_collect(apply.ATTBONUS_MILGYO, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Esoterische gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_esoterische == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_MILGYO, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Esoterische gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen2_esoterische == 6 then
                    gm_panel.starkgegen2_pvm()
                elseif starkgegen2_esoterische == 7 then
                    return
                end
            end

            function starkgegen2_teufel()
                local starkgegen2_teufel = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen2_teufel == 1 then
                    affect.add_collect(apply.ATTBONUS_DEVIL, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Teufel gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_teufel == 2 then
                    affect.add_collect(apply.ATTBONUS_DEVIL, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Teufel gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_teufel == 3 then
                    affect.add_collect(apply.ATTBONUS_DEVIL, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Teufel gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_teufel == 4 then
                    affect.add_collect(apply.ATTBONUS_DEVIL, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Teufel gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_teufel == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_DEVIL, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Teufel gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen2_teufel == 6 then
                    gm_panel.starkgegen2_pvm()
                elseif starkgegen2_teufel == 7 then
                    return
                end
            end

            function starkgegen_pvp() -- Char Bonus Stark gegen PVP..
                local starkgegen_pvp = select("Stark gegen Krieger", "Stark gegen Ninja", "Stark gegen Sura", "Stark gegen Schamane","Zurück", "Abbrechen")
                if starkgegen_pvp == 1 then
                    gm_panel.starkgegen_krieger()
                elseif starkgegen_pvp == 2 then
                    gm_panel.starkgegen_ninja()
                elseif starkgegen_pvp == 3 then
                    gm_panel.starkgegen_sura()
                elseif starkgegen_pvp == 4 then
                    gm_panel.starkgegen_schamane()
                elseif starkgegen_pvp == 5 then
                    gm_panel.starkgegen()
                elseif starkgegen_pvp == 6 then
                    return
                end
            end

            function starkgegen_krieger()
                local starkgegen_krieger = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen_krieger == 1 then
                    affect.add_collect(apply.ATTBONUS_WARRIOR, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Krieger gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_krieger == 2 then
                    affect.add_collect(apply.ATTBONUS_WARRIOR, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Krieger gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_krieger == 3 then
                    affect.add_collect(apply.ATTBONUS_WARRIOR, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Krieger gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_krieger == 4 then
                    affect.add_collect(apply.ATTBONUS_WARRIOR, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Krieger gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_krieger == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_WARRIOR, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Krieger gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen_krieger == 6 then
                    gm_panel.starkgegen_pvp()
                elseif starkgegen_krieger == 7 then
                    return
                end
            end

            function starkgegen_ninja()
                local starkgegen_ninja = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen_ninja == 1 then
                    affect.add_collect(apply.ATTBONUS_ASSASSIN, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Ninja gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_ninja == 2 then
                    affect.add_collect(apply.ATTBONUS_ASSASSIN, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Ninja gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_ninja == 3 then
                    affect.add_collect(apply.ATTBONUS_ASSASSIN, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Ninja gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_ninja == 4 then
                    affect.add_collect(apply.ATTBONUS_ASSASSIN, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Ninja gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_ninja == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_ASSASSIN, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Ninja gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen_ninja == 6 then
                    gm_panel.starkgegen_pvp()
                elseif starkgegen_ninja == 7 then
                    return
                end
            end

            function starkgegen_sura()
                local starkgegen_sura = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen_sura == 1 then
                    affect.add_collect(apply.ATTBONUS_SURA, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Sura gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_sura == 2 then
                    affect.add_collect(apply.ATTBONUS_SURA, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Sura gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_sura == 3 then
                    affect.add_collect(apply.ATTBONUS_SURA, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Sura gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_sura == 4 then
                    affect.add_collect(apply.ATTBONUS_SURA, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Sura gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_sura == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_SURA, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Sura gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen_sura == 6 then
                    gm_panel.starkgegen_pvp()
                elseif starkgegen_sura == 7 then
                    return
                end
            end

            function starkgegen_schamane()
                local starkgegen_schamane = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen_schamane == 1 then
                    affect.add_collect(apply.ATTBONUS_SHAMAN, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Schamanen gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_schamane == 2 then
                    affect.add_collect(apply.ATTBONUS_SHAMAN, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Schamanen gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_schamane == 3 then
                    affect.add_collect(apply.ATTBONUS_SHAMAN, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Schamanen gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_schamane == 4 then
                    affect.add_collect(apply.ATTBONUS_SHAMAN, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Schamanen gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_schamane == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_SHAMAN, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Schamanen gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen_schamane == 6 then
                    gm_panel.starkgegen_pvp()
                elseif starkgegen_schamane == 7 then
                    return
                end
            end

            function verteidigung() -- Char Bonus Verteidigung
                local verteidigung = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if verteidigung == 1 then
                    affect.add_collect(apply.DEF_BONUS, 100, 60*60*24*365)
                    chat("Dir wurden 100 Verteidigung gegeben.")
                    send_letter("GM: Adminpanel")
                elseif verteidigung == 2 then
                    affect.add_collect(apply.DEF_BONUS, 250, 60*60*24*365)
                    chat("Dir wurden 250 Verteidigung gegeben.")
                    send_letter("GM: Adminpanel")
                elseif verteidigung == 3 then
                    affect.add_collect(apply.DEF_BONUS, 500, 60*60*24*365)
                    chat("Dir wurden 500 Verteidigung gegeben.")
                    send_letter("GM: Adminpanel")
                elseif verteidigung == 4 then
                    affect.add_collect(apply.DEF_BONUS, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Verteidigung gegeben.")
                    send_letter("GM: Adminpanel")
                elseif verteidigung == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.DEF_BONUS, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Verteidigung gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif verteidigung == 6 then
                    gm_panel.charbonus()
                elseif verteidigung == 7 then
                    return
                end
            end

            function rang_aendern()
                local rang_aendern = select("Positiver Rang", "Negativer Rang", "Zurück", "Abbrechen")
                if rang_aendern == 1 then
                    gm_panel.rang_positiv()
                elseif rang_aendern == 2 then
                    gm_panel.rang_negativ()
                elseif rang_aendern == 3 then
                    gm_panel.gmsetsmenu2()
                elseif rang_aendern == 4 then
                    return
                end
            end

            function rang_positiv()
                local rang_positiv = select("Ritterlich", "Edel", "Gut", "Freundlich", "Neutral", "Zurück","Abbrechen")
                if rang_positiv == 1 then
                    command("set "..pc.get_name() .." align 20000")
                    send_letter("GM: Adminpanel")
                elseif rang_positiv == 2 then
                    command("set "..pc.get_name() .." align 8000")
                    send_letter("GM: Adminpanel")
                elseif rang_positiv == 3 then
                    command("set "..pc.get_name() .." align 4000")
                    send_letter("GM: Adminpanel")
                elseif rang_positiv == 4 then
                    command("set "..pc.get_name() .." align 1000")
                    send_letter("GM: Adminpanel")
                elseif rang_positiv == 5 then
                    command("set "..pc.get_name() .." align 0")
                    send_letter("GM: Adminpanel")
                elseif rang_positiv == 6 then
                    gm_panel.rang_aendern()
                elseif rang_positiv == 7 then
                    return
                end
            end

            function rang_negativ()
                local rang_negativ = select("Aggressiv", "Arglistig", "Bösartig", "Grausam", "Zurück", "Abbrechen")
                if rang_negativ == 1 then
                    command("set "..pc.get_name() .." align -1")
                    send_letter("GM: Adminpanel")
                elseif rang_negativ == 2 then
                    command("set "..pc.get_name() .." align -4000")
                    send_letter("GM: Adminpanel")
                elseif rang_negativ == 3 then
                    command("set "..pc.get_name() .." align -8000")
                    send_letter("GM: Adminpanel")
                elseif rang_negativ == 4 then
                    command("set "..pc.get_name() .." align -12000")
                    send_letter("GM: Adminpanel")
                elseif rang_negativ == 5 then
                    gm_panel.rang_aendern()
                elseif rang_negativ == 6 then
                    return
                end
            end
            -- Ende von GM Sets

            -- Beginn von GM Menü
            function gmmenu()
                say_title("GM: Adminpanel - GM Menü")
                say("")
                local gmmenu = select("Online Meldungen", "NPCs rufen", "Zurück","Abbrechen")
                if gmmenu == 1 then
                    gm_panel.online_meldungen()
                elseif gmmenu == 2 then
                    gm_panel.npcs_rufen()
                elseif gmmenu == 3 then
                    gm_panel.mainmenu()
                elseif gmmenu == 4 then
                    return
                end
            end

            function online_meldungen()
                say_title("Online Meldungen")
                say("")
                local online_meldungen = select("... ist Online", "... ist noch erreichbar", "... verabschiedet sich", "Selbst schreiben", "Zurück","Abbrechen")
                if online_meldungen == 1 then
                    notice_all("".. pc.get_name() .." ist online")
                    notice_all("Er/Sie steht für eure Fragen zur verfügung")
                    send_letter("GM: Adminpanel")
                elseif online_meldungen == 2 then
                    notice_all("".. pc.get_name() .." steht euch immer noch zur verfügung")
                    send_letter("GM: Adminpanel")
                elseif online_meldungen == 3 then
                    notice_all("".. pc.get_name() .." verabschieded sich")
                    notice_all("und wünscht euch noch viel spaß!")
                    send_letter("GM: Adminpanel")
                elseif online_meldungen == 4 then
                    local message = input()
                    notice_all(message)
                    send_letter("GM: Adminpanel")
                elseif online_meldungen == 5 then
                    gm_panel.gmmenu()
                elseif online_meldungen == 6 then
                    return
                end
            end

            function npcs_rufen()
                say_title("NPCs rufen")
                say("")
                local npcs_rufen = select("NPC1", "NPC2", "NPC3", "Zurück", "Abbrechen")
                if npcs_rufen == 1 then
                    command("mob 30101")
                    send_letter("GM: Adminpanel")
                elseif npcs_rufen == 2 then
                    command("mob 30101")
                    send_letter("GM: Adminpanel")
                elseif npcs_rufen == 3 then
                    command("mob 30101")
                    send_letter("GM: Adminpanel")
                elseif npcs_rufen == 4 then
                    gm_panel.gmmenu()
                elseif npcs_rufen == 5 then
                    return
                end
            end
            -- Ende von GM Menü

            -- Beginn von Playermanagement
            function playermanagement()
                say_title("Player Management")
                say("")
                local playermanagement = select("Spieler bannen", "Spieler Item geben", "Spieler Skills auf P", "Spieler Subskills auf P", "Spieler Yang geben", "Spieler leveln", "Zurück", "Abbrechen")
                if playermanagement == 1 then
                    gm_panel.spieler_bannen()
                elseif playermanagement == 2 then
                    gm_panel.spieler_item_geben()
                elseif playermanagement == 3 then
                    gm_panel.spieler_skills_p()
                elseif playermanagement == 4 then
                    gm_panel.spieler_subskills_p()
                elseif playermanagement == 5 then
                    gm_panel.spieler_yang_geben()
                elseif playermanagement == 6 then
                    gm_panel.spieler_leveln()
                elseif playermanagement == 7 then
                    gm_panel.mainmenu()
                elseif playermanagement == 8 then
                    return
                end
            end

            function spieler_bannen()
                say_title("Spieler bannen")
                say("")
                say("Welcher Spieler soll gebannt werden?")
                say("")
                local spielername = input()
                say_title("Spieler bannen")
                say("")
                say("Du bist dabei den Spieler ".. spielername .."")
                say("zu bannen.")
                say("")
                say_reward("Bestätigen?")
                say("")
                local bestaetigen = select("Bestätigen","Abbrechen")
                if bestaetigen == 2 then
                    return
                else
                    local yonetici = pc.get_name()
                    local opp_vid2 = find_pc_by_name(yonetici)
                    local opp_vid = find_pc_by_name(spielername)
                    if opp_vid == 0 then
                        say_title("Spieler bannen")
                        say("")
                        say("So einen Spieler gibt es nicht.")
                        say("")
                    elseif opp_vid == pc.get_vid() then
                        say_title("Spieler bannen")
                        say("")
                        say("Du kannst dich selbst nicht bannen.")
                        say("")
                    else
                        local banlancak = pc.select(opp_vid)
                        pc.select(banlancak)
                        if not pc.is_near_vid(opp_vid, 50) then
                            say_title("Spieler bannen")
                            say("")
                            say("Der Spieler muss in deiner Nähe sein.")
                            say("")
                        else
                            pc.select(opp_vid)
                            local hesapid = pc.get_account_id()
                            mysql_query10("UPDATE account.account set status = 'BLOCK' where id= "..hesapid.."") ---- Þifre ve ip girecek yerler yanda
                            command("quit")
                            pc.select(opp_vid2)
                            syschat("Der Spieler ".. spielername .." wurde gebannt.")
                            send_letter("GM: Adminpanel")
                        end
                    end
                end
            end

            function spieler_item_geben()
                say_reward("Item VNUM eingeben")
                local item_vnum = tonumber(input())
                if item_vnum then
                    say_reward("Spieler Namen eingeben")
                    local name = input()
                    if name and name ~= "" then
                        command("give_item " .. name .. " " .. item_vnum)
                        chat("Du hast dem Spieler " .. name .. " das Item mit der VNUM " .. item_vnum .. " gegeben.")
                    else
                        chat("Ungültiger Spielername. Aktion abgebrochen.")
                    end
                else
                    chat("Ungültige Item VNUM. Aktion abgebrochen.")
                end
            end

            function spieler_skills_p()
                say_title("Spieler Skills P geben")
                say_reward("Bitte gib den Spielernamen ein:")
                local player_name = input()
                
                if player_name and player_name ~= "" then
                    local player_job = command("pc.get_job_other " .. player_name) -- Corrected command
                    if player_job == 0 then -- Krieger Skills
                        command("setskillother " .. player_name .. " 1 40")
                        command("setskillother " .. player_name .. " 2 40")
                        command("setskillother " .. player_name .. " 3 40")
                        command("setskillother " .. player_name .. " 4 40")
                        command("setskillother " .. player_name .. " 5 40")
                        command("setskillother " .. player_name .. " 17 40")
                        command("setskillother " .. player_name .. " 18 40")
                        command("setskillother " .. player_name .. " 19 40")
                        command("setskillother " .. player_name .. " 20 40")
                        command("setskillother " .. player_name .. " 16 40")
                        chat("Dem Spieler " .. player_name .. " wurden Krieger P Skills gegeben.")
                    elseif player_job == 1 then -- Ninja Skills
                        command("setskillother " .. player_name .. " 46 40")
                        command("setskillother " .. player_name .. " 47 40")
                        command("setskillother " .. player_name .. " 48 40")
                        command("setskillother " .. player_name .. " 49 40")
                        command("setskillother " .. player_name .. " 50 40")
                        chat("Dem Spieler " .. player_name .. " wurden Ninja P Skills gegeben.")
                    elseif player_job == 2 then -- Sura Skills
                        command("setskillother " .. player_name .. " 61 40")
                        command("setskillother " .. player_name .. " 62 40")
                        command("setskillother " .. player_name .. " 63 40")
                        command("setskillother " .. player_name .. " 64 40")
                        command("setskillother " .. player_name .. " 65 40")
                        command("setskillother " .. player_name .. " 66 40")
                        command("setskillother " .. player_name .. " 76 40")
                        command("setskillother " .. player_name .. " 77 40")
                        command("setskillother " .. player_name .. " 78 40")
                        command("setskillother " .. player_name .. " 79 40")
                        command("setskillother " .. player_name .. " 80 40")
                        command("setskillother " .. player_name .. " 81 40")
                        chat("Dem Spieler " .. player_name .. " wurden Sura P Skills gegeben.")
                    elseif player_job == 3 then -- Schamane Skills
                        command("setskillother " .. player_name .. " 91 40")
                        command("setskillother " .. player_name .. " 92 40")
                        command("setskillother " .. player_name .. " 93 40")
                        command("setskillother " .. player_name .. " 94 40")
                        command("setskillother " .. player_name .. " 95 40")
                        command("setskillother " .. player_name .. " 96 40")
                        command("setskillother " .. player_name .. " 106 40")
                        command("setskillother " .. player_name .. " 107 40")
                        command("setskillother " .. player_name .. " 108 40")
                        command("setskillother " .. player_name .. " 109 40")
                        command("setskillother " .. player_name .. " 110 40")
                        command("setskillother " .. player_name .. " 111 40")
                        chat("Dem Spieler " .. player_name .. " wurden Schamane P Skills gegeben.")
                    else
                        chat("Ungültiger Job für den Spieler " .. player_name)
                    end
                else
                    chat("Ungültiger Spielername. Aktion abgebrochen.")
                end
            end

            function spieler_subskills_p()
                say_title("Spieler Sub-Skills P geben")
                say_reward("Bitte gib den Spielernamen ein:")
                local player_name = input()

                if player_name and player_name ~= "" then
                    command("setskillother " .. player_name .. " 137 20")
                    command("setskillother " .. player_name .. " 138 20")
                    command("setskillother " .. player_name .. " 139 20")
                    command("setskillother " .. player_name .. " 131 10")
                    command("setskillother " .. player_name .. " 129 40")
                    command("setskillother " .. player_name .. " 128 20")
                    command("setskillother " .. player_name .. " 130 21")
                    command("setskillother " .. player_name .. " 127 20")
                    command("setskillother " .. player_name .. " 126 20")
                    command("setskillother " .. player_name .. " 124 40")
                    command("setskillother " .. player_name .. " 121 40")
                    command("setskillother " .. player_name .. " 122 2")
                    chat("Dem Spieler " .. player_name .. " wurden die Sub-Skills auf P gesetzt.")
                else
                    chat("Ungültiger Spielername. Aktion abgebrochen.")
                end
            end


            function spieler_yang_geben()
                say_title("Spieler Yang geben")
                say_reward("Bitte gib den Spielernamen ein:")
                local player_name = input()

                if player_name and player_name ~= "" then
                    say_reward("Bitte gib die Menge an Yang ein:")
                    local yang = tonumber(input())

                    if yang and yang > 0 then
                        command("set " .. player_name .. " gold " .. yang)
                        chat("Dem Spieler " .. player_name .. " wurden " .. yang .. " Yang gegeben.")
                    else
                        chat("Ungültige Yang-Menge. Aktion abgebrochen.")
                    end
                else
                    chat("Ungültiger Spielername. Aktion abgebrochen.")
                end
            end

            function spieler_leveln()
                say_title("Spieler leveln")
                say_reward("Bitte gib den Spielernamen ein:")
                local player_name = input()

                if player_name and player_name ~= "" then
                    say_reward("Bitte gib das gewünschte Level ein:")
                    local level = tonumber(input())

                    if level and level > 0 then
                        command("a " .. player_name .. " " .. level)
                        chat("Der Spieler " .. player_name .. " wurde auf Level " .. level .. " gesetzt.")
                    else
                        chat("Ungültiges Level. Aktion abgebrochen.")
                    end
                else
                    chat("Ungültiger Spielername. Aktion abgebrochen.")
                end
            end
        end -- when info or button with END
    end -- state start END
end -- quest gm panel END

doesnt work. when i test it withouth "function mainmenu()" example, it works.

should i need any functions more for do this like-functions?
 
Metin2Hub Bot
M2Hub Bot
Feb
Threads
66
2,381
2
1,308
113
Hi friends, i have a great problem, my quest:

Code:
quest gm_panel begin
    state start begin
        when letter with pc.is_gm() begin
            send_letter("GM: Adminpanel")
        end

        when info or button with pc.is_gm() begin
            function mainmenu()
                say_title("GM: Adminpanel")
                say("")
                say_reward("Bitte wähle deine Option")
                local mainmenu = select("GM Sets","GM Menü", "Player Management", "Game Settings", "Event Panel", "Abbrechen")
                if mainmenu == 1 then
                    gm_panel.gmsetsmenu()
                elseif mainmenu == 2 then
                    gm_panel.gmmenu()
                elseif mainmenu == 3 then
                    gm_panel.playermanagement()
                elseif mainmenu == 4 then
                    gm_panel.gamesettings()
                elseif mainmenu == 5 then
                    gm_panel.eventpanel()
                elseif mainmenu == 6 then
                    return
                end
            end

            -- Beginn von GM Sets
            function gmsetsmenu() -- GM Sets Seite 1
                say_title("GM: Adminpanel - GM Sets (1)")
                say("")
                local gmsetsmenu = select("GM Items geben", "P Skills geben", "Millitärgaul geben", "Reittier rufen", "Frisuren geben", "Weiter","Zurück", "Abbrechen")
                if gmsetsmenu == 1 then -- GM Items geben
                    gm_panel.gmgiveitems()
                elseif gmsetsmenu == 2 then -- P Skills geben
                    gm_panel.pskills()
                elseif gmsetsmenu == 3 then -- Millitärgaul geben
                    gm_panel.milligaul()
                elseif gmsetsmenu == 4 then -- Reittiere rufen
                    gm_panel.reittiere()
                elseif gmsetsmenu == 5 then -- Frisuren geben
                    gm_panel.frisuren()
                elseif gmsetsmenu == 6 then -- Weiter
                    gm_panel.gmsetsmenu2()
                elseif gmsetsmenu == 7 then -- Zurück
                    gm_panel.mainmenu()
                elseif gmsetsmenu == 8 then -- Abbrechen
                    return
                end
            end

            function gmsetsmenu2() -- GM Sets Seite 2
                say_title("GM: Adminpanel - GM Sets (2)")
                say("")
                local gmsetsmenu2 = select("Char Bonus geben", "Rang ändern", "Zurück", "Abbrechen")
                if gmsetsmenu2 == 1 then -- Char Bonus geben
                    gm_panel.charbonus()
                elseif gmsetsmenu2 == 2 then -- Rang ändern
                    gm_panel.rang_aendern()
                elseif gmsetsmenu2 == 3 then -- Zurück
                    gm_panel.gmsetsmenu()
                elseif gmsetsmenu2 == 4 then -- Abbrechen
                    return
                end
            end

            function gmgiveitems() -- Items geben Function
                if pc.get_job() == 0 then -- Krieger Item Set
                    pc.give_item2("40002", 1)
                    pc.give_item2("40003", 1)
                    pc.give_item2("189", 1)
                    pc.give_item2("279", 1)
                    pc.give_item2("11299", 1)
                    pc.give_item2("12019", 1)
                    pc.give_item2("14229", 1)
                    pc.give_item2("16229", 1)
                    pc.give_item2("15419", 1)
                    pc.give_item2("17229", 1)
                    pc.give_item2("12289", 1)
                    pc.give_item2("13149", 1)
                    chat("Du hast das Krieger Item Set erhalten.")
                    send_letter("GM: Adminpanel")
                elseif pc.get_job() == 1 then -- Ninja Item Set
                    pc.give_item2("40002", 1)
                    pc.give_item2("40003", 1)
                    pc.give_item2("1139", 1)
                    pc.give_item2("4049", 1)
                    pc.give_item2("2179", 1)
                    pc.give_item2("2169", 1)
                    pc.give_item2("12029", 1)
                    pc.give_item2("11499", 1)
                    pc.give_item2("14229", 1)
                    pc.give_item2("16229", 1)
                    pc.give_item2("15419", 1)
                    pc.give_item2("17229", 1)
                    pc.give_item2("12409", 1)
                    pc.give_item2("13149", 1)
                    chat("Du hast das Ninja Item Set erhalten.")
                    send_letter("GM: Adminpanel")
                elseif pc.get_job() == 2 then -- Sura Item Set
                    pc.give_item2("40002", 1)
                    pc.give_item2("40003", 1)
                    pc.give_item2("12039", 1)
                    pc.give_item2("11699", 1)
                    pc.give_item2("14229", 1)
                    pc.give_item2("16229", 1)
                    pc.give_item2("15419", 1)
                    pc.give_item2("17229", 1)
                    pc.give_item2("12549", 1)
                    pc.give_item2("13149", 1)
                    pc.give_item2("289", 1)
                    pc.give_item2("3129", 1)
                    pc.give_item2("279", 1)
                    chat("Du hast das Sura Item Set erhalten.")
                    send_letter("GM: Adminpanel")
                elseif pc.get_job() == 3 then -- Schamane Item Set
                    pc.give_item2("40002", 1)
                    pc.give_item2("40003", 1)
                    pc.give_item2("12049", 1)
                    pc.give_item2("11899", 1)
                    pc.give_item2("14229", 1)
                    pc.give_item2("16229", 1)
                    pc.give_item2("15419", 1)
                    pc.give_item2("17229", 1)
                    pc.give_item2("12689", 1)
                    pc.give_item2("13149", 1)
                    pc.give_item2("5129", 1)
                    pc.give_item2("7199", 1)
                    chat("Du hast das Schamanen Item Set erhalten.")
                    send_letter("GM: Adminpanel")
                end
            end

            function pskills() -- P Skills geben
                if pc.get_job() == 0 then -- Krieger Skills
                    pc.set_skill_level(1, 40)
                    pc.set_skill_level(2, 40)
                    pc.set_skill_level(3, 40)
                    pc.set_skill_level(4, 40)
                    pc.set_skill_level(5, 40)
                    pc.set_skill_level(137, 20)
                    pc.set_skill_level(138, 20)
                    pc.set_skill_level(139, 20)
                    pc.set_skill_level(131, 10)
                    pc.set_skill_level(129, 40)
                    pc.set_skill_level(128, 20)
                    pc.set_skill_level(130, 21)
                    pc.set_skill_level(127, 20)
                    pc.set_skill_level(126, 20)
                    pc.set_skill_level(124, 40)
                    pc.set_skill_level(121, 40)
                    pc.set_skill_level(122, 2)
                    pc.set_skill_level(17, 40)
                    pc.set_skill_level(18, 40)
                    pc.set_skill_level(19, 40)
                    pc.set_skill_level(20, 40)
                    pc.set_skill_level(16, 40)
                    chat("Dir wurden P Skills gegeben.")
                    send_letter("GM: Adminpanel")
                elseif pc.get_job() == 1 then -- Ninja Skills
                    pc.set_skill_level(46, 40)
                    pc.set_skill_level(47, 40)
                    pc.set_skill_level(48, 40)
                    pc.set_skill_level(49, 40)
                    pc.set_skill_level(50, 40)
                    pc.set_skill_level(137, 20)
                    pc.set_skill_level(138, 20)
                    pc.set_skill_level(139, 20)
                    pc.set_skill_level(140, 20)
                    pc.set_skill_level(131, 10)
                    pc.set_skill_level(130, 21)
                    pc.set_skill_level(129, 40)
                    pc.set_skill_level(128, 20)
                    pc.set_skill_level(127, 20)
                    pc.set_skill_level(126, 20)
                    pc.set_skill_level(124, 40)
                    pc.set_skill_level(121, 40)
                    pc.set_skill_level(122, 2)
                    pc.set_skill_level(49, 40)
                    pc.set_skill_level(50, 40)
                    pc.set_skill_level(48, 40)
                    pc.set_skill_level(47, 40)
                    pc.set_skill_level(46, 40)
                    chat("Dir wurden P Skills gegeben.")
                    send_letter("GM: Adminpanel")
                elseif pc.get_job() == 2 then -- Sura Skills
                    pc.set_skill_level(61, 40)
                    pc.set_skill_level(62, 40)
                    pc.set_skill_level(63, 40)
                    pc.set_skill_level(64, 40)
                    pc.set_skill_level(65, 40)
                    pc.set_skill_level(66, 40)
                    pc.set_skill_level(137, 20)
                    pc.set_skill_level(138, 20)
                    pc.set_skill_level(139, 20)
                    pc.set_skill_level(130, 21)
                    pc.set_skill_level(131, 10)
                    pc.set_skill_level(129, 40)
                    pc.set_skill_level(128, 20)
                    pc.set_skill_level(127, 20)
                    pc.set_skill_level(126, 20)
                    pc.set_skill_level(124, 40)
                    pc.set_skill_level(121, 40)
                    pc.set_skill_level(122, 2)
                    pc.set_skill_level(76, 40)
                    pc.set_skill_level(77, 40)
                    pc.set_skill_level(78, 40)
                    pc.set_skill_level(79, 40)
                    pc.set_skill_level(80, 40)
                    pc.set_skill_level(81, 40)
                    chat("Dir wurden P Skills gegeben.")
                    send_letter("GM: Adminpanel")
                elseif pc.get_job() == 3 then -- Schamane Skills
                    pc.set_skill_level(91, 40)
                    pc.set_skill_level(92, 40)
                    pc.set_skill_level(93, 40)
                    pc.set_skill_level(94, 40)
                    pc.set_skill_level(95, 40)
                    pc.set_skill_level(96, 40)
                    pc.set_skill_level(137, 20)
                    pc.set_skill_level(138, 20)
                    pc.set_skill_level(139, 20)
                    pc.set_skill_level(131, 10)
                    pc.set_skill_level(130, 21)
                    pc.set_skill_level(129, 40)
                    pc.set_skill_level(128, 20)
                    pc.set_skill_level(127, 20)
                    pc.set_skill_level(126, 20)
                    pc.set_skill_level(124, 40)
                    pc.set_skill_level(121, 40)
                    pc.set_skill_level(122, 2)
                    pc.set_skill_level(106, 40)
                    pc.set_skill_level(107, 40)
                    pc.set_skill_level(108, 40)
                    pc.set_skill_level(109, 40)
                    pc.set_skill_level(110, 40)
                    pc.set_skill_level(111, 40)
                    chat("Dir wurden P Skills gegeben.")
                    send_letter("GM: Adminpanel")
                end
            end

            function milligaul() -- Millitärgaul geben
                pc.set_skill_level(131, 10) -- Pferderufen Lv. 10
                horse.set_level(21) -- Pferd Lv. 21
                horse.summon() -- Pferd rufen
                horse.ride() -- Pferd reiten
                pc.give_item2(50053, 1)
                chat("Dein Pferd ist nun auf Level 21")
                chat("Dein Pferderufen ist nun auf Level 10")
                chat("Dein Pferd wurde gerufen")
                chat("Du hast Waffenperfdebuch erhalten")
                send_letter("GM: Adminpanel")
            end

            function reittiere() -- Reittiere rufen
                local reittiere = select("Keiler","Wölfe","Tiger","Löwen","Hirsche","Arabisches Pferd","Zurück","Abbrechen")
                if reittiere == 1 then
                    gm_panel.reittierekeiler()
                elseif reittiere == 2 then
                    gm_panel.reittierewolf()
                elseif reittiere == 3 then
                    gm_panel.reittieretiger()
                elseif reittiere == 4 then
                    gm_panel.reittierelowe()
                elseif reittiere == 5 then
                    gm_panel.reittierehirsch()
                elseif reittiere == 6 then
                    pc.mount(20119, 1800)
                    chat("Reittier wurde gerufen.!")
                elseif reittiere == 7 then
                    gm_panel.gmsetsmenu()
                elseif reittiere == 8 then
                    return
                end
            end

            function reittierekeiler() -- Reittiere Keiler
                say_title("Wähle ein Reittier aus")
                local reittierekeiler = select("Wildes Keiler","Roter Keiler","Brauner Keiler","Orangener Keiler","Zurück","Abbrechen")
                if reittierekeiler == 1 then
                    pc.mount(20110, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierekeiler == 2 then
                    pc.mount(20115, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierekeiler == 3 then
                    pc.mount(20201, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierekeiler == 4 then
                    pc.mount(20209, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierekeiler == 5 then
                    gm_panel.reittiere()
                elseif reittierekeiler == 6 then
                    return
                end
            end

            function reittierewolf() -- Reittiere Wolf
                say_title("Wähle ein Reittier aus ")
                local reittierewolf = select("Wilder Wolf","Schwarzer Wolf","Brauner Wolf","Orangener Wolf","Zurück","Abbrechen")
                if reittierewolf == 1 then
                    pc.mount(20111, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierewolf == 2 then
                    pc.mount(20116, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierewolf == 3 then
                    pc.mount(20202, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierewolf == 4 then
                    pc.mount(20210, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierewolf == 5 then
                    gm_panel.reittiere()
                elseif reittierewolf == 6 then
                    return
                end
            end

            function reittieretiger() -- Reittiere Tiger
                say_title("Wähle ein Reittier aus ")
                local reittieretiger = select("Wilder Tiger","Schwarzroter Tiger","Brauner Tiger","Orangener Tiger","Weiter","Zurück","Abbrechen")
                if reittieretiger == 1 then
                    pc.mount(20111, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger == 2 then
                    pc.mount(20116, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger == 3 then
                    pc.mount(20202, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger == 4 then
                    pc.mount(20210, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger == 5 then
                    gm_panel.reittieretiger2()
                elseif reittieretiger == 6 then
                    gm_panel.reittiere()
                elseif reittieretiger == 7 then
                    return
                end
            end

            function reittieretiger2() -- Reittiere Tiger Seite 2
                local reittieretiger2 = select("Blauer Tiger","Roter Tiger","Goldener Tiger","Grüner Tiger","Grauer Tiger","Weißer Tiger","Zurück","Abbrechen")
                if reittieretiger2 == 1 then
                    pc.mount(20120, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger2 == 2 then
                    pc.mount(20121, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger2 == 3 then
                    pc.mount(20122, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger2 == 4 then
                    pc.mount(20123, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger2 == 5 then
                    pc.mount(20124, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger2 == 6 then
                    pc.mount(20125, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittieretiger2 == 7 then
                    gm_panel.reittieretiger()
                elseif reittieretiger2 == 8 then
                    return
                end
            end

            function reittierelowe() -- Reittiere Löwe
                say_title("Wähle ein Reittier aus ")
                local reittierelowe = select("Wilder Löwe","Schwarzer Löwe","Brauner Löwe","Orangener Löwe","Zurück","Abbrechen")
                if reittierelowe == 1 then
                    pc.mount(20113, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierelowe == 2 then
                    pc.mount(20118, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierelowe == 3 then
                    pc.mount(20204, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierelowe == 4 then
                    pc.mount(20212, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierelowe == 5 then
                    gm_panel.reittiere()
                elseif reittierelowe == 6 then
                    return
                end
            end

            function reittierehirsch() -- Reittiere Hirsch
                say_title("Wähle ein Reittier aus ")
                local reittierehirsch = select("Wilder Hirsch","Schwarzroter Hirsch","Heller Hirsch","Brauner Hirsch","Zurück","Abbrechen")
                if reittierehirsch == 1 then
                    pc.mount(20213, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierehirsch == 2 then
                    pc.mount(20214, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierehirsch == 3 then
                    pc.mount(20215, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierehirsch == 4 then
                    pc.mount(20216, 1800)
                    chat("Reittier wurde gerufen.!")
                    send_letter("GM: Adminpanel")
                elseif reittierehirsch == 5 then
                    gm_panel.reittiere()
                elseif reittierehirsch == 6 then
                    return
                end
            end

            function frisuren() -- Frisuren geben
                if pc.get_job() == 0 then -- Krieger
                    if pc.get_sex() == 1 then -- Weiblich
                        pc.give_item2("75013", 1)
                        pc.give_item2("75014", 1)
                        pc.give_item2("75015", 1)
                        pc.give_item2("75016", 1)
                        pc.give_item2("75017", 1)
                        pc.give_item2("75018", 1)
                        pc.give_item2("75019", 1)
                        pc.give_item2("75020", 1)
                        pc.give_item2("74013", 1)
                        chat("Dir wurden weibliche Krieger Frisuren gegeben.")
                        send_letter("GM: Adminpanel")
                    else -- Männlich
                        pc.give_item2("74014", 1)
                        pc.give_item2("74015", 1)
                        pc.give_item2("74016", 1)
                        pc.give_item2("74017", 1)
                        pc.give_item2("74018", 1)
                        pc.give_item2("74019", 1)
                        pc.give_item2("74020", 1)
                        chat("Dir wurden männliche Krieger Frisuren gegeben.")
                        send_letter("GM: Adminpanel")
                    end
                elseif pc.get_job() == 1 then -- Ninja
                    if pc.get_sex() == 1 then -- Weiblich
                        pc.give_item2("74263", 1)
                        pc.give_item2("74264", 1)
                        pc.give_item2("74265", 1)
                        pc.give_item2("74266", 1)
                        pc.give_item2("74267", 1)
                        pc.give_item2("74268", 1)
                        pc.give_item2("74269", 1)
                        pc.give_item2("74270", 1)
                        chat("Dir wurden weibliche Ninja Frisuren gegeben.")
                        send_letter("GM: Adminpanel")
                    else -- Männlich
                        pc.give_item2("75213", 1)
                        pc.give_item2("75214", 1)
                        pc.give_item2("75215", 1)
                        pc.give_item2("75216", 1)
                        pc.give_item2("75217", 1)
                        pc.give_item2("75218", 1)
                        pc.give_item2("75219", 1)
                        pc.give_item2("75220", 1)
                        chat("Dir wurden männliche Ninja Frisuren gegeben.")
                        send_letter("GM: Adminpanel")
                    end
                elseif pc.get_job() == 2 then -- Sura
                    if pc.get_sex() == 1 then -- Weiblich
                        pc.give_item2("75413", 1)
                        pc.give_item2("75414", 1)
                        pc.give_item2("75415", 1)
                        pc.give_item2("75416", 1)
                        pc.give_item2("75417", 1)
                        pc.give_item2("75418", 1)
                        pc.give_item2("75419", 1)
                        pc.give_item2("75420", 1)
                        chat("Dir wurden weibliche Sura Frisuren gegeben.")
                        send_letter("GM: Adminpanel")
                    else -- Männlich
                        pc.give_item2("74513", 1)
                        pc.give_item2("74514", 1)
                        pc.give_item2("74515", 1)
                        pc.give_item2("74516", 1)
                        pc.give_item2("74517", 1)
                        pc.give_item2("74518", 1)
                        pc.give_item2("74519", 1)
                        pc.give_item2("74520", 1)
                        chat("Dir wurden männliche Sura Frisuren gegeben.")
                        send_letter("GM: Adminpanel")
                    end
                elseif pc.get_job() == 3 then -- Schamane
                    if pc.get_sex() == 1 then -- Weiblich
                        pc.give_item2("74763", 1)
                        pc.give_item2("74764", 1)
                        pc.give_item2("74765", 1)
                        pc.give_item2("74766", 1)
                        pc.give_item2("74767", 1)
                        pc.give_item2("74768", 1)
                        pc.give_item2("74769", 1)
                        pc.give_item2("74770", 1)
                        chat("Dir wurden weibliche Schamanen Frisuren gegeben.")
                        send_letter("GM: Adminpanel")
                    else -- Männlich
                        pc.give_item2("75613", 1)
                        pc.give_item2("75614", 1)
                        pc.give_item2("75615", 1)
                        pc.give_item2("75616", 1)
                        pc.give_item2("75617", 1)
                        pc.give_item2("75618", 1)
                        pc.give_item2("75619", 1)
                        pc.give_item2("75620", 1)
                        chat("Dir wurden männliche Schamanen Frisuren gegeben.")
                        send_letter("GM: Adminpanel")
                    end
                end
            end

            function charbonus() -- Char Bonus geben
                local charbonus = select("Bewegungsgeschwindigkeit", "Angriffsgeschwindigkeit", "Zaubergeschwindigkeit", "Angriffswert", "TP + TP Regeneration", "Stark gegen..", "Verteidigung", "Zurück")
                if charbonus == 1 then
                    gm_panel.bewegungsgeschwindigkeit()
                elseif charbonus == 2 then
                    gm_panel.angriffsgeschwindigkeit()
                elseif charbonus == 3 then
                    gm_panel.zaubergeschwindigkeit()
                elseif charbonus == 4 then
                    gm_panel.angriffswert()
                elseif charbonus == 5 then
                    gm_panel.tpundtpregeneration()
                elseif charbonus == 6 then
                    gm_panel.starkgegen()
                elseif charbonus == 7 then
                    gm_panel.verteidigung()
                elseif charbonus == 8 then
                    gm_panel.gmsetsmenu()
                end
            end

            function bewegungsgeschwindigkeit() -- Char Bonus Bewegungsgeschwindigkeit
                local bewegungsgeschwindigkeit = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück","Abbrechen")
                if bewegungsgeschwindigkeit == 1 then
                    affect.add_collect(apply.MOV_SPEED, 100, 60*60*24*365*10*10)
                    chat("Dir wurden 100 Bewegungsgeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif bewegungsgeschwindigkeit == 2 then
                    affect.add_collect(apply.MOV_SPEED, 250, 60*60*24*365*10)
                    chat("Dir wurden 250 Bewegungsgeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif bewegungsgeschwindigkeit == 3 then
                    affect.add_collect(apply.MOV_SPEED, 500, 60*60*24*365*10)
                    chat("Dir wurden 500 Bewegungsgeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif bewegungsgeschwindigkeit == 4 then
                    affect.add_collect(apply.MOV_SPEED, 1000, 60*60*24*365*10)
                    chat("Dir wurden 1.000 Bewegungsgeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif bewegungsgeschwindigkeit == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.MOV_SPEED, value, 60*60*24*365*10)
                        chat("Dir wurden " .. value .. " Bewegungsgeschwindigkeit gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif bewegungsgeschwindigkeit == 6 then
                    gm_panel.charbonus()
                elseif bewegungsgeschwindigkeit == 7 then
                    return
                end
            end

            function angriffsgeschwindigkeit() -- Char Bonus Angriffsgeschwindigkeit
                local angriffsgeschwindigkeit = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück","Abbrechen")
                if angriffsgeschwindigkeit == 1 then
                    affect.add_collect(apply.ATT_SPEED, 100, 60*60*24*365)
                    chat("Dir wurden 100 Angriffsgeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif angriffsgeschwindigkeit == 2 then
                    affect.add_collect(apply.ATT_SPEED, 250, 60*60*24*365)
                    chat("Dir wurden 250 Angriffsgeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif angriffsgeschwindigkeit == 3 then
                    affect.add_collect(apply.ATT_SPEED, 500, 60*60*24*365)
                    chat("Dir wurden 500 Angriffsgeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif angriffsgeschwindigkeit == 4 then
                    affect.add_collect(apply.ATT_SPEED, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Angriffsgeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif angriffsgeschwindigkeit == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATT_SPEED, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Angriffsgeschwindigkeit gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif angriffsgeschwindigkeit == 6 then
                    gm_panel.charbonus()
                elseif angriffsgeschwindigkeit == 7 then
                    return
                end
            end

            function zaubergeschwindigkeit() -- Char Bonus Zaubergeschwindigkeit
                local zaubergeschwindigkeit = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if zaubergeschwindigkeit == 1 then
                    affect.add_collect(apply.CAST_SPEED, 100, 60*60*24*365)
                    chat("Dir wurden 100 Zaubergeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif zaubergeschwindigkeit == 2 then
                    affect.add_collect(apply.CAST_SPEED, 250, 60*60*24*365)
                    chat("Dir wurden 250 Zaubergeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif zaubergeschwindigkeit == 3 then
                    affect.add_collect(apply.CAST_SPEED, 500, 60*60*24*365)
                    chat("Dir wurden 500 Zaubergeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif zaubergeschwindigkeit == 4 then
                    affect.add_collect(apply.CAST_SPEED, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Zaubergeschwindigkeit gegeben.")
                    send_letter("GM: Adminpanel")
                elseif zaubergeschwindigkeit == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.CAST_SPEED, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Zaubergeschwindigkeit gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif zaubergeschwindigkeit == 6 then
                    gm_panel.charbonus()
                elseif zaubergeschwindigkeit == 7 then
                    return
                end
            end

            function angriffswert() -- Char Bonus Angriffswert
                local angriffswert = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if angriffswert == 1 then
                    affect.add_collect(apply.ATT_BONUS, 100, 60*60*24*365)
                    chat("Dir wurden 100 Angriffswert gegeben.")
                    send_letter("GM: Adminpanel")
                elseif angriffswert == 2 then
                    affect.add_collect(apply.ATT_BONUS, 250, 60*60*24*365)
                    chat("Dir wurden 250 Angriffswert gegeben.")
                    send_letter("GM: Adminpanel")
                elseif angriffswert == 3 then
                    affect.add_collect(apply.ATT_BONUS, 500, 60*60*24*365)
                    chat("Dir wurden 500 Angriffswert gegeben.")
                    send_letter("GM: Adminpanel")
                elseif angriffswert == 4 then
                    affect.add_collect(apply.ATT_BONUS, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Angriffswert gegeben.")
                    send_letter("GM: Adminpanel")
                elseif angriffswert == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATT_BONUS, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Angriffswert gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif angriffswert == 6 then
                    gm_panel.charbonus()
                elseif angriffswert == 7 then
                    return
                end
            end

            function tpundtpregeneration() -- Char Bonus TP + TP Regeneration
                local tp_reg = select("10.000 + 2.500", "25.000 + 5.000", "50.000 + 10.000", "100.000 + 20.000", "Selbst eingeben", "Zurück", "Abbrechen")
                if tp_reg == 1 then
                    affect.add_collect(apply.MAX_HP, 10000, 60*60*24*365)
                    affect.add_collect(apply.HP_REGEN, 2500, 60*60*24*365)
                    chat("Dir wurden 10.000 TP und 2.500 TP Regeneration gegeben.")
                    send_letter("GM: Adminpanel")
                elseif tp_reg == 2 then
                    affect.add_collect(apply.MAX_HP, 25000, 60*60*24*365)
                    affect.add_collect(apply.HP_REGEN, 5000, 60*60*24*365)
                    chat("Dir wurden 25.000 TP und 5.000 TP Regeneration gegeben.")
                    send_letter("GM: Adminpanel")
                elseif tp_reg == 3 then
                    affect.add_collect(apply.MAX_HP, 50000, 60*60*24*365)
                    affect.add_collect(apply.HP_REGEN, 10000, 60*60*24*365)
                    chat("Dir wurden 50.000 TP und 10.000 TP Regeneration gegeben.")
                    send_letter("GM: Adminpanel")
                elseif tp_reg == 4 then
                    affect.add_collect(apply.MAX_HP, 100000, 60*60*24*365)
                    affect.add_collect(apply.HP_REGEN, 20000, 60*60*24*365)
                    chat("Dir wurden 100.000 TP und 20.000 TP Regeneration gegeben.")
                    send_letter("GM: Adminpanel")
                elseif tp_reg == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    say("")
                    say_reward("TP")
                    local value_hp = tonumber(input())
                    say_reward("TP Regeneration")
                    local value_hp_regen = tonumber(input())
                    if value_hp and value_hp_regen then
                        affect.add_collect(apply.MAX_HP, value_hp, 60*60*24*365)
                        affect.add_collect(apply.HP_REGEN, value_hp_regen, 60*60*24*365)
                        chat("Dir wurden " .. value_hp .. " TP und " ..value_hp_regen .. " TP Regeneration gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif tp_reg == 6 then
                    gm_panel.charbonus()
                elseif tp_reg == 7 then
                    return
                end
            end

            function starkgegen() -- Char Bonus Stark gegen..
                local starkgegen = select("Stark gegen PVM", "Stark gegen PVP", "Zurück","Abbrechen")
                if starkgegen == 1 then
                    gm_panel.starkgegen_pvm()
                elseif starkgegen == 2 then
                    gm_panel.starkgegen_pvp()
                elseif starkgegen == 3 then
                    gm_panel.charbonus()
                elseif starkgegen == 4 then
                    return
                end
            end

            function starkgegen_pvm() -- Char Bonus Stark gegen PVM..
                local starkgegen_pvm = select("Stark gegen Halbmenschen", "Stark gegen Orks", "Stark gegen Untote", "Stark gegen Monster","Weiter","Zurück", "Abbrechen")
                if starkgegen_pvm == 1 then
                    gm_panel.starkgegen_halbmenschen()
                elseif starkgegen_pvm == 2 then
                    gm_panel.starkgegen_orks()
                elseif starkgegen_pvm == 3 then
                    gm_panel.starkgegen_untote()
                elseif starkgegen_pvm == 4 then
                    gm_panel.starkgegen_monster()
                elseif starkgegen_pvm == 5 then
                    gm_panel.starkgegen2_pvm()
                elseif starkgegen_pvm == 6 then
                    gm_panel.starkgegen()
                elseif starkgegen_pvm == 7 then
                    return
                end
            end

            function starkgegen2_pvm() -- Char Bonus Stark gegen..
                local starkgegen2_pvm = select("Stark gegen Tiere", "Stark gegen Esoterische", "Stark gegen Teufel", "Zurück","Abbrechen")
                if starkgegen2_pvm == 1 then
                    gm_panel.starkgegen2_tiere()
                elseif starkgegen2_pvm == 2 then
                    gm_panel.starkgegen2_esoterische()
                elseif starkgegen2_pvm == 3 then
                    gm_panel.starkgegen2_teufel()
                elseif starkgegen2_pvm == 4 then
                    gm_panel.starkgegen_pvm()
                elseif starkgegen2_pvm == 5 then
                    return
                end
            end

            function starkgegen_halbmenschen()
                local starkgegen_halbmenschen = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen_halbmenschen == 1 then
                    affect.add_collect(apply.ATTBONUS_HUMAN, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Halbmenschen gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_halbmenschen == 2 then
                    affect.add_collect(apply.ATTBONUS_HUMAN, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Halbmenschen gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_halbmenschen == 3 then
                    affect.add_collect(apply.ATTBONUS_HUMAN, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Halbmenschen gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_halbmenschen == 4 then
                    affect.add_collect(apply.ATTBONUS_HUMAN, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Halbmenschen gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_halbmenschen == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_HUMAN, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Halbmenschen gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen_halbmenschen == 6 then
                    gm_panel.starkgegen_pvm()
                elseif starkgegen_halbmenschen == 7 then
                    return
                end
            end

            function starkgegen_orks()
                local starkgegen_orks = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen_orks == 1 then
                    affect.add_collect(apply.ATTBONUS_ORC, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Orks gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_orks == 2 then
                    affect.add_collect(apply.ATTBONUS_ORC, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Orks gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_orks == 3 then
                    affect.add_collect(apply.ATTBONUS_ORC, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Orks gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_orks == 4 then
                    affect.add_collect(apply.ATTBONUS_ORC, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Orks gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_orks == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_ORC, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Orks gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen_orks == 6 then
                    gm_panel.starkgegen_pvm()
                elseif starkgegen_orks == 7 then
                    return
                end
            end

            function starkgegen_untote()
                local starkgegen_untote = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen_untote == 1 then
                    affect.add_collect(apply.ATTBONUS_UNDEAD, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Untote gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_untote == 2 then
                    affect.add_collect(apply.ATTBONUS_UNDEAD, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Untote gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_untote == 3 then
                    affect.add_collect(apply.ATTBONUS_UNDEAD, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Untote gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_untote == 4 then
                    affect.add_collect(apply.ATTBONUS_UNDEAD, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Untote gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_untote == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_UNDEAD, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Untote gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen_untote == 6 then
                    gm_panel.starkgegen_pvm()
                elseif starkgegen_untote == 7 then
                    return
                end
            end

            function starkgegen_monster()
                local starkgegen_monster = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen_monster == 1 then
                    affect.add_collect(apply.ATTBONUS_MONSTER, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Monster gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_monster == 2 then
                    affect.add_collect(apply.ATTBONUS_MONSTER, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Monster gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_monster == 3 then
                    affect.add_collect(apply.ATTBONUS_MONSTER, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Monster gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_monster == 4 then
                    affect.add_collect(apply.ATTBONUS_MONSTER, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Monster gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_monster == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_MONSTER, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Monster gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen_monster == 6 then
                    gm_panel.starkgegen_pvm()
                elseif starkgegen_monster == 7 then
                    return
                end
            end

            function starkgegen2_tiere()
                local starkgegen2_tiere = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen2_tiere == 1 then
                    affect.add_collect(apply.ATTBONUS_ANIMAL, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Tiere gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_tiere == 2 then
                    affect.add_collect(apply.ATTBONUS_ANIMAL, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Tiere gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_tiere == 3 then
                    affect.add_collect(apply.ATTBONUS_ANIMAL, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Tiere gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_tiere == 4 then
                    affect.add_collect(apply.ATTBONUS_ANIMAL, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Tiere gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_tiere == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_ANIMAL, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Tiere gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen2_tiere == 6 then
                    gm_panel.starkgegen2_pvm()
                elseif starkgegen2_tiere == 7 then
                    return
                end
            end

            function starkgegen2_esoterische()
                local starkgegen2_esoterische = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen2_esoterische == 1 then
                    affect.add_collect(apply.ATTBONUS_MILGYO, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Esoterische gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_esoterische == 2 then
                    affect.add_collect(apply.ATTBONUS_MILGYO, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Esoterische gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_esoterische == 3 then
                    affect.add_collect(apply.ATTBONUS_MILGYO, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Esoterische gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_esoterische == 4 then
                    affect.add_collect(apply.ATTBONUS_MILGYO, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Esoterische gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_esoterische == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_MILGYO, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Esoterische gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen2_esoterische == 6 then
                    gm_panel.starkgegen2_pvm()
                elseif starkgegen2_esoterische == 7 then
                    return
                end
            end

            function starkgegen2_teufel()
                local starkgegen2_teufel = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen2_teufel == 1 then
                    affect.add_collect(apply.ATTBONUS_DEVIL, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Teufel gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_teufel == 2 then
                    affect.add_collect(apply.ATTBONUS_DEVIL, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Teufel gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_teufel == 3 then
                    affect.add_collect(apply.ATTBONUS_DEVIL, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Teufel gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_teufel == 4 then
                    affect.add_collect(apply.ATTBONUS_DEVIL, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Teufel gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen2_teufel == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_DEVIL, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Teufel gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen2_teufel == 6 then
                    gm_panel.starkgegen2_pvm()
                elseif starkgegen2_teufel == 7 then
                    return
                end
            end

            function starkgegen_pvp() -- Char Bonus Stark gegen PVP..
                local starkgegen_pvp = select("Stark gegen Krieger", "Stark gegen Ninja", "Stark gegen Sura", "Stark gegen Schamane","Zurück", "Abbrechen")
                if starkgegen_pvp == 1 then
                    gm_panel.starkgegen_krieger()
                elseif starkgegen_pvp == 2 then
                    gm_panel.starkgegen_ninja()
                elseif starkgegen_pvp == 3 then
                    gm_panel.starkgegen_sura()
                elseif starkgegen_pvp == 4 then
                    gm_panel.starkgegen_schamane()
                elseif starkgegen_pvp == 5 then
                    gm_panel.starkgegen()
                elseif starkgegen_pvp == 6 then
                    return
                end
            end

            function starkgegen_krieger()
                local starkgegen_krieger = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen_krieger == 1 then
                    affect.add_collect(apply.ATTBONUS_WARRIOR, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Krieger gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_krieger == 2 then
                    affect.add_collect(apply.ATTBONUS_WARRIOR, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Krieger gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_krieger == 3 then
                    affect.add_collect(apply.ATTBONUS_WARRIOR, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Krieger gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_krieger == 4 then
                    affect.add_collect(apply.ATTBONUS_WARRIOR, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Krieger gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_krieger == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_WARRIOR, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Krieger gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen_krieger == 6 then
                    gm_panel.starkgegen_pvp()
                elseif starkgegen_krieger == 7 then
                    return
                end
            end

            function starkgegen_ninja()
                local starkgegen_ninja = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen_ninja == 1 then
                    affect.add_collect(apply.ATTBONUS_ASSASSIN, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Ninja gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_ninja == 2 then
                    affect.add_collect(apply.ATTBONUS_ASSASSIN, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Ninja gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_ninja == 3 then
                    affect.add_collect(apply.ATTBONUS_ASSASSIN, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Ninja gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_ninja == 4 then
                    affect.add_collect(apply.ATTBONUS_ASSASSIN, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Ninja gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_ninja == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_ASSASSIN, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Ninja gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen_ninja == 6 then
                    gm_panel.starkgegen_pvp()
                elseif starkgegen_ninja == 7 then
                    return
                end
            end

            function starkgegen_sura()
                local starkgegen_sura = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen_sura == 1 then
                    affect.add_collect(apply.ATTBONUS_SURA, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Sura gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_sura == 2 then
                    affect.add_collect(apply.ATTBONUS_SURA, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Sura gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_sura == 3 then
                    affect.add_collect(apply.ATTBONUS_SURA, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Sura gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_sura == 4 then
                    affect.add_collect(apply.ATTBONUS_SURA, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Sura gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_sura == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_SURA, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Sura gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen_sura == 6 then
                    gm_panel.starkgegen_pvp()
                elseif starkgegen_sura == 7 then
                    return
                end
            end

            function starkgegen_schamane()
                local starkgegen_schamane = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if starkgegen_schamane == 1 then
                    affect.add_collect(apply.ATTBONUS_SHAMAN, 100, 60*60*24*365)
                    chat("Dir wurden 100 Stark gegen Schamanen gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_schamane == 2 then
                    affect.add_collect(apply.ATTBONUS_SHAMAN, 250, 60*60*24*365)
                    chat("Dir wurden 250 Stark gegen Schamanen gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_schamane == 3 then
                    affect.add_collect(apply.ATTBONUS_SHAMAN, 500, 60*60*24*365)
                    chat("Dir wurden 500 Stark gegen Schamanen gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_schamane == 4 then
                    affect.add_collect(apply.ATTBONUS_SHAMAN, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Stark gegen Schamanen gegeben.")
                    send_letter("GM: Adminpanel")
                elseif starkgegen_schamane == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.ATTBONUS_SHAMAN, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Stark gegen Schamanen gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif starkgegen_schamane == 6 then
                    gm_panel.starkgegen_pvp()
                elseif starkgegen_schamane == 7 then
                    return
                end
            end

            function verteidigung() -- Char Bonus Verteidigung
                local verteidigung = select("100", "250", "500", "1000", "Selbst eingeben", "Zurück", "Abbrechen")
                if verteidigung == 1 then
                    affect.add_collect(apply.DEF_BONUS, 100, 60*60*24*365)
                    chat("Dir wurden 100 Verteidigung gegeben.")
                    send_letter("GM: Adminpanel")
                elseif verteidigung == 2 then
                    affect.add_collect(apply.DEF_BONUS, 250, 60*60*24*365)
                    chat("Dir wurden 250 Verteidigung gegeben.")
                    send_letter("GM: Adminpanel")
                elseif verteidigung == 3 then
                    affect.add_collect(apply.DEF_BONUS, 500, 60*60*24*365)
                    chat("Dir wurden 500 Verteidigung gegeben.")
                    send_letter("GM: Adminpanel")
                elseif verteidigung == 4 then
                    affect.add_collect(apply.DEF_BONUS, 1000, 60*60*24*365)
                    chat("Dir wurden 1.000 Verteidigung gegeben.")
                    send_letter("GM: Adminpanel")
                elseif verteidigung == 5 then
                    say_reward("Wie viel willst du dir selbst geben?")
                    local value = tonumber(input())
                    if value then
                        affect.add_collect(apply.DEF_BONUS, value, 60*60*24*365)
                        chat("Dir wurden " .. value .. " Verteidigung gegeben.")
                        send_letter("GM: Adminpanel")
                    else
                        chat("Ungültige Eingabe. Bitte eine Zahl eingeben.")
                    end
                elseif verteidigung == 6 then
                    gm_panel.charbonus()
                elseif verteidigung == 7 then
                    return
                end
            end

            function rang_aendern()
                local rang_aendern = select("Positiver Rang", "Negativer Rang", "Zurück", "Abbrechen")
                if rang_aendern == 1 then
                    gm_panel.rang_positiv()
                elseif rang_aendern == 2 then
                    gm_panel.rang_negativ()
                elseif rang_aendern == 3 then
                    gm_panel.gmsetsmenu2()
                elseif rang_aendern == 4 then
                    return
                end
            end

            function rang_positiv()
                local rang_positiv = select("Ritterlich", "Edel", "Gut", "Freundlich", "Neutral", "Zurück","Abbrechen")
                if rang_positiv == 1 then
                    command("set "..pc.get_name() .." align 20000")
                    send_letter("GM: Adminpanel")
                elseif rang_positiv == 2 then
                    command("set "..pc.get_name() .." align 8000")
                    send_letter("GM: Adminpanel")
                elseif rang_positiv == 3 then
                    command("set "..pc.get_name() .." align 4000")
                    send_letter("GM: Adminpanel")
                elseif rang_positiv == 4 then
                    command("set "..pc.get_name() .." align 1000")
                    send_letter("GM: Adminpanel")
                elseif rang_positiv == 5 then
                    command("set "..pc.get_name() .." align 0")
                    send_letter("GM: Adminpanel")
                elseif rang_positiv == 6 then
                    gm_panel.rang_aendern()
                elseif rang_positiv == 7 then
                    return
                end
            end

            function rang_negativ()
                local rang_negativ = select("Aggressiv", "Arglistig", "Bösartig", "Grausam", "Zurück", "Abbrechen")
                if rang_negativ == 1 then
                    command("set "..pc.get_name() .." align -1")
                    send_letter("GM: Adminpanel")
                elseif rang_negativ == 2 then
                    command("set "..pc.get_name() .." align -4000")
                    send_letter("GM: Adminpanel")
                elseif rang_negativ == 3 then
                    command("set "..pc.get_name() .." align -8000")
                    send_letter("GM: Adminpanel")
                elseif rang_negativ == 4 then
                    command("set "..pc.get_name() .." align -12000")
                    send_letter("GM: Adminpanel")
                elseif rang_negativ == 5 then
                    gm_panel.rang_aendern()
                elseif rang_negativ == 6 then
                    return
                end
            end
            -- Ende von GM Sets

            -- Beginn von GM Menü
            function gmmenu()
                say_title("GM: Adminpanel - GM Menü")
                say("")
                local gmmenu = select("Online Meldungen", "NPCs rufen", "Zurück","Abbrechen")
                if gmmenu == 1 then
                    gm_panel.online_meldungen()
                elseif gmmenu == 2 then
                    gm_panel.npcs_rufen()
                elseif gmmenu == 3 then
                    gm_panel.mainmenu()
                elseif gmmenu == 4 then
                    return
                end
            end

            function online_meldungen()
                say_title("Online Meldungen")
                say("")
                local online_meldungen = select("... ist Online", "... ist noch erreichbar", "... verabschiedet sich", "Selbst schreiben", "Zurück","Abbrechen")
                if online_meldungen == 1 then
                    notice_all("".. pc.get_name() .." ist online")
                    notice_all("Er/Sie steht für eure Fragen zur verfügung")
                    send_letter("GM: Adminpanel")
                elseif online_meldungen == 2 then
                    notice_all("".. pc.get_name() .." steht euch immer noch zur verfügung")
                    send_letter("GM: Adminpanel")
                elseif online_meldungen == 3 then
                    notice_all("".. pc.get_name() .." verabschieded sich")
                    notice_all("und wünscht euch noch viel spaß!")
                    send_letter("GM: Adminpanel")
                elseif online_meldungen == 4 then
                    local message = input()
                    notice_all(message)
                    send_letter("GM: Adminpanel")
                elseif online_meldungen == 5 then
                    gm_panel.gmmenu()
                elseif online_meldungen == 6 then
                    return
                end
            end

            function npcs_rufen()
                say_title("NPCs rufen")
                say("")
                local npcs_rufen = select("NPC1", "NPC2", "NPC3", "Zurück", "Abbrechen")
                if npcs_rufen == 1 then
                    command("mob 30101")
                    send_letter("GM: Adminpanel")
                elseif npcs_rufen == 2 then
                    command("mob 30101")
                    send_letter("GM: Adminpanel")
                elseif npcs_rufen == 3 then
                    command("mob 30101")
                    send_letter("GM: Adminpanel")
                elseif npcs_rufen == 4 then
                    gm_panel.gmmenu()
                elseif npcs_rufen == 5 then
                    return
                end
            end
            -- Ende von GM Menü

            -- Beginn von Playermanagement
            function playermanagement()
                say_title("Player Management")
                say("")
                local playermanagement = select("Spieler bannen", "Spieler Item geben", "Spieler Skills auf P", "Spieler Subskills auf P", "Spieler Yang geben", "Spieler leveln", "Zurück", "Abbrechen")
                if playermanagement == 1 then
                    gm_panel.spieler_bannen()
                elseif playermanagement == 2 then
                    gm_panel.spieler_item_geben()
                elseif playermanagement == 3 then
                    gm_panel.spieler_skills_p()
                elseif playermanagement == 4 then
                    gm_panel.spieler_subskills_p()
                elseif playermanagement == 5 then
                    gm_panel.spieler_yang_geben()
                elseif playermanagement == 6 then
                    gm_panel.spieler_leveln()
                elseif playermanagement == 7 then
                    gm_panel.mainmenu()
                elseif playermanagement == 8 then
                    return
                end
            end

            function spieler_bannen()
                say_title("Spieler bannen")
                say("")
                say("Welcher Spieler soll gebannt werden?")
                say("")
                local spielername = input()
                say_title("Spieler bannen")
                say("")
                say("Du bist dabei den Spieler ".. spielername .."")
                say("zu bannen.")
                say("")
                say_reward("Bestätigen?")
                say("")
                local bestaetigen = select("Bestätigen","Abbrechen")
                if bestaetigen == 2 then
                    return
                else
                    local yonetici = pc.get_name()
                    local opp_vid2 = find_pc_by_name(yonetici)
                    local opp_vid = find_pc_by_name(spielername)
                    if opp_vid == 0 then
                        say_title("Spieler bannen")
                        say("")
                        say("So einen Spieler gibt es nicht.")
                        say("")
                    elseif opp_vid == pc.get_vid() then
                        say_title("Spieler bannen")
                        say("")
                        say("Du kannst dich selbst nicht bannen.")
                        say("")
                    else
                        local banlancak = pc.select(opp_vid)
                        pc.select(banlancak)
                        if not pc.is_near_vid(opp_vid, 50) then
                            say_title("Spieler bannen")
                            say("")
                            say("Der Spieler muss in deiner Nähe sein.")
                            say("")
                        else
                            pc.select(opp_vid)
                            local hesapid = pc.get_account_id()
                            mysql_query10("UPDATE account.account set status = 'BLOCK' where id= "..hesapid.."") ---- Þifre ve ip girecek yerler yanda
                            command("quit")
                            pc.select(opp_vid2)
                            syschat("Der Spieler ".. spielername .." wurde gebannt.")
                            send_letter("GM: Adminpanel")
                        end
                    end
                end
            end

            function spieler_item_geben()
                say_reward("Item VNUM eingeben")
                local item_vnum = tonumber(input())
                if item_vnum then
                    say_reward("Spieler Namen eingeben")
                    local name = input()
                    if name and name ~= "" then
                        command("give_item " .. name .. " " .. item_vnum)
                        chat("Du hast dem Spieler " .. name .. " das Item mit der VNUM " .. item_vnum .. " gegeben.")
                    else
                        chat("Ungültiger Spielername. Aktion abgebrochen.")
                    end
                else
                    chat("Ungültige Item VNUM. Aktion abgebrochen.")
                end
            end

            function spieler_skills_p()
                say_title("Spieler Skills P geben")
                say_reward("Bitte gib den Spielernamen ein:")
                local player_name = input()
                
                if player_name and player_name ~= "" then
                    local player_job = command("pc.get_job_other " .. player_name) -- Corrected command
                    if player_job == 0 then -- Krieger Skills
                        command("setskillother " .. player_name .. " 1 40")
                        command("setskillother " .. player_name .. " 2 40")
                        command("setskillother " .. player_name .. " 3 40")
                        command("setskillother " .. player_name .. " 4 40")
                        command("setskillother " .. player_name .. " 5 40")
                        command("setskillother " .. player_name .. " 17 40")
                        command("setskillother " .. player_name .. " 18 40")
                        command("setskillother " .. player_name .. " 19 40")
                        command("setskillother " .. player_name .. " 20 40")
                        command("setskillother " .. player_name .. " 16 40")
                        chat("Dem Spieler " .. player_name .. " wurden Krieger P Skills gegeben.")
                    elseif player_job == 1 then -- Ninja Skills
                        command("setskillother " .. player_name .. " 46 40")
                        command("setskillother " .. player_name .. " 47 40")
                        command("setskillother " .. player_name .. " 48 40")
                        command("setskillother " .. player_name .. " 49 40")
                        command("setskillother " .. player_name .. " 50 40")
                        chat("Dem Spieler " .. player_name .. " wurden Ninja P Skills gegeben.")
                    elseif player_job == 2 then -- Sura Skills
                        command("setskillother " .. player_name .. " 61 40")
                        command("setskillother " .. player_name .. " 62 40")
                        command("setskillother " .. player_name .. " 63 40")
                        command("setskillother " .. player_name .. " 64 40")
                        command("setskillother " .. player_name .. " 65 40")
                        command("setskillother " .. player_name .. " 66 40")
                        command("setskillother " .. player_name .. " 76 40")
                        command("setskillother " .. player_name .. " 77 40")
                        command("setskillother " .. player_name .. " 78 40")
                        command("setskillother " .. player_name .. " 79 40")
                        command("setskillother " .. player_name .. " 80 40")
                        command("setskillother " .. player_name .. " 81 40")
                        chat("Dem Spieler " .. player_name .. " wurden Sura P Skills gegeben.")
                    elseif player_job == 3 then -- Schamane Skills
                        command("setskillother " .. player_name .. " 91 40")
                        command("setskillother " .. player_name .. " 92 40")
                        command("setskillother " .. player_name .. " 93 40")
                        command("setskillother " .. player_name .. " 94 40")
                        command("setskillother " .. player_name .. " 95 40")
                        command("setskillother " .. player_name .. " 96 40")
                        command("setskillother " .. player_name .. " 106 40")
                        command("setskillother " .. player_name .. " 107 40")
                        command("setskillother " .. player_name .. " 108 40")
                        command("setskillother " .. player_name .. " 109 40")
                        command("setskillother " .. player_name .. " 110 40")
                        command("setskillother " .. player_name .. " 111 40")
                        chat("Dem Spieler " .. player_name .. " wurden Schamane P Skills gegeben.")
                    else
                        chat("Ungültiger Job für den Spieler " .. player_name)
                    end
                else
                    chat("Ungültiger Spielername. Aktion abgebrochen.")
                end
            end

            function spieler_subskills_p()
                say_title("Spieler Sub-Skills P geben")
                say_reward("Bitte gib den Spielernamen ein:")
                local player_name = input()

                if player_name and player_name ~= "" then
                    command("setskillother " .. player_name .. " 137 20")
                    command("setskillother " .. player_name .. " 138 20")
                    command("setskillother " .. player_name .. " 139 20")
                    command("setskillother " .. player_name .. " 131 10")
                    command("setskillother " .. player_name .. " 129 40")
                    command("setskillother " .. player_name .. " 128 20")
                    command("setskillother " .. player_name .. " 130 21")
                    command("setskillother " .. player_name .. " 127 20")
                    command("setskillother " .. player_name .. " 126 20")
                    command("setskillother " .. player_name .. " 124 40")
                    command("setskillother " .. player_name .. " 121 40")
                    command("setskillother " .. player_name .. " 122 2")
                    chat("Dem Spieler " .. player_name .. " wurden die Sub-Skills auf P gesetzt.")
                else
                    chat("Ungültiger Spielername. Aktion abgebrochen.")
                end
            end


            function spieler_yang_geben()
                say_title("Spieler Yang geben")
                say_reward("Bitte gib den Spielernamen ein:")
                local player_name = input()

                if player_name and player_name ~= "" then
                    say_reward("Bitte gib die Menge an Yang ein:")
                    local yang = tonumber(input())

                    if yang and yang > 0 then
                        command("set " .. player_name .. " gold " .. yang)
                        chat("Dem Spieler " .. player_name .. " wurden " .. yang .. " Yang gegeben.")
                    else
                        chat("Ungültige Yang-Menge. Aktion abgebrochen.")
                    end
                else
                    chat("Ungültiger Spielername. Aktion abgebrochen.")
                end
            end

            function spieler_leveln()
                say_title("Spieler leveln")
                say_reward("Bitte gib den Spielernamen ein:")
                local player_name = input()

                if player_name and player_name ~= "" then
                    say_reward("Bitte gib das gewünschte Level ein:")
                    local level = tonumber(input())

                    if level and level > 0 then
                        command("a " .. player_name .. " " .. level)
                        chat("Der Spieler " .. player_name .. " wurde auf Level " .. level .. " gesetzt.")
                    else
                        chat("Ungültiges Level. Aktion abgebrochen.")
                    end
                else
                    chat("Ungültiger Spielername. Aktion abgebrochen.")
                end
            end
        end -- when info or button with END
    end -- state start END
end -- quest gm panel END

doesnt work. when i test it withouth "function mainmenu()" example, it works.

should i need any functions more for do this like-functions?

Hello dear user,

Your post will be under surveillance by bots for the next few hours.

Forum description : Metin2 private server, Metin2 download, Metin2 support, Metin2 Forum, Metin2 Pvp Servers, Errors, Bugs, Requests, Metin2 Pvp Forum, Everything About Metin2.
 
Discord Banner

🔥 Join us on Discord! - Active chat & direct support

We invite you to join the largest Metin2 community on Discord!

Join Now!
Member Count: 
Discord Robot
HUB Bot
Announcement
AdBlock Detected

We get it, advertisements are annoying!

Sure, ad-blocking software does a great job at blocking ads, but it also blocks useful features of our website. For the best site experience please disable your AdBlocker.

I've Disabled AdBlock