Erwan
- boosters in shop 100 cards -> 80 cards - 2 new cards in SHM - Added Ram checking methods for the PSP
This commit is contained in:
@@ -143,6 +143,10 @@ void GameApp::Create()
|
||||
|
||||
mCurrentState = NULL;
|
||||
mNextState = mGameStates[GAME_STATE_MENU];
|
||||
|
||||
char buf[512];
|
||||
sprintf(buf, "size of MTGCardInstance : %i\n" , sizeof(MTGCardInstance));
|
||||
OutputDebugString(buf);
|
||||
}
|
||||
|
||||
|
||||
@@ -230,6 +234,18 @@ void GameApp::Update()
|
||||
mCurrentState->End();
|
||||
|
||||
mCurrentState = mNextState;
|
||||
|
||||
|
||||
#if defined (WIN32) || defined (LINUX)
|
||||
#else
|
||||
/*
|
||||
int maxLinear = ramAvailableLineareMax();
|
||||
int ram = ramAvailable();
|
||||
char buf[512];
|
||||
sprintf(buf, "Ram : linear max: %i - total : %i\n",maxLinear, ram);
|
||||
fprintf(stderr,buf);
|
||||
*/
|
||||
#endif
|
||||
mCurrentState->Start();
|
||||
|
||||
mNextState = NULL;
|
||||
|
||||
@@ -43,7 +43,7 @@ void GameStateShop::Start()
|
||||
int sets[500];
|
||||
int nbsets = 0;
|
||||
for (int i = 0; i < MtgSets::SetsList->nb_items; i++){
|
||||
if (mParent->collection->countBySet(i) > 100){ //Only sets with more than 100 cards can get boosters and starters
|
||||
if (mParent->collection->countBySet(i) > 80){ //Only sets with more than 80 cards can get boosters and starters
|
||||
sets[nbsets] = i;
|
||||
nbsets++;
|
||||
}
|
||||
|
||||
@@ -238,23 +238,17 @@ void ShopItems::ButtonPressed(int controllerId, int controlId){
|
||||
safeDeleteDisplay();
|
||||
display = NEW CardDisplay(12,NULL, SCREEN_WIDTH - 200, SCREEN_HEIGHT/2,this,NULL,5);
|
||||
int curNbcards = playerdata->collection->totalCards();
|
||||
//if (showPriceDialog == 0){
|
||||
// //Starter Deck
|
||||
// playerdata->collection->addRandomCards(3,setId,Constants::RARITY_R,NULL);
|
||||
// playerdata->collection->addRandomCards(9, setId,Constants::RARITY_U,NULL);
|
||||
// playerdata->collection->addRandomCards(48, setId,Constants::RARITY_C,NULL);
|
||||
//}else{
|
||||
//Booster
|
||||
playerdata->collection->addRandomCards(1, setIds[showPriceDialog],Constants::RARITY_R);
|
||||
playerdata->collection->addRandomCards(3, setIds[showPriceDialog],Constants::RARITY_U);
|
||||
playerdata->collection->addRandomCards(11, setIds[showPriceDialog],Constants::RARITY_C);
|
||||
// }
|
||||
int newNbCards = playerdata->collection->totalCards();;
|
||||
for (int i = curNbcards; i < newNbCards ; i++){
|
||||
MTGCardInstance * card = NEW MTGCardInstance(playerdata->collection->_(i), NULL);
|
||||
displayCards[i-curNbcards] = card;
|
||||
display->AddCard(card);
|
||||
}
|
||||
|
||||
playerdata->collection->addRandomCards(1, setIds[showPriceDialog],Constants::RARITY_R);
|
||||
playerdata->collection->addRandomCards(3, setIds[showPriceDialog],Constants::RARITY_U);
|
||||
playerdata->collection->addRandomCards(11, setIds[showPriceDialog],Constants::RARITY_C);
|
||||
|
||||
int newNbCards = playerdata->collection->totalCards();;
|
||||
for (int i = curNbcards; i < newNbCards ; i++){
|
||||
MTGCardInstance * card = NEW MTGCardInstance(playerdata->collection->_(i), NULL);
|
||||
displayCards[i-curNbcards] = card;
|
||||
display->AddCard(card);
|
||||
}
|
||||
}
|
||||
//Remove(showPriceDialog);
|
||||
showPriceDialog = -1;
|
||||
|
||||
@@ -59,3 +59,93 @@ void dumpStack()
|
||||
free(tab);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
/* RAM simple check functions source */
|
||||
|
||||
|
||||
// *** FUNCTIONS ***
|
||||
|
||||
u32 ramAvailableLineareMax (void)
|
||||
{
|
||||
u32 size, sizeblock;
|
||||
u8 *ram;
|
||||
|
||||
|
||||
// Init variables
|
||||
size = 0;
|
||||
sizeblock = RAM_BLOCK;
|
||||
|
||||
// Check loop
|
||||
while (sizeblock)
|
||||
{
|
||||
// Increment size
|
||||
size += sizeblock;
|
||||
|
||||
// Allocate ram
|
||||
ram = (u8 *) malloc(size);
|
||||
|
||||
// Check allocate
|
||||
if (!(ram))
|
||||
{
|
||||
// Restore old size
|
||||
size -= sizeblock;
|
||||
|
||||
// Size block / 2
|
||||
sizeblock >>= 1;
|
||||
}
|
||||
else
|
||||
free(ram);
|
||||
}
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
u32 ramAvailable (void)
|
||||
{
|
||||
u8 **ram, **temp;
|
||||
u32 size, count, x;
|
||||
|
||||
|
||||
// Init variables
|
||||
ram = NULL;
|
||||
size = 0;
|
||||
count = 0;
|
||||
|
||||
// Check loop
|
||||
for (;;)
|
||||
{
|
||||
// Check size entries
|
||||
if (!(count % 10))
|
||||
{
|
||||
// Allocate more entries if needed
|
||||
temp = (u8**) realloc(ram,sizeof(u8 *) * (count + 10));
|
||||
if (!(temp)) break;
|
||||
|
||||
// Update entries and size (size contains also size of entries)
|
||||
ram = temp;
|
||||
size += (sizeof(u8 *) * 10);
|
||||
}
|
||||
|
||||
// Find max lineare size available
|
||||
x = ramAvailableLineareMax();
|
||||
if (!(x)) break;
|
||||
|
||||
// Allocate ram
|
||||
ram[count] = (u8 *) malloc(x);
|
||||
if (!(ram[count])) break;
|
||||
|
||||
// Update variables
|
||||
size += x;
|
||||
count++;
|
||||
}
|
||||
|
||||
// Free ram
|
||||
if (ram)
|
||||
{
|
||||
for (x=0;x<count;x++) free(ram[x]);
|
||||
free(ram);
|
||||
}
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user