From 0672dce0cf913d76b8bff9cf9934c721eb2b2ce9 Mon Sep 17 00:00:00 2001 From: Daveo Date: Mon, 18 Jun 2001 21:26:55 +0000 Subject: [PATCH] --- Utils/MkActor/MkActor.cpp | 41 ++++++++++++++++++++++++++++------ Utils/MkActor/MkActor.h | 1 + source/fx/fx.cpp | 12 +++++----- tools/Data/bin/MkActor.exe | Bin 77824 -> 73728 bytes tools/Data/include/dstructs.h | 33 ++++++++++++++++++++++++--- 5 files changed, 71 insertions(+), 16 deletions(-) diff --git a/Utils/MkActor/MkActor.cpp b/Utils/MkActor/MkActor.cpp index 11465bdf8..d75a426e7 100644 --- a/Utils/MkActor/MkActor.cpp +++ b/Utils/MkActor/MkActor.cpp @@ -29,12 +29,15 @@ GString SpritePath; GString OutPath; GString IncludePath; +float Aspect=512.0f/320.0f; + //*************************************************************************** char * CycleCommands(char *String,int Num) { char Text[2048],*TextPtr; int Count; + if (String[0]=='-' || String[0]=='/') { GString TpStr; @@ -64,6 +67,10 @@ int Count; RootPath.Upper(); RootPath.Append('\\'); break; + case 'a': + TpStr= CheckFileString(String); + Aspect=(float)atof(TpStr); + break; case 't': TpStr= CheckFileString(String); TextPtr=Text; @@ -103,6 +110,7 @@ void Usage(char *ErrStr) printf(" -s:nn Sprite Dir\n"); printf(" -t:p,w,h Set TPage No,Width,Height\n"); printf(" -d: Enable Debug output\n"); + printf(" -a: Aspect Ratio\n"); GObject::Error(ERR_FATAL,ErrStr); } @@ -150,6 +158,8 @@ CMkActor::CMkActor(GString &ActorName,GString &ActorPath,GString &SpritePath) DupCount=0; MaxW=0; MaxH=0; + BlankCount=0; + } //*************************************************************************** @@ -294,6 +304,7 @@ void CMkActor::MakePsxGfx(sBmp &Bmp) { Bmp.Psx=0; Bmp.PsxSize=0; + BlankCount++; return; } @@ -563,7 +574,7 @@ GString OutName=OutFile+".SBK"; fclose(File); WriteInclude(); - printf("%s. %i Dups, (In %i Out %i = Saved %i) (MaxWH %i %i)\n",Name,DupCount,TotalIn,TotalOut,TotalIn-TotalOut,FileHdr.MaxW,FileHdr.MaxH); + printf("%s. D=%i B=%i - WH=%i %i - In=%i Out=%i Sv=%i \n",Name,DupCount,BlankCount,FileHdr.MaxW,FileHdr.MaxH,TotalIn,TotalOut,TotalIn-TotalOut); } @@ -666,12 +677,28 @@ vector Hdrs; { sBmp &ThisBmp=BmpList[i]; - Hdrs[i].PAKSpr=(u8*)ftell(File); -// Hdrs[i].XOfs=ThisBmp.CrossHairX; -// Hdrs[i].YOfs=ThisBmp.CrossHairY; - Hdrs[i].W=ThisBmp.Frm.GetWidth(); - Hdrs[i].H=ThisBmp.Frm.GetHeight(); - fwrite(ThisBmp.Pak,1,ThisBmp.PakSize,File); + if (ThisBmp.Pak) + { + Hdrs[i].PAKSpr=(u8*)ftell(File); + Hdrs[i].W=ThisBmp.Frm.GetWidth(); + Hdrs[i].H=ThisBmp.Frm.GetHeight(); + // aspect + float aW=Hdrs[i].W*Aspect; + int dW=(int)aW-Hdrs[i].W; + int X0=dW/2; + int X1=dW-X0; + + Hdrs[i].AspectX0=X0; + Hdrs[i].AspectX1=X1; +// printf("%i %i %i\n",Hdrs[i].W,X0,X1); + fwrite(ThisBmp.Pak,1,ThisBmp.PakSize,File); + } + else + { + Hdrs[i].PAKSpr=0; + Hdrs[i].W=0; + Hdrs[i].H=0; + } } // ReWrite Headers int SavePos=ftell(File); diff --git a/Utils/MkActor/MkActor.h b/Utils/MkActor/MkActor.h index 9e4745e5b..12f6f3aae 100644 --- a/Utils/MkActor/MkActor.h +++ b/Utils/MkActor/MkActor.h @@ -79,6 +79,7 @@ private: int DupCount; int MaxW,MaxH; int TotalIn,TotalOut; + int BlankCount; }; //*************************************************************************** diff --git a/source/fx/fx.cpp b/source/fx/fx.cpp index 90c84a94f..3ca8142d7 100644 --- a/source/fx/fx.cpp +++ b/source/fx/fx.cpp @@ -88,7 +88,7 @@ CFXBaseAnim::sFXAnim FXExplodeData= CFXBaseAnim::sFXAnim FXFireData= { ONE, - FRM__FIRE01,FRM__FIRE06, + FRM__FIRE01,FRM__FIRE08, 1, 127,127,127, CFXBaseAnim::FXANIM_FLAG_LOOP | CFXBaseAnim::FXANIM_FLAG_TRANS, @@ -140,7 +140,7 @@ CFXBaseAnim::sFXAnim FXOilDripData= // Bubble CFXBaseAnim::sFXAnim FXBubbleWaterData= { - ONE/2, + ONE, FRM__BUBBLE_2,FRM__BUBBLE_2, 1, 127,127,255, @@ -151,7 +151,7 @@ CFXBaseAnim::sFXAnim FXBubbleWaterData= CFXBaseAnim::sFXAnim FXBubbleAcidData= { - ONE/2, + ONE, FRM__BUBBLE_2,FRM__BUBBLE_2, 1, 0,255,0, @@ -161,7 +161,7 @@ CFXBaseAnim::sFXAnim FXBubbleAcidData= }; CFXBaseAnim::sFXAnim FXBubbleLavaData= { - ONE/2, + ONE, FRM__BUBBLE_2,FRM__BUBBLE_2, 1, 255,0,0, @@ -171,7 +171,7 @@ CFXBaseAnim::sFXAnim FXBubbleLavaData= }; CFXBaseAnim::sFXAnim FXBubbleOilData= { - ONE/2, + ONE, FRM__BUBBLE_2,FRM__BUBBLE_2, 1, 32,32,32, @@ -183,7 +183,7 @@ CFXBaseAnim::sFXAnim FXBubbleOilData= CFXBaseAnim::sFXAnim FXWaterFountainData= { ONE, - FRM__GUSH000,FRM__GUSH002, + FRM__GUSH000,FRM__GUSH003, 3, 127,127,255, CFXBaseAnim::FXANIM_FLAG_LOOP, diff --git a/tools/Data/bin/MkActor.exe b/tools/Data/bin/MkActor.exe index ecb96479000a6add6efe99eabcb570482f0c0ebc..46c7ce411a88ee5167762c7496bd9b0971bb4f4e 100644 GIT binary patch delta 23708 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 KKTvnU@V@|I&dd-1 delta 24974 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