Quest [RELEASE]Premium-System Quest [EASY]

Stato
Discussione chiusa ad ulteriori risposte.
5 Settembre 2010
689
30
118
246
Ultima modifica da un moderatore:
Giorno raga , oggi non avendo niente da fare , mi sono messo a scrivere una banale quest per voi.
E' veramente semplice :)asd:) ... ma ho voluto postarla ed eccola ... si tratta di un premium-system.

Funzione:

Se avete dei requisiti parlate con il mob 20094 e vi mette come player-premium , e vi da un item con cui utilizzare utilizzare i vantaggi.

La quest non è testata , ma dovrebbe funzionare al 100%.

PHP:
quest premium_system begin
    state start begin
        when 20094.chat with pc.getqf("premium_player") == 0 begin
            say_title(mob_name(20094))
            say("")
            say("Buongiorno "..pc.get_name()..".")
            say("Io sono Hong-Hae e posso farti diventare")
            say("un 'Premium-Player' ovviamente il tutto non e' gratis.")
            say("Per fare parte di questa categoria")
            say("devi avere i seguenti requisiti:")
            say("")
            say_reward("Essere Minimo Lv.50")
            say_reward("Avere 100.000.000 Yang")
            say_reward("Essere in una Gilda")
            local choose = select("Voglio essere un 'Premium-Player' ","No, Grazie.")
            if choose == 2 then
                return
            else 
                if pc.has_guild() then
                    if pc.get_level() >= 50 then
                        if pc.getgold() >= 100000000 then
                            say_title(mob_name(20094))
                            say("")
                            say_orange("Ottimo ora sei un 'Premium-Player'.")
                            say("")
                            say("Ora riceverai un item con il quale potrai usufruire")
                            say("dei poteri di 'Premium-Player'")
                            say("e in piu' ti verranno assegnati dei Bonus.")
                            say("")
                            say_reward("Hai Ricevuto: Nome-Item")
                            say_reward("Hai Ricevuto: +1500 HP (permanenti)")
                            say_reward("Hai Ricevuto: +10% attacco altre razze")
                            say_reward("Hai Ricevuto: +250 Difesa (permanenti)")
                            say_reward("Hai Ricevuto: +20 mezzuomini (permanenti")
                            pc.give_item2(vnum)
                            affect.add_collect(apply.MAX_HP,1500,60*60*24*365*60)
                            affect.add_collect(apply.DEF_GRADE_BONUS,250,60*60*24*365*60)
                            affect.add_collect(apply.ATTBONUS_HUMAN,20,60*60*24*365*60)
                            affect.add_collect(apply.ATTBONUS_WARRIOR,10,60*60*24*364*60)
                            affect.add_collect(apply.ATTBONUS_SURA,10,60*60*24*365*60)
                            affect.add_collect(apply.ATTBONUS_SHAMAN,10,60*60*24*365*60)
                            affect.add_collect(apply.ATTBONUS_ASSASSIN,10,60*60*24*365*60)
                            pc.setqf("premium_player",1)
                            pc.changegold(-100000000)
                        else
                            say_title(mob_name(20094))
                            say("")
                            say("Mi dispiace ma non hai i requisiti")
                            say("torna quando li avrai")
                        end
                    else
                        say_title(mob_name(20094))
                        say("")
                        say("Mi dispiace ma non hai i requisiti")
                        say("torna quando li avrai")
                    end
                else
                    say_title(mob_name(20094))
                    say("")
                    say("Mi dispiace ma non hai i requisiti")
                    say("torna quando li avrai")
                end
            end
        end
        
        when vnum.use with pc.getqf("premium_player") == 1 begin
            say_title("Nome-Item")
            say("")
            say("Salve "..pc.get_name()..".")
            say("A quanto pare sei un 'Premium-Player'")
            say("Se non sai cosa puo' fare un 'Premium-Player',")
            say("rivolgiti nel menu' 'Informazioni' e scoprilo")
            say("se invece sai gia' tutto e vuoi acquistare qualcosa")
            say("rivolgiti nel menu' 'Premium-Shop'.")
            say("Cosa desideri fare?")
            local choose2 = select("Informazioni","Premium-Shop","Chiudi")
            if choose2 == 3 then
                return
            elseif choose2 == 1 then
                say_title("Informazioni")
                say("")
                say("Bene ... "..pc.get_name().." ora ti spiego tutto.")
                say("Il 'Premium-Player' e' una categoria avanzata di Personaggio")
                say("ovvero puo' usufruire di cose , che un normale player non puo'.")
                say("Ora tu ti starai chiedendo quali sono queste cose?")
                say("Ti rispondo immediatamente... Innazitutto, appena diventi")
                say("un 'Player-Premium' ricevi dei bonus")
                say("ma non finisce qui, un 'Player-Premium' puo' utilizzare")
                say("anche un 'Premium-Shop' in cui si possono acquistare Oggetti")
                say("non venduti dai normali 'NPC'.")
                wait()
                say_title("Informazioni")
                say("")
                say("In questo negozio vi saranno Oggetti di ogni tipo:")
                say("Per Uppare, Per Expare, Armi, Armature, ecc...")
                say("Spero tu abbia capito a cosa server essere un 'Premium-Player'")
                say("Ora sai tutto il Necessario ... alla prossima "..pc.get_name()..".")
            else
                say_title("Nome-Item")
                say("")
                say("Hai deciso di aprire il 'Premium-Shop'.")
                say("Ecco a te.")
                npc.open_shop(1234)
            end
        end
    end
end

RINGRAZIO : ReckLess per avermi dato qualche diritta ... in quanto sono alle prime armi col Lua
--------------------------------------------------------------------------------------------------------------
E in oltre c'è un'altra cosa che dovete fare e che non ho fatto al posto vostro , dovete creare un negozio tramite query col vnum '1234' (oppure come volete) e settarci dentro tutti gli item che volete e che poi verranno visualizzati in game ;) .

Alla prossima , Esperia@
---------------------------------------------------
AGGIORNAMENTO:

da mettere in questlib.lua :
PHP:
function say_orange(str)	say(color256(255,191,24)..str..color256(196, 196, 196))end

da mettere in quest_functions:
PHP:
say_orange
 
:taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae: :taummae:

---------- Post added at 19:10 ---------- Previous post was at 19:10 ----------

solo per aver citato reckless (quel nabboide) meriti l'impiccagione

ma k sang i kitemmuort e passat ? .... segnalo !
 
Bravo per essere la prima è carina ma ricorda che il compito di un buon scripter è anche quello di ridurre lo script ai minimi termini eliminando le parti inutili e dando una piccola occhiata sul tuo script ci sono parti che possono essere eliminate, ti consiglio di riguardarlo :) saluti
 
I vantaggi del Premium-Player sono:
say("Ora riceverai un item con il quale potrai usufruire")
say("dei poteri di 'Premium-Player'")
say("e in piu' ti verranno assegnati dei Bonus.")
say("")
say_reward("Hai Ricevuto: Nome-Item")
say_reward("Hai Ricevuto: +1500 HP (permanenti)")
say_reward("Hai Ricevuto: +10% attacco altre razze")
say_reward("Hai Ricevuto: +250 Difesa (permanenti)")
say_reward("Hai Ricevuto: +20 mezzuomini (permanenti")
pc.give_item2(vnum)
________________________________________________________________

say("Il 'Premium-Player' e' una categoria avanzata di Personaggio")
say("ovvero puo' usufruire di cose , che un normale player non puo'.")
say("Ora tu ti starai chiedendo quali sono queste cose?")
say("Ti rispondo immediatamente... Innazitutto, appena diventi")
say("un 'Player-Premium' ricevi dei bonus")
say("ma non finisce qui, un 'Player-Premium' puo' utilizzare")
say("anche un 'Premium-Shop' in cui si possono acquistare Oggetti")
say("non venduti dai normali 'NPC'.")
wait()
say_title("Informazioni")
say("")
say("In questo negozio vi saranno Oggetti di ogni tipo:")
say("Per Uppare, Per Expare, Armi, Armature, ecc...")
 
non centra niente /e player_premium 1 ... non è un event_flag .... avvia il server in test_server e logga in game ... parla con il mob 20094 ... e dimmi che ti esce in chat .

Sicuro di aver implementato say_orange in questlib e quest_functions ?
 
non centra niente /e player_premium 1 ... non è un event_flag .... avvia il server in test_server e logga in game ... parla con il mob 20094 ... e dimmi che ti esce in chat .

Sicuro di aver implementato say_orange in questlib e quest_functions ?
questa è la quest
Codice:
quest premium_system begin
    state start begin
        when 20095.chat with pc.getqf("premium_player") == 0 begin
            say_title(mob_name(20095))
            say("")
            say("Buongiorno "..pc.get_name()..".")
            say("Io sono Seon-Hae e posso farti diventare")
            say("un 'Premium-Player' ovviamente il tutto non e' gratis.")
            say("Per fare parte di questa categoria")
            say("devi avere i seguenti requisiti:")
            say("")
            say_reward("Essere Minimo Lv.120")
            say_reward("Avere 500.000.000 Yang")
            say_reward("Essere in una Gilda")
            local choose = select("Voglio essere un 'Premium-Player' ","No, Grazie.")
            if choose == 2 then
                return
            else 
                if pc.has_guild() then
                    if pc.get_level() >= 120 then
                        if pc.getgold() >= 500000000 then
                            say_title(mob_name(20095))
                            say("")
                            say_orange("Ottimo ora sei un 'Premium-Player'.")
                            say("")
                            say("Ora riceverai un item con il quale potrai usufruire")
                            say("dei poteri di 'Premium-Player'")
                            say("e in piu' ti verranno assegnati dei Bonus.")
                            say("")
                            say_reward("Hai Ricevuto: Nome-Item")
                            say_reward("Hai Ricevuto: +3000 HP (permanenti)")
                            say_reward("Hai Ricevuto: +15% attacco altre razze")
                            say_reward("Hai Ricevuto: +300 Difesa (permanenti)")
                            say_reward("Hai Ricevuto: +30 mezzuomini (permanenti")
                            pc.give_item2(70030)
                            affect.add_collect(apply.MAX_HP,3000,60*60*24*365*60)
                            affect.add_collect(apply.DEF_GRADE_BONUS,300,60*60*24*365*60)
                            affect.add_collect(apply.ATTBONUS_HUMAN,30,60*60*24*365*60)
                            affect.add_collect(apply.ATTBONUS_WARRIOR,15,60*60*24*364*60)
                            affect.add_collect(apply.ATTBONUS_SURA,15,60*60*24*365*60)
                            affect.add_collect(apply.ATTBONUS_SHAMAN,15,60*60*24*365*60)
                            affect.add_collect(apply.ATTBONUS_ASSASSIN,15,60*60*24*365*60)
                            pc.setqf("premium_player",1)
                            pc.changegold(-500000000)
                        else
                            say_title(mob_name(20095))
                            say("")
                            say("Mi dispiace ma non hai i requisiti")
                            say("torna quando li avrai")
                        end
                    else
                        say_title(mob_name(20095))
                        say("")
                        say("Mi dispiace ma non hai i requisiti")
                        say("torna quando li avrai")
                    end
                else
                    say_title(mob_name(20095))
                    say("")
                    say("Mi dispiace ma non hai i requisiti")
                    say("torna quando li avrai")
                end
            end
        end
        
        when 70030.use with pc.getqf("premium_player") == 1 begin
            say_title("Monocolo Rosso")
            say("")
            say("Salve "..pc.get_name()..".")
            say("A quanto pare sei un 'Premium-Player'")
            say("Se non sai cosa puo' fare un 'Premium-Player',")
            say("rivolgiti nel menu' 'Informazioni' e scoprilo")
            say("se invece sai gia' tutto e vuoi acquistare qualcosa")
            say("rivolgiti nel menu' 'Premium-Shop'.")
            say("Cosa desideri fare?")
            local choose2 = select("Informazioni","Premium-Shop","Chiudi")
            if choose2 == 3 then
                return
            elseif choose2 == 1 then
                say_title("Informazioni")
                say("")
                say("Bene ... "..pc.get_name().." ora ti spiego tutto.")
                say("Il 'Premium-Player' e' una categoria avanzata di Personaggio")
                say("ovvero puo' usufruire di cose , che un normale player non puo'.")
                say("Ora tu ti starai chiedendo quali sono queste cose?")
                say("Ti rispondo immediatamente... Innazitutto, appena diventi")
                say("un 'Player-Premium' ricevi dei bonus")
                say("ma non finisce qui, un 'Player-Premium' puo' utilizzare")
                say("anche un 'Premium-Shop' in cui si possono acquistare Oggetti")
                say("non venduti dai normali 'NPC'.")
                wait()
                say_title("Informazioni")
                say("")
                say("In questo negozio vi saranno Oggetti di ogni tipo:")
                say("Per Uppare, Per Expare, Armi, Armature, ecc...")
                say("Spero tu abbia capito a cosa server essere un 'Premium-Player'")
                say("Ora sai tutto il Necessario ... alla prossima "..pc.get_name()..".")
            else
                say_title("Monocolo Rosso")
                say("")
                say("Hai deciso di aprire il 'Premium-Shop'.")
                say("Ecco a te.")
                npc.open_shop(11)
            end
        end
    end
end
 
Si ma io alla prima pagina , ho fatto un aggiornamento ... e ho inserito delle stringhe che vanno a loro volta inserite nel questlib (presente in /quest) e nel quest_functions(presente in /quest) ... se non le hai messe è normale che non ti va ... in quanto la quest utilizza un nuovo say (say_orange)
 
Stato
Discussione chiusa ad ulteriori risposte.