рдХрдг рдореЙрдбрд▓рд┐рдВрдЧ рдореЗрдВ рдХрдг рдкреНрд░рдгрд╛рд▓реА (3)

рд╣рдо 04/10/2014 рд╕реЗ ( рднреАрдбрд╝ рдореЙрдбрд▓рд┐рдВрдЧ (2) рдореЗрдВ рдХрдг рдкреНрд░рдгрд╛рд▓реА) рдХреА рдмрд╛рддрдЪреАрдд рдЬрд╛рд░реА рд░рдЦрддреЗ рд╣реИрдВред



рдЗрд╕ рднрд╛рдЧ рдореЗрдВ:

  1. рд╢реВрдЯрд░ рдХреА рдореМрдд рдЬреЛрдбрд╝реЗрдВ (рдЖрдЦрд┐рд░рдХрд╛рд░, рд╡рд┐рд╕реНрдлреЛрдЯреЛрдВ рдиреЗ рдорд╛рд░ рдбрд╛рд▓рд╛)
  2. рдПрдорд┐рдЯрд░ рдХреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рдЦреЗрд▓рддреЗ рд╣реИрдВ - рдореБрдЭреЗ рдорд╣рд╛рдХрд╛рд╡реНрдп рдЪрд╛рд╣рд┐рдП




рд╢реВрдЯрд░ рдХреА рдореМрдд рдЬреЛрдбрд╝реЗрдВ (рдЖрдЦрд┐рд░рдХрд╛рд░, рд╡рд┐рд╕реНрдлреЛрдЯреЛрдВ рдиреЗ рдорд╛рд░ рдбрд╛рд▓рд╛)



"рддреАрд░ рдХреЛ рдорд╛рд░рдиреЗ" рдХреЗ рд▓рд┐рдП, рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╣реИрдВред рдореИрдВ рд╕рдмрд╕реЗ рдЖрдо рдПрдХ рдХрд╛ рдЪрдпрди рдХрд░реВрдВрдЧрд╛ - рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд "рд╕реНрд╡рд╛рд╕реНрдереНрдп рдХреА рдорд╛рддреНрд░рд╛" рдХреЛ рд╢реВрдиреНрдп рдпрд╛ рдЙрд╕рд╕реЗ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рд▓реЗрдХрд┐рди рдХреБрдЫ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рдЗрд╕реЗ рд╕реНрд╡рд╛рд╕реНрдереНрдп рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ - ( HealthInitializer )ред

рдкрд╛рд░реНрдЯрд┐рдХрд▓ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдХреЗ рджреМрд░рд╛рди, HealthInitializer рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП , рдПрдХ рдирдпрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪрд░ "Health" Particle.dEDIA рд╡рд░реНрдЧ рдХреЗ рдЧреБрдгреЛрдВ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ



package waylines.initializers { import org.flintparticles.common.particles.Particle; import org.flintparticles.common.emitters.Emitter; import org.flintparticles.common.initializers.InitializerBase; public class HealthInitializer extends InitializerBase { private var health:int; public function HealthInitializer(health:int=100) { this.health = health; } override public function initialize( emitter : Emitter, particle : Particle ) : void { particle.dictionary["health"] = health; } } }
      
      







рдХрдг рд╕реНрд╡рд╛рд╕реНрдереНрдп рдкреНрд░рд╛рдкреНрдд рдХрд░ рдЪреБрдХреЗ рд╣реИрдВ, рдФрд░ рдЕрдм рдЖрдк рдЗрд╕реЗ рдХрдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдореБрдЦреНрдп рдХреЛрдб рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди:



 override protected function setup(e:Event=null):void { super.setup(e); //  " "   -  emitterWaylines.addInitializer( new HealthInitializer(100)); }
      
      





 /* *   (     -     ) * 1.   explosion ""   emitterWaylines     emitterExplosion * 2.          . *   ,  ""    * -     ,      */ override protected function explosion(e:MouseEvent):void { /* *     -     emitterWaylines */ super.explosion(e); /* *  copy-paste   * ,          */ ... var particles:Array = emitterExplosion.particlesArray; var length:int = particles.length; for(var r:int=0; r<length; r++) { ... if(Point.distance(explPoint, particlePoint) < explRadius) { particleClone = Particle2D(particles[r]); particleClone.angVelocity = -5 + Math.random() * 10; /* *  " "   " " -    ... */ particleClone.lifetime += 1; //particleClone.age = 0; /* *       ( 10  40 ) */ particleClone.dictionary["health"] -= (10 + Math.random() * 30); } } }
      
      







рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдХреЗрд╡рд▓ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╡рд╣ рдХрд┐рд╕рд╕реЗ рдШрд╛рдпрд▓ рд╣реБрдЖ, рдФрд░ рдЙрд╕рдиреЗ рдХрд┐рд╕рдХреЛ рдорд╛рд░рд╛ред рдЖрдк рдкреИрдВрдЯ рдХреЗ рддреАрд░ рдХреЗ рд░рдВрдЧ рднреЗрджрднрд╛рд╡ рдХреЛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред

MainWaylines_3.explosion () рдореЗрдВ рдХреБрдЫ рдкрдВрдХреНрддрд┐рдпрд╛рдБ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░реЗрдВ:



 /* *        -    ,    */ if(particle.dictionary["health"] <= 0) { //  "" -   addBlot(particle); //   particle.isDead = true; } else { //  "" -   Arrow(particle.image).color = getArrayColorByHealth(particle.dictionary["health"]); }
      
      







рдПрдорд┐рдЯрд░ рдХреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рдЦреЗрд▓рддреЗ рд╣реИрдВ - рдореБрдЭреЗ рдорд╣рд╛рдХрд╛рд╡реНрдп рдЪрд╛рд╣рд┐рдП



рдХрдг рдкреБрд╕реНрддрдХрд╛рд▓рдп , рдЖрд╡реЗрджрди рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рднреМрддрд┐рдХ рдХрд╛рдиреВрдиреЛрдВ (рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░, рдЧреБрд░реБрддреНрд╡рд╛рдХрд░реНрд╖рдг ...) рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд▓рд┐рдд рд╣реЛрддрд╛ рд╣реИ - рд╕реВрдХреНрд╖реНрдо рдорд╛рдорд▓рд╛, рдореЗрд░реЗ рд▓рд┐рдП рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ (рддрдХрдиреАрдХреА рдирд╣реАрдВ)ред рд╣рд╛рдВ, рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдРрдб-рдСрди рд▓рд┐рдЦрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛ - рдЬреЛ рдмреЗрд╣рдж рдЕрд╡рд╛рдВрдЫрдиреАрдп рд╣реИ (рдореИрдВ рдЦрд░реАрджреЗ рдЧрдП рдмрдЪреНрдЪреЛрдВ рдХреЗ рдмреНрд▓реЙрдХреЛрдВ рдХреА рддрд░рд╣ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдЦреЗрд▓рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдФрд░ рдЗрд╕реЗ рдЦреБрдж рдХреЛ рдЦрд░рд╛рдж рдкрд░ рдкреАрд╕ рдирд╣реАрдВ рд╕рдХрддрд╛ рд╣реВрдВ)ред

рдЗрд╕рд▓рд┐рдП:





 override protected function setup(e:Event=null):void { super.setup(e); //  " "   -  emitterWaylines.addInitializer( new HealthInitializer(100)); /* * " "    (  ) * - - .1 */ emitterWaylines.maximumFrameTime = .001; emitterWaylinesForMonsterArrows.maximumFrameTime = .001; /* * -      ,   ,    * (,        -        ,    ) */ emitterWaylines.addAction( new Antigravities(emitterWaylinesForMonsterArrows, -4000000) );//  400000 emitterWaylines.addAction( new MinimumDistance( 7, 6000 ) );//  600 }
      
      







рдирддреАрдЬрддрди, рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд рдкреНрд░рддрд┐рдХреВрд▓ рдиреЗ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдзреАрд░реЗ-рдзреАрд░реЗ рдЪрд▓рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ - рдирдХреНрд╢реЗ рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рдЗрд╕рдХреЗ рдЖрдХрд╛рд░ рдХреЗ рдЕрдиреБрдкрд╛рдд рдореЗрдВ (рдпрджрд┐ рдпрд╣ goblins рдпрд╛ рд▓рд╛рд╢ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП)ред рдорд╛рдирдЪрд┐рддреНрд░ рдХреЛ рдЫреЛрдЯрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдХрдгреЛрдВ рдХреЗ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдмрдбрд╝реЗ (рдЫреЛрдЯреЗ) рдХреА рд╕реНрдХреНрд░реАрди рдХреЗ рд▓рд┐рдП рдПрдХреНрд╕рдЯреНрд░рдкрд▓реЗрд╢рди рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред







рдареАрдХ рд╣реИ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рд╡рд╣ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ - рдХрдг рдкреНрд░рдгрд╛рд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рднреАрдбрд╝ рдореЙрдбрд▓рд┐рдВрдЧ рдХрд╛ рд╕рд┐рджреНрдзрд╛рдВрддред рдЗрд╕рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдЯреЙрд╡рд░ рдбрд┐рдлреЗрдВрд╕ рдХреЗ рд▓рд┐рдП рд▓рдЧрднрдЧ рддреИрдпрд╛рд░ рдХрд┐рдП рдЧрдП рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдореЙрдбрд▓ (MVC) рд╣реИред 60 рдПрдлрдкреАрдПрд╕, рдХрдгреЛрдВ рдХреЗ рдРрд╕реЗ рдШрдирддреНрд╡ рдХреЗ рд╕рд╛рде, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реЛрдЧрд╛ ... рд▓реЗрдХрд┐рди - рдЕрдиреБрдХреВрд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдХреБрдЫ рд╣реИ (рдореИрдВрдиреЗ рдкрд┐рдЫрд▓реЗ рднрд╛рдЧреЛрдВ рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ), рдПрдХ рдореБрдлреНрдд рд░реЗрдВрдбрд░ рдкреЗрдВрдЪ (рд╕реНрдЯрд╛рд░реНрд▓рд┐рдВрдЧ, рдЕрд╡реЗ 3 рдбреА)



рдХреЛрдб Google рдХреЛрдб рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реИред рдХрдХреНрд╖рд╛ MainWaylines_3



рдкреБрдирд╢реНрдЪ: рд╕рдордп рд╣реЛрдЧрд╛, рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЦрд░рд╛рдм рд░реЗрдВрдбрд░ рджрд┐рдЦрд╛рдКрдВрдЧрд╛



All Articles