Skip to content
Snippets Groups Projects
Commit c90b0dee authored by Réthelyi Bálint's avatar Réthelyi Bálint :no_mouth:
Browse files

Merge branch 'blint'

parents dee43fe0 6e1356c4
No related branches found
No related tags found
No related merge requests found
......@@ -9,8 +9,6 @@
/home/blint/projects/nhf/main.c
SDL2/SDL.h
-
SDL2/SDL2_gfxPrimitives.h
-
SDL2/SDL_image.h
-
stdlib.h
......
No preview for this file type
No preview for this file type
#include <SDL2/SDL.h>
#include <SDL2/SDL2_gfxPrimitives.h>
#include <SDL2/SDL_image.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdbool.h>
int H = 600;
int W = 800;
int W = 900;
int owl = 50;
int v = 10;
typedef struct move{
bool left, right, up, down;
} move;
int v = 5;
int vx = 0;
int vy = 0;
void sdl_init(int szeles, int magas, SDL_Window **pwindow, SDL_Renderer **prenderer) {
if (SDL_Init(SDL_INIT_EVERYTHING) < 0) {
......@@ -35,7 +32,6 @@ void sdl_init(int szeles, int magas, SDL_Window **pwindow, SDL_Renderer **prende
*prenderer = renderer;
}
void kirajzol(SDL_Renderer *renderer, SDL_Texture *kep, int x, int y) {
SDL_Rect src = {0, 0, 128, 128};
......@@ -43,138 +39,8 @@ void kirajzol(SDL_Renderer *renderer, SDL_Texture *kep, int x, int y) {
SDL_RenderCopy(renderer, kep, &src, &dest);
}
/*void mozgas(move *m, SDL_Renderer **renderer, SDL_Texture **kep, int *elozo_x, int *elozo_y)
{
if (m->left)
{
SDL_RenderClear(*renderer);
*elozo_x -= v;
if (*elozo_x < 1)
*elozo_x = 0;
if (m->up)
{
*elozo_y -= v;
if (*elozo_y < 1)
*elozo_y = 0;
}
if (m->down)
{
*elozo_y += v;
if (*elozo_y > H - owl + 1)
*elozo_y = H - owl;
}
kirajzol( *renderer, *kep, *elozo_x, *elozo_y);
m->left = false;
}
if (m->right)
{
SDL_RenderClear(*renderer);
*elozo_x += v;
if (*elozo_x > W - owl - 1)
*elozo_x = W - owl;
if (m->up)
{
*elozo_y -= v;
if (*elozo_y < 1)
*elozo_y = 0;
}
if (m->down)
{
*elozo_y += v;
if (*elozo_y > H - owl + 1)
*elozo_y = H - owl;
}
kirajzol( *renderer, *kep, *elozo_x, *elozo_y);
m->right = false;
}
if (m->up)
{
SDL_RenderClear(*renderer);
*elozo_y -= v;
if (*elozo_y < 1)
*elozo_y = 0;
if (m->left)
{
*elozo_x -= v;
if (*elozo_x < 1)
*elozo_x = 0;
}
if (m->right)
{
*elozo_x += v;
if (*elozo_x > W - owl - 1)
*elozo_x = W - owl;
}
kirajzol( *renderer, *kep, *elozo_x, *elozo_y);
m->up = false;
}
if (m->down)
{
SDL_RenderClear(*renderer);
*elozo_y += v;
if (*elozo_y > H - owl + 1)
*elozo_y = H - owl;
if (m->left)
{
*elozo_x -= v;
if (*elozo_x < 1)
*elozo_x = 0;
}
if (m->right)
{
*elozo_x += v;
if (*elozo_x > W - owl - 1)
*elozo_x = W - owl;
}
kirajzol( *renderer, *kep, *elozo_x, *elozo_y);
m->down = false;
}
}*/
int main(int argc, char *argv[]) {
SDL_Window *window;
SDL_Renderer *renderer;
sdl_init(W, H, &window, &renderer);
SDL_RenderPresent(renderer); //az elvegzett rajzolasok a kepernyore
SDL_Texture *kep = IMG_LoadTexture(renderer, "infoc.png");
if (kep == NULL)
{
SDL_Log("Nem nyithato meg a kepfajl: %s", IMG_GetError());
exit(1);
}
bool quit = false;
bool moving = false;
move m;
m.left = false;
m.right = false;
m.up = false;
m.down = false;
int elozo_x = 250;
int elozo_y = 250;
int vx = 0;
int vy = 0;
while (!quit) {
/*if (moving)
void move(SDL_Event ev)
{
mozgas(&m, &renderer, &kep, &elozo_x, &elozo_y);
}*/
SDL_Event ev;
SDL_WaitEvent(&ev);
SDL_RenderClear(renderer);
switch (ev.type) {
case SDL_KEYDOWN:
......@@ -204,12 +70,6 @@ int main(int argc, char *argv[]) {
case SDL_KEYUP:
switch (ev.key.keysym.sym) {
case SDLK_i:
kirajzol(renderer, kep, elozo_x, elozo_y);
moving = true;
break;
case SDLK_ESCAPE: quit = true;
break;
case SDLK_a:
if (vx < 0)
......@@ -234,16 +94,63 @@ int main(int argc, char *argv[]) {
break;
}
break;
}
}
int main(int argc, char *argv[]) {
SDL_Window *window;
SDL_Renderer *renderer;
sdl_init(W, H, &window, &renderer);
SDL_Texture *kep = IMG_LoadTexture(renderer, "infoc.png");
if (kep == NULL)
{
SDL_Log("Nem nyithato meg a kepfajl: %s", IMG_GetError());
exit(1);
}
SDL_RenderPresent(renderer); //az elvegzett rajzolasok a kepernyore
bool quit = false;
bool moving = false;
int elozo_x = 0;
int elozo_y = 0;
while (!quit) {
SDL_Event ev;
SDL_WaitEvent(&ev);
SDL_RenderClear(renderer);
switch (ev.type) {
case SDL_KEYUP:
switch (ev.key.keysym.sym) {
case SDLK_i:
kirajzol(renderer, kep, elozo_x, elozo_y);
moving = true;
break;
case SDLK_ESCAPE: quit = true;
break;
}
break;
case SDL_QUIT:
quit = true;
break;
}
if (moving){
move(ev);
elozo_x += vx;
elozo_y += vy;
kirajzol(renderer, kep, elozo_x, elozo_y);
}
SDL_RenderPresent(renderer);
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment