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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Example 4-23. Hope.as<br />

package<br />

{<br />

public class Hope extends Decorator<br />

{<br />

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

public function Hope(<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( ) + "|Hope";<br />

}<br />

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

{<br />

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

}<br />

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

{<br />

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

}<br />

}<br />

}<br />

Example 4-24. Courage.as<br />

package<br />

{<br />

public class Courage extends Decorator<br />

{<br />

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

public function Courage(<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( ) + "|Courage";<br />

}<br />

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

{<br />

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

}<br />

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

{<br />

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

}<br />

}<br />

}<br />

154 | Chapter 4: Decorator Pattern

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

Saved successfully!

Ooh no, something went wrong!