From 51c00ed64f0901e361c61d62b8253abf8162d368 Mon Sep 17 00:00:00 2001 From: Florian Kuepper Date: Sat, 3 Mar 2012 22:19:39 +0100 Subject: [PATCH] Added fading for names. --- Output/CreditsRessourcesDB.sqlite | Bin 23320576 -> 23320576 bytes Vocaluxe/Base/CDataBase.cs | 10 +----- Vocaluxe/Screens/CScreenCredits.cs | 49 +++++++++++++++++++---------- 3 files changed, 33 insertions(+), 26 deletions(-) diff --git a/Output/CreditsRessourcesDB.sqlite b/Output/CreditsRessourcesDB.sqlite index 902672ed748fc4a924ecc0d66d7ce619560822d9..72b14a9bce8a27c7991c31703a6218d596fa1315 100644 GIT binary patch delta 5439 zcmZA5b(B?gqsQTMhGvL?p&O)Iq`T|_;p`c@q`RA;yOHitP(eWyY)}zfQA|KZY{Wnj zR8;Qsd++_{y=(D&)?PEi`OSPcd(K)+-@hz*I?Idam>P?vUyj8RomP}@5}$gY=j`N^ z)ZCdem5$#!v{(PWZF`OBmAdLua)tQ$gT->4%(N;aZ|cgFoJpy(59Ug_kSTkv)+w=A zYW_TjFW#M;w0Bn0(RoQn<0O%Z%w!=e*~m@~a*|9ga+8O=q>zvNq*8!_6rwOiC`vJk zQ-YF|qBLbFOF6EiJQb)&B`Q;es#K#oHK<9g!%0VLUu%;bi^Y=Sqhj$$a}OQpNP>to(&*_nt69TZ z*0G)qY-AIg*}_(~v7H_4WEc1I0K3`4gFM8;>}4O1@F@E^z+)Wbah~81hk25xc$#N; zmgjh$BOK)gUgRZ?@iNDGg;#lv*Lj0Cd5gDshZDTZdz|EbKHx(>;$uGH6sI}Er+mie zoaGD7@g-mJHQ(?p-|;=?`GE`k$WQ#tFI?nTe&Z6qbD1mr!JquaRsQB5{^i=DS}E~m zgd~Mz3dtOjB_wM|wvg;0IYM%VB!}b*$sLj>ByY%nUN2v`${&&%QXr&YNTHCzAw@!p zh7=1a9#SHtWJsxy(jjF+%7&B+xh|x9NQID!A(cWZhg1ov8d5E!dPt3snjy79YKL4O zQYYkwkh&rDLh6S!2x%D7D5P;nlaQt%%|e=ovbfhTIi$cSyUC_VFWrp~O#LNlN58k}G?Mc>eg2oSS;b>&7$E_jo7S%>&%e zE_Skm?QCN!TiDDdHnM^BtYa-}Sj~N`VkIkB&N7y=gvBgkAq!#|vGn;a<}sH!%w`rd znZa~2m_~Tpo5Ex!F_8(3XB=Z0!)Qh^k`WAN7(*GtU8AwF%iDri3ukroS1N6!hs0~ zCLEY>V8VfkHngS{Eonh>n$eUd?p30(i$*l00rjazU2dQb*HfEX)T9R0sYX?*P?<_p zqypu+j&hWx45cYWNlH*Wd>6$iN)ZZEh=LR#mHgx*g}me;cP!TN*nhp}A3v3mW{21x zu~=lM$WD=+B0EKPitH5md}OD{PLZ7=J4JSi>=fB4vQuQI$WD=+B0ELC!>9>nip&(5 zDKb-JrpQc@nIbbqb!-{gDY8>!r^rr`ogzC$c8cs2*(tJ9WT(hZk)0wtMRtnp6xk`V zQ)H*ePLZ7=J4MAYQ)H&dOp%!)Geu^K%oLd^%AX;2itH5GDY8>!rzjW6@vB_q7k=g^e&hl_aGvk^j&J#fulb5E zImZ{A<#RscQ_gUjQ+&e5e8h)*!26tx#WE7_xp%7LRyuxu_<`^&W zA}?^%!|JC?ahnoHc%J8YmS=dHr+AXX9O8-aEIsbxAdhi?{XEJe>|-wv^AHcRhuu8D z{p?~VJJ`-Pwz7rIY+@rDSkF4vvWC?eav!T$$qJUUjHN7LF^gEp0_HQ1xy)fUvzW;Y zrW0Ow8dI6VWF|3@35;hPL&wS(Ml*_$j9@s!7|IX^Gl+oyj{WE1PrD@+OS_qyxRJKB!ROOj(UKN4rx{IYLSq`ykOtJJ9(B2a zI$Td}YEhFKRHvGopH|gH6)IDSid3LH*HMnLl%X`GC`k#5Q;eb%p)iFgNC8sGPd-w} zOCEBQi)1$`Ehjn1PByZVh0J6ki8zLeuJJGb@Hbcai$D2;D_rJxF7X?`a*<#7nVhhb9}*BKIbz&4d*Cjj2pwGLx9d1jaLtv5a9fqZr8uhBJ(z!4MhDAOh=w$vKJ}=} z4bZPX~$gnH<0!sFL0D2JkN7H%QHO9Q#{FG4)Fw!bCAb4z|i_F*vb|*vx$vtU_I+t%Nka5AFEi&3YN2sr7U4Fi&)44 z<};7E%*l}1%wi@pm`?ckG^R3z$xLD*6By4p#xjP{jAA4s7|t+;GK9elVju(PPd|qC zm3!$!Z+g*_9(1Q0UFkw+I+0Eq5eYidfqQ6AJMQK#?&J<`=eGZQ`29a$krV#|VGaem delta 5459 zcmZYBb(mD;-@xIST{@TU?(XjHW_M{=I;9(2y1TneLg4bWDk<+9}Ov zsbZ6&lfp6&kEUcxQ|($b1@o8{SBWlYn&ORL0nrVCx^ zMt6G9lXwzHq!+#ELtpyQp8*VH5J?PX2tygha7HkaQH*8`V;RSNjAsH9nZ#tKFqLUc zX9hEw#cbvD=LR?VgInC@PyXU>?(h$H`ImbutHedu5)u;<8>_k~1V%NbZn4A$ddch2#$@5K=It zP)OmBA|XXXiiH#pDG^dKq*O@hkTM}G>&-jNDy>vUK=SycYrRx#R9!-wV6p6%VCJR~dV2IB~c5;xDT;wJXdC5n9 z3Q&+j6s8D8DMoQhP?A!VrVM2%M|mnlk|XgI4V9=&6{=E=>eQenwWv)U>QayTG@v1k zXiO8D(v0S`pe3znO&i+Mj`nm&mX36yGhOIPH@ee>(8$u4%YhrR4$KL)-7JkArO@FY+1G|%uX&+&YC(iWMwHtnh&(KBgR^^D#* zzhq?EBO}voOYZq%Bog`4F=u&!b9gWQC0^zgUgb4j=MCQEE#BrG-sL^s=L61jfe-nJ zkGaSve99$0 z$-nrUJN(1la9#Y%y+|a%LL@|qA(m96CJkvxM|v`lkxXPJ3t5RH8`;T0PI8f(Jme)G z`6)m_k_$;;icpkd6sH6wDMe|@P?mC(rveqJL}jW_m1J37{)S=`xwszCNhc1Okpb1n9dAlGAmhTGl#j{ zPk3)0^I5<`7O|KmEM*zXS;0zHv6?lkWgY9;z(zK)nJsK(8`~MTLw2%@-Rxm6``FI` z4swXY9N{R(c!1+P$O#_eVIJWmr+AdpJjUby{}+G$i^=h4BLCh02`LVElBal@XLy$9 zcpk?koaF`1@ggtrGOzF|ukku>@Fs8ZHt+B*@9{n#aGncc|35T*#K&CZ6F%hHNAm8eV=s#1;W)NubN)-=?jHg%{=J?hhdhBTrvO=wCpn$v=ow4ya_ zXiGcV(}9k3qBC9SN;kUG!~Q4sG{lpD^-b(WZ~D-ee)MMm0~tgTgBik5hB2HGjARs} z8N*n{aUbKEz(gi7Ia#JKm1#_81~Zw(Z00bR`w7R-V?GO5$RZZAgrzKFIV)JnDps?G zwX9=38yL4yHnEv4Y-JnU*}+bBv70^YWgq)Fz(Edim?IqJ7!Poq2RXq*Jp4cR|K;R_ zCnEpd|A{9ZaEeDc&0{={zbB^fBv0`)&+shI@jPcZ%L|<2MPA}%Ug1?<<8|KPP2S?| zu>bEE-sL^s=L61jfe-nJkGaSve99$0<8!{?OD^*jU-J#$@*Usv13&T;KXZkv{1W!_ zSFZ6J*ZG|r+~f~#ahpH+i@&+UKiuVC?s@WA$X-!mh$R)NNkdxFk)8}>BooP*B@0=J zBOBStK~8d!n>^$tANeUjK?+frA{3<<#VJ8aN>Q3Jl%*WysX#^df3Hf0%2c5$)u>Jl zYEp~Z)S)i*s80hL(ul@1p()L1P77Mniq^EDE$wJe2RhpSUY!h`=|We!(VZUjB%TBk zvBtf6(}%wFqdx-}$RLs!%n*h$jNy!6B%>J37{(^cIPPOS6PU;(CNqVpOk+ATn8_?= zGl#j{Px!2P%x3`$S;S(Nu#{yiX9X)6w@OyChPA9?Jsa4_CN{H$t!!gEJJ`uCcC&}Q t>|;L%ILILmbA+S+d;h0Nd?XTybUIToeUE7E=+YY_(x%)Pk?vgm{{t407=Hi& diff --git a/Vocaluxe/Base/CDataBase.cs b/Vocaluxe/Base/CDataBase.cs index 31de25ef..c3c60394 100644 --- a/Vocaluxe/Base/CDataBase.cs +++ b/Vocaluxe/Base/CDataBase.cs @@ -37,15 +37,7 @@ namespace Vocaluxe.Base InitHighscoreDB(); InitCoverDB(); - InitCreditsRessourcesDB(); -/** - AddImageToCreditsDB("C:\\Users\\Florian\\Desktop\\Credit-Ressources\\brunzel.png"); - AddImageToCreditsDB("C:\\Users\\Florian\\Desktop\\Credit-Ressources\\bohning.png"); - AddImageToCreditsDB("C:\\Users\\Florian\\Desktop\\Credit-Ressources\\babene03.png"); - AddImageToCreditsDB("C:\\Users\\Florian\\Desktop\\Credit-Ressources\\Darkice.png"); - AddImageToCreditsDB("C:\\Users\\Florian\\Desktop\\Credit-Ressources\\flokuep.png"); - AddImageToCreditsDB("C:\\Users\\Florian\\Desktop\\Credit-Ressources\\mesand.png"); - */ + InitCreditsRessourcesDB(); } diff --git a/Vocaluxe/Screens/CScreenCredits.cs b/Vocaluxe/Screens/CScreenCredits.cs index c226dd05..ed3b8dd7 100644 --- a/Vocaluxe/Screens/CScreenCredits.cs +++ b/Vocaluxe/Screens/CScreenCredits.cs @@ -130,8 +130,8 @@ namespace Vocaluxe.Screens //brunzel CDataBase.GetCreditsRessource("brunzel.png", ref tex); CCreditName CreditEntryBrunzel = new CCreditName(); - CreditEntryBrunzel.image = new CStatic(tex, new SColorF(1,1,1,1), new SRectF(-450, 580, 400, 120, -3)); - CreditEntryBrunzel.particleRect = new SRectF(CreditEntryBrunzel.image.Rect.X + 342, CreditEntryBrunzel.image.Rect.Y + 4, 30, 30, -4); + CreditEntryBrunzel.image = new CStatic(tex, new SColorF(1,1,1,1), new SRectF(-450, 580, 400, 120, -4)); + CreditEntryBrunzel.particleRect = new SRectF(CreditEntryBrunzel.image.Rect.X + 342, CreditEntryBrunzel.image.Rect.Y + 4, 30, 30, -5); CreditEntryBrunzel.particle = new CParticleEffect(8, new SColorF(1, 0, 0, 1), CreditEntryBrunzel.particleRect, particleTex, 35, EParticeType.Star); CreditEntryBrunzel.active = true; CreditEntryBrunzel.direction = EDirection.Left; @@ -140,8 +140,8 @@ namespace Vocaluxe.Screens //Darkice CDataBase.GetCreditsRessource("Darkice.png", ref tex); CCreditName CreditEntryDarkice = new CCreditName(); - CreditEntryDarkice.image = new CStatic(tex, new SColorF(1, 1, 1, 1), new SRectF(CSettings.iRenderW, 580, 400, 120, -3)); - CreditEntryDarkice.particleRect = new SRectF(CreditEntryDarkice.image.Rect.X + 242, CreditEntryDarkice.image.Rect.Y + 23, 30, 30, -4); + CreditEntryDarkice.image = new CStatic(tex, new SColorF(1, 1, 1, 1), new SRectF(CSettings.iRenderW, 580, 400, 120, -4)); + CreditEntryDarkice.particleRect = new SRectF(CreditEntryDarkice.image.Rect.X + 242, CreditEntryDarkice.image.Rect.Y + 23, 30, 30, -5); CreditEntryDarkice.particle = new CParticleEffect(8, new SColorF(0, 0, 1, 1), CreditEntryDarkice.particleRect, particleTex, 35, EParticeType.Star); CreditEntryDarkice.active = true; CreditEntryDarkice.direction = EDirection.Right; @@ -150,8 +150,8 @@ namespace Vocaluxe.Screens //flokuep CDataBase.GetCreditsRessource("flokuep.png", ref tex); CCreditName CreditEntryFlokuep = new CCreditName(); - CreditEntryFlokuep.image = new CStatic(tex, new SColorF(1, 1, 1, 1), new SRectF(-450, 580, 400, 120, -3)); - CreditEntryFlokuep.particleRect = new SRectF(CreditEntryFlokuep.image.Rect.X + 141, CreditEntryFlokuep.image.Rect.Y-2, 30, 30, -4); + CreditEntryFlokuep.image = new CStatic(tex, new SColorF(1, 1, 1, 1), new SRectF(-450, 580, 400, 120, -4)); + CreditEntryFlokuep.particleRect = new SRectF(CreditEntryFlokuep.image.Rect.X + 141, CreditEntryFlokuep.image.Rect.Y-2, 30, 30, -5); CreditEntryFlokuep.particle = new CParticleEffect(8, new SColorF(1, 0, 0, 1), CreditEntryFlokuep.particleRect, particleTex, 35, EParticeType.Star); CreditEntryFlokuep.active = true; CreditEntryFlokuep.direction = EDirection.Left; @@ -160,8 +160,8 @@ namespace Vocaluxe.Screens //bohning CDataBase.GetCreditsRessource("bohning.png", ref tex); CCreditName CreditEntryBohning = new CCreditName(); - CreditEntryBohning.image = new CStatic(tex, new SColorF(1, 1, 1, 1), new SRectF(CSettings.iRenderW, 580, 350, 110, -3)); - CreditEntryBohning.particleRect = new SRectF(CreditEntryBohning.image.Rect.X + 172, CreditEntryBohning.image.Rect.Y + 16, 10, 10, -4); + CreditEntryBohning.image = new CStatic(tex, new SColorF(1, 1, 1, 1), new SRectF(CSettings.iRenderW, 580, 350, 110, -4)); + CreditEntryBohning.particleRect = new SRectF(CreditEntryBohning.image.Rect.X + 172, CreditEntryBohning.image.Rect.Y + 16, 10, 10, -5); CreditEntryBohning.particle = new CParticleEffect(4, new SColorF(0, 0, 1, 1), CreditEntryBohning.particleRect, particleTex, 25, EParticeType.Star); CreditEntryBohning.active = true; CreditEntryBohning.direction = EDirection.Right; @@ -170,8 +170,8 @@ namespace Vocaluxe.Screens //mesand CDataBase.GetCreditsRessource("mesand.png", ref tex); CCreditName CreditEntryMesand = new CCreditName(); - CreditEntryMesand.image = new CStatic(tex, new SColorF(1, 1, 1, 1), new SRectF(-450, 580, 350, 110, -3)); - CreditEntryMesand.particleRect = new SRectF(CreditEntryMesand.image.Rect.X + 240, CreditEntryMesand.image.Rect.Y - 2, 10, 10, -4); + CreditEntryMesand.image = new CStatic(tex, new SColorF(1, 1, 1, 1), new SRectF(-450, 580, 350, 110, -4)); + CreditEntryMesand.particleRect = new SRectF(CreditEntryMesand.image.Rect.X + 240, CreditEntryMesand.image.Rect.Y - 2, 10, 10, -5); CreditEntryMesand.particle = new CParticleEffect(4, new SColorF(1, 0, 0, 1), CreditEntryMesand.particleRect, particleTex, 25, EParticeType.Star); CreditEntryMesand.active = true; CreditEntryMesand.direction = EDirection.Left; @@ -180,15 +180,15 @@ namespace Vocaluxe.Screens //babene03 CDataBase.GetCreditsRessource("babene03.png", ref tex); CCreditName CreditEntryBabene03 = new CCreditName(); - CreditEntryBabene03.image = new CStatic(tex, new SColorF(1, 1, 1, 1), new SRectF(CSettings.iRenderW, 580, 350, 110, -3)); - CreditEntryBabene03.particleRect = new SRectF(CreditEntryBabene03.image.Rect.X + 7, CreditEntryBabene03.image.Rect.Y + 4, 10, 10, -4); + CreditEntryBabene03.image = new CStatic(tex, new SColorF(1, 1, 1, 1), new SRectF(CSettings.iRenderW, 580, 350, 110, -4)); + CreditEntryBabene03.particleRect = new SRectF(CreditEntryBabene03.image.Rect.X + 7, CreditEntryBabene03.image.Rect.Y + 4, 10, 10, -5); CreditEntryBabene03.particle = new CParticleEffect(4, new SColorF(0, 0, 1, 1), CreditEntryBabene03.particleRect, particleTex, 25, EParticeType.Star); CreditEntryBabene03.active = true; CreditEntryBabene03.direction = EDirection.Right; _CreditNames.Add(CreditEntryBabene03); - //CreditEntry.image = new CStatic(tex, new SColorF(1, 1, 1, 1), new SRectF(0, 0, 350, 110, -3)); + //CreditEntry.image = new CStatic(tex, new SColorF(1, 1, 1, 1), new SRectF(0, 0, 350, 110, -4)); } @@ -206,7 +206,6 @@ namespace Vocaluxe.Screens //Draw white background CDraw.DrawColor(new SColorF(1, 1, 1, 1), new SRectF(0, 0, CSettings.iRenderW, CSettings.iRenderH, 0)); - //Draw stars starsBlue.Update(); starsBlue.Draw(); @@ -225,7 +224,6 @@ namespace Vocaluxe.Screens _CreditNames[i].particle.Draw(); } } - return true; } @@ -294,11 +292,28 @@ namespace Vocaluxe.Screens case EDirection.Up: float yOld = _CreditNames[i].image.Rect.Y; - _CreditNames[i].image.Rect.Y = 580 - (270f / 3000f) * (CreditsTimer.ElapsedMilliseconds - _CreditNames[i].StartTimeUp); + _CreditNames[i].image.Rect.Y = 580 - (430f / 3000f) * (CreditsTimer.ElapsedMilliseconds - _CreditNames[i].StartTimeUp); _CreditNames[i].particleRect.Y -= (yOld - _CreditNames[i].image.Rect.Y); _CreditNames[i].particle.Area = _CreditNames[i].particleRect; - if (_CreditNames[i].image.Rect.Y <= 270f) + //Fade names out + if (_CreditNames[i].image.Rect.Y <= 350f) + { + //Catch some bad alpha-values + float alpha = ((250 - _CreditNames[i].image.Rect.Y) / 20); + if(alpha > 1) + { + alpha = 1; + } + else if(alpha < 0) + { + alpha = 0; + } + _CreditNames[i].image.Alpha = 1 - alpha; + } + + //Set name inactive + if (_CreditNames[i].image.Rect.Y <= 150f) { _CreditNames[i].active = false; }