pet quest boni einfügen?

07/26/2014 18:03 thespeedyy#1
wie kann ich in der neuen pet quest bonis einfügen?
07/26/2014 18:32 PDDS™#2
Schau dir die Quest-Funktionen an.
07/26/2014 22:02 thespeedyy#3
ja aber jeder pet soll andere bonis haben :/
07/27/2014 11:27 PDDS™#4
Dann ändere sie?! Du tust die Bonis ja jedes mal wenn das Pet gerufen wird entfernen und wieder anwenden. Wenn du jetzt nicht weißt wie man die Bonis ändert.... :facepalm:
07/27/2014 13:12 thespeedyy#5
PHP Code:
quest pet_system begin
    state start begin
        
function get_pet_info(itemVnum)
            
pet_info_map = {
            --  [
ITEM VNUM] MOB_VNUM, DEFAULT NAME, buff_idx, spawn_effect_idx
                
[53001]     = { 34001, "'s Phönix", 0},
                [
53002]     = { 34002, "'s Rentierjunges", 0},
                [
53003]     = { 34003, "'s Eis Phönix", 0},
                [
53005]     = { 34004, "'s Azrael", 1},
                [
53006]     = { 34006, "'s Rufus", 0},
                [
53007]     = { 34008, "´s Leonidas", 0},
                [
53008]     = { 34007, "'s Khan", 0},
                [
53009]     = { 34005, "'s Pokie", 0},
                [
53010]     = { 34010, "'s Bambi", 0},
                [
53011]     = { 34011, "'s Knuud", 0},
                [
53012]     = { 34012, "´s Bao Bao", 0},
                [
53013]     = { 34013, "´s Dark Rufus", 0},
                [
53999]     = { 34009, "'s Azrael2", 0},
            }

            
itemVnum = tonumber(itemVnum)

            return 
pet_info_map[itemVnum]
        
end
        
function get_spawn_effect_file(idx)
            
effect_table = {
                [
0] = nil,
                [
1] = "d:\\\\ymir work\\\\effect\\\\etc\\\\appear_die\\\\npc2_appear.mse",
            }
            return 
effect_table [idx]
        
end
        when 53013.
use or 53012.use or 53011.use or 53010.use or 53009.use or 53008.use or 53007.use or 53006.use or 53005.use or 53004.use or 53003.use or 53002.use or 53001.use begin
            local pet_info 
= pet_system.get_pet_info(item.vnum)
            if 
null != pet_info then

                local mobVnum 
= pet_info[1]
                
local petName = pet_info[2]
                
local spawn_effect_file_name = pet_system.get_spawn_effect_file(pet_info[3])

                if 
true == pet.is_summon(mobVnum) then
                    
if spawn_effect_file_name != nil then
                        pet
.spawn_effect (mobVnum, spawn_effect_file_name)
                    
end
                    pet
.unsummon(mobVnum)
                else
                    if 
pet.count_summoned() < 2 then
                        pet
.summon(mobVnum, petName, false)
                    else
                        
syschat("Du kannst maximal zwei Hautiere rufen.")
                    
end
                    
if spawn_effect_file_name != nil then
                        pet
.spawn_effect(mobVnum, spawn_effect_file_name)
                    
end
                end 
-- if pet.is_summon
            end  
-- if null != pet_info
        end 
-- when
    end 
-- state
end 
-- quest 
da bei jeden pet ein anderen boni? das erklär mal bitte
07/27/2014 13:19 PDDS™#6
Quote:
Originally Posted by thespeedyy View Post
PHP Code:
quest pet_system begin
    state start begin
        
function get_pet_info(itemVnum)
            
pet_info_map = {
            --  [
ITEM VNUM] MOB_VNUM, DEFAULT NAME, buff_idx, spawn_effect_idx
                
[53001]     = { 34001, "'s Phönix", 0},
                [
53002]     = { 34002, "'s Rentierjunges", 0},
                [
53003]     = { 34003, "'s Eis Phönix", 0},
                [
53005]     = { 34004, "'s Azrael", 1},
                [
53006]     = { 34006, "'s Rufus", 0},
                [
53007]     = { 34008, "´s Leonidas", 0},
                [
53008]     = { 34007, "'s Khan", 0},
                [
53009]     = { 34005, "'s Pokie", 0},
                [
53010]     = { 34010, "'s Bambi", 0},
                [
53011]     = { 34011, "'s Knuud", 0},
                [
53012]     = { 34012, "´s Bao Bao", 0},
                [
53013]     = { 34013, "´s Dark Rufus", 0},
                [
53999]     = { 34009, "'s Azrael2", 0},
            }

            
itemVnum = tonumber(itemVnum)

            return 
pet_info_map[itemVnum]
        
end
        
function get_spawn_effect_file(idx)
            
effect_table = {
                [
0] = nil,
                [
1] = "d:\\\\ymir work\\\\effect\\\\etc\\\\appear_die\\\\npc2_appear.mse",
            }
            return 
effect_table [idx]
        
end
        when 53013.
use or 53012.use or 53011.use or 53010.use or 53009.use or 53008.use or 53007.use or 53006.use or 53005.use or 53004.use or 53003.use or 53002.use or 53001.use begin
            local pet_info 
= pet_system.get_pet_info(item.vnum)
            if 
null != pet_info then

                local mobVnum 
= pet_info[1]
                
local petName = pet_info[2]
                
local spawn_effect_file_name = pet_system.get_spawn_effect_file(pet_info[3])

                if 
true == pet.is_summon(mobVnum) then
                    
if spawn_effect_file_name != nil then
                        pet
.spawn_effect (mobVnum, spawn_effect_file_name)
                    
end
                    pet
.unsummon(mobVnum)
                else
                    if 
pet.count_summoned() < 2 then
                        pet
.summon(mobVnum, petName, false)
                    else
                        
syschat("Du kannst maximal zwei Hautiere rufen.")
                    
end
                    
if spawn_effect_file_name != nil then
                        pet
.spawn_effect(mobVnum, spawn_effect_file_name)
                    
end
                end 
-- if pet.is_summon
            end  
-- if null != pet_info
        end 
-- when
    end 
-- state
end 
-- quest 
da bei jeden pet ein anderen boni? das erklär mal bitte
Schau dir die verdammte quest_functions an man! Dann deklariere jedes mount einzeln anstatt sie alle per or zu checken und apply bei jedem Mount den Boni wo du willst.

Ich mach hier doch nicht deine Arbeit?! :facepalm:
07/27/2014 14:51 thespeedyy#7
danke für deine FREUNDLICHE hilfe -.- | brauche immernoch hilfe
07/27/2014 14:58 PDDS™#8
Quote:
Originally Posted by thespeedyy View Post
danke für deine FREUNDLICHE hilfe -.- | brauche immernoch hilfe
Das Forum hier ist da um dir Tipps zu geben, nicht um dir deine Drecksarbeit zu erledigen. Zumindest nicht für Free.
07/27/2014 17:35 thespeedyy#9
push da er weder geholfen hat und ziemlich unhöfflich war
07/27/2014 18:27 .Colossus.#10
Machs in der quest per add_affect oder in der db bei applytype