2024-09-01 16:38:23 +02:00
|
|
|
// Voir README.md pour license précise, par Fcalva 2023-2024 et est sous GPLv3
|
2024-10-09 16:43:10 +02:00
|
|
|
// See README.md for the exact licensing, by ...
|
2024-09-01 16:38:23 +02:00
|
|
|
|
2024-10-10 17:53:09 +02:00
|
|
|
#pragma once
|
2024-09-01 16:38:23 +02:00
|
|
|
|
2024-09-07 11:42:56 +02:00
|
|
|
#include <libprof.h>
|
|
|
|
#include <gint/display.h>
|
|
|
|
#include "fixed.h"
|
2024-10-05 00:56:13 +02:00
|
|
|
#include "game.h"
|
|
|
|
#include "config.h"
|
2024-09-01 16:38:23 +02:00
|
|
|
|
|
|
|
typedef struct {
|
|
|
|
|
|
|
|
prof_t raycast_time;
|
|
|
|
prof_t draw_time;
|
|
|
|
|
|
|
|
} EngineTimers;
|
|
|
|
|
2024-10-08 13:16:05 +02:00
|
|
|
int get_pixel(bopti_image_t const *tex, int u, int v);
|
|
|
|
|
2024-09-26 20:47:04 +02:00
|
|
|
void dscale_bopti(bopti_image_t *tex, fixed_t scale_x, fixed_t scale_y,
|
|
|
|
int x, int y);
|
|
|
|
|
|
|
|
void draw_stripe(bopti_image_t *tex, int texSampleY, int linePos,
|
|
|
|
fixed_t texSize, int texX, int x);
|
2024-09-01 16:38:23 +02:00
|
|
|
|
|
|
|
void load_map();
|
|
|
|
void draw_walls(
|
|
|
|
#if debug
|
2024-10-05 00:56:13 +02:00
|
|
|
EngineTimers *timers,
|
2024-09-01 16:38:23 +02:00
|
|
|
#endif
|
2024-10-05 00:56:13 +02:00
|
|
|
RcGame *game
|
2024-09-01 16:38:23 +02:00
|
|
|
);
|
2024-10-05 00:56:13 +02:00
|
|
|
void move(RcGame *game);
|
2024-09-01 16:38:23 +02:00
|
|
|
|