10.12.2012 Views

ActionScript 3.0 Design Patterns.pdf - VideoTutorials-bg.com

ActionScript 3.0 Design Patterns.pdf - VideoTutorials-bg.com

ActionScript 3.0 Design Patterns.pdf - VideoTutorials-bg.com

SHOW MORE
SHOW LESS

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

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

Example 4-25. Compassion.as<br />

package<br />

{<br />

public class Compassion extends Decorator<br />

{<br />

private var <strong>com</strong>ponents:Component;<br />

public function Compassion(<strong>com</strong>ponents:Component)<br />

{<br />

this.<strong>com</strong>ponents=<strong>com</strong>ponents;<br />

}<br />

override public function getSoul( ):String<br />

{<br />

return <strong>com</strong>ponents.getSoul( ) + "|Compassion";<br />

}<br />

override public function good( ):Number<br />

{<br />

return 7 + <strong>com</strong>ponents.good( );<br />

}<br />

override public function evil( ):Number<br />

{<br />

return -15 + <strong>com</strong>ponents.evil( );<br />

}<br />

}<br />

}<br />

Example 4-26. Openness.as<br />

package<br />

{<br />

public class Openness extends Decorator<br />

{<br />

private var <strong>com</strong>ponents:Component;<br />

public function Openness(<strong>com</strong>ponents:Component)<br />

{<br />

this.<strong>com</strong>ponents=<strong>com</strong>ponents;<br />

}<br />

override public function getSoul( ):String<br />

{<br />

return <strong>com</strong>ponents.getSoul( ) + "|Openness";<br />

}<br />

override public function good( ):Number<br />

{<br />

return 12 + <strong>com</strong>ponents.good( );<br />

}<br />

override public function evil( ):Number<br />

{<br />

return -15 + <strong>com</strong>ponents.evil( );<br />

}<br />

}<br />

}<br />

Decorating with Deadly Sins and Heavenly Virtues | 155

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

Saved successfully!

Ooh no, something went wrong!