From c4f1c60e3576348efe1520f9f92e170738950b02 Mon Sep 17 00:00:00 2001 From: dawnDus <96957561+dawndus@users.noreply.github.com> Date: Fri, 11 Feb 2022 22:28:30 -0500 Subject: [PATCH] Initial Android pause menu support --- src/builtin/touch.png | Bin 789 -> 16222 bytes src/components/hud.rs | 2 +- src/input/touch_controls.rs | 2 ++ src/input/touch_player_controller.rs | 4 ++++ 4 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/builtin/touch.png b/src/builtin/touch.png index d135dea81b7e1822607c8bb7e577fb313b1e46df..685c7dd5624c24172cbca9fc34e5777c20d601f5 100644 GIT binary patch literal 16222 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 D5Ctmo delta 778 zcmV+l1NHpgew7B07=Hu<0000n5PbLm000$GOjJbx005x1-W@(;|Ns90{{R4(0O}b& zy^i$*00001bW%=J06^y0W&i*Ju1Q2eRCwC$nai%5Fc5}qhjeZ81coPw6zQy4z&;Du zSE_X0{}JkI7!&OArIo4*FGv)JpU=aLe`5%_TC7ptC?G^5fPWBe2%;Y{5O@MWG8}=* z1OOp8LZ1R41Vs>O032aV1H=)8Y33VG0Yni--E^PmWeOmMK!ryb<>${3z$4fm{wZ*# z3jsVrR3HGPy&0N53*6p8zQ=qbFhT`TePCqlq~8hXYr!C3VGq;PJr!sBC7<#1gsIL`@`QCV6v_MYX3&V@&LDE#D=g$5`DTKvneXD zOhgbc01N>Izz}eNBSKi6830Fw(AshULIhm9g+e3fuAjKLH|5;0%sl(@q+G+f_X&53+@vp;1Hr_gbMiGo0!+EsDMF; zyP*q0_ewiu+znk2y0lrR?AQt{X|qn*@rsQ=Bc#>?W(*5r=SjO?=Xrj$>=)d(ZM(em zYFGPQiC+Rrz?i3~emi9ZM47gpcA3$Xm%7>nQmyZ|YCL#VFr0Mt9L(Y*K?B`HI20F_M>G!=l3 z!J`e}R}+GcKnsG&fm;KDy#);jHV0faRteY~s2BM0?LK}3z&KAi=^TM`00000NkvXX It^-0~g4X;~O8@`> diff --git a/src/components/hud.rs b/src/components/hud.rs index 55dbce1..f3a2cfb 100644 --- a/src/components/hud.rs +++ b/src/components/hud.rs @@ -143,7 +143,7 @@ impl GameEntity<(&Player, &mut Inventory)> for HUD { let wtype = self.weapon_types[a]; if wtype != 0 { - rect = Rect::new_size(pos_x + weapon_offset - 4, 16 - 4, 24, 24); + rect = Rect::new_size(pos_x + weapon_offset - 4, 16 + (4 * state.scale as isize), 24, 24); if state.touch_controls.consume_click_in(rect) { state.sound_manager.play_sfx(4); diff --git a/src/input/touch_controls.rs b/src/input/touch_controls.rs index 559ef95..6809f67 100644 --- a/src/input/touch_controls.rs +++ b/src/input/touch_controls.rs @@ -124,6 +124,8 @@ impl TouchControls { &Rect::new_size(0, 3 * 32, 32, 32), ); + batch.add_rect_tinted(4.0, 4.0, color, &Rect::new_size(32, 3 * 32, 32, 32)); + batch.draw(ctx)?; } diff --git a/src/input/touch_player_controller.rs b/src/input/touch_player_controller.rs index 6fff29c..e5daef4 100644 --- a/src/input/touch_player_controller.rs +++ b/src/input/touch_player_controller.rs @@ -216,6 +216,10 @@ impl PlayerController for TouchPlayerController { )) .is_some(), ); + + self.state.set_pause( + self.state.pause() || state.touch_controls.point_in(Rect::new_size(0, 0, 20, 20)).is_some(), + ); } }