12.07.2015 Views

Wiley-World.of.Warcraft.Programming.A.Guide.and.Reference.for.Creating.WoW.Addons

Wiley-World.of.Warcraft.Programming.A.Guide.and.Reference.for.Creating.WoW.Addons

Wiley-World.of.Warcraft.Programming.A.Guide.and.Reference.for.Creating.WoW.Addons

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

308 Part III ■ Advanced Addon Techniquesexactly frequent. One piece <strong>of</strong> misplaced taint may not cause any problemsuntil you join a raid group or travel to another continent, <strong>for</strong> example.These situations are where the taint logs can really shine. When you receivean ‘‘action blocked’’ message during development, simply turn on taint logging<strong>and</strong> you can track down the problems. Level 2 is especially helpful in a case likethis because it allows you to see exactly when each variable becomes tainted.SummaryThis chapter covered a lot <strong>of</strong> ground. By now, you should be acquainted with:The basic intent <strong>of</strong> the secure code system, which is to protect the gamefrom automation while still enabling customization.The concept <strong>of</strong> protected frames <strong>and</strong> which <strong>of</strong> their characteristics arerestricted from changes during combat.How frame attributes allow secure code to receive control messages safelyfrom addon code.How taint can propagate from addon code to Blizzard code <strong>and</strong> cause theUI to fail, <strong>and</strong> how to identify <strong>and</strong> prevent this.The secure template system uses a wide assortment <strong>of</strong> specific features—taint, protected functions <strong>and</strong> frames, attributes, <strong>and</strong> so on—to achieve a muchlarger goal. It needs to protect the game against too much automation <strong>and</strong>, atthe same time, allow addons to alter the way you interact in combat. There isstill a lot to cover, but once you underst<strong>and</strong> the basics laid out here, the restwill flow much more freely.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!