add medidate button

This commit is contained in:
pena 2023-01-10 04:39:58 +01:00 committed by Swrup
parent d778e05931
commit 1f632f65cb
2 changed files with 30 additions and 10 deletions

View file

@ -17,24 +17,33 @@ let get request =
let topbar =
let mana_img = mk_img false "mana" in
let mana_lvl = span ~a:[ a_id "mana_lvl" ] [ txt "0" ] in
div ~a:[ a_class [ "centered" ] ] @@ [ mana_img; mana_lvl ]
div ~a:[ a_class [ "centered" ] ] [ mana_img; mana_lvl ]
in
let canvas =
canvas
~a:[ a_id "canvas" ]
[ txt "please update your browser or enable javascript" ]
div
~a:[ a_class [ "centered" ] ]
[ canvas
~a:[ a_id "canvas" ]
[ txt "please update your browser or enable javascript" ]
]
in
let canvas_images =
List.map (mk_img true)
[ "grass"; "papy_left"; "papy_right"; "papy_down"; "papy_up"; "water" ]
div
@@ List.map (mk_img true)
[ "grass"; "papy_left"; "papy_right"; "papy_down"; "papy_up"; "water" ]
in
let page =
div ~a:[ a_class [ "centered" ] ] @@ (topbar :: canvas :: canvas_images)
let bottombar =
let medidate_button =
button ~a:[ a_id "medidate_button" ] [ txt "Medidate" ]
in
div ~a:[ a_class [ "centered" ] ] [ medidate_button ]
in
let page = div [ topbar; canvas; bottombar; canvas_images ] in
let js =
script
~a:

View file

@ -101,7 +101,7 @@ let send_action state action =
Log.debug "sending action %a to server@\n" State.pp_action action;
Ws_client.send (Network.Action_msg action)
let kb_handler ev =
let keydown_handler ev =
let open State in
let ev = Ev.as_type ev in
let act =
@ -164,9 +164,20 @@ let () =
match res with
| Error e -> Log.debug "received update result error: %s@\n" e
| Ok action' -> Queue.add action' to_apply_queue ) );
(* bind keys *)
let _e : Ev.listener =
Ev.listen Ev.keydown kb_handler (Window.as_target G.window)
Ev.listen Ev.keydown keydown_handler (Window.as_target G.window)
in
(* bind buttons *)
let _e : Ev.listener =
let meditate_button =
Jv.get Jv.global "medidate_button" |> Ev.target_of_jv
in
Ev.listen Ev.click
(fun _ev -> Queue.add State.Meditate input_queue)
meditate_button
in
Fut.await initial_state_fut (fun msg ->