package creatures { import flash.filters.DropShadowFilter; import flash.geom.Point; import creatures.parts.*; public class Chupaoveja extends Creature { private var centerPlane:Plane; private var leftPlane:Plane; private var rightPlane:Plane; private var _torso:Appendage; private var _head:Appendage; private var _tail:Appendage; private var _leftLeg:Appendage; private var _leftArm:Appendage; private var _rightLeg:Appendage; private var _rightArm:Appendage; public function get torso():Appendage { return _torso; } public function get head():Appendage { return _head; } public function get tail():Appendage { return _tail; } public function get leftLeg():Appendage { return _leftLeg; } public function get leftArm():Appendage { return _leftArm; } public function get rightLeg():Appendage { return _rightLeg; } public function get rightArm():Appendage { return _rightArm; } public function Chupaoveja() { super(); centerPlane = definePlane(new Plane(sideMatrix)); leftPlane = definePlane(new Plane(sideMatrix, new Point(0, 25))); rightPlane = definePlane(new Plane(sideMatrix, new Point(0, -25))); _torso = defineAppendage(new Appendage(), centerPlane); _head = defineAppendage(new Appendage(), centerPlane); _tail = defineAppendage(new Appendage(), centerPlane); _leftLeg = defineAppendage(new Appendage(), leftPlane); _leftArm = defineAppendage(new Appendage(), leftPlane); // black/grey torso and tail Segment.setNewStyle({backgroundColor:0x202020}); _torso.appendSegments([ new Segment(0, 0, 13), new Segment(50, -15, 18), ]); _tail.appendSegments([ new Segment(-12, 3, 9), new Segment(-40, 15, 5), new Segment(-50, 10, 2), ]); // red head, arms, and legs Segment.setNewStyle({backgroundColor:0x882000}); _head.appendSegments([ new Segment(65, -20, 8), new Segment(20, 0, 10), new Segment(18, 0, 8), ]); _leftLeg.appendSegments([ new Segment(0, 0, 10), new Segment(35, 0, 8), new Segment(35, 0, 6), new Segment(35, 0, 4), ]); _leftArm.appendSegments([ new Segment(50, -20, 8), new Segment(23, 0, 8), new Segment(25, 0, 5), ]); // claws Segment.setNewStyle({backgroundColor:0xAAAAAA}); _leftLeg.appendSegments([ new Segment(15, 0, 2), ]); _leftArm.appendSegments([ new Segment(15, 0, 2), ]); _rightLeg = defineAppendage(leftLeg.clone(), rightPlane); _rightArm = defineAppendage(leftArm.clone(), rightPlane); // highlight for the red parts var shadow:DropShadowFilter = new DropShadowFilter(4, 45, 0xFFFFEE, 1, 0,0, .3, 1, true); _head.filters = [shadow]; _leftLeg.filters = [shadow]; _leftArm.filters = [shadow]; _rightLeg.filters = [shadow]; _rightArm.filters = [shadow]; body.y -= 60; // vertical offset to place feet on ground } } }