Phönix Quest fail -.-

08/13/2012 01:03 CHXENVS#1
Hallo Community,

Und zwar habe ich dieses Problem:
Ich habe diese Phönix Quest drinnen. Aber wenn die User ein Pet rufen, summiert sich der TP Bonus von dem! Sagen wir mal der Phönix hat 2k TP,
dan ruft man ihn und man kriegt diesen 2k TP Bonus, aber wenn man ihn weg schickt und wieder ruft bekommt man 4k TP (d.h. es wird immer wieder drauf gezählt) und wenn man ihn wieder weg schickt, bekommt man wieder 2k TP mehr, somit sind wir schon bei 6k TP. Dieses Spiel kann man bis in das unentliche wiederholen! Außerdem bleiben die TP konstant, nicht das ihr meint, das die TP nach dem ich den Phönix weg geschickt habe weg sind, sie sind beständig!
Würde mich freuen, wenn mir einer bei diesem Problem weiterhelfen könnte.

Code:
quest official_pets begin
    state start begin
        when 53001.use with pc.getqf("icephoenix") == 0 and pc.getqf("reindeer") == 0 and pc.getqf("pwahuang") == 0 and pc.getqf("dog") == 0 and pc.getqf("lion") == 0 and pc.getqf("pig") == 0 and pc.getqf("tiger") == 0 begin
            if pc.getqf("firephoenix_use") == 0 then
                local old_horse_name = horse.get_name() ;
                    if string.len(old_horse_name) == 0 then
                        chat("Dein Haustier hat noch keinen Namen!")
                    end
                say_reward("Dein Haustier wurde gerufen!")
                local your_horse_level = horse.get_level()
                pc.setqf("horse_level_save", your_horse_level)
                pc.setqf("firephoenix_use", 1)
                pc.setqf("firephoenix", 1)
                affect.add_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
                affect.add_collect(apply.DEF_GRADE_BONUS,100,60*60*8)
                affect.add_collect(apply.ATT_MAX_HP, 100,60*60*8)
                horse.set_level("22")
                horse.unsummon() horse.summon()
				
				local horse_settings = pc.getqf("horse_level_save")
                horse.set_level(horse_settings)
            else
                say_reward("Dein Haustier verabschiedet sich nun von dir!")
                affect.remove_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
                affect.remove_collect(apply.DEF_GRADE_BONUS,100,60*60*8) 
                affect.remove_collect(apply.ATT_MAX_HP, 100,60*60*8)                 
                horse.unsummon()
                pc.setqf("firephoenix_use", 0)
                pc.setqf("firephoenix", 0)
                
                local horse_settings = pc.getqf("horse_level_save")
                horse.set_level(horse_settings)
            
            end
        end
        when logout or login with pc.getqf("firephoenix_use") == 1 begin
            
            pc.setqf("firephoenix_use", 0)
            pc.setqf("firephoenix", 0)
                
            local horse_settings = pc.getqf("horse_level_save")
            horse.set_level(horse_settings)
            
            say_reward("Dein Haustier ging alleine fort!")
            affect.remove_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
            affect.remove_collect(apply.DEF_GRADE_BONUS,100,60*60*8)   
            affect.remove_collect(apply.MAX_HP, 7000,60*60*8)  
        end
        when 53003.use with pc.getqf("firephoenix") == 0 and pc.getqf("reindeer") == 0 and pc.getqf("pwahuang") == 0 and pc.getqf("dog") == 0 and pc.getqf("lion") == 0 and pc.getqf("pig") == 0 and pc.getqf("tiger") == 0 begin
            if pc.getqf("icephoenix_use") == 0 then
                local old_horse_name = horse.get_name() ;
                    if string.len(old_horse_name) == 0 then
                        say_reward("Dein Haustier hat noch keinen Namen!")
                    end
                say_reward("Dein Haustier wurde gerufen!")
                local your_horse_level = horse.get_level()
                pc.setqf("horse_level_save", your_horse_level)
                pc.setqf("icephoenix_use", 1)
                pc.setqf("icephoenix", 1)
                affect.add_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
                affect.add_collect(apply.DEF_GRADE_BONUS,100,60*60*8)
                affect.add_collect(apply.MAX_HP, 2000,60*60*8)
                affect.add_collect(apply.ATTBONUS_ANIMAL, 150,60*60*8)
                horse.set_level("23")
                horse.unsummon() horse.summon()
				
				local horse_settings = pc.getqf("horse_level_save")
                horse.set_level(horse_settings)
            else
                say_reward("Dein Haustier verabschiedet sich nun von dir!")
                affect.remove_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
				affect.remove_collect(apply.DEF_GRADE_BONUS,100,60*60*8)   
				affect.remove_collect(apply.MAX_HP, 7000,60*60*8)       
                horse.unsummon()
                pc.setqf("icephoenix_use", 0)
                pc.setqf("icephoenix", 0)
                
                local horse_settings = pc.getqf("horse_level_save")
                horse.set_level(horse_settings)
            
            end
        end
        when logout or login with pc.getqf("icephoenix_use") == 1 begin
            
            pc.setqf("icephoenix_use", 0)
            pc.setqf("icephoenix", 0)
                
            local horse_settings = pc.getqf("horse_level_save")
            horse.set_level(horse_settings)
            
            say_reward("Dein Eisphönix verlässt dich nun!")
            affect.remove_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
            affect.remove_collect(apply.DEF_GRADE_BONUS,100,60*60*8)   
            affect.remove_collect(apply.MAX_HP, 7000,60*60*8)
        end
		when 53002.use with pc.getqf("firephoenix") == 0 and pc.getqf("icephoenix") == 0 and pc.getqf("pwahuang") == 0 and pc.getqf("dog") == 0 and pc.getqf("lion") == 0 and pc.getqf("pig") == 0 and pc.getqf("tiger") == 0 begin
            if pc.getqf("reindeer") == 0 then
                local old_horse_name = horse.get_name() ;
                    if string.len(old_horse_name) == 0 then
                        say_reward("Dein Haustier hat noch keinen Namen!")
                    end
                say_reward("Dein Haustier wurde gerufen!")
                local your_horse_level = horse.get_level()
                pc.setqf("horse_level_save", your_horse_level)
                pc.setqf("reindeer_use", 1)
				pc.setqf("reindeer", 1)
                affect.add_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
                affect.add_collect(apply.DEF_GRADE_BONUS,100,60*60*8)
                affect.add_collect(apply.MAX_HP, 7000,60*60*8)
                horse.set_level("24")
                horse.unsummon() horse.summon()
				
				local horse_settings = pc.getqf("horse_level_save")
                horse.set_level(horse_settings)
            else
                say_reward("Dein Haustier verabschiedet sich nun von dir!")
                affect.remove_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
				affect.remove_collect(apply.DEF_GRADE_BONUS,100,60*60*8)   
				affect.remove_collect(apply.MAX_HP, 7000,60*60*8)        
                horse.unsummon()
                pc.setqf("reindeer_use", 0)
				pc.setqf("reindeer", 0)
                
                local horse_settings = pc.getqf("horse_level_save")
                horse.set_level(horse_settings)
            
            end
        end
        when logout or login with pc.getqf("reindeer_use") == 1 begin
            
            pc.setqf("reindeer_use", 0)
			pc.setqf("reindeer", 0)
                
            local horse_settings = pc.getqf("horse_level_save")
            horse.set_level(horse_settings)
            
            say_reward("Dein Haustier verlässt dich nun!")
            affect.remove_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
            affect.remove_collect(apply.DEF_GRADE_BONUS,100,60*60*8)   
            affect.remove_collect(apply.MAX_HP, 7000,60*60*8)
        end
		when 53005.use with pc.getqf("firephoenix") == 0 and pc.getqf("icephoenix") == 0 and pc.getqf("reindeer") == 0 and pc.getqf("dog") == 0 and pc.getqf("lion") == 0 and pc.getqf("pig") == 0 and pc.getqf("tiger") == 0 begin
            if pc.getqf("pwahuang") == 0 then
                local old_horse_name = horse.get_name() ;
                    if string.len(old_horse_name) == 0 then
                        say_reward("Dein Haustier hat noch keinen Namen!")
                    end
                say_reward("Dein Haustier wurde gerufen!")
                local your_horse_level = horse.get_level()
                pc.setqf("horse_level_save", your_horse_level)
                pc.setqf("pwahuang_use", 1)
				pc.setqf("pwahuang", 1)
                affect.add_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
                affect.add_collect(apply.DEF_GRADE_BONUS,100,60*60*8)
                affect.add_collect(apply.MAX_HP, 7000,60*60*8)
                horse.set_level("25")
                horse.unsummon() horse.summon()
				
				local horse_settings = pc.getqf("horse_level_save")
                horse.set_level(horse_settings)
            else
                say_reward("Dein Haustier verabschiedet sich nun von dir!")
                affect.remove_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
				affect.remove_collect(apply.DEF_GRADE_BONUS,100,60*60*8)   
				affect.remove_collect(apply.MAX_HP, 7000,60*60*8)       
                horse.unsummon()
                pc.setqf("pwahuang_use", 0)
				pc.setqf("pwahuang", 0)
                
                local horse_settings = pc.getqf("horse_level_save")
                horse.set_level(horse_settings)
            
            end
        end
        when logout or login with pc.getqf("pwahuang_use") == 1 begin
            
            pc.setqf("pwahuang_use", 0)
			pc.setqf("pwahuang", 0)
                
            local horse_settings = pc.getqf("horse_level_save")
            horse.set_level(horse_settings)
            
            say_reward("Dein Haustier verlässt dich nun!")
            affect.remove_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
            affect.remove_collect(apply.DEF_GRADE_BONUS,100,60*60*8)   
            affect.remove_collect(apply.MAX_HP, 7000,60*60*8)
        end
		when 53006.use with pc.getqf("lion") == 0 and pc.getqf("pig") == 0 and pc.getqf("tiger") == 0 and pc.getqf("firephoenix") == 0 and pc.getqf("icephoenix") == 0 and pc.getqf("reindeer") == 0 and pc.getqf("pwahuang") == 0 begin
            if pc.getqf("dog_use") == 0 then
                local old_horse_name = horse.get_name() ;
                    if string.len(old_horse_name) == 0 then
                        say_reward("Dein Haustier hat noch keinen Namen!")
                    end
                say_reward("Dein Haustier wurde gerufen!")
                local your_horse_level = horse.get_level()
                pc.setqf("horse_level_save", your_horse_level)
                pc.setqf("dog_use", 1)
                pc.setqf("dog", 1)
                affect.add_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
                affect.add_collect(apply.DEF_GRADE_BONUS,100,60*60*8)
                affect.add_collect(apply.MAX_HP, 7000,60*60*8)
                horse.set_level("26")
                horse.unsummon() horse.summon()
				
				local horse_settings = pc.getqf("horse_level_save")
                horse.set_level(horse_settings)
            else
                say_reward("Dein Haustier verabschiedet sich nun von dir!")
                affect.remove_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
                affect.remove_collect(apply.DEF_GRADE_BONUS,100,60*60*8)   
                affect.remove_collect(apply.MAX_HP, 7000,60*60*8)                   
                horse.unsummon()
                pc.setqf("dog_use", 0)
                pc.setqf("dog", 0)
                
                local horse_settings = pc.getqf("horse_level_save")
                horse.set_level(horse_settings)
            
            end
        end
        when logout or login with pc.getqf("dog_use") == 1 begin
            
            pc.setqf("dog_use", 0)
            pc.setqf("dog", 0)
                
            local horse_settings = pc.getqf("horse_level_save")
            horse.set_level(horse_settings)
            
            say_reward("Dein Haustier verlässt dich nun!")
            affect.remove_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
            affect.remove_collect(apply.DEF_GRADE_BONUS,100,60*60*8)   
            affect.remove_collect(apply.MAX_HP, 7000,60*60*8)  
        end
        when 53007.use with pc.getqf("dog") == 0 and pc.getqf("pig") == 0 and pc.getqf("tiger") == 0 and pc.getqf("firephoenix") == 0 and pc.getqf("icephoenix") == 0 and pc.getqf("reindeer") == 0 and pc.getqf("pwahuang") == 0 begin
            if pc.getqf("lion_use") == 0 then
                local old_horse_name = horse.get_name() ;
                    if string.len(old_horse_name) == 0 then
                        say_reward("Dein Haustier hat noch keinen Namen!")
                    end
                say_reward("Dein Haustier wurde gerufen!")
                local your_horse_level = horse.get_level()
                pc.setqf("horse_level_save", your_horse_level)
                pc.setqf("lion_use", 1)
                pc.setqf("lion", 1)
                affect.add_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
                affect.add_collect(apply.DEF_GRADE_BONUS,100,60*60*8)
                affect.add_collect(apply.MAX_HP, 5000,60*60*8)
                affect.add_collect(apply.ATTBONUS_HUMAN, 30,60*60*8)
                horse.set_level("27")
                horse.unsummon() horse.summon()
				
				local horse_settings = pc.getqf("horse_level_save")
                horse.set_level(horse_settings)
            else
                say_reward("Dein Haustier verabschiedet sich nun von dir!")
                affect.remove_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
				affect.remove_collect(apply.DEF_GRADE_BONUS,100,60*60*8)   
				affect.add_collect(apply.MAX_HP, 5000,60*60*8)
                            affect.add_collect(apply.ATTBONUS_HUMAN, 30,60*60*8)       
                horse.unsummon()
                pc.setqf("lion_use", 0)
                pc.setqf("lion", 0)
                
                local horse_settings = pc.getqf("horse_level_save")
                horse.set_level(horse_settings)
            
            end
        end
        when logout or login with pc.getqf("lion_use") == 1 begin
            
            pc.setqf("lion_use", 0)
            pc.setqf("lion", 0)
                
            local horse_settings = pc.getqf("horse_level_save")
            horse.set_level(horse_settings)
            
            say_reward("Dein Haustier verlässt dich nun!")
            affect.remove_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
            affect.remove_collect(apply.DEF_GRADE_BONUS,100,60*60*8)   
            affect.add_collect(apply.MAX_HP, 5000,60*60*8)
            affect.add_collect(apply.ATTBONUS_HUMAN, 30,60*60*8)
        end
		when 53008.use with pc.getqf("dog") == 0 and pc.getqf("lion") == 0 and pc.getqf("tiger") == 0 and pc.getqf("firephoenix") == 0 and pc.getqf("icephoenix") == 0 and pc.getqf("reindeer") == 0 and pc.getqf("pwahuang") == 0 begin
            if pc.getqf("pig") == 0 then
                local old_horse_name = horse.get_name() ;
                    if string.len(old_horse_name) == 0 then
                        say_reward("Dein Haustier hat noch keinen Namen!")
                    end
                say_reward("Dein Haustier wurde gerufen!")
                local your_horse_level = horse.get_level()
                pc.setqf("horse_level_save", your_horse_level)
                pc.setqf("pig_use", 1)
				pc.setqf("pig", 1)
                affect.add_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
                affect.add_collect(apply.DEF_GRADE_BONUS,100,60*60*8)
                affect.add_collect(apply.MAX_HP, 4000,60*60*8)
                affect.add_collect(apply.ATT_GRADE_BONUS,150,60*60*8)
                horse.set_level("28")
                horse.unsummon() horse.summon()
				
				local horse_settings = pc.getqf("horse_level_save")
                horse.set_level(horse_settings)
            else
                say_reward("Dein Haustier verabschiedet sich nun von dir!")
                affect.remove_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
				affect.remove_collect(apply.DEF_GRADE_BONUS,100,60*60*8)   
				affect.add_collect(apply.MAX_HP, 4000,60*60*8)
                            affect.add_collect(apply.ATT_GRADE_BONUS,150,60*60*8)        
                horse.unsummon()
                pc.setqf("pig_use", 0)
				pc.setqf("pig", 0)
                
                local horse_settings = pc.getqf("horse_level_save")
                horse.set_level(horse_settings)
            
            end
        end
        when logout or login with pc.getqf("pig_use") == 1 begin
            
            pc.setqf("pig_use", 0)
			pc.setqf("pig", 0)
                
            local horse_settings = pc.getqf("horse_level_save")
            horse.set_level(horse_settings)
            
            say_reward("Dein Haustier verlässt dich nun!")
            affect.remove_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
            affect.remove_collect(apply.DEF_GRADE_BONUS,100,60*60*8)   
            affect.add_collect(apply.MAX_HP, 4000,60*60*8)
            affect.add_collect(apply.ATT_GRADE_BONUS,150,60*60*8)
        end
		when 53009.use with pc.getqf("dog") == 0 and pc.getqf("lion") == 0 and pc.getqf("pig") == 0 and pc.getqf("firephoenix") == 0 and pc.getqf("icephoenix") == 0 and pc.getqf("reindeer") == 0 and pc.getqf("pwahuang") == 0 begin
            if pc.getqf("tiger") == 0 then
                local old_horse_name = horse.get_name() ;
                    if string.len(old_horse_name) == 0 then
                        say_reward("Dein Haustier hat noch keinen Namen!")
                    end
                say_reward("Dein Haustier wurde gerufen!")
                local your_horse_level = horse.get_level()
                pc.setqf("horse_level_save", your_horse_level)
                pc.setqf("tiger_use", 1)
				pc.setqf("tiger", 1)
                affect.add_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
                affect.add_collect(apply.DEF_GRADE_BONUS,100,60*60*8)
                affect.add_collect(apply.MAX_HP, 4000,60*60*8)
                affect.add_collect(apply.ATT_GRADE_BONUS,150,60*60*8)
                horse.set_level("29")
                horse.unsummon() horse.summon()
				
				local horse_settings = pc.getqf("horse_level_save")
                horse.set_level(horse_settings)
            else
                say_reward("Dein Haustier verabschiedet sich nun von dir!")
                affect.remove_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
				affect.remove_collect(apply.DEF_GRADE_BONUS,100,60*60*8)   
				affect.add_collect(apply.MAX_HP, 4000,60*60*8)
                            affect.add_collect(apply.ATT_GRADE_BONUS,150,60*60*8)       
                horse.unsummon()
                pc.setqf("tiger_use", 0)
				pc.setqf("tiger", 0)
                
                local horse_settings = pc.getqf("horse_level_save")
                horse.set_level(horse_settings)
            
            end
        end
        when logout or login with pc.getqf("tiger_use") == 1 begin
            
            pc.setqf("tiger_use", 0)
			pc.setqf("tiger", 0)
                
            local horse_settings = pc.getqf("horse_level_save")
            horse.set_level(horse_settings)
            
            say_reward("Dein Haustier verlässt dich nun!")
            affect.remove_collect(apply.ATT_GRADE_BONUS,100,60*60*8)
            affect.remove_collect(apply.DEF_GRADE_BONUS,100,60*60*8)   
            affect.add_collect(apply.MAX_HP, 4000,60*60*8)
            affect.add_collect(apply.ATT_GRADE_BONUS,150,60*60*8)
        end
    end
end