X-Git-Url: https://plomlompom.com/repos/foo.html?a=blobdiff_plain;ds=sidebyside;f=src%2Fmisc.c;h=122f404e8e2eace4181a1fb9d42e14048d7b67bb;hb=8f60274cc94ea4b2d3a0bb71169e50b0d06ae629;hp=0518aef5ca90f37d4563985033864383091d9b6b;hpb=d504e5724574f9502ec203d495284738601bb6a0;p=plomrogue
diff --git a/src/misc.c b/src/misc.c
index 0518aef..122f404 100644
--- a/src/misc.c
+++ b/src/misc.c
@@ -6,8 +6,8 @@
#include /* for size_t, calloc(), free() */
#include /* for strlen(), strcmp(), memcpy() */
#include /* for uint8_t, uint16_t */
-#include "readwrite.h" /* for try_fopen(), try_fclose(), get_linemax(),
- * try_fputc()
+#include "readwrite.h" /* for try_fopen(), try_fclose(), textfile_sizes(),
+ * try_fputc(), try_fgetc()
*/
#include "map_objects.h" /* for struct MapObj, get_player(), read_map_objects(),
* write_map_objects()
@@ -27,8 +27,7 @@
extern uint16_t rrand()
-{
- /* Constants as recommended by POSIX.1-2001 (see man page rand(3)). */
+{ /* Constants as recommended by POSIX.1-2001 (see man page rand(3)). */
world.seed = ((world.seed * 1103515245) + 12345) % 4294967296;
return (world.seed >> 16); /* Ignore less random least significant bits. */
}
@@ -169,17 +168,17 @@ extern void update_log(char * text)
-extern uint16_t center_offset(uint16_t pos, uint16_t mapsize,
+extern uint16_t center_offset(uint16_t position, uint16_t mapsize,
uint16_t framesize)
{
uint16_t offset = 0;
if (mapsize > framesize)
{
- if (pos > framesize / 2)
+ if (position > framesize / 2)
{
- if (pos < mapsize - (framesize / 2))
+ if (position < mapsize - (framesize / 2))
{
- offset = pos - (framesize / 2);
+ offset = position - (framesize / 2);
}
else
{
@@ -202,18 +201,18 @@ extern void turn_over(char action)
{
FILE * file_old = try_fopen(recordfile, "r", f_name);
FILE * file_new = try_fopen(recordfile_tmp, "w", f_name);
- char c = fgetc(file_old);
+ int c = try_fgetc(file_old, f_name);
while (EOF != c)
{
- try_fputc(c, file_new, f_name);
- c = fgetc(file_old);
+ try_fputc((uint8_t) c, file_new, f_name);
+ c = try_fgetc(file_old, f_name);
}
try_fclose(file_old, f_name);
try_fputc(action, file_new, f_name);
if ( is_command_id_shortdsc(action, "drop")
|| is_command_id_shortdsc(action, "use"))
{
- try_fputc(world.inventory_select, file_new, f_name);
+ try_fputc(world.inventory_sel, file_new, f_name);
}
try_fclose_unlink_rename(file_new, recordfile_tmp, recordfile, f_name);
}
@@ -283,7 +282,7 @@ extern void load_game()
char * f_name = "load_game2()";
char * filename = "savefile";
FILE * file = try_fopen(filename, "r", f_name);
- uint16_t linemax = get_linemax(file, f_name);
+ uint16_t linemax = textfile_sizes(file, NULL);
char line[linemax + 1];
try_fgets(line, linemax + 1, file, f_name);
world.mapseed = atoi(line);
@@ -316,10 +315,7 @@ extern void nav_inventory(char dir)
{
if ('u' == dir)
{
- if (world.inventory_select > 0)
- {
- world.inventory_select--;
- }
+ world.inventory_sel = world.inventory_sel - (world.inventory_sel > 0);
return;
}
struct MapObj * player = get_player();
@@ -330,8 +326,5 @@ extern void nav_inventory(char dir)
}
uint8_t n_owned = 0;
for (; NULL != owned->next; owned = owned->next, n_owned++);
- if (world.inventory_select < n_owned)
- {
- world.inventory_select++;
- }
+ world.inventory_sel = world.inventory_sel + (world.inventory_sel < n_owned);
}