From dc863f459c0ba0f879236b7ed119662336866d6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20W=2E=20Urba=C5=84czyk?= Date: Fri, 24 Aug 2007 08:27:32 +0000 Subject: [PATCH] *improvements in CPreGame * uptated specification * minor stuff --- CAmbarCendamo.cpp | 16 ---------------- CMT.cpp | 9 ++++----- CObjectHandler.h | 1 - CPreGame.cpp | Bin 116118 -> 119392 bytes CPreGame.h | 4 +++- SDL_Extensions.cpp | 28 ++++++++++++++++++++++++++++ SDL_Extensions.h | 1 + h3m.txt | Bin 105080 -> 108258 bytes mapHandler.cpp | 1 - 9 files changed, 36 insertions(+), 24 deletions(-) diff --git a/CAmbarCendamo.cpp b/CAmbarCendamo.cpp index d0979353a..729b82be4 100644 --- a/CAmbarCendamo.cpp +++ b/CAmbarCendamo.cpp @@ -490,22 +490,6 @@ void CAmbarCendamo::deh3m() } map.defy.push_back(vinya); // add this def to the vector defsToUnpack.push_back(vinya.name); - //testing - only fragment////////////////////////////////////////////////////////////// - /*map.defy[idd].handler = new CDefHandler(); - CGameInfo::mainObj->lodh->extractFile(std::string("newH3sprite.lod"), map.defy[idd].name); - map.defy[idd].handler->openDef( std::string("newH3sprite\\")+map.defy[idd].name); - for(int ff=0; ffourImages.size(); ++ff) //adding shadows and transparency - { - map.defy[idd].handler->ourImages[ff].bitmap = CSDL_Ext::alphaTransform(map.defy[idd].handler->ourImages[ff].bitmap); - SDL_Surface * bufs = CSDL_Ext::secondAlphaTransform(map.defy[idd].handler->ourImages[ff].bitmap, alphaTransSurf); - SDL_FreeSurface(map.defy[idd].handler->ourImages[ff].bitmap); - map.defy[idd].handler->ourImages[ff].bitmap = bufs; - } - boost::filesystem::remove(boost::filesystem::path(std::string("newH3sprite\\")+map.defy[idd].name));*/ - //system((std::string("DEL newH3sprite\\")+map.defy[idd].name).c_str()); - //end fo testing - only fragment/////////////////////////////////////////////////////// - - //teceDef(); } THC std::cout<<"Reading defs: "<spriteh->init(std::string("Data\\H3sprite.lod")); cgi->bitmaph = new CLodHandler; cgi->bitmaph->init(std::string("Data\\H3bitmap.lod")); + THC std::cout<<"Loading .lod files: "<curh->initCursor(); cgi->curh->showGraphicCursor(); @@ -149,7 +150,6 @@ int _tmain(int argc, _TCHAR* argv[]) cgi->townh = new CTownHandler; cgi->townh->loadNames(); - CAbilityHandler * abilh = new CAbilityHandler; abilh->loadAbilities(); cgi->abilh = abilh; @@ -157,8 +157,9 @@ int _tmain(int argc, _TCHAR* argv[]) heroh->loadHeroes(); heroh->loadPortraits(); cgi->heroh = heroh; - - THC std::cout<<"Loading .lods: "<generaltexth = new CGeneralTextHandler; + cgi->generaltexth->load(); + THC std::cout<<"Preparing first handlers: "<mush = mush; @@ -183,8 +184,6 @@ int _tmain(int argc, _TCHAR* argv[]) CObjectHandler * objh = new CObjectHandler; objh->loadObjects(); cgi->objh = objh; - cgi->generaltexth = new CGeneralTextHandler; - cgi->generaltexth->load(); cgi->dobjinfo = new CDefObjInfoHandler; cgi->dobjinfo->load(); cgi->state = new CGameState(); diff --git a/CObjectHandler.h b/CObjectHandler.h index 15161c570..73f70fb5c 100644 --- a/CObjectHandler.h +++ b/CObjectHandler.h @@ -296,7 +296,6 @@ public: int3 pos; // position CSpecObjInfo * info; //pointer to something with additional information bool operator<(const CObjectInstance & cmp) const; //screen printing priority comparing - }; class CObjectHandler diff --git a/CPreGame.cpp b/CPreGame.cpp index 0167b445cf69dcebd77ad51cee589dfe5fbaf9cb..57f89d05d11059d08972592ad1661e10f7bce52f 100644 GIT binary patch delta 2166 zcmbVNUrd`-6hF88EoJ;`8G{vC3I@8Z^e_M1oZCQXzqKncHgFEp0(LB`&;bLc;NWF( z&VS@2Ub6>-$s%!y3(5C@F$PoPgU-dsi+fveD)Gh09@IU0?$?%f#LT7n(%$>sbMN_` z-|w7zz7MYFY~0LQsp`N;AX_sAZ4iVBFv4@V?lIuZfK5Kqk(*(#f|V9W;T4#HNt#Ds zoaR$-9>(AjOyIK5f@>%8*+H~-TQTCP#rsk=?^VO8YK?uyS zpGGlHJa!0S)UCCro;Jb|j1bNcT!^CxJd1*Io~TZep9nAfgq3mc63Z(~?ma~N6aMXd z{VFTPkK9$7dQu~P4DFJZzqZKq!hkkO$Mx6fWy^2Gk`A3ZCUP~2Tr5>qo5`KfSA-KJ z59cVTVOkqfQZWf(T(IrMfTsup-FiHGvI3X7Gno;u{A9*)=@3TxYH{OuE>1}<44lb~ zzh~oZM?TsDyXC{)T0Qo+ndCP|yej$X=q6*$_-f<|nkE9W`=ToYZQ+;Y0~h);1F^ zBmKK@{Wq;OM%4&ibS4Ow6`w{reTjUJ66tnj79VlaE0&@a8qnSN`zqTp}5S%!%lf`O&L4k1@J=;tvi)f7e+TNLcIS& z9ym!1gXCH86e;f|w$n6AMeU=&Ndv0rFsU-L9fgCUus3 zf0md_E_)Cy)%1|$al!Gujp_0h+TW~5DabX^n~T7lVCD-Ith&w#$qh}kLAVziTB#Py zaFD8X7vzB&7ymBLnj{W`xcJb(r5vWi`oe;oc1mpsLj2-sR#&Xpsh63^rwyI~6OVq) z>iB#g%hx7tqP~(=d~54*qcg?GXI|WKv?6hEJSmk=Qh@XxgDoh+p- z@XK1(h^j|b*zjw?YDmW-EN$=2lqvGQ`bR0VsM7Y*NIs~Oi5QQg_ZJ(6H6`j;>ZxP% z@;%I&K{dd~7^_@;w1*u@AIe2#Lg(in-9J0}RN9@Vo`pZ*IUPxmnZ delta 451 zcmX9)QAkr^6h3D+=WVRKtvN@D_jAMYApKX2Sgt2bD5nJi4^nh_d} zaSt-1eaNPcVKLX)RH8gRpaRWPiEdF|e#~{S?7!i(itPms;_Y}qKAs-*plg0iT61HX z{4%r4d4Pq1=-Lar8L8a8isq2e{LaYvV%3js~OdX#8Dv7ErKWgWB2VOcNlcu+4- zDIf^nvnaL;Vfk%k*yW2b_iEfLf9}fAZn0^YCTW(Y)HO3?(U7W&WLMYQ`MgI|9PU0+a2-x+ zC&(vW_}Q%fbNGr!tVK8^79(uq*~0APjsrr=fzce@ fRc5zIH7H8`6sJD%G{R>U!7H}9)mm-m`0Dz9V5O5| diff --git a/CPreGame.h b/CPreGame.h index 3686cae23..87ea8c21b 100644 --- a/CPreGame.h +++ b/CPreGame.h @@ -89,7 +89,7 @@ public: IntSelBut(){}; IntSelBut( SDL_Rect Pos, T Fun,CDefHandler* Imgs, bool Sel=false, CPoinGroup* gr=NULL, int My=-1) : Button(Pos,Fun,Imgs,Sel,gr),key(My){ourPoinGroup=gr;}; - void select(bool on=true) {(*this).Button::select(on);ourPoinGroup->setYour(this);} + void select(bool on=true) {(*this).Button::select(on);ourPoinGroup->setYour(this);CPG->printRating();} }; template class CPoinGroup :public CGroup { @@ -223,6 +223,7 @@ public: class CPreGame { public: + std::string playerName; HighButton * highlighted; PreGameTab* currentTab; StartInfo ret; @@ -271,6 +272,7 @@ public: void showCenBox (std::string data); // void showAskBox (std::string data, void(*f1)(),void(*f2)()); void hideBox (); + void printRating(); void printMapsFrom(int from); void setTurnLength(int on); void sortMaps(); diff --git a/SDL_Extensions.cpp b/SDL_Extensions.cpp index 755628b5d..015ecbb69 100644 --- a/SDL_Extensions.cpp +++ b/SDL_Extensions.cpp @@ -46,6 +46,34 @@ void updateRect (SDL_Rect * rect, SDL_Surface * scr) { SDL_UpdateRect(scr,rect->x,rect->y,rect->w,rect->h); } +void CSDL_Ext::printAtMiddleWB(std::string text, int x, int y, TTF_Font * font, int charpr, SDL_Color kolor, SDL_Surface * dst) +{ + std::vector * ws = CMessage::breakText(text,charpr); + std::vector wesu; + wesu.resize(ws->size()); + for (int i=0;ih; + if (tox < wesu[i]->w) + tox=wesu[i]->w; + } + int evx, evy = y - (toy/2); + for (int i=0;iw)/2); + blitAt(wesu[i],evx,evy); + evy+=wesu[i]->h; + } + + + for (int i=0;ic3kB0ik z&b+zC-U_-ecX_*2RuJC)awQGLEGI8lb5MOl#r$w*NWl9HTcWgnzxRR+Il zNLO&b3M*P>Vdua)f%E@#pRYO+mIKJcktAd}S(fWkHs{ka4~ZksA=epPqw~ zyc2k$_eLEFc^J?4AzhO#<=^uGE)N?xDlJ(M6+Og0D2Jc;)#; zQ%eG87vU)-r;WFQl=ZJ2yN@3-Inp)s}VAVy$ ztss}!YoRKUdmNGkVjjV7YEy2EklBQ7$;4YmBuAzZwPbQH!G?7l#kB}s26B33B}9R; z3M_56P!A%Np>0Rb%T<`1G7cMMEC9e(x`ZKRik(sg8G+_$9CZu;11gVDC`4XTv~h4x z=WGa5Z^6j+FG0_8N&p*y>rvWmw;UaPG^nq21oY>R1$4Z-r=wYc9`)X%FGu~=?btJ& zI9wBvd3;ZqL~SP+#`dXzM3}PuZFGCV6cfj(|L^B*2|fpJp&p}D8}O;FyB{%1&P)NMAY_GA6?aFb_yMWF?e;(!gm4Wf=Mcri2DLR=3s8omMtu zwrWO)T}yf7bnTmz>eYYs1@_!t+Rrrl#zA2s?Cj?BIkUvB#X-xu0+>spr)~9VRf*Bv>-WF@ ziX2Yb{B!0k2P&mMjsz!3UoK9*HMzg6FS{ly^!$vQfm1&C;fR6^aB!?ZtuyzZEe}7PU>2nna@^Afkx$ zBps>;FZEOrLFE;qQ2znJn}}yG1rJ`lcoF=~ZuO)x%+A-F-}}wH{qiC3V=3_JkfCfn zX0#QI^1T)F&c9#G&%lab*}T#{h2Ugp;~JRh@Vu1#kuJp(JrDU*w8i1RIzQ`sq$gr? zYBWS^Npv@jkVAXOBpd2QBk(M0Ql6^NCZZXt;9G;eN;MuFi?OvOtWwN(c7*a?7AMP; z=g_`^#|u5m$6LE2{IRkrI7umi<0l(-sWhMNN@V0(dsW15(llTlw3qQU;hXN|B}6TS z9NY2!^%W{2UqHp7%T(cPE6Mfv&fqE%KaG!SBXP5Xmvg=PjP=I2U8E97nbZLJBHeOP z8?aM!P)Xz=T9m=~!m;QMY0)qZAr@xlKjb%Z6?nKy~>{}rc z(C;T_qihcQw0U=SoxfAK^7+M-zBFg{^1|06`rKm4a1UH~{`vlK8RaPMsey?s((reader->map.width+Woff)) || (dy+y)>((reader->map.height+Hoff))) || ((x<-Woff)||(y<-Hoff) ) )