Difference between revisions of "Particles:addParticles"

m (little typo :-))
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
__NOTOC__
 
__NOTOC__
 +
 
'''<translate>Available since</translate>:''' Gideros 2016.06<br/>
 
'''<translate>Available since</translate>:''' Gideros 2016.06<br/>
 
'''<translate>Class</translate>:''' [[Special:MyLanguage/Particles|Particles]]<br/>
 
'''<translate>Class</translate>:''' [[Special:MyLanguage/Particles|Particles]]<br/>
 +
 
=== <translate>Description</translate> ===
 
=== <translate>Description</translate> ===
<translate>Add particle a single particle (short form)  or several ones (long form) to this particle system.
+
Add a single particle (short form)  or several ones (long form) to this particle system.
<br/>
+
 
Short form (single particle):
+
'''Short form''' (single particle): ''particles:addParticles(x,y,size,angle,ttl)''
''particles:addParticles(x,y,size,angle,ttl)''
+
 
<br/>
+
'''Extended form''': ''particles:addParticles{particleDesc1,particleDesc2,...,particleDescN}''
Extended form:
+
 
''particles:addParticles{particleDesc1,particleDesc2,...,particleDescN}''
 
 
where particleDescX is a table describing a particle to be added. This table can contain the following parameters:
 
where particleDescX is a table describing a particle to be added. This table can contain the following parameters:
<ul>
+
*x,y: particle position
<li>x,y: particle position</li>
+
*size: particle size
<li>size: particle size</li>
+
*angle: particle orientation
<li>angle: particle orientation</li>
+
*color: particle color
<li>color: particle color</li>
+
*alpha: particle alpha
<li>alpha: particle alpha</li>
+
*ttl: time to live, number of frames this particle will stay on screen
<li>ttl: time to leave, number of frames this particle will stay on screen</li>
+
*tag: tag associated with this particle
<li>tag: tag associated with this particle</li>
+
*speedX,speedY,speedAngular,speedGrowth: Amount added to x,y,angle and size at the beginning of each frame
<li>speedX,speedY,speedAngular,speedGrowth: Amount added to x,y,angle and size at the beginning of each frame</li>
+
*decay,decayAngular,decayGrowth,decayAlpha: factor applied to speedX and speedY, speedAngular, speedGrowth and alpha at the beginning of each frame
<li>decay,decayAngular,decayGrowth,decayAlpha: factor applied to speedX and speedY, speedAngular, speedGrowth and alpha at the beginning of each frame</li>
 
</ul></translate>
 
 
<source lang="lua">
 
<source lang="lua">
 
(number or table) = Particles:addParticles(particles)
 
(number or table) = Particles:addParticles(particles)
 
</source>
 
</source>
 +
 
=== <translate>Parameters</translate> ===
 
=== <translate>Parameters</translate> ===
'''particles''': (table or arguments) <translate>table for multiple particles or arguments for single</translate> <br/>
+
'''particles''': (table or arguments) <translate>table for multiple particles or arguments for single</translate>
 +
 
 
=== <translate>Return values</translate> ===
 
=== <translate>Return values</translate> ===
'''<translate>Returns</translate>''' (number or table) <translate>index or table with indexes of added particles</translate><br/>
+
'''<translate>Returns</translate>''' (number or table) <translate>index or table with indexes of added particles</translate>
 +
 
 +
=== <translate>Example</translate> ===
 +
<source lang="lua">
 +
local stars = Particles.new()
 +
stars:setPosition(64, 64)
 +
stage:addChild(stars)
 +
stage:addEventListener(Event.ENTER_FRAME, function()
 +
stars:addParticles({
 +
{x=math.random(4*64),y=math.random(5*64),size=math.random(1,30),color=0xD9B589,ttl=1*60,speedX=0,speedY=0},
 +
{x=math.random(2*64),y=math.random(5*64),size=math.random(1,30),color=0xffff00,ttl=30*60,speedX=1,speedY=0},
 +
})
 +
end)
 +
</source>
 +
 
 +
{{Particles}}

Latest revision as of 01:22, 6 October 2020


Available since: Gideros 2016.06
Class: Particles

Description

Add a single particle (short form) or several ones (long form) to this particle system.

Short form (single particle): particles:addParticles(x,y,size,angle,ttl)

Extended form: particles:addParticles{particleDesc1,particleDesc2,...,particleDescN}

where particleDescX is a table describing a particle to be added. This table can contain the following parameters:

  • x,y: particle position
  • size: particle size
  • angle: particle orientation
  • color: particle color
  • alpha: particle alpha
  • ttl: time to live, number of frames this particle will stay on screen
  • tag: tag associated with this particle
  • speedX,speedY,speedAngular,speedGrowth: Amount added to x,y,angle and size at the beginning of each frame
  • decay,decayAngular,decayGrowth,decayAlpha: factor applied to speedX and speedY, speedAngular, speedGrowth and alpha at the beginning of each frame
(number or table) = Particles:addParticles(particles)

Parameters

particles: (table or arguments) table for multiple particles or arguments for single

Return values

Returns (number or table) index or table with indexes of added particles

Example

local stars = Particles.new()
stars:setPosition(64, 64)
stage:addChild(stars)
stage:addEventListener(Event.ENTER_FRAME, function()
	stars:addParticles({
		{x=math.random(4*64),y=math.random(5*64),size=math.random(1,30),color=0xD9B589,ttl=1*60,speedX=0,speedY=0},
		{x=math.random(2*64),y=math.random(5*64),size=math.random(1,30),color=0xffff00,ttl=30*60,speedX=1,speedY=0},
	})
end)