summaryrefslogtreecommitdiffhomepage
path: root/examples/src/textures/textures_sprite_button.c
diff options
context:
space:
mode:
authorRay <[email protected]>2019-05-20 16:40:30 +0200
committerRay <[email protected]>2019-05-20 16:40:30 +0200
commit3d7d174c70b2d00fd879ade64c5085d4ff34d4aa (patch)
tree3b690948f186f855aa2ee8bab312b3ca28a56200 /examples/src/textures/textures_sprite_button.c
parent0b56b996bd053ec875c229e9793f7806b666839c (diff)
downloadraylib.com-3d7d174c70b2d00fd879ade64c5085d4ff34d4aa.tar.gz
raylib.com-3d7d174c70b2d00fd879ade64c5085d4ff34d4aa.zip
Review and recompile ALL examples
Diffstat (limited to 'examples/src/textures/textures_sprite_button.c')
-rw-r--r--examples/src/textures/textures_sprite_button.c36
1 files changed, 18 insertions, 18 deletions
diff --git a/examples/src/textures/textures_sprite_button.c b/examples/src/textures/textures_sprite_button.c
index bbd5732..a5b2d8d 100644
--- a/examples/src/textures/textures_sprite_button.c
+++ b/examples/src/textures/textures_sprite_button.c
@@ -13,35 +13,35 @@
#define NUM_FRAMES 3 // Number of frames (rectangles) for the button sprite texture
-int main()
+int main(void)
{
// Initialization
//--------------------------------------------------------------------------------------
const int screenWidth = 800;
const int screenHeight = 450;
-
+
InitWindow(screenWidth, screenHeight, "raylib [textures] example - sprite button");
InitAudioDevice(); // Initialize audio device
-
+
Sound fxButton = LoadSound("resources/buttonfx.wav"); // Load button sound
Texture2D button = LoadTexture("resources/button.png"); // Load button texture
-
+
// Define frame rectangle for drawing
int frameHeight = button.height/NUM_FRAMES;
Rectangle sourceRec = { 0, 0, button.width, frameHeight };
-
+
// Define button bounds on screen
Rectangle btnBounds = { screenWidth/2 - button.width/2, screenHeight/2 - button.height/NUM_FRAMES/2, button.width, frameHeight };
-
+
int btnState = 0; // Button state: 0-NORMAL, 1-MOUSE_HOVER, 2-PRESSED
bool btnAction = false; // Button action should be activated
-
+
Vector2 mousePoint = { 0.0f, 0.0f };
-
+
SetTargetFPS(60);
//--------------------------------------------------------------------------------------
-
+
// Main game loop
while (!WindowShouldClose()) // Detect window close button or ESC key
{
@@ -49,7 +49,7 @@ int main()
//----------------------------------------------------------------------------------
mousePoint = GetMousePosition();
btnAction = false;
-
+
// Check button state
if (CheckCollisionPointRec(mousePoint, btnBounds))
{
@@ -59,26 +59,26 @@ int main()
if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) btnAction = true;
}
else btnState = 0;
-
+
if (btnAction)
{
PlaySound(fxButton);
-
+
// TODO: Any desired action
}
-
+
// Calculate button frame rectangle to draw depending on button state
sourceRec.y = btnState*frameHeight;
//----------------------------------------------------------------------------------
-
+
// Draw
//----------------------------------------------------------------------------------
BeginDrawing();
-
+
ClearBackground(RAYWHITE);
DrawTextureRec(button, sourceRec, (Vector2){ btnBounds.x, btnBounds.y }, WHITE); // Draw button frame
-
+
EndDrawing();
//----------------------------------------------------------------------------------
}
@@ -89,9 +89,9 @@ int main()
UnloadSound(fxButton); // Unload sound
CloseAudioDevice(); // Close audio device
-
+
CloseWindow(); // Close window and OpenGL context
//--------------------------------------------------------------------------------------
-
+
return 0;
} \ No newline at end of file