Jeck - Included missing file for r1460, updated trophy room. Trophies now render from bottom left, so any size png can be used.
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 40 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 38 KiB |
|
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB |
@@ -0,0 +1,40 @@
|
|||||||
|
#ifndef _GAME_STATE_AWARDS_H_
|
||||||
|
#define _GAME_STATE_AWARDS_H_
|
||||||
|
|
||||||
|
#include <JGE.h>
|
||||||
|
#include "../include/GameState.h"
|
||||||
|
#include "../include/SimpleMenu.h"
|
||||||
|
|
||||||
|
class WGuiList;
|
||||||
|
class WGuiMenu;
|
||||||
|
class WSrcMTGSet;
|
||||||
|
|
||||||
|
class GameStateAwards: public GameState, public JGuiListener
|
||||||
|
{
|
||||||
|
private:
|
||||||
|
WGuiList * listview;
|
||||||
|
WGuiMenu * detailview;
|
||||||
|
JQuad * mBg;
|
||||||
|
JTexture * mBgTex;
|
||||||
|
WSrcMTGSet * setSrc;
|
||||||
|
SimpleMenu * menu;
|
||||||
|
bool showMenu;
|
||||||
|
bool showAlt;
|
||||||
|
int mState;
|
||||||
|
int mDetailItem;
|
||||||
|
|
||||||
|
public:
|
||||||
|
GameStateAwards(GameApp* parent);
|
||||||
|
bool enterSet(int setid);
|
||||||
|
virtual ~GameStateAwards();
|
||||||
|
|
||||||
|
virtual void Start();
|
||||||
|
virtual void End();
|
||||||
|
virtual void Create();
|
||||||
|
virtual void Destroy();
|
||||||
|
virtual void Update(float dt);
|
||||||
|
virtual void Render();
|
||||||
|
virtual void ButtonPressed(int controllerId, int controlId);
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
||||||
@@ -56,6 +56,7 @@ public:
|
|||||||
virtual void ButtonPressed(int controllerId, int controlId){};
|
virtual void ButtonPressed(int controllerId, int controlId){};
|
||||||
virtual void Reload(){};
|
virtual void Reload(){};
|
||||||
virtual void Overlay(){};
|
virtual void Overlay(){};
|
||||||
|
virtual void Underlay(){};
|
||||||
|
|
||||||
virtual bool hasFocus()=0;
|
virtual bool hasFocus()=0;
|
||||||
virtual void setFocus(bool bFocus)=0;
|
virtual void setFocus(bool bFocus)=0;
|
||||||
@@ -140,6 +141,7 @@ public:
|
|||||||
virtual bool setPos(int pos) {return false;};
|
virtual bool setPos(int pos) {return false;};
|
||||||
virtual bool next() {return false;};
|
virtual bool next() {return false;};
|
||||||
virtual bool prev() {return false;};
|
virtual bool prev() {return false;};
|
||||||
|
virtual void Update(float dt) {};
|
||||||
};
|
};
|
||||||
|
|
||||||
class WSrcImage: public WDataSource{
|
class WSrcImage: public WDataSource{
|
||||||
@@ -153,7 +155,7 @@ private:
|
|||||||
|
|
||||||
class WSrcMTGSet: public WDataSource{
|
class WSrcMTGSet: public WDataSource{
|
||||||
public:
|
public:
|
||||||
WSrcMTGSet(int setid);
|
WSrcMTGSet(int setid, float mDelay=0.1);
|
||||||
|
|
||||||
virtual JQuad * getImage();
|
virtual JQuad * getImage();
|
||||||
virtual MTGCard * getCard();
|
virtual MTGCard * getCard();
|
||||||
@@ -163,10 +165,13 @@ public:
|
|||||||
virtual bool prev();
|
virtual bool prev();
|
||||||
virtual int getPos() {return currentCard;};
|
virtual int getPos() {return currentCard;};
|
||||||
virtual bool setPos(int pos);
|
virtual bool setPos(int pos);
|
||||||
|
virtual void Update(float dt);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
vector<MTGCard*> cards;
|
vector<MTGCard*> cards;
|
||||||
int currentCard;
|
int currentCard;
|
||||||
|
float mDelay;
|
||||||
|
float mLastInput;
|
||||||
};
|
};
|
||||||
|
|
||||||
class WGuiImage: public WGuiItem{
|
class WGuiImage: public WGuiItem{
|
||||||
@@ -207,6 +212,7 @@ public:
|
|||||||
virtual void updateValue() {it->updateValue();};
|
virtual void updateValue() {it->updateValue();};
|
||||||
virtual void Reload() {it->Reload();};
|
virtual void Reload() {it->Reload();};
|
||||||
virtual void Overlay() {it->Overlay();};
|
virtual void Overlay() {it->Overlay();};
|
||||||
|
virtual void Underlay() {it->Underlay();};
|
||||||
virtual void Render() {it->Render();};
|
virtual void Render() {it->Render();};
|
||||||
virtual void setData() {it->setData();};
|
virtual void setData() {it->setData();};
|
||||||
|
|
||||||
@@ -242,7 +248,7 @@ public:
|
|||||||
virtual bool Selectable() {return Visible();};
|
virtual bool Selectable() {return Visible();};
|
||||||
virtual bool Visible();
|
virtual bool Visible();
|
||||||
virtual int getId() {return id;};
|
virtual int getId() {return id;};
|
||||||
virtual void Overlay();
|
virtual void Underlay();
|
||||||
protected:
|
protected:
|
||||||
int id;
|
int id;
|
||||||
string text;
|
string text;
|
||||||
@@ -255,6 +261,7 @@ public:
|
|||||||
|
|
||||||
virtual void Reload();
|
virtual void Reload();
|
||||||
virtual void Overlay();
|
virtual void Overlay();
|
||||||
|
virtual void Underlay();
|
||||||
virtual void setData();
|
virtual void setData();
|
||||||
virtual bool isModal();
|
virtual bool isModal();
|
||||||
virtual void setModal(bool val);
|
virtual void setModal(bool val);
|
||||||
|
|||||||
@@ -557,6 +557,10 @@ void WGuiList::Render(){
|
|||||||
//Render items.
|
//Render items.
|
||||||
if(start >= 0)
|
if(start >= 0)
|
||||||
{
|
{
|
||||||
|
//Render current underlay.
|
||||||
|
if(currentItem >= 0 && currentItem < nbitems && items[currentItem]->Visible())
|
||||||
|
items[currentItem]->Underlay();
|
||||||
|
|
||||||
for (int pos=0;pos < nbitems; pos++){
|
for (int pos=0;pos < nbitems; pos++){
|
||||||
if(!items[pos]->Visible())
|
if(!items[pos]->Visible())
|
||||||
continue;
|
continue;
|
||||||
@@ -1018,6 +1022,12 @@ void WGuiSplit::Overlay(){
|
|||||||
else
|
else
|
||||||
left->Overlay();
|
left->Overlay();
|
||||||
}
|
}
|
||||||
|
void WGuiSplit::Underlay(){
|
||||||
|
if(bRight)
|
||||||
|
right->Underlay();
|
||||||
|
else
|
||||||
|
left->Underlay();
|
||||||
|
}
|
||||||
void WGuiSplit::ButtonPressed(int controllerId, int controlId)
|
void WGuiSplit::ButtonPressed(int controllerId, int controlId)
|
||||||
{
|
{
|
||||||
if(bRight)
|
if(bRight)
|
||||||
@@ -1234,7 +1244,7 @@ void WGuiTabMenu::save(){
|
|||||||
|
|
||||||
|
|
||||||
//WGuiAward
|
//WGuiAward
|
||||||
void WGuiAward::Overlay(){
|
void WGuiAward::Underlay(){
|
||||||
char buf[1024];
|
char buf[1024];
|
||||||
JRenderer * r = JRenderer::GetInstance();
|
JRenderer * r = JRenderer::GetInstance();
|
||||||
JQuad * trophy = NULL;
|
JQuad * trophy = NULL;
|
||||||
@@ -1252,8 +1262,9 @@ void WGuiAward::Overlay(){
|
|||||||
if(!trophy) //Fallback to basic trophy image.
|
if(!trophy) //Fallback to basic trophy image.
|
||||||
trophy = resources.RetrieveTempQuad("trophy.png");
|
trophy = resources.RetrieveTempQuad("trophy.png");
|
||||||
|
|
||||||
if(trophy)
|
if(trophy){
|
||||||
r->RenderQuad(trophy, 0, SCREEN_HEIGHT-256);
|
r->RenderQuad(trophy, 0, SCREEN_HEIGHT-trophy->mHeight);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
void WGuiAward::Render(){
|
void WGuiAward::Render(){
|
||||||
@@ -1394,9 +1405,11 @@ WSrcImage::WSrcImage(string s){
|
|||||||
}
|
}
|
||||||
|
|
||||||
//WSrcMTGSet
|
//WSrcMTGSet
|
||||||
WSrcMTGSet::WSrcMTGSet(int setid){
|
WSrcMTGSet::WSrcMTGSet(int setid, float delay){
|
||||||
MTGAllCards * ac = GameApp::collection;
|
MTGAllCards * ac = GameApp::collection;
|
||||||
map<int,MTGCard*>::iterator it;
|
map<int,MTGCard*>::iterator it;
|
||||||
|
mDelay = delay;
|
||||||
|
mLastInput = 0;
|
||||||
|
|
||||||
for(it = ac->collection.begin();it != ac->collection.end();it++){
|
for(it = ac->collection.begin();it != ac->collection.end();it++){
|
||||||
if(it->second->setId == setid)
|
if(it->second->setId == setid)
|
||||||
@@ -1408,10 +1421,13 @@ WSrcMTGSet::WSrcMTGSet(int setid){
|
|||||||
currentCard = 0;
|
currentCard = 0;
|
||||||
}
|
}
|
||||||
JQuad * WSrcMTGSet::getImage(){
|
JQuad * WSrcMTGSet::getImage(){
|
||||||
MTGCard * c = getCard();
|
if(mDelay && mLastInput < mDelay)
|
||||||
if(c)
|
return NULL;
|
||||||
return resources.RetrieveCard(c);
|
|
||||||
return NULL;
|
return resources.RetrieveCard(getCard());
|
||||||
|
}
|
||||||
|
void WSrcMTGSet::Update(float dt){
|
||||||
|
mLastInput += dt;
|
||||||
}
|
}
|
||||||
MTGCard * WSrcMTGSet::getCard(){
|
MTGCard * WSrcMTGSet::getCard(){
|
||||||
int size = (int) cards.size();
|
int size = (int) cards.size();
|
||||||
@@ -1427,7 +1443,8 @@ bool WSrcMTGSet::next(){
|
|||||||
else
|
else
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
return true;
|
mLastInput = 0;
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool WSrcMTGSet::prev(){
|
bool WSrcMTGSet::prev(){
|
||||||
@@ -1436,7 +1453,8 @@ bool WSrcMTGSet::prev(){
|
|||||||
else
|
else
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
return true;
|
mLastInput = 0;
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool WSrcMTGSet::setPos(int pos){
|
bool WSrcMTGSet::setPos(int pos){
|
||||||
@@ -1444,6 +1462,7 @@ bool WSrcMTGSet::setPos(int pos){
|
|||||||
return false;
|
return false;
|
||||||
|
|
||||||
currentCard = pos;
|
currentCard = pos;
|
||||||
|
mLastInput = 0;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||