var percentOfTwoHours = ((minute / 60) * 50 ) * (120 / 135); segments: { 1: { name: "Triple Trouble", link: "Triple Trouble", chatlink: "[&BKoBAAA=]", bg: [ 66,200,215] }, category: "Path of Fire", if (lastVersion != version) { var name = metaSingular.segments[v.r].name, link = metaSingular.segments[v.r].link || ( name == '' ? '' }); We’ll category: "Heart of Thorns", // Window start, future and end times in minutes $('#event-wrapper').removeClass(); // Check if pointer has gone beyond the 1 or 2 hour mark, it will have slid to the left, in which case we need to redraw everything else too. '); /* User preferences section */ partial: [{r:1,d:45},{r:2,d:15},{r:3,d:20},{r:4,d:10}], x = ''; } #event-wrapper.compact.hideheadings.hidecategories { width: 100%; } segments: { // Utility function #14: Refit compact timer to window width on resize. timeString = $(document.createElement("span")).attr("title", uitext.timezonehover + " (UTC" + (timezoneOffset < 0 ? Arenanet is adding in some weekend bonus events in the lull between content releases. Does he have anything good in store this weekend? 1: { name: "Day", link: "Day and night", bg: [255,255,255] }, $('#' + k + '-toggle').click(function() { ); return { hideheadings: { $.each(metas, function(k, v) { function unwrapUTC(time) { segments: { setEventTimerPreferences('version', version); var span = document.createElement('span'); function mainEventTimer(reloaded, paused) { } var fillDuration = 60*25 + 15; span.innerHTML = chatLinkCode; if (reloaded || paused) { $.each(zoneParameter.replace(', ',',').split(','), function(index,val) { metas[k].sequences.refined = refineRow(v.sequences.full, k); }); 1: { name: "Day: Securing Verdant Brink", link: "Securing Verdant Brink", bg: [231,251,132] }, 0: { name: "", bg: "transparent" } name: "Hide chat links. pattern: [{r:1,d:30},{r:2,d:30},{r:0,d:30},{r:2,d:30}] Sweet Treat Weekend (which follows a Lunar calendar) Unlike previous Anniversary Celebrations , the Seventh Year Anniversary Celebration spanned over two weekends, so "Eye of the North Reputation Weekend" did not occur (although reputation points were still doubled due to the "weekend event bonus" during the celebration ). // Check for sequence preferences set by a previous version of the event timer, if so, overwrite if ( ws > s ) { padding: 2px 6px; // Utility function #8: Draw blocks for the given object }, d: e - s, partial: [{r:2,d:90}], segments: { } name: "Dry Top", ", chatlink: "[&BJkBAAA=]", bg: [ 66,200,215] }, return fullPattern; + metaKey + k + ' { background: rgb(' + v.bg.join(',') + ') }', hideCategories = true; } category: "The Icebrood Saga", margin-left: 10px; 2: { name: "(continued)", link: "Advancing on the Blighting Towers", bg: [190,215, 66] } name: "World bosses", for (var i = 0; i < excludeSequence.length; i++) { segments: { var partialDuration = 0; $.map(partial, function(v){ partialDuration += v.d; }); background-color: #EED; + metaKey + k + ' { background: ' + v.bg + '}'; } var eventAbbr = eventBar.getAttribute('data-abbr'); } } case 'object': 8: { name: "Shadow Behemoth", link: "Defeat the shadow behemoth", chatlink: "[&BPcAAAA=]", bg: [138,234,244] }, s: v.s, }, ab: { wb1 name: "Dragon Bash", even: { if (useTwelveHour == true) { sequences: { fullPattern = $.map(fullPattern, function(v) { margin-left: -1px; } .append($(document.createElement("legend")).text(uitext.legendname)); $('.event-limit-text').click(function(e) { Find out more by clicking this text. var uitext = { 1: { name: "Timberline Falls", link: "Defeat the Ley-Line Anomaly to disperse its destructive energy before it overloads", chatlink: "[&BEwCAAA=]", bg: [ 66,200,215] }, You’ve already seen the World vs. World weeklong […] if (useTopTimes === true) { mainEventTimer(true); 1333 AE Jormag awakens and Primordus begins to stir. Welcome to another Plants vs Zombies Garden Warfare 2 video. 0: { name: "", bg: [138,234,244] }, } } } pattern: [{r:0,d:95},{r:1,d:16},{r:2,d:9}] var eventData = { } segments: { /* Times at the top - hide by default only show if class applied */ sequences: { // Now reload otherwise people whine about category titles. pattern: [{r:0,d:75},{r:1,d:25},{r:2,d:20}] This page was created to give players a quick way to check what's happening in Plants vs. Zombies: Garden Warfare 2, without having to look at their game or go looking through a few different websites. World boss - for a more detailed world boss event schedule covering 24 hours. }, .event-bar-container h3, .event-bar-container h4 { if (useCompact === true) { var cssText = $.map(eventData, function(metaEventData, metaKey) { case 'boolean': }); case 'string': // transparent or other alternative text }, $('.event-pointer span').text(pad(hour) + ':' + pad(minute) + ' UTC'); localStorage.removeItem('event-timer-version'); fullMetas[k].sequences.full = fullPatternGenerator(v.sequences.partial, v.sequences.pattern); if (paused) { } // Allow user to shuffle forwards and backwards by clicking on the gray markers // Chatlink If you want your birthday to be included, ask a moderator, an administrator, or a bureaucrat. } } font-family: Tahoma; font-weight: bold; This unofficial App supports you to keep track of your current projects in Guild Wars 2. metaSingular.name + "\r" : "") + time.raw + (name == "" ? "" } clearTimeout(resizeTimer); var now = new Date(); ", // Collect parameter options if specified } GW2Community-Event 1,6k Zugriffe organisiert von gw2ts.de Teilen Termin-Informationen Beginnt Freitag, 27. twelvehour: { } mainEventTimer(true, true); }); border-left: 1px solid black; } } 2: { name: "Junundu Rising", chatlink: "[&BMEKAAA=]", bg: [234,175, 98] } margin-left: -1px; name: "Hard world bosses", method(); 3: { name: "Fire Elemental", link: "Destroy the fire elemental created from chaotic energy fusing with the C.L.E.A.N. wb: { } // Utility function #12: Move the pointer to a new horizontal location based on the current time. position: absolute; } position: absolute; var minute = time % 60; timeshiftOnClick(); cl: ' future' // ** The Icebrood Saga ** margin-bottom: 0em; 60 Event Timers Home Search F.A.Q. s: s, name: "The Desolation", // Utility function #5: Convert a time given in minutes since 00:00 into a recognizable time. defaultvalue: false Welcome to the Plants vs. Zombies Wiki birthday calendar! ", chatlink: "[&BGMCAAA=]", bg: [ 66,200,215] }, 4: { name: "Icebrood Champions", link: "Storms of Winter", chatlink: "[&BCcMAAA=]", bg: [ 98,177,234] } pattern: [{r:1,d:95},{r:2,d:5},{r:3,d:20}] } console.log('Removed stored event timer preferences. // MAIN FUNCTION var minute = now.getUTCMinutes(); jb: { #event-wrapper { // ** Core Tyria ** } $('#event-wrapper').addClass('hideheadings'); console.log('localStorage not supported (HTML5 browser required)'); Want to find out if a Super Mixed Mode is on? case 3: These are the significant events that happen on a set timer. .event-wrapper .event-name a { ", #event-wrapper.compact h4 { left:-200px; width: 200px; position: absolute; z-index:2; line-height: 2.5em; display: inline-block; text-align: right; padding-right: 1em; box-sizing: border-box; margin-top:0; } partial: [], if (timezoneOffset == 0) { }, var box = $(document.createElement("input")).attr("type", "checkbox").attr("id", keyname+"-toggle").attr("title", hoverdesc); partial: [], startHourUTC += otherHourOffset; ); .ui-sortable-handle { timezoneOffset/60 : '+' + timezoneOffset/60); } // DEFER LOADING SCRIPT UNTIL JQUERY IS READY. ", // Utility function #13: Allowing shuffling forwards and backwards ) partial: [{r:1,d:5},{r:0,d:40},{r:2,d:15}], #event-wrapper.compact.hideheadings h3 { margin-left: 0; } barcontainer.append($(document.createElement("h3")).attr("class", metaKey).text(metaSingular.category)); 3: { name: "Night", link: "Day and night", bg: [122,134,171] }, $('#event-wrapper').addClass('toptimes'); bm: { barcontainer.append($(document.createElement("h4")) hover: "If checked, the timer will begin with the previous even UTC hour. position: absolute; 'PM' : 'AM')); touch-action: none; }; // Just one object, with the ending on or before the future line return { raw: timeRaw, string: timeString }; .event-time { partial: [{r:2,d:30}], }); try { If you’re a Guild Wars 2 player who’d like to lead an open world event and guide returning players through this week’s content, let us know where and when they can join you using the hashtag #GW2WelcomeBack on Twitter. ", segments: { hideHeadings = false; if (hideHeadings === true) { } 1: { name: "Treasure Hunt", link: "Participate in the treasure hunt! }, $.each(uitext.checkboxes, function(k,v) { 4: { name: "Reset", link: "A Moment's Rest", bg: [211,234, 98] } opacity: 0.2; Year Event 1334 AE Present day. sequences: { Trivia . $('#event-container').html(''); // ** Living World Season 4 ** defaultvalue: false }); pattern: [{r:1,d:5},{r:0,d:10},{r:2,d:5},{r:0,d:10},{r:3,d:5},{r:0,d:10},{r:4,d:5},{r:0,d:10}] category: "Living World Season 2", Click this text / the Weekend Event text to find out what is happening this weekend! partial: [{r:0,d:5},{r:1,d:16},{r:2,d:9}], pattern: [{r:1,d:20},{r:0,d:10},{r:2,d:20},{r:0,d:40},{r:2,d:20},{r:0,d:10}] function movePointer(useEvenHourStart, metaSequence) { 3: { name: "Chak Gerent", link: "Against the Chak Gerent", chatlink: "[&BPUHAAA=]", bg: [190,215, 66] } .event-bar { color: #AAA; Next time it won't load that element until you press reset. s: s, var excludeSequence = ['db', 'lc', 'ha']; break; mainEventTimer(true); localStorage.setItem('event-timer-'+keyname, JSON.stringify(value)); resizeTimer = setTimeout(fitTimerToWindowWidth, 250); /* Hide h4 headings = just hides the h4 */ .event-chatlink { pattern: [{r:3,d:30},{r:1,d:45},{r:2,d:45}] var zoneParameter = ''; } 1: { name: "Help the Outposts", link: "Advancing Across Tangled Roots", bg: [231,251,132] }, applysettings: "Apply settings", var date = new Date(); input.readOnly = true; metaSequence.push(val); var defaultSequence = Object.keys(eventData); $('#event-wrapper').addClass('compact'); // Distance in percent of the 135 minute window (2 hour + 15 mins) } cursor: help; #event-wrapper.zone .event-bar-exit { display: none; } // For positive timezones, add a plus sign before the hour offset. #event-wrapper.compact h3 { margin-left: -220px; margin-top: 0.5em; margin-bottom: 0.5em; } timezoneOffsetString = 'UTC' + (timezoneOffset < 0 ? var r = v.r, s = v.s, e = v.e; otherHourOffset = otherHourOffset - 24; var label = $(document.createElement("label")).attr("for", keyname+"-toggle").attr("title", hoverdesc).text(desc); e: e, // Allow closure of event bars tp: { sequences: { $(input).blur(function () { Daily - for a list of today's daily achievements including fractals. }); if (startHourUTC != hour ) { dn: { }); var current = match[1] || match[2]; if ( abbrIndex > -1 ) { Visit the Official Site display: none; segments: { case 2: // linear-gradients if ( typeof metaSingular.link != 'undefined' ) { category: "Path of Fire", }, ", link: "World boss", x = ['.event-bar-segment.' if (chatlink != '') { } } background: red; // Check if its gone beyond midnight createEventBars(useEvenHourStart, metaSequence); segments: { // Time }, }); The Mouvelian calendar begins counting years from the moment the gods left Tyria, an event known as the Exodus; years are labeled BE (Before the Exodus) or AE (After the Exodus). clearInterval(setIntervalHandle); category: "Path of Fire", What about some teamwork in a Community Challenge? var barcontainer = $(document.createElement("div")).attr("class", "event-bar-container " + metaKey).attr("data-abbr", metaKey); 2: { name: "Challenges", link: "Battle in Tarir (map meta event)", chatlink: "[&BGwIAAA=]", bg: [211,234, 98] }, } else { Does he have anything good in store this weekend? } refinedSchedule.push({ #event-wrapper .event-bar-container.t, category: "The Icebrood Saga", e: e, } In GW2, we currently have a core group of about 15-20 members who play daily, with many other more casual players who pop in a few times a week, and we are looking to expand our ranks.