diff options
author | Philipp Sehmisch <tmw@crushnet.org> | 2007-05-23 21:22:43 +0000 |
---|---|---|
committer | Philipp Sehmisch <tmw@crushnet.org> | 2007-05-23 21:22:43 +0000 |
commit | 1ddb44f5caf3e0bc93b7d19cc6e227b10e4b4c41 (patch) | |
tree | 93ee24ab1b77f3bc0b57143ab2643ea7e38f951c | |
parent | c61786006bf7694f532c77d038fc2cfd8a44b551 (diff) | |
download | mana-1ddb44f5caf3e0bc93b7d19cc6e227b10e4b4c41.tar.gz mana-1ddb44f5caf3e0bc93b7d19cc6e227b10e4b4c41.tar.bz2 mana-1ddb44f5caf3e0bc93b7d19cc6e227b10e4b4c41.tar.xz mana-1ddb44f5caf3e0bc93b7d19cc6e227b10e4b4c41.zip |
Made text splash effects fade out.
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | src/particle.cpp | 6 | ||||
-rw-r--r-- | src/textparticle.cpp | 17 |
3 files changed, 25 insertions, 3 deletions
@@ -13,6 +13,11 @@ data/graphics/gui/target-cursor-red-m.png, data/graphics/gui/target-cursor-red-l.png: Replaced target cursor graphics with higher quality ones by Pauan. + * src/particle.cpp: Made bouncing particles immune against death by + ground contact and removed a nonsensical debugging log message. Made + text splash effects fade out. + * src/textparticle.cpp: Implemented fading in and out for text + particles. 2007-05-20 Eugenio Favalli <elvenprogrammer@gmail.com> diff --git a/src/particle.cpp b/src/particle.cpp index bb28c873..579bbfc1 100644 --- a/src/particle.cpp +++ b/src/particle.cpp @@ -146,7 +146,6 @@ Particle::update() {
if (mInvDieDistance > 0.0f && invHypotenuse > mInvDieDistance)
{
- logger->log("killed");
mAlive = false;
}
float accFactor = invHypotenuse * mAcceleration;
@@ -179,7 +178,8 @@ Particle::update() if (mPosZ > PARTICLE_SKY || mPosZ < 0.0f)
{
- if (mBounce && fabs(mVectorZ) > mGravity * 2) {
+ if (mBounce > 0.0f)
+ {
mPosZ *= -mBounce;
mVectorX *= mBounce;
mVectorY *= mBounce;
@@ -326,6 +326,8 @@ Particle::addTextSplashEffect(std::string text, gcn::Font *font, gcn::Color colo );
newParticle->setGravity(0.1f);
newParticle->setBounce(0.5f);
+ newParticle->setLifetime(200);
+ newParticle->setFadeOut(100);
mChildParticles.push_back(newParticle);
diff --git a/src/textparticle.cpp b/src/textparticle.cpp index e7a0926b..2a2c50e8 100644 --- a/src/textparticle.cpp +++ b/src/textparticle.cpp @@ -42,7 +42,22 @@ void TextParticle::draw(Graphics *graphics, int offsetX, int offsetY) const int screenX = (int)mPosX + offsetX; int screenY = (int)mPosY - int(mPosZ) + offsetY; + int alpha = 255; + + if (mLifetimeLeft > -1 && mLifetimeLeft < mFadeOut) + { + alpha *= mLifetimeLeft; + alpha /= mFadeOut; + }; + + if (mLifetimePast < mFadeIn) + { + alpha *= mLifetimePast; + alpha /= mFadeIn; + } + graphics->setFont(mTextFont); - graphics->setColor(mTextColor); + graphics->setColor(gcn::Color (mTextColor.r, mTextColor.g, mTextColor.b, + alpha)); graphics->drawText(mText, screenX, screenY, gcn::Graphics::CENTER); } |