Quest [QUEST-RELEASE]gmLogin

Stato
Discussione chiusa ad ulteriori risposte.

Skhiroth

Utente Electrum
23 Novembre 2013
390
12
245
198
Ultima modifica da un moderatore:
Salve a tutta l'utenza di Inforge,
oggi vi propongo questo semplice script in lua, fatto alla pazzo di cane :asd: in 5 minuti.
Questo script non ha alcun utilità ma visto che non c'avevo nulla da fare l'ho fatto.

Cosa fa di preciso? Praticamente se un GM vuole può disabilitare o abilitare l'annuncio globale della sua entrata nel game. Non dico altro visto che la quest è abbastanza facile e intuitiva. Per come migliorare la quest o altro mandatemi un messaggio privato, ogni messaggio fatto solo per spammare o per aumentare il proprio counter dei messaggi verrà segnalato.
La quest l'ho fatta da 0 io, non è neanche tanto difficile da fare quindi non dite che già esiste visto che esistono solo i script che avvisano e basta.

Codice:
quest gmLogin begin
    state start begin
        when letter with pc.is_gm() begin
            send_letter("Avviso login")
        end
        
        when button or info with pc.is_gm() begin
            say_title("Avviso login")
            say("Salve "..pc.get_name()..",")
            if pc.getqf("gmLoginMSG") == 0 then
                say("stanco di avvisare tutti i player")
                say("del tuo login nel game e vorresti")
                say("disattivare quel avviso?")
                local q = select("Si","No")
                if q == 1 then
                    say_title("Avviso login")
                    say("Avviso della tua entrata nel gioco disabilitata.")
                    say("Per abilitarlo nuovamente riloggare.")
                    pc.setqf("gmLoginMSG", 1)
                end
            elseif pc.getqf("gmLoginMSG") == 1 then
                say("vorresti nuovamente avvisare i player")
                say("del tuo login in game?")
                local w = select("Si","No")
                if w == 1 then
                    say_title("Avviso login")
                    say("Avviso della tua entrata nel gioco abilitata.")
                    say("Per disabilitarlo nuovamente riloggare.")
                    pc.setqf("gmLoginMSG", 0)
                end
            end
        end
        
        when login with pc.is_gm() begin
            if pc.getqf("gmLoginMSG") == 0 then
                notice_all(pc.get_name().. " e' online.")
            end
        end
    end
end
 
Mhhh non è tanto utile, era più utile se la quest spammava anche il nome del gm ogni tanto... ma va beh...bravo :D
 
Grazie, comunque lo so che è un po' inutile (un po' troppo) ma comunque a qualcuno servirà, io per quello l'ho fatto, anche se non lo meritano però vabbeh quello è un altro conto.
Per la cosa che spamma il nome ogni tanto è molto facile da fare, ma adesso visto che la mia voglia è di nuovo a 0, ho fatto solo questo.
Codice:
quest gmLogin_v2 begin
    state start begin
        when login begin
            if pc.is_gm() then
                game.set_event_flag(pc.get_name(), 1)
                notice_all(pc.get_name().." è online.")
            end
            -- Aggiungere gli eventuali GM.
            if game.get_event_flag("Test") == 1 then
                notice("Test è online.")
            end
            ------------------------------
        end
        when logout with pc.is_gm() begin
            game.set_event_flag(pc.get_name(), 0)
        end
    end
end
Cosa fa questa quest? Beh sicuramente non ciò che fa l'altra, non ho voluto dilungarmi troppo comunque, quando un qualunque personaggio che abbia poteri e quindi i game master, game admin, o quello che vi pare logga, con un notice_all, manderà a tutti un messaggio con tipo "Test è online.", un altra cosa che fa, è di registrare in un event_flag lo status del personaggio (ON o OFF), se è online, al login di un qualunque personaggio (non gm) vi apparirà un messaggio con scritto che "Test è online." ovviamente i nomi, e gli eventuali game master dovranno essere scritti nella quest, si poteva fare anche in un altro modo ma come ho già detto non ho voluto dilungarmi troppo.
Oltre a questo si poteva usare benissimo un server_timer, che ogni 5 minuti avvia un notice_all.
 
Stato
Discussione chiusa ad ulteriori risposte.