12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- #include "stdafx.h"
- #include "CCursorHandler.h"
- #include "SDL.h"
- #include "SDL_Extensions.h"
- #include "CGameInfo.h"
- #include "hch/CDefHandler.h"
- extern SDL_Surface * screen;
- void CCursorHandler::initCursor()
- {
- mode = number = xpos = ypos = 0;
- help = CSDL_Ext::newSurface(32,32);
- cursors.push_back(CDefHandler::giveDef("CRADVNTR.DEF"));
- cursors.push_back(CDefHandler::giveDef("CRCOMBAT.DEF"));
- cursors.push_back(CDefHandler::giveDef("CRDEFLT.DEF"));
- cursors.push_back(CDefHandler::giveDef("CRSPELL.DEF"));
- SDL_ShowCursor(SDL_DISABLE);
- }
- void CCursorHandler::changeGraphic(const int & type, const int & no)
- {
- mode = type;
- number = no;
- }
- void CCursorHandler::cursorMove(const int & x, const int & y)
- {
- xpos = x;
- ypos = y;
- }
- void CCursorHandler::draw1()
- {
- if(!Show) return;
- int x = xpos, y = ypos;
- if((mode==1 && number!=6) || mode ==3)
- {
- x-=16;
- y-=16;
- }
- else if(mode==0 && number>0)
- {
- x-=12;
- y-=10;
- }
- SDL_BlitSurface(screen, &genRect(32,32,x,y), help, &genRect(32,32,0,0));
- blitAt(cursors[mode]->ourImages[number].bitmap,x,y);
- }
- void CCursorHandler::draw2()
- {
- if(!Show) return;
- int x = xpos, y = ypos;
- if((mode==1 && number!=6) || mode == 3)
- {
- x-=16;
- y-=16;
- }
- else if(mode==0 && number>0)
- {
- x-=12;
- y-=10;
- }
- blitAt(help,x,y);
- }
|