[Scummvm-cvs-logs] CVS: scummvm costume.cpp,1.28,1.29 gfx.cpp,1.74,1.75

Vincent Hamm yazoo at users.sourceforge.net
Sun Apr 21 06:14:02 CEST 2002


Update of /cvsroot/scummvm/scummvm
In directory usw-pr-cvs1:/tmp/cvs-serv24393

Modified Files:
	costume.cpp gfx.cpp 
Log Message:
Completly fixed all the semi-transprency in Sam&Max

Index: costume.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/costume.cpp,v
retrieving revision 1.28
retrieving revision 1.29
diff -C2 -d -r1.28 -r1.29
*** costume.cpp	21 Apr 2002 09:20:38 -0000	1.28
--- costume.cpp	21 Apr 2002 13:13:26 -0000	1.29
***************
*** 703,712 ****
  	byte shadow5;
  
- 
- 	if(a->costume==153) //Samnmax elevator FIXME
- 
- 		return;
- 
- 
  	shadow1=a->shadow_mode & 0x80;
  	shadow2=a->shadow_mode & 0x40;
--- 703,706 ----

Index: gfx.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/gfx.cpp,v
retrieving revision 1.74
retrieving revision 1.75
diff -C2 -d -r1.74 -r1.75
*** gfx.cpp	20 Apr 2002 09:30:03 -0000	1.74
--- gfx.cpp	21 Apr 2002 13:13:26 -0000	1.75
***************
*** 2640,2643 ****
--- 2640,2645 ----
  }
  
+ 
+ /* Yazoo: This function create the specialPalette used for semi-transparency in SamnMax */
  
  void Scumm::createSpecialPalette(int16 a, int16 b, int16 c, int16 d, int16 e, int16 colorMin, int16 colorMax)
***************
*** 2645,2657 ****
  	byte *palPtr;
  	byte *curPtr;
! 	byte *searchPtr;
  
! 	byte colorComp1;
! 	byte colorComp2;
! 	byte colorComp3;
  
! 	byte searchComp1;
! 	byte searchComp2;
! 	byte searchComp3;
  
  	short int bestResult;
--- 2647,2663 ----
  	byte *palPtr;
  	byte *curPtr;
! 	byte *searchPtr;
! 
! 	byte readComp1;
! 	byte readComp2;
! 	byte readComp3;
  
! 	int colorComp1;
! 	int colorComp2;
! 	int colorComp3;
  
! 	int searchComp1;
! 	int searchComp2;
! 	int searchComp3;
  
  	short int bestResult;
***************
*** 2665,2669 ****
  	palPtr = getPalettePtr();
  
! 	for(i=colorMin;i<colorMax;i++)
  		_proc_special_palette[i]=i;
  
--- 2671,2675 ----
  	palPtr = getPalettePtr();
  
! 	for(i=0;i<256;i++)
  		_proc_special_palette[i]=i;
  
***************
*** 2671,2690 ****
  
  	for(i=colorMin;i<colorMax;i++)
! 	{
! 		//colorComp1=((((*curPtr++)>>2)*c)>>8)&0x7F; 
! 		//colorComp2=((((*curPtr++)>>2)*d)>>8)&0x7F;
! 		//colorComp3=((((*curPtr++)>>2)*e)>>8)&0x7F;
! 
! 		/* Yazoo: I can't get the right formula, so I made one that just work fine with SamnMax flashlight */
  
! 		colorComp1=(*curPtr++)+10;
! 		colorComp2=(*curPtr++)+10;
! 		colorComp3=(*curPtr++)+10;
  
  		searchPtr = palPtr;
! 		bestResult = 0x7FFF;
  		currentIndex = 0;
  
! 		for(j=0;j<256;j++)
  		{
  			searchComp1 = (*searchPtr++);
--- 2677,2695 ----
  
  	for(i=colorMin;i<colorMax;i++)
! 	{
! 		readComp1=*(curPtr++);
! 		readComp2=*(curPtr++);
! 		readComp3=*(curPtr++);
! 
  
! 		colorComp1=((readComp1)*c)>>8;
! 		colorComp2=((readComp2)*d)>>8;
! 		colorComp3=((readComp3)*e)>>8;
  
  		searchPtr = palPtr;
! 		bestResult = 32000;
  		currentIndex = 0;
  
! 		for(j=a;j<b;j++)
  		{
  			searchComp1 = (*searchPtr++);
***************
*** 2695,2703 ****
  
  			if(currentResult<bestResult)
! 				if(currentIndex >= a && currentIndex <= b)
! 				{
! 					_proc_special_palette[i]=currentIndex;
! 					bestResult=currentResult;
! 				}
  
  			currentIndex++;
--- 2700,2707 ----
  
  			if(currentResult<bestResult)
! 			{
! 				_proc_special_palette[i]=currentIndex;
! 				bestResult=currentResult;
! 			}
  
  			currentIndex++;





More information about the Scummvm-git-logs mailing list