[Release]Ausgeprägtes Archivment System

06/02/2012 12:55 volume1a#1
Hallo Community, Ich habe Ein überarbeitetes Archivment System ( da ich in der Sufu nix gefunden habe release ich es mal ) und zwar kann man Archivment Punkte Verschicken Eintauschen etc ....

Die Quest im Anhang, Da sie für den Theard Zu lang ist. Sorry

Und die Screens:

Menü:

[Only registered and activated users can see links. Click Here To Register...]

Eintauschen:

[Only registered and activated users can see links. Click Here To Register...]

Archivment System:

[Only registered and activated users can see links. Click Here To Register...]

PS: für alle Hater, ich ignoriere eure Kommis!
06/02/2012 12:59 Tentos123#2
nice^^ mach doch nen sammelthread mit allen Quests auf :D
06/02/2012 13:00 volume1a#3
Quote:
Originally Posted by Tentos123 View Post
nice^^ mach doch nen sammelthread mit allen Quests auf :D
Ich bin schon am überlegen ob ich nicht die SF release :p
06/02/2012 13:01 'Roccat™#4
COol
06/02/2012 13:03 .Verkauf´#5
Quote:
Originally Posted by volume1a View Post
Ich bin schon am überlegen ob ich nicht die SF release :p
Da haben wir genug von, oder nicht?
Nicht böse gemeint, aber wenn du die besten Sachen einzeln released ist das besser.:)
06/02/2012 13:18 Tentos123#6
Ich würde es nett finden wenn du die files released, da die Quests schon der hammer sind :D
06/02/2012 13:35 Sp0ngeb0b ist cool#7
Hmm finde die Quest ist ziemlich schlecht geschrieben...
06/02/2012 13:46 volume1a#8
Quote:
Originally Posted by Sp0ngeb0b ist cool View Post
Hmm finde die Quest ist ziemlich schlecht geschrieben...
Es ist Geschmacks sache
06/02/2012 14:33 Sp0ngeb0b ist cool#9
Quote:
Originally Posted by volume1a View Post
Es ist Geschmacks sache
Ne, dabei kommt es nicht auf Geschmack an sondern auf die Qualität, dass es schlecht geschrieben ist,ist eine Tatsache xD

Um dir ein Beispiel zu geben:
Deine ersten 321 Zeilen kannst du durch folgende 28 Zeilen ersetzen:
PHP Code:
quest Achievement_Shop begin
    state start begin        
        when login 
or levelup begin
            local lv 
= {
            {
1,1},{50,1},{75,2},{85,3},
            {
90,4},{95,5},{100,6},{110,7},{120,8},{130,9},{140,10},{150,11},}    
            for 
1table.getn(lv) do
                if 
pc.get_level() >= lv[i][1] and pc.getqf('level_'..lv[i][1]) ~= 1 then
                    pc
.setqf('level_'..lv[i][1], 1)
                    
pc.setqf("achievement_points"pc.getqf('achievement_points')+lv[i][2])           
                    
cmdchat("achievement Level_"..lv[i][1].."_erreicht%"..pc.getqf('achievement_points').."")
                
end
            end    
        end
        when kill begin
            local mobs 
= {
            {
691},{791},{792},{1094},{1095},{1192},{2291},{1304},{1901},{2091},{2191},
            {
8026},{8027},{8040},{8041},{8042},{8043},{8044},{8045},{8046},{8047},}
            for 
itable.getn(mobs) do
                if 
npc.get_race() == mobs[i][1then
                    pc
.setqf('kill_'..mobs[i][1], pc.getqf('kill_'..mobs[i][1])+1)
                    
pc.setqf('achievement_points'pc.getqf('achievement_points')+1)
                    
cmdchat("achievement "..mob_name(mobs[i][1]).."_zerstört#"..pc.getqf('kill_'..mobs[i][1]).."%"..pc.getqf('achievement_points').."")
                
end
            end
        end
    end
end 
06/02/2012 15:12 Tentos123#10
deine ist doch das man welche bekommt die von volume1a ist das man gg was eintauschen kann
06/02/2012 16:46 AntiMask#11
Quote:
Originally Posted by Tentos123 View Post
deine ist doch das man welche bekommt die von volume1a ist das man gg was eintauschen kann
Du hast es echt nicht begriffen, hmm? Spongebob wollte nur zeigen, dass es auch viel kürzer geht und hat die ersten 321 Zeilen der Quest auf wenige 27 gebracht. Würdest du dich mit Programmieren/Scripten nur ein bisschen auskennen, wüsstest du, dass umso kürzer der Code, desto effizienter das Programm ist. Aber das kann man ja von den Wenigsten hier erwarten...

Nächstes Mal lieber überlegen anstatt irgendwas reinzuscheissen.

Mfg AntiMask
06/02/2012 16:54 xZauberhazzex#12
Bekommst ein thanks ^^ x3
06/02/2012 17:22 volume1a#13
Sry leute, Mein patcher wurde von Nouce gelöscht, muss alles neu installieren.
06/05/2012 23:21 volume1a#14
Patch Server bei mir geht wieder zum download von allem.

Quote:
Originally Posted by AntiMask View Post
Du hast es echt nicht begriffen, hmm? Spongebob wollte nur zeigen, dass es auch viel kürzer geht und hat die ersten 321 Zeilen der Quest auf wenige 27 gebracht. Würdest du dich mit Programmieren/Scripten nur ein bisschen auskennen, wüsstest du, dass umso kürzer der Code, desto effizienter das Programm ist. Aber das kann man ja von den Wenigsten hier erwarten...

Nächstes Mal lieber überlegen anstatt irgendwas reinzuscheissen.

Mfg AntiMask


Und Ja es mag sein das die quest endlos lang ist, aber hauptsache sie funktioniert ;)
06/06/2012 00:09 Zymos#15
Melde mich auch mal zu Wort...
Schlecht geschrieben, dazu blockt sie andere Quests.
@Spongebot hat hier die beste und sauberste Lösung präsentiert.
Ich hab sie so ähnlich, wie du:)

mfg Zymos

Das meine, zumindest das kill...

PHP Code:
    when kill with not npc.is_pc() and check_is_testserver_gm_gm_item('Achievement Kills') == false begin
        
if
        
npc.get_race() == 691 or 
        
npc.get_race() == 2091 or 
        
npc.get_race() == 1192 or 
        
npc.get_race() == 1901 or 
        
npc.get_race() == 2206 or 
        
npc.get_race() == 1304 or 
        
npc.get_race() == 1093 or 
        
npc.get_race() == 2492 or 
        
npc.get_race() == 2493 or 
        
npc.get_race() == 2598 or 
        
npc.get_race() == 2291 then 
        
if Achievement.Punktetabelle(npc.get_race(),3) >= pc.get_level() then
            pc
.setqf("mob_"..npc.get_race()..""pc.getqf("mob_"..npc.get_race().."") +1)
            
local rows mysql_query("SELECT achievement_point FROM "..DATABASE..".player WHERE id='"..pc.get_player_id().."'")
            
local akt_punkte rows[1][1]
            
local mob Achievement.Punktetabelle(npc.get_race(),2)
            
local punkte Achievement.Punktetabelle(npc.get_race(),1)
            
local count pc.getqf("mob_"..npc.get_race().."")
            
cmdchat("achievement ".. mob .."_getötet#".. count .."%".. akt_punkte punkte .."")
            
Achievement.add_points(akt_punkte,punkte)
        
end
        end
    end 
und das select macht dem Root nichts aus, ist eine SSD festplatte.
Wenn ich genau in 1 Sekunde 5000 Dinge Selectiere bleibt der core 7 Sekunden stehen.
Aber was ja unmöglich, dann müssten damit der root ein LAGG hat, ca 700 Spieler genau in ein und selben sekunde selectieren.. Was ja auch nicht geht :)