triumph-of-the-word

changeset 14:fca0650560f7

update removing the last sequence
author Cedric Pinson <cedric.pinson@plopbyte.net>
date Thu Jun 24 22:41:07 2010 +0200 (23 months ago)
parents cff39519d532
children 3d7d34290fb1
files res/drawable/geste0101.png res/drawable/geste0102.png res/drawable/geste0201.png res/drawable/geste0202.png res/drawable/geste0301.png res/drawable/geste0302.png res/raw/erreur1.wav res/raw/track.mp3 src/com/artgame/triumph/triumph.java
line diff
     1.1 Binary file res/drawable/geste0101.png has changed
     2.1 Binary file res/drawable/geste0102.png has changed
     3.1 Binary file res/drawable/geste0201.png has changed
     4.1 Binary file res/drawable/geste0202.png has changed
     5.1 Binary file res/drawable/geste0301.png has changed
     6.1 Binary file res/drawable/geste0302.png has changed
     7.1 Binary file res/raw/erreur1.wav has changed
     8.1 Binary file res/raw/track.mp3 has changed
     9.1 --- a/src/com/artgame/triumph/triumph.java	Thu Jun 24 21:37:18 2010 +0200
     9.2 +++ b/src/com/artgame/triumph/triumph.java	Thu Jun 24 22:41:07 2010 +0200
     9.3 @@ -402,9 +402,6 @@
     9.4  		Bitmap deadSign;
     9.5  		
     9.6  		boolean bg1, bg2,bg3, bg4;
     9.7 -		ArrayList<Bitmap> geste01 = new ArrayList<Bitmap>();
     9.8 -		ArrayList<Bitmap> geste02 = new ArrayList<Bitmap>();
     9.9 -		ArrayList<Bitmap> geste03 = new ArrayList<Bitmap>();
    9.10  
    9.11  		ArrayList<Bitmap> tutorials = new ArrayList<Bitmap>();
    9.12  		int currentTutorialIndex;
    9.13 @@ -436,8 +433,9 @@
    9.14  			} else if (mainTrackVolume > 1.0)
    9.15  				mainTrackVolume = 1.0f;
    9.16  			mainTrack.setVolume(mainTrackVolume, mainTrackVolume);
    9.17 -			displayScoreDead(null);
    9.18 +			displayScoreDead();
    9.19  		}
    9.20 +		
    9.21  		void subScore()
    9.22  		{
    9.23  			mainTrackVolume= 0.05f;
    9.24 @@ -479,17 +477,7 @@
    9.25  			hitPoints.add( new HitPoint(33, 450-lumi.getHeight(), lumi));
    9.26  			hitPoints.add( new HitPoint(125, 450-lumi.getHeight(), lumi));
    9.27  			hitPoints.add( new HitPoint(214, 450-lumi.getHeight(), lumi));
    9.28 -			
    9.29 -			geste01.add(BitmapFactory.decodeResource(getResources(), R.drawable.geste0101));
    9.30 -			geste01.add(BitmapFactory.decodeResource(getResources(), R.drawable.geste0102));
    9.31 -
    9.32 -			geste02.add(BitmapFactory.decodeResource(getResources(), R.drawable.geste0201));
    9.33 -			geste02.add(BitmapFactory.decodeResource(getResources(), R.drawable.geste0202));
    9.34 -
    9.35 -			geste03.add(BitmapFactory.decodeResource(getResources(), R.drawable.geste0301));
    9.36 -			geste03.add(BitmapFactory.decodeResource(getResources(), R.drawable.geste0302));
    9.37 -			
    9.38 -			
    9.39 +						
    9.40  			tutorials.add(BitmapFactory.decodeResource(getResources(), R.drawable.tuto_1));
    9.41  			tutorials.add(BitmapFactory.decodeResource(getResources(), R.drawable.tuto_2));
    9.42  			tutorials.add(BitmapFactory.decodeResource(getResources(), R.drawable.tuto_1));
    9.43 @@ -537,7 +525,7 @@
    9.44  			
    9.45  			score = 0;
    9.46  			nbBonus = 0;
    9.47 -			gameDuration = 141.0f; // set the game duration
    9.48 +			gameDuration = 125.0f; // set the game duration
    9.49  			
    9.50  			mainTrackVolume = 0.05f;
    9.51  			playingNoisySoundTimeStamp = 0.f;
    9.52 @@ -643,9 +631,8 @@
    9.53  								hits[1] = 1;
    9.54  							}
    9.55  						}
    9.56 -					} else {
    9.57 -						return true;
    9.58  					}
    9.59 +					
    9.60  					if (nbHits>0) {
    9.61  						addScore();
    9.62  					} else {
    9.63 @@ -737,61 +724,19 @@
    9.64  			canvas.drawBitmap(creditsScreen, 0, 0, null);
    9.65  		}
    9.66  		
    9.67 -		void movingScreenDisplay(Canvas canvas) {
    9.68 -			boolean doit = false;
    9.69 -			Bitmap img = geste01.get(0);
    9.70 -			if (currentTime >= 29.0 && currentTime < 36) {
    9.71 -				doit = true;
    9.72 -				float s = 29.0f;
    9.73 -				float diff = (currentTime - s);
    9.74 -				float r = diff; 
    9.75 -				int index = ((int)Math.floor(r));
    9.76 -				if (index >= geste01.size())
    9.77 -					index = geste01.size()-1;
    9.78 -				img = geste01.get(index);				
    9.79 -			} else if (currentTime >= 63 && currentTime < 69) {
    9.80 -				doit = true;
    9.81 -				float s = 63f;
    9.82 -				float diff = (currentTime - s);
    9.83 -				float r = diff; 
    9.84 -				int index = ((int)Math.floor(r));
    9.85 -				if (index >= geste02.size())
    9.86 -					index = geste02.size()-1;
    9.87 -				img = geste02.get(index);
    9.88 -			} else if (currentTime >= 86 && currentTime < 96) {
    9.89 -				doit = true;
    9.90 -				float s = 86.0f;
    9.91 -				float diff = (currentTime - s);
    9.92 -				float r = diff; 
    9.93 -				int index = ((int)Math.floor(r));
    9.94 -				if (index >= geste03.size())
    9.95 -					index = geste03.size()-1;
    9.96 -				img = geste03.get(index);
    9.97 -			} else if (currentTime >= 121 && currentTime < 124) {
    9.98 -				doit = true;
    9.99 -				float s = 29.0f;
   9.100 -				float diff = (currentTime - s);
   9.101 -				float r = diff; 
   9.102 -				int index = ((int)Math.floor(r));
   9.103 -				if (index >= geste01.size())
   9.104 -					index = geste01.size()-1;
   9.105 -				img = geste01.get(index);
   9.106 -			}
   9.107 -			if (doit)
   9.108 -				canvas.drawBitmap(img, 0, 0, null);
   9.109 -		}
   9.110 -
   9.111 -		void CrossRange(float start, float end)
   9.112 +		void CrossRange(float start, float end, Canvas cv)
   9.113  		{
   9.114  			float diff = (currentTime - start);
   9.115 -			displayDeadSign(diff, end-start);			
   9.116 +			displayDeadSign(diff, end-start, cv);			
   9.117  		}
   9.118  		
   9.119  		void killingPeople(Canvas canvas) {
   9.120  
   9.121  			if (currentTime >= 31.0 && currentTime < 36) {
   9.122 -				if (currentTime <= 35.0f)
   9.123 -					CrossRange(31.0f, 35.0f);
   9.124 +				canvas.drawBitmap(BitmapFactory.decodeResource(getResources(), R.drawable.fond), 0, 0, null);
   9.125 +				if (currentTime <= 35.0f) {
   9.126 +					CrossRange(31.0f, 35.0f, canvas);
   9.127 +				}
   9.128  				if (currentTime > 35.0f && !bg1) {
   9.129  					Bitmap originalBackground = BitmapFactory.decodeResource(getResources(), R.drawable.fond2);
   9.130  					background = originalBackground.copy(originalBackground.getConfig(), true);
   9.131 @@ -800,8 +745,10 @@
   9.132  					startFromLastSign = 0;
   9.133  				}
   9.134  			} else if (currentTime >= 63 && currentTime < 69) {
   9.135 -				if (currentTime <= 68.0f)
   9.136 -					CrossRange(63.0f, 68.0f);				
   9.137 +				canvas.drawBitmap(BitmapFactory.decodeResource(getResources(), R.drawable.fond2), 0, 0, null);
   9.138 +				if (currentTime <= 68.0f) {
   9.139 +					CrossRange(63.0f, 68.0f,canvas);
   9.140 +				}
   9.141  				if (currentTime > 68.0f && !bg2) {
   9.142  					Bitmap originalBackground = BitmapFactory.decodeResource(getResources(), R.drawable.fond3);
   9.143  					background = originalBackground.copy(originalBackground.getConfig(), true);
   9.144 @@ -810,8 +757,10 @@
   9.145  					startFromLastSign = 0;
   9.146  				}
   9.147  			} else if (currentTime >= 86 && currentTime < 96) {
   9.148 -				if (currentTime <= 95.0f)
   9.149 -					CrossRange(86.0f, 95.0f);				
   9.150 +				canvas.drawBitmap(BitmapFactory.decodeResource(getResources(), R.drawable.fond3), 0, 0, null);
   9.151 +				if (currentTime <= 95.0f) {
   9.152 +					CrossRange(86.0f, 95.0f,canvas);
   9.153 +				}
   9.154  				if (currentTime > 95.0f && !bg3) {
   9.155  					Bitmap originalBackground = BitmapFactory.decodeResource(getResources(), R.drawable.fond4);
   9.156  					background = originalBackground.copy(originalBackground.getConfig(), true);
   9.157 @@ -819,21 +768,16 @@
   9.158  					totalNbHits = 0;
   9.159  					startFromLastSign = 0;
   9.160  				}
   9.161 -			} else if (currentTime >= 130 && currentTime < 140) {
   9.162 -				if (currentTime <= 140.0f)
   9.163 -					CrossRange(130.0f, 139.0f);
   9.164 -				if (currentTime > 139.0f && !bg4) {
   9.165 -					Bitmap originalBackground = BitmapFactory.decodeResource(getResources(), R.drawable.fond);
   9.166 -					background = originalBackground.copy(originalBackground.getConfig(), true);
   9.167 -					bg4 = true;
   9.168 -					totalNbHits = 0;
   9.169 -					startFromLastSign = 0;
   9.170 +			} else if (currentTime >= 120 && currentTime < 125) {
   9.171 +				canvas.drawBitmap(BitmapFactory.decodeResource(getResources(), R.drawable.fond4), 0, 0, null);
   9.172 +				if (currentTime <= 140.0f) {
   9.173 +					CrossRange(120.0f, 125.0f,canvas);
   9.174  				}
   9.175  			}
   9.176  		}
   9.177  		
   9.178 -		void displayDeadSign(float diff, float duration) {
   9.179 -			Canvas cv = new Canvas(background);
   9.180 +		void displayDeadSign(float diff, float duration, Canvas cv) {
   9.181 +			displayScoreDeadInternal(0, totalNbHits, cv);
   9.182  			// save all clip 
   9.183  			float ratio = 1.2f * diff/duration;
   9.184  			
   9.185 @@ -843,34 +787,31 @@
   9.186  			int nbToDo = (int) Math.floor(totalNbHits * ratio);
   9.187  			if (nbToDo > totalNbHits)
   9.188  				nbToDo = totalNbHits;
   9.189 -			for (int i = startFromLastSign; i < nbToDo; ++i) { 
   9.190 +			for (int i = 0; i < nbToDo; ++i) { 
   9.191  				int y = i / nbPerLines;
   9.192  				int x = i % nbPerLines;
   9.193  				cv.drawBitmap(deadSign, x*sizex, 480 - y*sizey - sizey, null);
   9.194  			}
   9.195 -			if (nbToDo > 0)
   9.196 -				startFromLastSign = nbToDo;
   9.197 +		}
   9.198 +				
   9.199 +		void displayScoreDead() {
   9.200 +			Canvas cv = new Canvas(background);
   9.201 +			if (totalNbHits > 0)
   9.202 +				displayScoreDeadInternal(totalNbHits - 1, totalNbHits, cv);
   9.203  			cv.save (Canvas.ALL_SAVE_FLAG); // save the 
   9.204 -			// store 
   9.205  			cv.restore ();// store 
   9.206  		}
   9.207 -				
   9.208 -		void displayScoreDead(Canvas canvas) {
   9.209 -			Canvas cv = new Canvas(background);
   9.210 -			// save all clip 
   9.211 -			
   9.212 +
   9.213 +		void displayScoreDeadInternal(int start, int end, Canvas canvas) {
   9.214  			int sizey = scoreDeadBitmaps.get(0).getHeight();
   9.215  			int sizex = scoreDeadBitmaps.get(0).getWidth();
   9.216  			int nbPerLines = 320/sizex;
   9.217 -			for (int i = totalNbHits -1; i < totalNbHits; ++i) {
   9.218 +			for (int i = start; i < end; ++i) {
   9.219  				int y = i / nbPerLines;
   9.220  				int x = i % nbPerLines;
   9.221  				//canvas.drawBitmap(scoreDeadBitmaps.get(i%scoreDeadBitmaps.size()), x*sizex, 480 - y*sizey - sizey, null);
   9.222 -				cv.drawBitmap(scoreDeadBitmaps.get(i%scoreDeadBitmaps.size()), x*sizex, 480 - y*sizey - sizey, null);
   9.223 +				canvas.drawBitmap(scoreDeadBitmaps.get(i%scoreDeadBitmaps.size()), x*sizex, 480 - y*sizey - sizey, null);
   9.224  			}
   9.225 -			cv.save (Canvas.ALL_SAVE_FLAG); // save the 
   9.226 -			// store 
   9.227 -			cv.restore ();// store 
   9.228  		}
   9.229  		
   9.230  		boolean isScoreRange() {
   9.231 @@ -880,7 +821,7 @@
   9.232  				return true;
   9.233  			} else if (currentTime >= 86 && currentTime < 96) {
   9.234  				return true;
   9.235 -			} else if (currentTime >= 130 && currentTime < 140) {
   9.236 +			} else if (currentTime >= 120 && currentTime < 140) {
   9.237  				return true;
   9.238  			}			
   9.239  			return false;
   9.240 @@ -905,15 +846,18 @@
   9.241  		}
   9.242  		
   9.243  		void gameScreenDisplay(Canvas canvas) {
   9.244 -			canvas.drawBitmap(background, 0, 0, null);
   9.245  			//canvas.drawBitmap(backgroundRed, 0, 186, paint);
   9.246  
   9.247  			//canvas.drawLine(0, 430, 320, 430, debugText);
   9.248  			//displayScore(canvas);
   9.249  			
   9.250  			//displayScoreDead(canvas);
   9.251 -			if (!isScoreRange())
   9.252 +			
   9.253 +			boolean scoreSequence = isScoreRange();
   9.254 +			if (!scoreSequence) {
   9.255 +				canvas.drawBitmap(background, 0, 0, null);
   9.256  				canvas.drawBitmap(socle, 0, 0, null);
   9.257 +			}
   9.258  
   9.259  			long time = System.nanoTime();
   9.260  			if (firstTime == 0) {
   9.261 @@ -934,8 +878,11 @@
   9.262  					}
   9.263  			}
   9.264  			
   9.265 -			killingPeople(canvas);
   9.266 -
   9.267 +			if (scoreSequence) {
   9.268 +				killingPeople(canvas);
   9.269 +			} else {
   9.270 +				//checkLastHits();
   9.271 +			}
   9.272  			if (currentTime > gameDuration)
   9.273  				stateGame = com.artgame.triumph.triumph.StateGame.End;
   9.274