Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Metin2 > Metin2 Private Server
You last visited: Today at 22:35

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[SERVICE] Die Questkontrolle

Discussion on [SERVICE] Die Questkontrolle within the Metin2 Private Server forum part of the Metin2 category.

Reply
 
Old 12/21/2011, 21:12   #4291
 
elite*gold: 0
Join Date: Jan 2011
Posts: 2,903
Received Thanks: 1,262
PHP Code:
quest wer_ist_online begin
    state start begin
        when login with pc
.is_gm() begin
            game
.set_event_flag(pc.get_name(), 1)
        
end
        when logout with pc
.is_gm() begin
            game
.set_event_flag(pc.get_name(), 0)
        
end
        when 20082.chat
."Wer ist Online?" begin
            say_title
("Wer ist Online")
            
say("Hier siehst du wer Online ist.")
            
say("Du siehst die ersten 10 Spieler.")
            
say("")
            
say("Name                Status            ")
            
say("")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        if 
game.get_event_flag("name")== 1 then
            say_green
("name")        Online        ")
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            say_red("
name")            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        
end
        
if game.get_event_flag("name")== 1 then
            say_green
("name")        Online        ")
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            say_red("
name")            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
        
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        
end
        
if game.get_event_flag("name")== 1 then
            say_green
("name")        Online        ")
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            say_red("
name")            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
        
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        
end
        
if game.get_event_flag("name")== 1 then
            say_green
("name")        Online        ")
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            say_red("
name")            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        
end
        
if game.get_event_flag("name")== 1 then
            say_green
("name")        Online        ")
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            say_red("
name")            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
wait()
        
end
        
if game.get_event_flag("name")== 1 then
            say_green
("name")        Online        ")
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            say_red("
name")            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        
end
        
if game.get_event_flag("name")== 1 then
            say_green
("name")        Online        ")
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            say_red("
name")            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        
end
        
if game.get_event_flag("name")== 1 then
            say_green
("name")        Online        ")
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            say_red("
name")            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        
end
        
if game.get_event_flag("name")== 1 then
            say_green
("name")        Online        ")
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            say_red("
name")            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        
end
        
if game.get_event_flag("name")== 1 then
            say_green
("name")        Online        ")
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            say_red("
name")            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
        
end
    end
end 
Es müsste eig. gehen wenn nicht schau ich nochmal
£αšεℜ™ is offline  
Old 12/21/2011, 21:31   #4292
 
.Delta's Avatar
 
elite*gold: 26
Join Date: Mar 2010
Posts: 3,765
Received Thanks: 2,661
£αšεℜ™
mit pci:new wird glaube ich nur eine variable erstellt.
Abrufen musste das dann selber.
Aber frag lieber Mijago persönlich
.Delta is offline  
Old 12/22/2011, 08:17   #4293
 
xTheSoulutionxx3's Avatar
 
elite*gold: 0
Join Date: Sep 2010
Posts: 427
Received Thanks: 105
PHP Code:
quest wer_ist_online_player begin
    state start begin
        when login begin
        set_state
("player1")
        
end
    end
    state player1 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 1)
        
set_state("player2")
        
end
    end
    state player2 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 2)
        
set_state("player3")
        
end
    end
    state player3 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 3)
        
set_state("player4")
        
end
    end
    state player4 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 4)
        
set_state("player5")
        
end
    end
    state player5 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 5)
        
set_state("player6")
        
end
    end
    state player6 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 6)
        
set_state("player7")
        
end
    end
    state player7 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 7)
        
set_state("player8")
        
end
    end
    state player8 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 8)
        
set_state("player9")
        
end
    end
    state player9 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 9)
        
set_state("player10")
        
end
    end
    state player10 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 10)
        
set_state("player1")
        
end
    end
        when logout begin
        game
.set_event_flag(pc.get_name(), 0)
    
end
end 
xTheSoulutionxx3 is offline  
Old 12/22/2011, 08:34   #4294
 
.Delta's Avatar
 
elite*gold: 26
Join Date: Mar 2010
Posts: 3,765
Received Thanks: 2,661
Quote:
Originally Posted by xTheSoulutionxx3 View Post
PHP Code:
quest wer_ist_online_player begin
    state start begin
        when login begin
        set_state
("player1")
        
end
    end
    state player1 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 1)
        
set_state("player2")
        
end
    end
    state player2 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 2)
        
set_state("player3")
        
end
    end
    state player3 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 3)
        
set_state("player4")
        
end
    end
    state player4 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 4)
        
set_state("player5")
        
end
    end
    state player5 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 5)
        
set_state("player6")
        
end
    end
    state player6 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 6)
        
set_state("player7")
        
end
    end
    state player7 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 7)
        
set_state("player8")
        
end
    end
    state player8 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 8)
        
set_state("player9")
        
end
    end
    state player9 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 9)
        
set_state("player10")
        
end
    end
    state player10 begin
        when login begin
        game
.set_event_flag(pc.get_name(), 10)
        
set_state("player1")
        
end
    end
        when logout begin
        game
.set_event_flag(pc.get_name(), 0)
    
end
end 
Was soll die Quest eig bringen o.O
Du setzt lediglich für jeden spieler ne eventflag, die nacheinander von 1 bis 10 durchgezähl wird für jeden player extra.

Hat keinen Sinn für mich.
.Delta is offline  
Old 12/22/2011, 08:42   #4295
 
xTheSoulutionxx3's Avatar
 
elite*gold: 0
Join Date: Sep 2010
Posts: 427
Received Thanks: 105
da fehlt ja auch noch ne andere quest dann sollte mann es eig verstehen.
xTheSoulutionxx3 is offline  
Old 12/22/2011, 08:46   #4296
 
.Delta's Avatar
 
elite*gold: 26
Join Date: Mar 2010
Posts: 3,765
Received Thanks: 2,661
Quote:
Originally Posted by xTheSoulutionxx3 View Post
PHP Code:
quest wer_ist_online begin
    state start begin
        when 20082.chat
."Wer ist Online?" begin
            say_title
("Wer ist Online")
            
say("Hier siehst du wer Online ist.")
            
say("Du siehst die ersten 10 Spieler.")
            
say("")
            
say("Name                Status            ")
            
say("")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        if 
game.get_event_flag("pc.get_name()")== 1 then
            say_green
("pc.get_name()        Online        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say_red("pc.get_name()            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
end
        
if game.get_event_flag("pc.get_name()")== 1 then
            say_green
("pc.get_name()        Online        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say_red("pc.get_name()            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
        
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
end
        
if game.get_event_flag("pc.get_name()")== 1 then
            say_green
("pc.get_name()        Online        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say_red("pc.get_name()            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
        
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
end
        
if game.get_event_flag("pc.get_name()")== 1 then
            say_green
("pc.get_name()        Online        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say_red("pc.get_name()            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
end
        
if game.get_event_flag("pc.get_name()")== 1 then
            say_green
("pc.get_name()        Online        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say_red("pc.get_name()            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
wait()
end
        
if game.get_event_flag("pc.get_name()")== 1 then
            say_green
("pc.get_name()        Online        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say_red("pc.get_name()            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
end
        
if game.get_event_flag("pc.get_name()")== 1 then
            say_green
("pc.get_name()        Online        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say_red("pc.get_name()            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
end
        
if game.get_event_flag("pc.get_name()")== 1 then
            say_green
("pc.get_name()        Online        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say_red("pc.get_name()            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
end
        
if game.get_event_flag("pc.get_name()")== 1 then
            say_green
("pc.get_name()        Online        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say_red("pc.get_name()            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
end
        
if game.get_event_flag("pc.get_name()")== 1 then
            say_green
("pc.get_name()        Online        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        else
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say_red("pc.get_name()            Offline        ")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("")
    
end
end
        when login begin
        
if pc.is_gm() then
        
return
        else
        
game.set_event_flag(pc.get_name(), 1)
end
        when logout begin
        
if pc.is_gm() then
        
return
        else
        
game.set_event_flag(pc.get_name(), 0)
        
end
    end
end 
meinst du die hier? o.O
Die zeigt dir aber nur dich als player selber an.
Keine anderen Spieler

Deswegen sag ich ja: sinnlos
ein GM-online script versteh ich ja noch, aber bei playern ..
.Delta is offline  
Old 12/22/2011, 08:52   #4297
 
xTheSoulutionxx3's Avatar
 
elite*gold: 0
Join Date: Sep 2010
Posts: 427
Received Thanks: 105
wieso denn nur mich ?
xTheSoulutionxx3 is offline  
Old 12/22/2011, 08:54   #4298
 
.Delta's Avatar
 
elite*gold: 26
Join Date: Mar 2010
Posts: 3,765
Received Thanks: 2,661
In der Abfrage, wer online ist müsstest du dann konkret die Namen der 10 "ersten" spieler abfragen (vgl GM Online Quest),
Du arbeitest aber immer nur mit pc.get_name() und das gibt dir nunmal deinen eigenen Playernamen aus
.Delta is offline  
Old 12/22/2011, 13:35   #4299
 
Sp0ngeb0b ist cool's Avatar
 
elite*gold: 15
Join Date: Sep 2010
Posts: 844
Received Thanks: 975
hmm ich bin mir nicht sicher aber ein versuch ist es wert

undzwar macht man das über die datenbank mit ner schleife bsp:

PHP Code:
quest last_login begin
    state start begin
        when 20011.chat
."Last Login" begin
            last_login
.player_login()
        
end 
        
function player_login()
            
local i 
            say_title
("Die letzten 10 eingeloggten Spieler"
            
say_reward("Platz || Name || Datum ")
            
say(""
            
rank mysql_query("SELECT last_play, name, account_id FROM player.player WHERE player.name NOT LIKE '[%' ORDER BY last_play DESC",'root','franzi')
            while 
<= 10 do
                
say(""..i..". "..rank.name[i].." || "..rank.last_play[i].."")
                

            end
        end
    end
end 
naja...wie gesagt ist nur ne vermutung ob es klappt weiß ich nicht
kann ja jemand mal testen :P
Sp0ngeb0b ist cool is offline  
Old 12/22/2011, 13:58   #4300
 
lolor2's Avatar
 
elite*gold: 135
Join Date: Oct 2007
Posts: 1,088
Received Thanks: 210
erledigt
lolor2 is offline  
Old 12/22/2011, 15:18   #4301
 
Kriegergeist^^'s Avatar
 
elite*gold: 60
Join Date: Jul 2010
Posts: 771
Received Thanks: 439
#Sp0ngeb0b ist cool
danke das du mir geholfen hast.
Die quest schließt sich jetzt nicht mehr, aber ich bekomme immer die aussage, das ich zuwenig rangpunkte habe.

Hier ist noch mal die quest:

Wär nett wen du mir weiter helfen könntest

MfG
Kriegergeist^^
Kriegergeist^^ is offline  
Old 12/22/2011, 17:28   #4302
 
Synfonia's Avatar
 
elite*gold: 0
Join Date: Oct 2009
Posts: 1,064
Received Thanks: 905
Quote:
Originally Posted by Kriegergeist^^ View Post
#Sp0ngeb0b ist cool
danke das du mir geholfen hast.
Die quest schließt sich jetzt nicht mehr, aber ich bekomme immer die aussage, das ich zuwenig rangpunkte habe.

Hier ist noch mal die quest:

Wär nett wen du mir weiter helfen könntest

MfG
Kriegergeist^^
Nett, dass man dir früher schon hilft aber nicht erwähnt wird.

Es gibt auch eine Funktion namens pc.changealignment ohne _, probiers mal damit.
Bei uninitialisierten questflags nehme ich in der Regel immer < 1 anstatt == 0 auch wenns keinen Unterschied macht in der Theorie.
Synfonia is offline  
Thanks
1 User
Old 12/22/2011, 19:16   #4303
 
elite*gold: 39
Join Date: Jun 2009
Posts: 500
Received Thanks: 212
Wie frage ich eine mit pc.setqf() gesetzte Variable aus einer anderen Quest ab?
Oder muss ich sie dafür anders setzen?

Mfg
.HC'Destrox is offline  
Old 12/22/2011, 20:04   #4304
 
Synfonia's Avatar
 
elite*gold: 0
Join Date: Oct 2009
Posts: 1,064
Received Thanks: 905
@Destroyer446

pc.getf("questname", "flagname")

z.B.
Flag: geruchsstaerke
Quest: furzen_for_fun.quest

pc.getf("furzen_for_fun", "geruchsstaerke")
Synfonia is offline  
Thanks
1 User
Old 12/22/2011, 20:24   #4305
 
Kriegergeist^^'s Avatar
 
elite*gold: 60
Join Date: Jul 2010
Posts: 771
Received Thanks: 439
Sorry Synfonia, dein beitrag hatte ich woll überlesen.
Aber mit den Befehl den du mir gegeben hast, schließt sich das fenster wieder bei der Belohnung abholerei

Habe auch schon versucht pc.changealignment ohne () zu machen, hat auch nicht geklappt
glaube mit pc.get_alignment() war garnicht so falsch
wär nett wen du mir noch mal helfen könntest

MfG
Kriegergeist^^
Kriegergeist^^ is offline  
Reply




All times are GMT +1. The time now is 22:35.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.