diff --git a/Docs/Changelog_sm-ssc.txt b/Docs/Changelog_sm-ssc.txt index 5ea9d998b3..a10f755945 100644 --- a/Docs/Changelog_sm-ssc.txt +++ b/Docs/Changelog_sm-ssc.txt @@ -15,7 +15,14 @@ sm-ssc v1.0 Release Candidate 2 | 201008xx 20100811 -------- -* [Player] Implement a hack for miniholds until a proper solution can be found. +sm-ssc: + * [Player] Implement a hack for miniholds until a proper solution can be found. + * [ActorSound] Fix Play() so that stop and pause are usable. [Daisuke Master] + +sm4.0: + * r28455: fix EFFECT_BOUNCE, give particles a start position uniformly + distributed across the screen [Chris Danford] + * r28456: change flip effects to use degrees, not radians [Chris Danford] 20100810 -------- diff --git a/src/BGAnimationLayer.cpp b/src/BGAnimationLayer.cpp index a0a3f64b8c..62dc2b8013 100644 --- a/src/BGAnimationLayer.cpp +++ b/src/BGAnimationLayer.cpp @@ -235,8 +235,17 @@ void BGAnimationLayer::LoadFromAniLayerFile( const RString& sPath ) this->AddChild( pSprite ); pSprite->Load( sPath ); pSprite->SetZoom( 0.7f + 0.6f*i/(float)iNumParticles ); - pSprite->SetX( randomf( GetGuardRailLeft(pSprite), GetGuardRailRight(pSprite) ) ); - pSprite->SetY( randomf( GetGuardRailTop(pSprite), GetGuardRailBottom(pSprite) ) ); + switch( effect ) + { + case EFFECT_PARTICLES_BOUNCE: + pSprite->SetX( randomf( GetGuardRailLeft(pSprite), GetGuardRailRight(pSprite) ) ); + pSprite->SetY( randomf( GetGuardRailTop(pSprite), GetGuardRailBottom(pSprite) ) ); + break; + default: + pSprite->SetX( randomf( GetOffScreenLeft(pSprite), GetOffScreenRight(pSprite) ) ); + pSprite->SetY( randomf( GetOffScreenTop(pSprite), GetOffScreenBottom(pSprite) ) ); + break; + } switch( effect ) { @@ -259,6 +268,8 @@ void BGAnimationLayer::LoadFromAniLayerFile( const RString& sPath ) pSprite->SetZoom( 1 ); m_vParticleVelocity.push_back( RageVector3( randomf(), randomf(), 0 ) ); RageVec3Normalize( &m_vParticleVelocity[i], &m_vParticleVelocity[i] ); + m_vParticleVelocity[i].x *= PARTICLE_SPEED; + m_vParticleVelocity[i].y *= PARTICLE_SPEED; break; default: ASSERT(0); @@ -314,10 +325,10 @@ void BGAnimationLayer::LoadFromAniLayerFile( const RString& sPath ) m_fTileVelocityY = +PARTICLE_SPEED; break; case EFFECT_TILE_FLIP_X: - pSprite->SetEffectSpin( RageVector3(2,0,0) ); + pSprite->SetEffectSpin( RageVector3(180,0,0) ); break; case EFFECT_TILE_FLIP_Y: - pSprite->SetEffectSpin( RageVector3(0,2,0) ); + pSprite->SetEffectSpin( RageVector3(0,180,0) ); break; case EFFECT_TILE_PULSE: pSprite->SetEffectPulse( 1, 0.3f, 1.f );