示例#1
0
void UGXPThemes::SetGridStyle(UGXPThemeStyles style)
{
	m_style = style;

	CleanUp();
	PopulateData();
}
CPowerUp::CPowerUp(CEntity* temp, int params[])
{       
    // parameter 0: MushroomType
    PowerUpType = params[0];
    
    OriginalPowerupType = PowerUpType;
    
    // Offset Y by Height
    temp->Y -= POWERUP_HEIGHT;

    // params[1] = Float=1 
    if (params[1] == 1)
        temp->MaxY = temp->Y;
    
    temp->Flags = POWERUP_FLAGS;
    temp->Width = POWERUP_WIDTH;
    temp->Height = POWERUP_HEIGHT;
    temp->NumberOfFrames = POWERUP_ANIMATION_NUM_FRAMES;
    temp->Collision_Width = POWERUP_COLLISION_WIDTH;
    temp->Collision_Height = POWERUP_COLLISION_HEIGHT;
    temp->Collision_X = POWERUP_COLLISION_X;
    temp->Collision_Y = POWERUP_COLLISION_Y;
    temp->MaxSpeedX = POWERUP_MAXSPEED_X;
    temp->MaxSpeedY = POWERUP_MAXSPEED_Y;
    temp->Points = POWERUP_POINTS_EARNED;
    
    if (PowerUpType == POWERUP_TYPE_FIREFLOWER)
        temp->NumberOfFrames = POWERUP_FIRE_ANIMATION_NUM_FRAMES;
    
    temp->SetSurface(CSurfaceManager::SurfaceManager.GetSurface(POWERUP_GFX));
    
    PopulateData(temp);
    
    Animation.SetCurrentFrame(0);
}
CCoin::CCoin(CEntity* temp, int params[])
{       
    // Offset Y by Height
    temp->Y -= COIN_HEIGHT;    
    
    if (temp->Flags == 0) // Nothing passed so use default
        temp->Flags = COIN_FLAGS;
    
    temp->Width = COIN_WIDTH;
    temp->Height = COIN_HEIGHT;
    temp->NumberOfFrames = COIN_ANIMATION_NUM_FRAMES;
    temp->Collision_Width = COIN_COLLISION_WIDTH;
    temp->Collision_Height = COIN_COLLISION_HEIGHT;
    temp->Collision_X = COIN_COLLISION_X;
    temp->Collision_Y = COIN_COLLISION_Y;
    temp->MaxSpeedX = COIN_MAXSPEED_X;
    temp->MaxSpeedY = COIN_MAXSPEED_Y;
    temp->Points = COIN_POINTS_EARNED;
    
    Animation.SetFrameRate(COIN_ANIMATION_FRAMERATE);
    
    temp->SetSurface(CSurfaceManager::SurfaceManager.GetSurface(COIN_GFX));
    
    PopulateData(temp);
}
CPoints::CPoints(CPoints* temp)
{       
    temp->Flags = POINTS_FLAGS;
    temp->NumberOfFrames = POINTS_ANIMATION_NUM_FRAMES;
    temp->Collision_Width = POINTS_COLLISION_WIDTH;
    temp->Collision_Height = POINTS_COLLISION_HEIGHT;
    temp->Collision_X = POINTS_COLLISION_X;
    temp->Collision_Y = POINTS_COLLISION_Y;
    temp->MaxSpeedX = POINTS_MAXSPEED_X;
    temp->MaxSpeedY = POINTS_MAXSPEED_Y;
    
    PopulateData(temp);
}
CPButton::CPButton(CEntity* temp, int params[])
{   
    // Offset Y by Height
    temp->Y -= PBUTTON_HEIGHT;    
    temp->Flags = PBUTTONFLAGS;
    temp->Width = PBUTTON_WIDTH;
    temp->Height = PBUTTON_HEIGHT;
    temp->NumberOfFrames = PBUTTONANIMATION_NUM_FRAMES;
    temp->Collision_Width = PBUTTON_COLLISION_WIDTH;
    temp->Collision_Height = PBUTTON_COLLISION_HEIGHT;
    temp->Collision_X = PBUTTON_COLLISION_X;
    temp->Collision_Y = PBUTTON_COLLISION_Y;
    temp->MaxSpeedX = PBUTTON_MAXSPEED_X;
    temp->MaxSpeedY = PBUTTON_MAXSPEED_Y;
    
    temp->SetSurface(CSurfaceManager::SurfaceManager.GetSurface(PBUTTON_GFX));
    
    PopulateData(temp);
    
    SecondState = false;    
    Activated = false;
}
CStretchBlock::CStretchBlock(CEntity* temp, int params[])
{   
    temp->Y -= STRETCHBLOCK_HEIGHT;
    
    temp->Flags = STRETCHBLOCK_FLAGS;
    temp->Width = STRETCHBLOCK_WIDTH * STRETCHBLOCK_NUM_OF_BLOCKS;
    temp->Height = STRETCHBLOCK_HEIGHT;
    temp->Collision_Width = STRETCHBLOCK_COLLISION_WIDTH;
    temp->Collision_Height = STRETCHBLOCK_COLLISION_HEIGHT;
    temp->Collision_X = STRETCHBLOCK_COLLISION_X;
    temp->Collision_Y = STRETCHBLOCK_COLLISION_Y;

    temp->SetSurface(CSurfaceManager::SurfaceManager.GetSurface(STRETCHBLOCK_GFX));
    
    PopulateData(temp);
    
    // Initialize Spoke Positions
    for (int x = 0; x < STRETCHBLOCK_NUM_OF_BLOCKS; x++) 
    {
        Blocks[x].X = X + (STRETCHBLOCK_WIDTH * x);            
        Blocks[x].Y = Y;
        Blocks[x].Stopped = false;
        Blocks[x].AtMiddle = false;
    }     
    
    MiddleBlock = STRETCHBLOCK_NUM_OF_BLOCKS / 2;
    
    Blocks[MiddleBlock].Stopped = true;
    Blocks[MiddleBlock].AtMiddle = true;
    
    Paused = false;
    Stopped = true;
    Direction = 1;
    MoveTime = 0;
    PauseTime = 0;
}