function KillingBlowAnnouncer:GetKillingMessage(info)
    return self.db.profile.killingMessage;
end;

function KillingBlowAnnouncer:GetMessage(info)
    return self.db.profile.message;
end;

function KillingBlowAnnouncer:GetGreen(info)
    return self.db.profile.green;
end;

function KillingBlowAnnouncer:GetRed(info)
    return self.db.profile.red;
end;

function KillingBlowAnnouncer:GetBlue(info)
    return self.db.profile.blue;
end;

function KillingBlowAnnouncer:GetPrevSession(info)
    return self.db.profile.prevSession;
end;

function KillingBlowAnnouncer:EnableKBT(info)
    return self.db.profile.enableKBT;
end;

function KillingBlowAnnouncer:EnableSoundOrderedRestartEnd(info)
    return self.db.profile.sounds_ordered_restart_end;
end;

function KillingBlowAnnouncer:EnableSoundOrderedRestartDeath(info)
    return self.db.profile.sounds_ordered_restart_death;
end;

function KillingBlowAnnouncer:EnableSoundOrderedRestartZone(info)
    return self.db.profile.sounds_ordered_restart_zone;
end;

function KillingBlowAnnouncer:EnableSoundOrderedRestartTime(info)
    return self.db.profile.sounds_ordered_restart_time;
end;

function KillingBlowAnnouncer:GetSoundLevel(info)
    return self.db.profile.soundLevel;
end;

function KillingBlowAnnouncer:GetOutline(info)
    return self.db.profile.outline;
end;

function KillingBlowAnnouncer:GetDisableStartupText(info)
    return self.db.profile.disableStartupText;
end;

function KillingBlowAnnouncer:EnableSnap(info)
    return self.db.profile.enableSnap;
end;

function KillingBlowAnnouncer:EnableKBTDrag(info)
    return self.db.profile.enableKBTDrag;
end;

function KillingBlowAnnouncer:EnableMessageDrag(info)
    return self.db.profile.enableMessageDrag;
end;

function KillingBlowAnnouncer:EnableImageDrag(info)
    return self.db.profile.enableImageDrag;
end;

function KillingBlowAnnouncer:GetTrackerFont(info)
    return self.db.profile.trackerFont;
end;

function KillingBlowAnnouncer:GetSound(info)
    return self.db.profile.sound;
end;

function KillingBlowAnnouncer:GetFont(info)
    return self.db.profile.font;
end;

function KillingBlowAnnouncer:GetTrackerBorder(info)
    return self.db.profile.trackerBorder;
end;

function KillingBlowAnnouncer:GetTrackerBackground(info)
    return self.db.profile.trackerBackground;
end;

function KillingBlowAnnouncer:GetFontSize(info)
    return self.db.profile.fontSize;
end;

function KillingBlowAnnouncer:EnableKBSound(info)
    return self.db.profile.enableKBSound;
end;

function KillingBlowAnnouncer:GetVisibleTime(info)
    return self.db.profile.visibleTime;
end;

function KillingBlowAnnouncer:GetFadeTime(info)
    return self.db.profile.fadeTime;
end;

function KillingBlowAnnouncer:EnableKB(info)
    return self.db.profile.enableKB;
end;

function KillingBlowAnnouncer:GetModus(info)
    return self.db.profile.KB_modus;
end;

function KillingBlowAnnouncer:GetSoundModus(info)
    return self.db.profile.sounds_modus;
end;

function KillingBlowAnnouncer:EnablePVP(info)
    return self.db.profile.enablePVP;
end;

function KillingBlowAnnouncer:EnableEmotes(info)
    return self.db.profile.enableEmotes;
end;

function KillingBlowAnnouncer:EnableMSG(info)
    return self.db.profile.enableMSG;
end;

function KillingBlowAnnouncer:GetChatChannel(info)
    return self.db.profile.chatChannel;
end;

function KillingBlowAnnouncer:GetKBIDebug(info)
    return self.db.profile.KBI_debug;
end;

function KillingBlowAnnouncer:GetFadeInTime(info)
    return self.db.profile.KBI_fadeInTime;
end;

function KillingBlowAnnouncer:GetFadeOutTime(info)
    return self.db.profile.KBI_fadeOutTime;
end;

function KillingBlowAnnouncer:GetEndDelay(info)
    return self.db.profile.KBI_duration;
end;

function KillingBlowAnnouncer:GetAnnounceMessage(info)
    return self.db.profile.messageAnnounce;
end;

function KillingBlowAnnouncer:GetChatAnnounceChannel(info)
    return self.db.profile.chatAnnounceChannel;
end;

function KillingBlowAnnouncer:GetSoundsOrderedTimeVal(info)
    return self.db.profile.sounds_ordered_time_val;
end;

function KillingBlowAnnouncer:GetMinimapStatus(info)
    return self.db.profile.minimap.hide;
end;

function KillingBlowAnnouncer:GetKBIImage(info)
    return self.db.profile.KBI_image;
end;

function KillingBlowAnnouncer:GetKBIWidth(info)
    return self.db.profile.KBI_width;
end;

function KillingBlowAnnouncer:GetKBIHeight(info)
    return self.db.profile.KBI_height;
end;

function KillingBlowAnnouncer:GetKBMWidth(info)
    return self.db.profile.KBM_width;
end;

function KillingBlowAnnouncer:GetKBMHeight(info)
    return self.db.profile.KBM_height;
end;

function KillingBlowAnnouncer:EnableMSGAnnounce(info)
    return self.db.profile.enableMSGAnnounce;
end;

function KillingBlowAnnouncer:ExistsInEmotes(info, key)
     return self.db.profile.emotes[key] ~= nil;
end;

function KillingBlowAnnouncer:ExistsInSounds(info, key)
     return self.db.profile.sounds[key] ~= nil;
end;

function KillingBlowAnnouncer:GetKBIPoint(info)
    return self.db.profile.KBI_point;
end;

function KillingBlowAnnouncer:GetKBIRelPoint(info)
    return self.db.profile.KBI_relpoint;
end;

function KillingBlowAnnouncer:GetKBIRelTo(info)
    return self.db.profile.KBI_relto;
end;

 function KillingBlowAnnouncer:GetKBIXOffset(info)
    return self.db.profile.KBI_xOffset;
end;

 function KillingBlowAnnouncer:GetKBIYOffset(info)
    return self.db.profile.KBI_yOffset;
end;


function KillingBlowAnnouncer:GetKBMPoint(info)
    return self.db.profile.KBM_point;
end;

function KillingBlowAnnouncer:GetKBMRelPoint(info)
    return self.db.profile.KBM_relpoint;
end;

function KillingBlowAnnouncer:GetKBMRelTo(info)
    return self.db.profile.KBM_relto;
end;

 function KillingBlowAnnouncer:GetKBMXOffset(info)
    return self.db.profile.KBM_xOffset;
end;

 function KillingBlowAnnouncer:GetKBMYOffset(info)
    return self.db.profile.KBM_yOffset;
end;

function KillingBlowAnnouncer:GetSoundOrderedIndex()
    return self.db.profile.sounds_ordered_cur;
end;

function KillingBlowAnnouncer:GetSoundOrderedListItem(info, index)
    if index == null then
        return self.db.profile.sounds_ordered_list[info[#info]];
    else
        return self.db.profile.sounds_ordered_list[tostring(index)];
    end
end;

function KillingBlowAnnouncer:GetRandomEmote(info)
    length = table.map_length(self.db.profile.emotes)
    if length >= 1 then
        idx = math.random(table.map_length(self.db.profile.emotes));
        count = 0
        val = "";
        for k, v in pairs(self.db.profile.emotes) do
            count = count + 1;
            if count == idx then
                val = v;
             break
            end
        end

        return val;
    else
        return nil;
    end
end;

function KillingBlowAnnouncer:GetRandomSound(info)
    length = table.map_length(self.db.profile.sounds)
    if length >= 1 then
        idx = math.random(table.map_length(self.db.profile.sounds));
        count = 0
        val = "";
        for k, v in pairs(self.db.profile.sounds) do
            count = count + 1;
            if count == idx then
                val = v;
             break
            end
        end

        return val;
    else
        return nil;
    end
end;

function KillingBlowAnnouncer:GetEnableMinimapIcon(info)
    s = self.db.profile.minimap.enableMinimapIcon
    if(s == true) then
        icon:Show("Killing blow announcer")
    else
        icon:Hide("Killing blow announcer")
    end

    return s;
end;

function KillingBlowAnnouncer:GetSoundsOrderedOrder()
    return sounds_ordered_order
end;