diff options
| -rw-r--r-- | .gitignore | 2 | ||||
| -rw-r--r-- | Makefile | 2 | ||||
| -rw-r--r-- | curses.c | 2 | ||||
| -rw-r--r-- | dartboat.c (renamed from dartbot.c) | 5 | ||||
| -rw-r--r-- | web/dartboat_wasm.c | 8 | ||||
| -rw-r--r-- | web/static/index.html | 2 | ||||
| -rw-r--r-- | web/svg.c (renamed from web/svg_dartboard.c) | 14 | ||||
| -rw-r--r-- | web/svg.h | 7 | 
8 files changed, 25 insertions, 17 deletions
@@ -1,3 +1,3 @@ -dartbot +dartboat  *.d  *.o @@ -2,7 +2,7 @@ CFLAGS += -O2 -Wall -Wextra -Wpedantic  CPPFLAGS += -MMD -MP  LDFLAGS += -lm -lncurses -TARGET := dartbot +TARGET := dartboat  SRC := $(wildcard *.c)  OBJ := $(SRC:.c=.o) @@ -21,7 +21,7 @@ void init_curses()  	promptw = newwin(1, COLS, LINES-1, 0);  	wbkgd(titlew, COLOR_PAIR(C_STATUS));  	wbkgd(statw, COLOR_PAIR(C_STATUS)); -	waddstr(titlew, " dartbot"); +	waddstr(titlew, " dartboat");  	wrefresh(titlew);  } @@ -118,12 +118,13 @@ void curses_match(int start_points, char *n1, void (*f1)(struct leg *),  void cvc_curses_match(int start_points)  { -	curses_match(start_points, "Dartbot 1", comp_visit, "Dartbot 2", comp_visit); +	curses_match(start_points, "Dartboat 1", comp_visit, "Dartboat 2", +		comp_visit);  }  void pvc_curses_match(int start_points)  { -	curses_match(start_points, "David", user_visit, "Dartbot", comp_visit); +	curses_match(start_points, "David", user_visit, "Dartboat", comp_visit);  }  void pvp_curses_match(int start_points) diff --git a/web/dartboat_wasm.c b/web/dartboat_wasm.c index 21d13fd..b4d232a 100644 --- a/web/dartboat_wasm.c +++ b/web/dartboat_wasm.c @@ -1,3 +1,5 @@ +#include "svg.h" +  #include "checkouts.h"  #include "comp.h" @@ -157,7 +159,6 @@ EMSCRIPTEN_KEEPALIVE void update_user_rem_from_pts(int pts)  	update_player_rem(state->active_player, state->active_leg->rem - pts);  } -void draw_point(double, double);  EMSCRIPTEN_KEEPALIVE void draw_boat_throwing(int pts, char *str, double x, double y)  {  	char pts_str[10]; @@ -167,7 +168,7 @@ EMSCRIPTEN_KEEPALIVE void draw_boat_throwing(int pts, char *str, double x, doubl  		state->legs[1]->visits[state->legs[1]->n_visits-2].rem :  		state->legs[1]->start; -	draw_point(x, y); +	svg_draw_point(x, y);  	update_player_rem(2, rem - pts);  	EM_ASM({setPromptInput($0)}, pts_str);  	EM_ASM({promptMsgR($0)}, str); @@ -461,12 +462,11 @@ EMSCRIPTEN_KEEPALIVE void set_stdev(float stdev)  		horizontal_stdev = vertical_stdev = stdev;  } -void draw_board();  void init_boat()  {  	srand(time(NULL));  	init_board(); -	draw_board(); +	svg_draw_board();  	EM_ASM(readOpts());  	EM_ASM({updateDelay($0)}, delay_ms); diff --git a/web/static/index.html b/web/static/index.html index c1a2fdd..f583449 100644 --- a/web/static/index.html +++ b/web/static/index.html @@ -85,7 +85,7 @@  				<p>To avoid destructive actions being a misclick away, certain actions require two presses—one to activate the button and another to trigger it.</p>  				<p>The controls are designed to be keyboard-friendly. The keys should be fairly intuitive for the most part.</p>  				<h2>Info</h2> -				<p>dartboat is <a href="https://retarded.software/dartbot.git/" target="_blank">free and open-source software</a>. It is written in C and compiled to WebAssembly for the web target. JavaScript is used to handle the interactive elements.</p> +				<p>dartboat is <a href="https://retarded.software/dartboat.git/" target="_blank">free and open-source software</a>. It is written in C and compiled to WebAssembly for the web target. JavaScript is used to handle the interactive elements.</p>  			</div>  		</div>  	</body> diff --git a/web/svg_dartboard.c b/web/svg.c index 1125ef0..6744ac6 100644 --- a/web/svg_dartboard.c +++ b/web/svg.c @@ -1,3 +1,5 @@ +#include "svg.h" +  #include "board.h"  #include "comp.h" @@ -19,10 +21,8 @@  struct elem {  	char *name; -	int n_attrs; -	int size_attrs; -	char **attr_names; -	char **attr_vals; +	int n_attrs, size_attrs; +	char **attr_names, **attr_vals;  	char *content;  }; @@ -215,9 +215,9 @@ void draw_elemv(int layer, int elemc, struct elem **elemv)  		offsetof(struct elem, content));  } -void draw_board() +void svg_draw_board()  { -	struct elem **elemv = malloc(500 * sizeof(*elemv)); +	struct elem **elemv = malloc(200 * sizeof(*elemv));  	int elemc = 0;  	elemv[elemc++] = gen_circle(DIAMETER/2, C_BLACK); @@ -244,7 +244,7 @@ void draw_board()  	free(elemv);  } -void draw_point(double x, double y) { +void svg_draw_point(double x, double y) {  	struct elem *e = gen_circle(8, "#33f");  	elem_add_attr(e, "stroke", "#ff0");  	elem_add_attr(e, "stroke-width", "2"); diff --git a/web/svg.h b/web/svg.h new file mode 100644 index 0000000..3321846 --- /dev/null +++ b/web/svg.h @@ -0,0 +1,7 @@ +#ifndef SVG_H +#define SVG_H + +void svg_draw_board(); +void svg_draw_point(double x, double y); + +#endif  | 
