view libMyLilPony/libMyLilPony_mountData.lua @ 48:83e9649a6606 1.1.7

Fixed Abyssal Seahorse mounting in certain subzones of Vashj'ir
author syzler
date Thu, 20 Sep 2012 01:28:44 -0400
parents 557e3ae881ce
children 64e8f8e5fa41
line wrap: on
line source
-- Copyright (c) 2012, Syzler
-- All rights reserved.
--
-- Redistribution and use in source and binary forms, with or without
-- modification, are permitted provided that the following conditions
-- are met:
--
--  * Redistributions of source code must retain the above copyright
--    notice, this list of conditions and the following disclaimer.
--  * Redistributions in binary form must reproduce the above copyright
--    notice, this list of conditions and the following disclaimer in
--    the documentation and/or other materials provided with the
--    distribution.
--  * Neither the name of the MyLilPony Project nor the names of its
--    contributors may be used to endorse or promote products derived
--    from this software without specific prior written permission.
--
-- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-- FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-- COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-- INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-- BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-- LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-- CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-- LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-- ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-- POSSIBILITY OF SUCH DAMAGE.

------------------------------------------------------------------------
-- Project: libMyLilPony
-- Project Version: @project-version@
-- Last Author: @file-author@
-- Last Updated: @file-date-iso@
--
-- Mount data table and API functions for checking type of mount
------------------------------------------------------------------------

local MyLilPony_Mounts = {
    -- standard ground mounts
    [458] = "G"; [470] = "G"; [472] = "G"; [579] = "G"; [580] = "G"; [5784] = "G"; [6648] = "G";
    [6653] = "G"; [6654] = "G"; [6777] = "G"; [6898] = "G"; [6899] = "G"; [8394] = "G"; [8395] = "G";
    [10789] = "G"; [10793] = "G"; [10795] = "G"; [10796] = "G"; [10799] = "G"; [10873] = "G";
    [10969] = "G"; [13819] = "G"; [15779] = "G"; [15780] = "G"; [15781] = "G"; [16055] = "G";
    [16056] = "G"; [16058] = "G"; [16059] = "G"; [16060] = "G"; [16080] = "G"; [16081] = "G";
    [16082] = "G"; [16083] = "G"; [16084] = "G"; [17229] = "G"; [17450] = "G"; [17453] = "G";
    [17454] = "G"; [17455] = "G"; [17456] = "G"; [17458] = "G"; [17459] = "G"; [17460] = "G";
    [17461] = "G"; [17462] = "G"; [17463] = "G"; [17464] = "G"; [17465] = "G"; [17481] = "G";
    [18363] = "G"; [18989] = "G"; [18990] = "G"; [18991] = "G"; [18992] = "G"; [22717] = "G";
    [22718] = "G"; [22719] = "G"; [22720] = "G"; [22721] = "G"; [22722] = "G"; [22723] = "G";
    [22724] = "G"; [23161] = "G"; [23214] = "G"; [23219] = "G"; [23220] = "G"; [23221] = "G";
    [23222] = "G"; [23223] = "G"; [23225] = "G"; [23227] = "G"; [23228] = "G"; [23229] = "G";
    [23238] = "G"; [23239] = "G"; [23240] = "G"; [23241] = "G"; [23242] = "G"; [23243] = "G";
    [23246] = "G"; [23247] = "G"; [23248] = "G"; [23249] = "G"; [23250] = "G"; [23251] = "G";
    [23252] = "G"; [23338] = "G"; [23509] = "G"; [23510] = "G"; [24242] = "G"; [24252] = "G";
    [30174] = "G"; [33630] = "G"; [33660] = "G"; [34406] = "G"; [34407] = "G"; [34767] = "G";
    [34769] = "G"; [34790] = "G"; [34795] = "G"; [34896] = "G"; [34897] = "G"; [34898] = "G";
    [34899] = "G"; [35018] = "G"; [35020] = "G"; [35022] = "G"; [35025] = "G"; [35027] = "G";
    [35028] = "G"; [35710] = "G"; [35711] = "G"; [35712] = "G"; [35713] = "G"; [35714] = "G";
    [36702] = "G"; [39315] = "G"; [39316] = "G"; [39317] = "G"; [39318] = "G"; [39319] = "G";
    [41252] = "G"; [42776] = "G"; [42777] = "G"; [43688] = "G"; [43899] = "G"; [43900] = "G";
    [46628] = "G"; [47037] = "G"; [48027] = "G"; [48778] = "G"; [48954] = "G"; [49322] = "G";
    [49378] = "G"; [49379] = "G"; [50281] = "G"; [50869] = "G"; [51412] = "G"; [54753] = "G";
    [55531] = "G"; [59572] = "G"; [59573] = "G"; [59785] = "G"; [59788] = "G"; [59791] = "G";
    [59793] = "G"; [59797] = "G"; [59799] = "G"; [59802] = "G"; [59804] = "G"; [59810] = "G";
    [59811] = "G"; [60114] = "G"; [60116] = "G"; [60118] = "G"; [60119] = "G"; [60136] = "G";
    [60140] = "G"; [60424] = "G"; [61425] = "G"; [61447] = "G"; [61465] = "G"; [61466] = "G";
    [61467] = "G"; [61469] = "G"; [61470] = "G"; [63232] = "G"; [63234] = "G"; [63635] = "G";
    [63636] = "G"; [63637] = "G"; [63638] = "G"; [63639] = "G"; [63640] = "G"; [63641] = "G";
    [63642] = "G"; [63643] = "G"; [64657] = "G"; [64658] = "G"; [64659] = "G"; [64977] = "G";
    [65637] = "G"; [65638] = "G"; [65639] = "G"; [65640] = "G"; [65641] = "G"; [65642] = "G";
    [65643] = "G"; [65644] = "G"; [65645] = "G"; [65646] = "G"; [66091] = "G"; [66846] = "G";
    [66847] = "G"; [66906] = "G"; [67466] = "G"; [68056] = "G"; [68188] = "G"; [73313] = "G";
    [74918] = "G"; [87090] = "G"; [87091] = "G"; [88748] = "G"; [88749] = "G"; [88750] = "G";
    [92231] = "G"; [96491] = "G"; [96499] = "G"; [97390] = "G"; [97581] = "G"; [98204] = "G";
    [100332] = "G"; [100333] = "G"; [101542] = "G"; [101573] = "G"; [102346] = "G"; [102349] = "G";
    [102350] = "G"; [102488] = "G"; [103081] = "G"; [103195] = "G"; [103196] = "G"; [118089] = "G";
    [120822] = "G"; [122708] = "G"; [123160] = "G"; [123182] = "G"; [123886] = "G";
    
    -- standard flying mounts
    [3363] = "A"; [28828] = "A"; [32235] = "A"; [32239] = "A"; [32240] = "A"; [32242] = "A";
    [32243] = "A"; [32244] = "A"; [32245] = "A"; [32246] = "A"; [32289] = "A"; [32290] = "A";
    [32292] = "A"; [32295] = "A"; [32296] = "A"; [32297] = "A"; [32345] = "A"; [33176] = "A";
    [33182] = "A"; [33184] = "A"; [37011] = "A"; [37015] = "A"; [39798] = "A"; [39800] = "A";
    [39801] = "A"; [39802] = "A"; [39803] = "A"; [40192] = "A"; [41513] = "A"; [41514] = "A";
    [41515] = "A"; [41516] = "A"; [41517] = "A"; [41518] = "A"; [43810] = "A"; [43927] = "A";
    [44151] = "A"; [44153] = "A"; [44221] = "A"; [44229] = "A"; [44317] = "A"; [44744] = "A";
    [46197] = "A"; [46199] = "A"; [49193] = "A"; [51960] = "A"; [54729] = "A"; [55164] = "A";
    [58615] = "A"; [59567] = "A"; [59568] = "A"; [59569] = "A"; [59570] = "A"; [59571] = "A";
    [59650] = "A"; [59961] = "A"; [59976] = "A"; [59996] = "A"; [60002] = "A"; [60021] = "A";
    [60024] = "A"; [60025] = "A"; [61229] = "A"; [61230] = "A"; [61294] = "A"; [61309] = "A";
    [61442] = "A"; [61444] = "A"; [61446] = "A"; [61451] = "A"; [61996] = "A"; [61997] = "A";
    [62048] = "A"; [63796] = "A"; [63844] = "A"; [63956] = "A"; [63963] = "A"; [64927] = "A";
    [65439] = "A"; [66087] = "A"; [66088] = "A"; [67336] = "A"; [69395] = "A"; [71342] = "A";
    [71810] = "A"; [72807] = "A"; [72808] = "A"; [74856] = "A"; [75596] = "A"; [75973] = "A";
    [88331] = "A"; [88335] = "A"; [88718] = "A"; [88741] = "A"; [88742] = "A"; [88744] = "A";
    [88746] = "A"; [88990] = "A"; [93463] = "A"; [93623] = "A"; [96503] = "A"; [97359] = "A";
    [97493] = "A"; [97501] = "A"; [97560] = "A"; [101282] = "A"; [101821] = "A"; [102514] = "A";
    [107516] = "A"; [107517] = "A"; [107842] = "A"; [107844] = "A"; [107845] = "A"; [110039] = "A";
    [113120] = "A"; [113199] = "A"; [118737] = "A"; [120043] = "A"; [121820] = "A"; [121836] = "A";
    [121837] = "A"; [121838] = "A"; [121839] = "A"; [123992] = "A"; [123993] = "A";
    
    -- special mounts
    [48025] = "AG"; -- headless horseman's mount
    [72286] = "AG"; -- invincible (king lichy's mount)
    [75614] = "AG"; -- celestial steed
    [98727] = "AG"; -- winged guardian
    [107203] = "AG"; -- tyrael's charger
    [110051] = "AG"; -- heart of the aspects
    [64731] = "SV"; -- sea turtle
    [98718] = "SV"; -- subdued seahorse
    [25953] = "Q";  -- blue qiraji battle tank
    [26054] = "Q";  -- red qiraji battle tank
    [26055] = "Q";  -- yellow qiraji battle tank
    [26056] = "Q";  -- green qiraji battle tank
    [26656] = "GQ"; -- black qiraji battle tank
    [92155] = "GQ"; -- ultramarine qiraji battle tank
    [75207] = "V";  -- abyssal seahorse
};

--- Checks whether or not the specified spell ID is a ground mount.
-- @param spellId The spell ID of the mount to be checked.
-- @return A Boolean value indicating whether or not the specified spell is a ground mount.
function MyLilPony.IsGroundMount(spellId)
    local entry = MyLilPony_Mounts[spellId];
    return entry ~= nil and string.match(entry, "G");
end

--- Checks whether or not the specified spell ID is a flying mount.
-- @param spellId The spell ID of the mount to be checked.
-- @return A Boolean value indicating whether or not the specified spell is a flying mount.
function MyLilPony.IsFlyingMount(spellId)
    local entry = MyLilPony_Mounts[spellId];
    return entry ~= nil and string.match(entry, "A");
end

--- Checks whether or not the specified spell ID is an aquatic mount.
-- @param spellId The spell ID of the mount to be checked.
-- @return A Boolean value indicating whether or not the specified spell is an aquatic mount.
function MyLilPony.IsAquaticMount(spellId)
    local entry = MyLilPony_Mounts[spellId];
    return entry ~= nil and string.match(entry, "S");
end

--- Checks whether or not the specified spell ID is a Temple of Ahn'Qiraj mount.
-- @param spellId The spell ID of the mount to be checked.
-- @return A Boolean value indicating whether or not the specified spell is a Temple of Ahn'Qiraj mount.
function MyLilPony.IsAhnQirajMount(spellId)
    local entry = MyLilPony_Mounts[spellId];
    return entry ~= nil and string.match(entry, "Q");
end

--- Checks whether or not the specified spell ID is a Vashj'ir mount.
-- @param spellId The spell ID of the mount to be checked.
-- @return A Boolean value indicating whether or not the specified spell is a Vashj'ir mount.
function MyLilPony.IsVashjirMount(spellId)
    local entry = MyLilPony_Mounts[spellId];
    return entry ~= nil and string.match(entry, "V");
end