Advertisement
NatedogServer

instances

Mar 10th, 2015
230
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 25.56 KB | None | 0 0
  1. #plugin::InstancePOPUP("zonesn", levelreq, popupid, $zonetext)
  2. sub InstancePOPUP {
  3.     my $yel = plugin::PWColor("Yellow");
  4.     my $fire = plugin::PWColor("Goldenrod");
  5.     my $grn = plugin::PWColor("Forest Green");
  6.     my $client = plugin::val('$client');
  7.    
  8.     my $dest_zone = $_[0];
  9.     my $dest_zoneID = plugin::SNtoID($dest_zone);
  10.     my $req_level = $_[1];
  11.     my $inst_popup_id = $_[2];
  12.     my $zonetext = $_[3];
  13.    
  14.     my $break = ("---------------------------------------");
  15.     my $indent = plugin::PWIndent();
  16.     my $group = $client->GetGroup();
  17.     my $charID = $client->CharacterID();
  18.     my $PartySaved = "";
  19.  
  20.         my $dbh = plugin::LoadMysql();
  21.         if($group)
  22.         {
  23.             $PartySaved = plugin::CheckSaved(plugin::CheckParty($group->GetID), $dest_zoneID);
  24.             my $instance_id = quest::GetInstanceID("$dest_zone", 0);
  25.             if($instance_id == 0) {
  26.                 $instance = ("You are not currently bound to this instance.");
  27.             }
  28.             elsif($instance_id > 0) {
  29.                 my $myInstance = $dbh->prepare("SELECT il.`start_time`, il.`duration` FROM instance_list il
  30.                                                 INNER JOIN instance_list_player ilp ON il.`id` = ilp.`id`
  31.                                                 WHERE ilp.`charid` = $charID and il.`zone` = $dest_zoneID and il.`version` = 0;");
  32.                 $myInstance->execute();
  33.                 my @thisInstance = $myInstance->fetchrow_array();
  34.                
  35.                 my $hours = plugin::GetTimeLeft($thisInstance[0]+$thisInstance[1],"H");
  36.                 my $minutes = plugin::GetTimeLeft($thisInstance[0]+$thisInstance[1],"M");
  37.                 my $seconds = plugin::GetTimeLeft($thisInstance[0]+$thisInstance[1],"S");
  38.                
  39.                 my $minLeft = $minutes % 60;
  40.                 my $secLeft = $seconds % 60;
  41.                
  42.                 $instance = ("You are currently bound to this instance for $hours hour(s) $minLeft minutes $secLeft seconds.");
  43.             }              
  44.         } else {
  45.             my $instance_id = quest::GetInstanceID("$dest_zone", 0);
  46.             if($instance_id == 0)
  47.             {
  48.                 $instance = ("You are not currently bound to this instance.");
  49.             }
  50.             elsif($instance_id > 0)
  51.             {
  52.                 my $myInstance = $dbh->prepare("SELECT il.`start_time`, il.`duration` FROM instance_list il
  53.                                                 INNER JOIN instance_list_player ilp ON il.`id` = ilp.`id`
  54.                                                 WHERE ilp.`charid` = $charID and il.`zone` = $dest_zoneID and il.`version` = 0;");
  55.                 $myInstance->execute();
  56.                 my @thisInstance = $myInstance->fetchrow_array();
  57.                
  58.                 my $hours = plugin::GetTimeLeft($thisInstance[0]+$thisInstance[1],"H");
  59.                 my $minutes = plugin::GetTimeLeft($thisInstance[0]+$thisInstance[1],"M");
  60.                 my $seconds = plugin::GetTimeLeft($thisInstance[0]+$thisInstance[1],"S");
  61.                
  62.                 my $minLeft = $minutes % 60;
  63.                 my $secLeft = $seconds % 60;
  64.                
  65.                 $instance = ("You are currently bound to this instance for $hours hour(s) $minLeft minutes $secLeft seconds.");
  66.             }
  67.         }
  68.         quest::popup("Instance","$yel Zone:</c> " . ucfirst($dest_zone) ."<br>
  69.                                         $yel Level Requirement:</c> $req_level+<br>$break<br>
  70.                                         $indent$grn$instance</c><br>
  71.                                         $indent - $zonetext<br><br>
  72.                                         <br>$PartySaved
  73.                                         $break<br><br>
  74.                                         $fire Click 'Yes' to enter this instance.",$inst_popup_id,1,0);
  75. }
  76.  
  77. #plugin::InstanceResponse(zonesn, x, y, z, time);
  78. sub InstanceResponse {
  79.     my $client = plugin::val('$client');
  80.     my $name = plugin::val('$name');
  81.     my $group = $client->GetGroup();
  82.     my $dest_zone = $_[0];
  83.     my $dest_zoneID = plugin::SNtoID($dest_zone);
  84.     my $desy_x = $_[1];
  85.     my $desy_y = $_[2];
  86.     my $desy_z = $_[3];
  87.     my $inst_timer = $_[4];
  88.    
  89.     if($group)
  90.     {
  91.         my $group_id = $group->GetID();
  92.         my $instance_id = quest::GetInstanceID("$dest_zone", 0);
  93.        
  94.         if($instance_id == 0 && $group->GetLeaderName() ne $name) {
  95.             $client->Message(335, "Only the party leader may create the instance!");
  96.         }
  97.         elsif($instance_id == 0 && $group->GetLeaderName() eq $name) {
  98.             my $new_instance = quest::CreateInstance("$dest_zone", 0, $inst_timer);
  99.             quest::AssignGroupToInstance($new_instance);
  100.             quest::MovePCInstance($dest_zoneID, $new_instance,$desy_x,$desy_y,$desy_z);
  101.         }
  102.         elsif($instance_id > 0) {
  103.             quest::MovePCInstance($dest_zoneID, $instance_id,$desy_x,$desy_y,$desy_z);
  104.         }
  105.     } else {
  106.         my $instance_id = quest::GetInstanceID("$dest_zone", 0);
  107.        
  108.         if($instance_id == 0) {
  109.             my $new_instance = quest::CreateInstance("$dest_zone", 0, 21600);
  110.             quest::AssignToInstance($new_instance);
  111.             quest::MovePCInstance($dest_zoneID, $new_instance,$desy_x,$desy_y,$desy_z);
  112.         } else {
  113.             quest::MovePCInstance($dest_zoneID, $instance_id,$desy_x,$desy_y,$desy_z);
  114.         }
  115.     }
  116. }
  117.  
  118. #plugin::CheckSaved(plugin::CheckParty(groupID), dest_zone_id)
  119. sub CheckSaved {
  120.     my $dest_zoneID = $_[1];
  121.     my $dbh = plugin::LoadMysql();
  122.    
  123.     $query = "SELECT c.`name`, il.id,   il.`start_time`+il.`duration` AS TIMER FROM character_data c
  124.             INNER JOIN instance_list_player ilp ON c.id = ilp.charid
  125.             INNER JOIN instance_list il ON il.id = ilp.id
  126.             WHERE ilp.`charid` IN ($_[0]) and il.`zone` = $dest_zoneID and il.`version` = 0";
  127.            
  128.     $saved = $dbh->prepare($query);
  129.     $saved->execute();
  130.     $saved_members = "";
  131.     while (my @row = $saved->fetchrow_array())
  132.     {
  133.         $saved_members .= "<br>$row[0] - ($row[1]) -  " . plugin::GetTimeLeft($row[2],"H") . " hours " . plugin::GetTimeLeft($row[2],"M") % 60 . " minutes " . plugin::GetTimeLeft($row[2],"S") % 60 . " seconds.";
  134.     }
  135.     return $saved_members;
  136. }
  137.  
  138. #plugin::CheckParty(groupID)
  139. sub CheckParty {
  140.     my $dbh = plugin::LoadMysql();
  141.     my @Members = ();
  142.     $sth = $dbh->prepare("SELECT `charid` FROM group_id WHERE groupid = $_[0]");
  143.     $sth->execute();
  144.     while (my @row = $sth->fetchrow_array()) {
  145.         push (@Members, $row[0]);
  146.     }
  147.     $format_members = "";
  148.     foreach $m (@Members)
  149.     {
  150.         if($m == $Members[$#Members])
  151.         {
  152.             $format_members .= "$m";
  153.         }
  154.         else
  155.         {
  156.             $format_members .= "$m, ";
  157.         }
  158.     }
  159.    
  160.     return $format_members;
  161. }
  162.  
  163. sub ZoneIDtoSN {
  164.     my %zone_hash = (
  165.     1 => "qeynos",
  166.     2 => "qeynos2",
  167.     3 => "qrg",
  168.     4 => "qeytoqrg",
  169.     5 => "highpass",
  170.     6 => "highkeep",
  171.     8 => "freportn",
  172.     9 => "freportw",
  173.     10 => "freporte",
  174.     11 => "runnyeye",
  175.     12 => "qey2hh1",
  176.     13 => "northkarana",
  177.     14 => "southkarana",
  178.     15 => "eastkarana",
  179.     16 => "beholder",
  180.     17 => "blackburrow",
  181.     18 => "paw",
  182.     19 => "rivervale",
  183.     20 => "kithicor",
  184.     21 => "commons",
  185.     22 => "ecommons",
  186.     23 => "erudnint",
  187.     24 => "erudnext",
  188.     25 => "nektulos",
  189.     25 => "nektulos",
  190.     26 => "cshome",
  191.     27 => "lavastorm",
  192.     28 => "nektropos",
  193.     29 => "halas",
  194.     30 => "everfrost",
  195.     31 => "soldunga",
  196.     32 => "soldungb",
  197.     33 => "misty",
  198.     34 => "nro",
  199.     35 => "sro",
  200.     36 => "befallen",
  201.     37 => "oasis",
  202.     38 => "tox",
  203.     39 => "hole",
  204.     40 => "neriaka",
  205.     41 => "neriakb",
  206.     42 => "neriakc",
  207.     43 => "neriakd",
  208.     44 => "najena",
  209.     45 => "qcat",
  210.     46 => "innothule",
  211.     47 => "feerrott",
  212.     48 => "cazicthule",
  213.     49 => "oggok",
  214.     50 => "rathemtn",
  215.     51 => "lakerathe",
  216.     52 => "grobb",
  217.     53 => "aviak",
  218.     54 => "gfaydark",
  219.     55 => "akanon",
  220.     56 => "steamfont",
  221.     57 => "lfaydark",
  222.     58 => "crushbone",
  223.     59 => "mistmoore",
  224.     60 => "kaladima",
  225.     61 => "felwithea",
  226.     62 => "felwitheb",
  227.     63 => "unrest",
  228.     64 => "kedge",
  229.     65 => "guktop",
  230.     66 => "gukbottom",
  231.     67 => "kaladimb",
  232.     68 => "butcher",
  233.     69 => "oot",
  234.     70 => "cauldron",
  235.     71 => "airplane",
  236.     72 => "fearplane",
  237.     73 => "permafrost",
  238.     74 => "kerraridge",
  239.     75 => "paineel",
  240.     76 => "hateplane",
  241.     77 => "arena",
  242.     78 => "fieldofbone",
  243.     79 => "warslikswood",
  244.     80 => "soltemple",
  245.     81 => "droga",
  246.     82 => "cabwest",
  247.     83 => "swampofnohope",
  248.     84 => "firiona",
  249.     85 => "lakeofillomen",
  250.     86 => "dreadlands",
  251.     87 => "burningwood",
  252.     88 => "kaesora",
  253.     89 => "sebilis",
  254.     90 => "citymist",
  255.     91 => "skyfire",
  256.     92 => "frontiermtns",
  257.     93 => "overthere",
  258.     94 => "emeraldjungle",
  259.     95 => "trakanon",
  260.     96 => "timorous",
  261.     97 => "kurn",
  262.     98 => "erudsxing",
  263.     100 => "stonebrunt",
  264.     101 => "warrens",
  265.     102 => "karnor",
  266.     103 => "chardok",
  267.     104 => "dalnir",
  268.     105 => "charasis",
  269.     106 => "cabeast",
  270.     107 => "nurga",
  271.     108 => "veeshan",
  272.     109 => "veksar",
  273.     110 => "iceclad",
  274.     111 => "frozenshadow",
  275.     112 => "velketor",
  276.     113 => "kael",
  277.     114 => "skyshrine",
  278.     114 => "skyshrine",
  279.     115 => "thurgadina",
  280.     116 => "eastwastes",
  281.     117 => "cobaltscar",
  282.     118 => "greatdivide",
  283.     119 => "wakening",
  284.     120 => "westwastes",
  285.     121 => "crystal",
  286.     123 => "necropolis",
  287.     124 => "templeveeshan",
  288.     125 => "sirens",
  289.     126 => "mischiefplane",
  290.     127 => "growthplane",
  291.     128 => "sleeper",
  292.     129 => "thurgadinb",
  293.     130 => "erudsxing2",
  294.     150 => "shadowhaven",
  295.     151 => "bazaar",
  296.     151 => "bazaar",
  297.     152 => "nexus",
  298.     153 => "echo",
  299.     154 => "acrylia",
  300.     155 => "sharvahl",
  301.     156 => "paludal",
  302.     157 => "fungusgrove",
  303.     158 => "vexthal",
  304.     159 => "sseru",
  305.     160 => "katta",
  306.     161 => "netherbian",
  307.     162 => "ssratemple",
  308.     163 => "griegsend",
  309.     164 => "thedeep",
  310.     165 => "shadeweaver",
  311.     166 => "hollowshade",
  312.     167 => "grimling",
  313.     168 => "mseru",
  314.     169 => "letalis",
  315.     170 => "twilight",
  316.     171 => "thegrey",
  317.     172 => "tenebrous",
  318.     173 => "maiden",
  319.     174 => "dawnshroud",
  320.     175 => "scarlet",
  321.     176 => "umbral",
  322.     179 => "akheva",
  323.     180 => "arena2",
  324.     181 => "jaggedpine",
  325.     182 => "nedaria",
  326.     183 => "tutorial",
  327.     184 => "load",
  328.     185 => "load2",
  329.     186 => "hateplaneb",
  330.     187 => "shadowrest",
  331.     188 => "tutoriala",
  332.     189 => "tutorialb",
  333.     190 => "clz",
  334.     200 => "codecay",
  335.     201 => "pojustice",
  336.     202 => "poknowledge",
  337.     203 => "potranquility",
  338.     204 => "ponightmare",
  339.     205 => "podisease",
  340.     206 => "poinnovation",
  341.     207 => "potorment",
  342.     208 => "povalor",
  343.     209 => "bothunder",
  344.     210 => "postorms",
  345.     211 => "hohonora",
  346.     212 => "solrotower",
  347.     213 => "powar",
  348.     214 => "potactics",
  349.     215 => "poair",
  350.     216 => "powater",
  351.     217 => "pofire",
  352.     218 => "poeartha",
  353.     219 => "potimea",
  354.     220 => "hohonorb",
  355.     221 => "nightmareb",
  356.     222 => "poearthb",
  357.     223 => "potimeb",
  358.     224 => "gunthak",
  359.     225 => "dulak",
  360.     226 => "torgiran",
  361.     227 => "nadox",
  362.     228 => "hatesfury",
  363.     229 => "guka",
  364.     230 => "ruja",
  365.     231 => "taka",
  366.     232 => "mira",
  367.     233 => "mmca",
  368.     234 => "gukb",
  369.     235 => "rujb",
  370.     236 => "takb",
  371.     237 => "mirb",
  372.     238 => "mmcb",
  373.     239 => "gukc",
  374.     240 => "rujc",
  375.     241 => "takc",
  376.     242 => "mirc",
  377.     243 => "mmcc",
  378.     244 => "gukd",
  379.     245 => "rujd",
  380.     246 => "takd",
  381.     247 => "mird",
  382.     248 => "mmcd",
  383.     249 => "guke",
  384.     250 => "ruje",
  385.     251 => "take",
  386.     252 => "mire",
  387.     253 => "mmce",
  388.     254 => "gukf",
  389.     255 => "rujf",
  390.     256 => "takf",
  391.     257 => "mirf",
  392.     258 => "mmcf",
  393.     259 => "gukg",
  394.     260 => "rujg",
  395.     261 => "takg",
  396.     262 => "mirg",
  397.     263 => "mmcg",
  398.     264 => "gukh",
  399.     265 => "rujh",
  400.     266 => "takh",
  401.     267 => "mirh",
  402.     268 => "mmch",
  403.     269 => "ruji",
  404.     270 => "taki",
  405.     271 => "miri",
  406.     272 => "mmci",
  407.     273 => "rujj",
  408.     274 => "takj",
  409.     275 => "mirj",
  410.     276 => "mmcj",
  411.     277 => "chardokb",
  412.     278 => "soldungc",
  413.     279 => "abysmal",
  414.     280 => "natimbi",
  415.     281 => "qinimi",
  416.     282 => "riwwi",
  417.     283 => "barindu",
  418.     284 => "ferubi",
  419.     285 => "snpool",
  420.     286 => "snlair",
  421.     287 => "snplant",
  422.     288 => "sncrematory",
  423.     289 => "tipt",
  424.     290 => "vxed",
  425.     291 => "yxtta",
  426.     292 => "uqua",
  427.     293 => "kodtaz",
  428.     294 => "ikkinz",
  429.     295 => "qvic",
  430.     296 => "inktuta",
  431.     297 => "txevu",
  432.     298 => "tacvi",
  433.     299 => "qvicb",
  434.     300 => "wallofslaughter",
  435.     301 => "bloodfields",
  436.     302 => "draniksscar",
  437.     303 => "causeway",
  438.     304 => "chambersa",
  439.     305 => "chambersb",
  440.     306 => "chambersc",
  441.     307 => "chambersd",
  442.     308 => "chamberse",
  443.     309 => "chambersf",
  444.     316 => "provinggrounds",
  445.     317 => "anguish",
  446.     318 => "dranikhollowsa",
  447.     319 => "dranikhollowsb",
  448.     320 => "dranikhollowsc",
  449.     328 => "dranikcatacombsa",
  450.     329 => "dranikcatacombsb",
  451.     330 => "dranikcatacombsc",
  452.     331 => "draniksewersa",
  453.     332 => "draniksewersb",
  454.     333 => "draniksewersc",
  455.     334 => "riftseekers",
  456.     335 => "harbingers",
  457.     336 => "dranik",
  458.     337 => "broodlands",
  459.     338 => "stillmoona",
  460.     339 => "stillmoonb",
  461.     340 => "thundercrest",
  462.     341 => "delvea",
  463.     342 => "delveb",
  464.     343 => "thenest",
  465.     344 => "guildlobby",
  466.     345 => "guildhall",
  467.     346 => "barter",
  468.     347 => "illsalin",
  469.     348 => "illsalina",
  470.     349 => "illsalinb",
  471.     350 => "illsalinc",
  472.     351 => "dreadspire",
  473.     354 => "drachnidhive",
  474.     355 => "drachnidhivea",
  475.     356 => "drachnidhiveb",
  476.     357 => "drachnidhivec",
  477.     358 => "westkorlach",
  478.     359 => "westkorlacha",
  479.     360 => "westkorlachb",
  480.     361 => "westkorlachc",
  481.     362 => "eastkorlach",
  482.     363 => "eastkorlacha",
  483.     364 => "shadowspine",
  484.     365 => "corathus",
  485.     366 => "corathusa",
  486.     367 => "corathusb",
  487.     368 => "nektulosa",
  488.     369 => "arcstone",
  489.     370 => "relic",
  490.     371 => "skylance",
  491.     372 => "devastation",
  492.     373 => "devastationa",
  493.     374 => "rage",
  494.     375 => "ragea",
  495.     376 => "takishruins",
  496.     377 => "takishruinsa",
  497.     378 => "elddar",
  498.     379 => "elddara",
  499.     380 => "theater",
  500.     381 => "theatera",
  501.     382 => "freeporteast",
  502.     383 => "freeportwest",
  503.     384 => "freeportsewers",
  504.     385 => "freeportacademy",
  505.     386 => "freeporttemple",
  506.     387 => "freeportmilitia",
  507.     388 => "freeportarena",
  508.     389 => "freeportcityhall",
  509.     390 => "freeporttheater",
  510.     391 => "freeporthall",
  511.     392 => "northro",
  512.     393 => "southro",
  513.     394 => "crescent",
  514.     395 => "moors",
  515.     396 => "stonehive",
  516.     397 => "mesa",
  517.     398 => "roost",
  518.     399 => "steppes",
  519.     400 => "icefall",
  520.     401 => "valdeholm",
  521.     402 => "frostcrypt",
  522.     403 => "sunderock",
  523.     404 => "vergalid",
  524.     405 => "direwind",
  525.     406 => "ashengate",
  526.     407 => "highpasshold",
  527.     408 => "commonlands",
  528.     409 => "oceanoftears",
  529.     410 => "kithforest",
  530.     411 => "befallenb",
  531.     412 => "highpasskeep",
  532.     413 => "innothuleb",
  533.     414 => "toxxulia",
  534.     415 => "mistythicket",
  535.     416 => "kattacastrum",
  536.     417 => "thalassius",
  537.     418 => "atiiki",
  538.     419 => "zhisza",
  539.     420 => "silyssar",
  540.     421 => "solteris",
  541.     422 => "barren",
  542.     423 => "buriedsea",
  543.     424 => "jardelshook",
  544.     425 => "monkeyrock",
  545.     426 => "suncrest",
  546.     427 => "deadbone",
  547.     428 => "blacksail",
  548.     429 => "maidensgrave",
  549.     430 => "redfeather",
  550.     431 => "shipmvp",
  551.     432 => "shipmvu",
  552.     433 => "shippvu",
  553.     434 => "shipuvu",
  554.     435 => "shipmvm",
  555.     436 => "mechanotus",
  556.     437 => "mansion",
  557.     438 => "steamfactory",
  558.     439 => "shipworkshop",
  559.     440 => "gyrospireb",
  560.     441 => "gyrospirez",
  561.     442 => "dragonscale",
  562.     443 => "lopingplains",
  563.     444 => "hillsofshade",
  564.     445 => "bloodmoon",
  565.     446 => "crystallos",
  566.     447 => "guardian",
  567.     448 => "steamfontmts",
  568.     449 => "cryptofshade",
  569.     451 => "dragonscaleb",
  570.     452 => "oldfieldofbone",
  571.     453 => "oldkaesoraa",
  572.     454 => "oldkaesorab",
  573.     455 => "oldkurn",
  574.     456 => "oldkithicor",
  575.     457 => "oldcommons",
  576.     458 => "oldhighpass",
  577.     459 => "thevoida",
  578.     460 => "thevoidb",
  579.     461 => "thevoidc",
  580.     462 => "thevoidd",
  581.     463 => "thevoide",
  582.     464 => "thevoidf",
  583.     465 => "thevoidg",
  584.     466 => "oceangreenhills",
  585.     467 => "oceangreenvillage",
  586.     468 => "oldblackburrow",
  587.     469 => "bertoxtemple",
  588.     470 => "discord",
  589.     471 => "discordtower",
  590.     472 => "oldbloodfield",
  591.     473 => "precipiceofwar",
  592.     474 => "olddranik",
  593.     475 => "toskirakk",
  594.     476 => "korascian",
  595.     477 => "rathechamber",
  596.     480 => "brellsrest",
  597.     481 => "fungalforest",
  598.     482 => "underquarry",
  599.     483 => "coolingchamber",
  600.     484 => "shiningcity",
  601.     485 => "arthicrex",
  602.     486 => "foundation",
  603.     487 => "lichencreep",
  604.     488 => "pellucid",
  605.     489 => "stonesnake",
  606.     490 => "brellstemple",
  607.     491 => "convorteum",
  608.     492 => "brellsarena",
  609.     493 => "weddingchapel",
  610.     494 => "weddingchapeldark",
  611.     495 => "dragoncrypt",
  612.     700 => "feerrott2",
  613.     701 => "thulehouse1",
  614.     702 => "thulehouse2",
  615.     703 => "housegarden",
  616.     704 => "thulelibrary",
  617.     705 => "well",
  618.     706 => "fallen",
  619.     707 => "morellcastle",
  620.     708 => "somnium",
  621.     709 => "alkabormare",
  622.     710 => "miragulmare",
  623.     711 => "thuledream",
  624.     712 => "neighborhood",
  625.     724 => "argath",
  626.     725 => "arelis",
  627.     726 => "sarithcity",
  628.     727 => "rubak",
  629.     728 => "beastdomain",
  630.     729 => "resplendent",
  631.     730 => "pillarsalra",
  632.     731 => "windsong",
  633.     732 => "cityofbronze",
  634.     733 => "sepulcher",
  635.     734 => "eastsepulcher",
  636.     735 => "westsepulcher",
  637.     752 => "shardslanding",
  638.     753 => "xorbb",
  639.     754 => "kaelshard",
  640.     755 => "eastwastesshard",
  641.     756 => "crystalshard",
  642.     757 => "breedinggrounds",
  643.     758 => "eviltree",
  644.     759 => "grelleth",
  645.     760 => "chapterhouse",
  646.     996 => "arttest",
  647.     998 => "fhalls",
  648.     999 => "apprentice"
  649.     );
  650.    
  651.     return $zone_hash{$_[0]};
  652. }
  653.  
  654. sub SNtoID {
  655.     my %ZoneList = (
  656.         "qeynos" => 1,
  657.         "qeynos2" => 2,
  658.         "qrg" => 3,
  659.         "qeytoqrg" => 4,
  660.         "highpass" => 5,
  661.         "highkeep" => 6,
  662.         "freportn" => 8,
  663.         "freportw" => 9,
  664.         "freporte" => 10,
  665.         "runnyeye" => 11,
  666.         "qey2hh1" => 12,
  667.         "northkarana" => 13,
  668.         "southkarana" => 14,
  669.         "eastkarana" => 15,
  670.         "beholder" => 16,
  671.         "blackburrow" => 17,
  672.         "paw" => 18,
  673.         "rivervale" => 19,
  674.         "kithicor" => 20,
  675.         "commons" => 21,
  676.         "ecommons" => 22,
  677.         "erudnint" => 23,
  678.         "erudnext" => 24,
  679.         "nektulos" => 25,
  680.         "nektulos" => 25,
  681.         "cshome" => 26,
  682.         "lavastorm" => 27,
  683.         "nektropos" => 28,
  684.         "halas" => 29,
  685.         "everfrost" => 30,
  686.         "soldunga" => 31,
  687.         "soldungb" => 32,
  688.         "misty" => 33,
  689.         "nro" => 34,
  690.         "sro" => 35,
  691.         "befallen" => 36,
  692.         "oasis" => 37,
  693.         "tox" => 38,
  694.         "hole" => 39,
  695.         "neriaka" => 40,
  696.         "neriakb" => 41,
  697.         "neriakc" => 42,
  698.         "neriakd" => 43,
  699.         "najena" => 44,
  700.         "qcat" => 45,
  701.         "innothule" => 46,
  702.         "feerrott" => 47,
  703.         "cazicthule" => 48,
  704.         "oggok" => 49,
  705.         "rathemtn" => 50,
  706.         "lakerathe" => 51,
  707.         "grobb" => 52,
  708.         "aviak" => 53,
  709.         "gfaydark" => 54,
  710.         "akanon" => 55,
  711.         "steamfont" => 56,
  712.         "lfaydark" => 57,
  713.         "crushbone" => 58,
  714.         "mistmoore" => 59,
  715.         "kaladima" => 60,
  716.         "felwithea" => 61,
  717.         "felwitheb" => 62,
  718.         "unrest" => 63,
  719.         "kedge" => 64,
  720.         "guktop" => 65,
  721.         "gukbottom" => 66,
  722.         "kaladimb" => 67,
  723.         "butcher" => 68,
  724.         "oot" => 69,
  725.         "cauldron" => 70,
  726.         "airplane" => 71,
  727.         "fearplane" => 72,
  728.         "permafrost" => 73,
  729.         "kerraridge" => 74,
  730.         "paineel" => 75,
  731.         "hateplane" => 76,
  732.         "arena" => 77,
  733.         "fieldofbone" => 78,
  734.         "warslikswood" => 79,
  735.         "soltemple" => 80,
  736.         "droga" => 81,
  737.         "cabwest" => 82,
  738.         "swampofnohope" => 83,
  739.         "firiona" => 84,
  740.         "lakeofillomen" => 85,
  741.         "dreadlands" => 86,
  742.         "burningwood" => 87,
  743.         "kaesora" => 88,
  744.         "sebilis" => 89,
  745.         "citymist" => 90,
  746.         "skyfire" => 91,
  747.         "frontiermtns" => 92,
  748.         "overthere" => 93,
  749.         "emeraldjungle" => 94,
  750.         "trakanon" => 95,
  751.         "timorous" => 96,
  752.         "kurn" => 97,
  753.         "erudsxing" => 98,
  754.         "stonebrunt" => 100,
  755.         "warrens" => 101,
  756.         "karnor" => 102,
  757.         "chardok" => 103,
  758.         "dalnir" => 104,
  759.         "charasis" => 105,
  760.         "cabeast" => 106,
  761.         "nurga" => 107,
  762.         "veeshan" => 108,
  763.         "veksar" => 109,
  764.         "iceclad" => 110,
  765.         "frozenshadow" => 111,
  766.         "velketor" => 112,
  767.         "kael" => 113,
  768.         "skyshrine" => 114,
  769.         "thurgadina" => 115,
  770.         "eastwastes" => 116,
  771.         "cobaltscar" => 117,
  772.         "greatdivide" => 118,
  773.         "wakening" => 119,
  774.         "westwastes" => 120,
  775.         "crystal" => 121,
  776.         "necropolis" => 123,
  777.         "templeveeshan" => 124,
  778.         "sirens" => 125,
  779.         "mischiefplane" => 126,
  780.         "growthplane" => 127,
  781.         "sleeper" => 128,
  782.         "thurgadinb" => 129,
  783.         "erudsxing2" => 130,
  784.         "shadowhaven" => 150,
  785.         "bazaar" => 151,
  786.         "nexus" => 152,
  787.         "echo" => 153,
  788.         "acrylia" => 154,
  789.         "sharvahl" => 155,
  790.         "paludal" => 156,
  791.         "fungusgrove" => 157,
  792.         "vexthal" => 158,
  793.         "sseru" => 159,
  794.         "katta" => 160,
  795.         "netherbian" => 161,
  796.         "ssratemple" => 162,
  797.         "griegsend" => 163,
  798.         "thedeep" => 164,
  799.         "shadeweaver" => 165,
  800.         "hollowshade" => 166,
  801.         "grimling" => 167,
  802.         "mseru" => 168,
  803.         "letalis" => 169,
  804.         "twilight" => 170,
  805.         "thegrey" => 171,
  806.         "tenebrous" => 172,
  807.         "maiden" => 173,
  808.         "dawnshroud" => 174,
  809.         "scarlet" => 175,
  810.         "umbral" => 176,
  811.         "akheva" => 179,
  812.         "arena2" => 180,
  813.         "jaggedpine" => 181,
  814.         "nedaria" => 182,
  815.         "tutorial" => 183,
  816.         "load" => 184,
  817.         "load2" => 185,
  818.         "hateplaneb" => 186,
  819.         "shadowrest" => 187,
  820.         "tutoriala" => 188,
  821.         "tutorialb" => 189,
  822.         "clz" => 190,
  823.         "codecay" => 200,
  824.         "pojustice" => 201,
  825.         "poknowledge" => 202,
  826.         "potranquility" => 203,
  827.         "ponightmare" => 204,
  828.         "podisease" => 205,
  829.         "poinnovation" => 206,
  830.         "potorment" => 207,
  831.         "povalor" => 208,
  832.         "bothunder" => 209,
  833.         "postorms" => 210,
  834.         "hohonora" => 211,
  835.         "solrotower" => 212,
  836.         "powar" => 213,
  837.         "potactics" => 214,
  838.         "poair" => 215,
  839.         "powater" => 216,
  840.         "pofire" => 217,
  841.         "poeartha" => 218,
  842.         "potimea" => 219,
  843.         "hohonorb" => 220,
  844.         "nightmareb" => 221,
  845.         "poearthb" => 222,
  846.         "potimeb" => 223,
  847.         "gunthak" => 224,
  848.         "dulak" => 225,
  849.         "torgiran" => 226,
  850.         "nadox" => 227,
  851.         "hatesfury" => 228,
  852.         "guka" => 229,
  853.         "ruja" => 230,
  854.         "taka" => 231,
  855.         "mira" => 232,
  856.         "mmca" => 233,
  857.         "gukb" => 234,
  858.         "rujb" => 235,
  859.         "takb" => 236,
  860.         "mirb" => 237,
  861.         "mmcb" => 238,
  862.         "gukc" => 239,
  863.         "rujc" => 240,
  864.         "takc" => 241,
  865.         "mirc" => 242,
  866.         "mmcc" => 243,
  867.         "gukd" => 244,
  868.         "rujd" => 245,
  869.         "takd" => 246,
  870.         "mird" => 247,
  871.         "mmcd" => 248,
  872.         "guke" => 249,
  873.         "ruje" => 250,
  874.         "take" => 251,
  875.         "mire" => 252,
  876.         "mmce" => 253,
  877.         "gukf" => 254,
  878.         "rujf" => 255,
  879.         "takf" => 256,
  880.         "mirf" => 257,
  881.         "mmcf" => 258,
  882.         "gukg" => 259,
  883.         "rujg" => 260,
  884.         "takg" => 261,
  885.         "mirg" => 262,
  886.         "mmcg" => 263,
  887.         "gukh" => 264,
  888.         "rujh" => 265,
  889.         "takh" => 266,
  890.         "mirh" => 267,
  891.         "mmch" => 268,
  892.         "ruji" => 269,
  893.         "taki" => 270,
  894.         "miri" => 271,
  895.         "mmci" => 272,
  896.         "rujj" => 273,
  897.         "takj" => 274,
  898.         "mirj" => 275,
  899.         "mmcj" => 276,
  900.         "chardokb" => 277,
  901.         "soldungc" => 278,
  902.         "abysmal" => 279,
  903.         "natimbi" => 280,
  904.         "qinimi" => 281,
  905.         "riwwi" => 282,
  906.         "barindu" => 283,
  907.         "ferubi" => 284,
  908.         "snpool" => 285,
  909.         "snlair" => 286,
  910.         "snplant" => 287,
  911.         "sncrematory" => 288,
  912.         "tipt" => 289,
  913.         "vxed" => 290,
  914.         "yxtta" => 291,
  915.         "uqua" => 292,
  916.         "kodtaz" => 293,
  917.         "ikkinz" => 294,
  918.         "qvic" => 295,
  919.         "inktuta" => 296,
  920.         "txevu" => 297,
  921.         "tacvi" => 298,
  922.         "qvicb" => 299,
  923.         "wallofslaughter" => 300,
  924.         "bloodfields" => 301,
  925.         "draniksscar" => 302,
  926.         "causeway" => 303,
  927.         "chambersa" => 304,
  928.         "chambersb" => 305,
  929.         "chambersc" => 306,
  930.         "chambersd" => 307,
  931.         "chamberse" => 308,
  932.         "chambersf" => 309,
  933.         "provinggrounds" => 316,
  934.         "anguish" => 317,
  935.         "dranikhollowsa" => 318,
  936.         "dranikhollowsb" => 319,
  937.         "dranikhollowsc" => 320,
  938.         "dranikcatacombsa" => 328,
  939.         "dranikcatacombsb" => 329,
  940.         "dranikcatacombsc" => 330,
  941.         "draniksewersa" => 331,
  942.         "draniksewersb" => 332,
  943.         "draniksewersc" => 333,
  944.         "riftseekers" => 334,
  945.         "harbingers" => 335,
  946.         "dranik" => 336,
  947.         "broodlands" => 337,
  948.         "stillmoona" => 338,
  949.         "stillmoonb" => 339,
  950.         "thundercrest" => 340,
  951.         "delvea" => 341,
  952.         "delveb" => 342,
  953.         "thenest" => 343,
  954.         "guildlobby" => 344,
  955.         "guildhall" => 345,
  956.         "barter" => 346,
  957.         "illsalin" => 347,
  958.         "illsalina" => 348,
  959.         "illsalinb" => 349,
  960.         "illsalinc" => 350,
  961.         "dreadspire" => 351,
  962.         "drachnidhive" => 354,
  963.         "drachnidhivea" => 355,
  964.         "drachnidhiveb" => 356,
  965.         "drachnidhivec" => 357,
  966.         "westkorlach" => 358,
  967.         "westkorlacha" => 359,
  968.         "westkorlachb" => 360,
  969.         "westkorlachc" => 361,
  970.         "eastkorlach" => 362,
  971.         "eastkorlacha" => 363,
  972.         "shadowspine" => 364,
  973.         "corathus" => 365,
  974.         "corathusa" => 366,
  975.         "corathusb" => 367,
  976.         "nektulosa" => 368,
  977.         "arcstone" => 369,
  978.         "relic" => 370,
  979.         "skylance" => 371,
  980.         "devastation" => 372,
  981.         "devastationa" => 373,
  982.         "rage" => 374,
  983.         "ragea" => 375,
  984.         "takishruins" => 376,
  985.         "takishruinsa" => 377,
  986.         "elddar" => 378,
  987.         "elddara" => 379,
  988.         "theater" => 380,
  989.         "theatera" => 381,
  990.         "freeporteast" => 382,
  991.         "freeportwest" => 383,
  992.         "freeportsewers" => 384,
  993.         "freeportacademy" => 385,
  994.         "freeporttemple" => 386,
  995.         "freeportmilitia" => 387,
  996.         "freeportarena" => 388,
  997.         "freeportcityhall" => 389,
  998.         "freeporttheater" => 390,
  999.         "freeporthall" => 391,
  1000.         "northro" => 392,
  1001.         "southro" => 393,
  1002.         "crescent" => 394,
  1003.         "moors" => 395,
  1004.         "stonehive" => 396,
  1005.         "mesa" => 397,
  1006.         "roost" => 398,
  1007.         "steppes" => 399,
  1008.         "icefall" => 400,
  1009.         "valdeholm" => 401,
  1010.         "frostcrypt" => 402,
  1011.         "sunderock" => 403,
  1012.         "vergalid" => 404,
  1013.         "direwind" => 405,
  1014.         "ashengate" => 406,
  1015.         "highpasshold" => 407,
  1016.         "commonlands" => 408,
  1017.         "oceanoftears" => 409,
  1018.         "kithforest" => 410,
  1019.         "befallenb" => 411,
  1020.         "highpasskeep" => 412,
  1021.         "innothuleb" => 413,
  1022.         "toxxulia" => 414,
  1023.         "mistythicket" => 415,
  1024.         "kattacastrum" => 416,
  1025.         "thalassius" => 417,
  1026.         "atiiki" => 418,
  1027.         "zhisza" => 419,
  1028.         "silyssar" => 420,
  1029.         "solteris" => 421,
  1030.         "barren" => 422,
  1031.         "buriedsea" => 423,
  1032.         "jardelshook" => 424,
  1033.         "monkeyrock" => 425,
  1034.         "suncrest" => 426,
  1035.         "deadbone" => 427,
  1036.         "blacksail" => 428,
  1037.         "maidensgrave" => 429,
  1038.         "redfeather" => 430,
  1039.         "shipmvp" => 431,
  1040.         "shipmvu" => 432,
  1041.         "shippvu" => 433,
  1042.         "shipuvu" => 434,
  1043.         "shipmvm" => 435,
  1044.         "mechanotus" => 436,
  1045.         "mansion" => 437,
  1046.         "steamfactory" => 438,
  1047.         "shipworkshop" => 439,
  1048.         "gyrospireb" => 440,
  1049.         "gyrospirez" => 441,
  1050.         "dragonscale" => 442,
  1051.         "lopingplains" => 443,
  1052.         "hillsofshade" => 444,
  1053.         "bloodmoon" => 445,
  1054.         "crystallos" => 446,
  1055.         "guardian" => 447,
  1056.         "steamfontmts" => 448,
  1057.         "cryptofshade" => 449,
  1058.         "dragonscaleb" => 451,
  1059.         "oldfieldofbone" => 452,
  1060.         "oldkaesoraa" => 453,
  1061.         "oldkaesorab" => 454,
  1062.         "oldkurn" => 455,
  1063.         "oldkithicor" => 456,
  1064.         "oldcommons" => 457,
  1065.         "oldhighpass" => 458,
  1066.         "thevoida" => 459,
  1067.         "thevoidb" => 460,
  1068.         "thevoidc" => 461,
  1069.         "thevoidd" => 462,
  1070.         "thevoide" => 463,
  1071.         "thevoidf" => 464,
  1072.         "thevoidg" => 465,
  1073.         "oceangreenhills" => 466,
  1074.         "oceangreenvillage" => 467,
  1075.         "oldblackburrow" => 468,
  1076.         "bertoxtemple" => 469,
  1077.         "discord" => 470,
  1078.         "discordtower" => 471,
  1079.         "oldbloodfield" => 472,
  1080.         "precipiceofwar" => 473,
  1081.         "olddranik" => 474,
  1082.         "toskirakk" => 475,
  1083.         "korascian" => 476,
  1084.         "rathechamber" => 477,
  1085.         "brellsrest" => 480,
  1086.         "underquarry" => 482,
  1087.         "coolingchamber" => 483,
  1088.         "arthicrex" => 485,
  1089.         "foundation" => 486,
  1090.         "pellucid" => 488,
  1091.         "stonesnake" => 489,
  1092.         "convorteum" => 491,
  1093.         "brellsarena" => 492,
  1094.         "feerrott2" => 700,
  1095.         "thulehouse1" => 701,
  1096.         "thulehouse2" => 702,
  1097.         "housegarden" => 703,
  1098.         "thulelibrary" => 704,
  1099.         "well" => 705,
  1100.         "fallen" => 706,
  1101.         "morellcastle" => 707,
  1102.         "somnium" => 708,
  1103.         "alkabormare" => 709,
  1104.         "miragulmare" => 710,
  1105.         "thuledream" => 711,
  1106.         "neighborhood" => 712,
  1107.         "arttest" => 996,
  1108.         "fhalls" => 998,
  1109.         "apprentice" => 999,
  1110.     );
  1111.    
  1112.     return $ZoneList{$_[0]};
  1113. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement